diff options
| author | Neil Hodgson <nyamatongwe@gmail.com> | 2018-05-21 15:20:08 +1000 | 
|---|---|---|
| committer | Neil Hodgson <nyamatongwe@gmail.com> | 2018-05-21 15:20:08 +1000 | 
| commit | e0e105ea1559874a5a9097461d0d7933cb5cbbb4 (patch) | |
| tree | 1cc61922e17beb3d98c7b689544dbdd36cbdde23 /cocoa/QuartzTextLayout.h | |
| parent | 521ef7054806424c97dac5ee71b3a05ed5b9d7f4 (diff) | |
| download | scintilla-mirror-e0e105ea1559874a5a9097461d0d7933cb5cbbb4.tar.gz | |
Remove CGContextRef field in QuartzTextLayout as it is only used in draw method
where it can easily be provided. Retaining a CGContextRef in QuartzTextLayout
could lead to it being used after being invalidated.
Diffstat (limited to 'cocoa/QuartzTextLayout.h')
| -rw-r--r-- | cocoa/QuartzTextLayout.h | 20 | 
1 files changed, 6 insertions, 14 deletions
| diff --git a/cocoa/QuartzTextLayout.h b/cocoa/QuartzTextLayout.h index c33231176..a3ed910de 100644 --- a/cocoa/QuartzTextLayout.h +++ b/cocoa/QuartzTextLayout.h @@ -18,12 +18,8 @@  class QuartzTextLayout {  public: -	/** Create a text layout for drawing on the specified context. */ -	explicit QuartzTextLayout(CGContextRef context) { -		mString = NULL; -		mLine = NULL; -		stringLength = 0; -		setContext(context); +	/** Create a text layout for drawing. */ +	QuartzTextLayout() : mString(NULL), mLine(NULL), stringLength(0) {  	}  	~QuartzTextLayout() { @@ -58,11 +54,12 @@ public:  		CFRelease(str);  	} -	/** Draw the text layout into the current CGContext at the specified position. +	/** Draw the text layout into a CGContext at the specified position. +	* @param gc The CGContext in which to draw the text.  	* @param x The x axis position to draw the baseline in the current CGContext.  	* @param y The y axis position to draw the baseline in the current CGContext. */ -	void draw(float x, float y) { -		if (mLine == NULL) +	void draw(CGContextRef gc, float x, float y) { +		if (!mLine)  			return;  		::CGContextSetTextMatrix(gc, CGAffineTransformMakeScale(1.0, -1.0)); @@ -89,12 +86,7 @@ public:  		return stringLength;  	} -	inline void setContext(CGContextRef context) { -		gc = context; -	} -  private: -	CGContextRef gc;  	CFAttributedStringRef mString;  	CTLineRef mLine;  	CFIndex stringLength; | 
