diff options
Diffstat (limited to 'cocoa/PlatCocoa.h')
| -rw-r--r-- | cocoa/PlatCocoa.h | 154 | 
1 files changed, 76 insertions, 78 deletions
diff --git a/cocoa/PlatCocoa.h b/cocoa/PlatCocoa.h index f8f1bd698..1394a7b16 100644 --- a/cocoa/PlatCocoa.h +++ b/cocoa/PlatCocoa.h @@ -21,101 +21,99 @@  #include "QuartzTextLayout.h" -NSRect PRectangleToNSRect(const Scintilla::PRectangle& rc); -Scintilla::PRectangle NSRectToPRectangle(NSRect& rc); +NSRect PRectangleToNSRect(const Scintilla::PRectangle &rc); +Scintilla::PRectangle NSRectToPRectangle(NSRect &rc);  CFStringEncoding EncodingFromCharacterSet(bool unicode, int characterSet); -@interface ScintillaContextMenu : NSMenu -{ -  Scintilla::ScintillaCocoa* owner; +@interface ScintillaContextMenu : NSMenu { +	Scintilla::ScintillaCocoa *owner;  } -- (void) handleCommand: (NSMenuItem*) sender; -- (void) setOwner: (Scintilla::ScintillaCocoa*) newOwner; +- (void) handleCommand: (NSMenuItem *) sender; +- (void) setOwner: (Scintilla::ScintillaCocoa *) newOwner;  @end  namespace Scintilla {  // A class to do the actual text rendering for us using Quartz 2D. -class SurfaceImpl : public Surface -{ +class SurfaceImpl : public Surface {  private: -  bool unicodeMode; -  float x; -  float y; +	bool unicodeMode; +	float x; +	float y; -  CGContextRef gc; +	CGContextRef gc; -  /** The text layout instance */ -  std::unique_ptr<QuartzTextLayout> textLayout; -  int codePage; -  int verticalDeviceResolution; +	/** The text layout instance */ +	std::unique_ptr<QuartzTextLayout> textLayout; +	int codePage; +	int verticalDeviceResolution; -  /** If the surface is a bitmap context, contains a reference to the bitmap data. */ -  std::unique_ptr<uint8_t[]> bitmapData; -  /** If the surface is a bitmap context, stores the dimensions of the bitmap. */ -  int bitmapWidth; -  int bitmapHeight; +	/** If the surface is a bitmap context, contains a reference to the bitmap data. */ +	std::unique_ptr<uint8_t[]> bitmapData; +	/** If the surface is a bitmap context, stores the dimensions of the bitmap. */ +	int bitmapWidth; +	int bitmapHeight; -  /** Set the CGContext's fill colour to the specified desired colour. */ -  void FillColour( const ColourDesired& back ); +	/** Set the CGContext's fill colour to the specified desired colour. */ +	void FillColour(const ColourDesired &back); -  // 24-bit RGB+A bitmap data constants -  static const int BITS_PER_COMPONENT = 8; -  static const int BITS_PER_PIXEL = BITS_PER_COMPONENT * 4; -  static const int BYTES_PER_PIXEL = BITS_PER_PIXEL / 8; +	// 24-bit RGB+A bitmap data constants +	static const int BITS_PER_COMPONENT = 8; +	static const int BITS_PER_PIXEL = BITS_PER_COMPONENT * 4; +	static const int BYTES_PER_PIXEL = BITS_PER_PIXEL / 8;  public: -  SurfaceImpl(); -  ~SurfaceImpl() override; - -  void Init(WindowID wid) override; -  void Init(SurfaceID sid, WindowID wid) override; -  void InitPixMap(int width, int height, Surface *surface_, WindowID wid) override; -  CGContextRef GetContext() { return gc; } - -  void Release() override; -  bool Initialised() override; -  void PenColour(ColourDesired fore) override; - -  /** Returns a CGImageRef that represents the surface. Returns NULL if this is not possible. */ -  CGImageRef GetImage(); -  void CopyImageRectangle(Surface &surfaceSource, PRectangle srcRect, PRectangle dstRect); - -  int LogPixelsY() override; -  int DeviceHeightFont(int points) override; -  void MoveTo(int x_, int y_) override; -  void LineTo(int x_, int y_) override; -  void Polygon(Scintilla::Point *pts, int npts, ColourDesired fore, ColourDesired back) override; -  void RectangleDraw(PRectangle rc, ColourDesired fore, ColourDesired back) override; -  void FillRectangle(PRectangle rc, ColourDesired back) override; -  void FillRectangle(PRectangle rc, Surface &surfacePattern) override; -  void RoundedRectangle(PRectangle rc, ColourDesired fore, ColourDesired back) override; -  void AlphaRectangle(PRectangle rc, int cornerSize, ColourDesired fill, int alphaFill, -                     ColourDesired outline, int alphaOutline, int flags) override; -  void DrawRGBAImage(PRectangle rc, int width, int height, const unsigned char *pixelsImage) override; -  void Ellipse(PRectangle rc, ColourDesired fore, ColourDesired back) override; -  void Copy(PRectangle rc, Scintilla::Point from, Surface &surfaceSource) override; -  void DrawTextNoClip(PRectangle rc, Font &font_, XYPOSITION ybase, const char *s, int len, ColourDesired fore, -                     ColourDesired back) override; -  void DrawTextClipped(PRectangle rc, Font &font_, XYPOSITION ybase, const char *s, int len, ColourDesired fore, -                      ColourDesired back) override; -  void DrawTextTransparent(PRectangle rc, Font &font_, XYPOSITION ybase, const char *s, int len, ColourDesired fore) override; -  void MeasureWidths(Font &font_, const char *s, int len, XYPOSITION *positions) override; -  XYPOSITION WidthText(Font &font_, const char *s, int len) override; -  XYPOSITION WidthChar(Font &font_, char ch) override; -  XYPOSITION Ascent(Font &font_) override; -  XYPOSITION Descent(Font &font_) override; -  XYPOSITION InternalLeading(Font &font_) override; -  XYPOSITION ExternalLeading(Font &font_) override; -  XYPOSITION Height(Font &font_) override; -  XYPOSITION AverageCharWidth(Font &font_) override; - -  void SetClip(PRectangle rc) override; -  void FlushCachedState() override; - -  void SetUnicodeMode(bool unicodeMode_) override; -  void SetDBCSMode(int codePage_) override; +	SurfaceImpl(); +	~SurfaceImpl() override; + +	void Init(WindowID wid) override; +	void Init(SurfaceID sid, WindowID wid) override; +	void InitPixMap(int width, int height, Surface *surface_, WindowID wid) override; +	CGContextRef GetContext() { return gc; } + +	void Release() override; +	bool Initialised() override; +	void PenColour(ColourDesired fore) override; + +	/** Returns a CGImageRef that represents the surface. Returns NULL if this is not possible. */ +	CGImageRef GetImage(); +	void CopyImageRectangle(Surface &surfaceSource, PRectangle srcRect, PRectangle dstRect); + +	int LogPixelsY() override; +	int DeviceHeightFont(int points) override; +	void MoveTo(int x_, int y_) override; +	void LineTo(int x_, int y_) override; +	void Polygon(Scintilla::Point *pts, int npts, ColourDesired fore, ColourDesired back) override; +	void RectangleDraw(PRectangle rc, ColourDesired fore, ColourDesired back) override; +	void FillRectangle(PRectangle rc, ColourDesired back) override; +	void FillRectangle(PRectangle rc, Surface &surfacePattern) override; +	void RoundedRectangle(PRectangle rc, ColourDesired fore, ColourDesired back) override; +	void AlphaRectangle(PRectangle rc, int cornerSize, ColourDesired fill, int alphaFill, +			    ColourDesired outline, int alphaOutline, int flags) override; +	void DrawRGBAImage(PRectangle rc, int width, int height, const unsigned char *pixelsImage) override; +	void Ellipse(PRectangle rc, ColourDesired fore, ColourDesired back) override; +	void Copy(PRectangle rc, Scintilla::Point from, Surface &surfaceSource) override; +	void DrawTextNoClip(PRectangle rc, Font &font_, XYPOSITION ybase, const char *s, int len, ColourDesired fore, +			    ColourDesired back) override; +	void DrawTextClipped(PRectangle rc, Font &font_, XYPOSITION ybase, const char *s, int len, ColourDesired fore, +			     ColourDesired back) override; +	void DrawTextTransparent(PRectangle rc, Font &font_, XYPOSITION ybase, const char *s, int len, ColourDesired fore) override; +	void MeasureWidths(Font &font_, const char *s, int len, XYPOSITION *positions) override; +	XYPOSITION WidthText(Font &font_, const char *s, int len) override; +	XYPOSITION WidthChar(Font &font_, char ch) override; +	XYPOSITION Ascent(Font &font_) override; +	XYPOSITION Descent(Font &font_) override; +	XYPOSITION InternalLeading(Font &font_) override; +	XYPOSITION ExternalLeading(Font &font_) override; +	XYPOSITION Height(Font &font_) override; +	XYPOSITION AverageCharWidth(Font &font_) override; + +	void SetClip(PRectangle rc) override; +	void FlushCachedState() override; + +	void SetUnicodeMode(bool unicodeMode_) override; +	void SetDBCSMode(int codePage_) override;  }; // SurfaceImpl class  } // Scintilla namespace  | 
