Logo ROOT  
Reference Guide
X11Buffer.h
Go to the documentation of this file.
1 // @(#)root/graf2d:$Id$
2 // Author: Timur Pocheptsov 29/02/2012
3 
4 /*************************************************************************
5  * Copyright (C) 1995-2012, Rene Brun and Fons Rademakers. *
6  * All rights reserved. *
7  * *
8  * For the licensing terms see $ROOTSYS/LICENSE. *
9  * For the list of contributors see $ROOTSYS/README/CREDITS. *
10  *************************************************************************/
11 
12 #ifndef ROOT_X11Buffer
13 #define ROOT_X11Buffer
14 
15 #include <vector>
16 #include <string>
17 
18 #include <Cocoa/Cocoa.h>
19 
20 #include "CocoaGuiTypes.h"
21 #include "GuiTypes.h"
22 
23 //////////////////////////////////////////////////////////////////////////////////
24 // //
25 // Unfortunately, TGCocoa's drawing methods can be called in a //
26 // "wrong" time and place: not from QuartzView -drawRect. //
27 // For example, on mouse move. This is bad and unnatural for Cocoa application, //
28 // since I expect GUI to draw only when I'm ready == ... called from drawRect. //
29 // In X11 commands are buffered and this buffer is flushed at some points. //
30 // I'm trying to emulate this, just to make GUI happy. //
31 // //
32 //////////////////////////////////////////////////////////////////////////////////
33 
34 @class QuartzView;
35 
36 namespace ROOT {
37 namespace MacOSX {
38 
39 namespace Details {
40 class CocoaPrivate;
41 }
42 
43 namespace X11 {
44 
45 class Command {
46  friend class CommandBuffer;
47 
48 protected:
49  const Drawable_t fID;
50  const GCValues_t fGC;
51 
52 public:
53  Command(Drawable_t wid);
54  Command(Drawable_t wid, const GCValues_t &gc);
55  virtual ~Command();
56 
57  virtual bool HasOperand(Drawable_t drawable)const;
58  virtual bool IsGraphicsCommand()const;//By-default - false.
59 
60  virtual void Execute()const = 0;
61  virtual void Execute(CGContextRef /*ctx*/)const;
62 
63 private:
64  Command(const Command &rhs);
65  Command &operator = (const Command &rhs);
66 };
67 
68 class DrawLine : public Command {
69 private:
70  const Point fP1;
71  const Point fP2;
72 
73 public:
74  DrawLine(Drawable_t wid, const GCValues_t &gc, const Point &p1, const Point &p2);
75  void Execute()const;
76  bool IsGraphicsCommand()const
77  {
78  return true;
79  }
80 };
81 
82 class DrawSegments : public Command {
83 private:
84  std::vector<Segment_t> fSegments;
85 
86 public:
87  DrawSegments(Drawable_t wid, const GCValues_t &gc, const Segment_t *segments, Int_t nSegments);
88  void Execute()const;
89  bool IsGraphicsCommand()const
90  {
91  return true;
92  }
93 };
94 
95 class ClearArea : public Command {
96 private:
97  const Rectangle_t fArea;//to be replaced with X11::Rectangle
98 
99 public:
100  ClearArea(Window_t wid, const Rectangle_t &area);
101  void Execute()const;
102  bool IsGraphicsCommand()const
103  {
104  return true;
105  }
106 };
107 
108 class CopyArea : public Command {
109 private:
111  const Rectangle_t fArea;//to be replaced with X11::Rectangle
113 
114 public:
115  CopyArea(Drawable_t src, Drawable_t dst, const GCValues_t &gc, const Rectangle_t &area, const Point &dstPoint);
116 
117  bool HasOperand(Drawable_t drawable)const;
118  bool IsGraphicsCommand()const
119  {
120  return true;
121  }
122 
123  void Execute()const;
124 
125 };
126 
127 class DrawString : public Command {
128 private:
129  const Point fPoint;
130  const std::string fText;
131 
132 public:
133  DrawString(Drawable_t wid, const GCValues_t &gc, const Point &point, const std::string &text);
134 
135  bool IsGraphicsCommand()const
136  {
137  return true;
138  }
139 
140  void Execute()const;
141 };
142 
143 class FillRectangle : public Command {
144 private:
145  const Rectangle_t fRectangle;//to be replaced with X11::Rectangle
146 
147 public:
148  FillRectangle(Drawable_t wid, const GCValues_t &gc, const Rectangle_t &rectangle);
149 
150  bool IsGraphicsCommand()const
151  {
152  return true;
153  }
154 
155  void Execute()const;
156 };
157 
158 class FillPolygon : public Command {
159 private:
160  std::vector<Point_t> fPolygon;
161 
162 public:
163  FillPolygon(Drawable_t wid, const GCValues_t &gc, const Point_t *points, Int_t nPoints);
164 
165  bool IsGraphicsCommand()const
166  {
167  return true;
168  }
169 
170  void Execute()const;
171 };
172 
173 class DrawRectangle : public Command {
174 private:
175  Rectangle_t fRectangle;//to be replaced with X11::Rectangle
176 
177 public:
178  DrawRectangle(Drawable_t wid, const GCValues_t &gc, const Rectangle_t &rectangle);
179 
180  bool IsGraphicsCommand()const
181  {
182  return true;
183  }
184 
185  void Execute()const;
186 };
187 
188 class UpdateWindow : public Command {
189 private:
191 
192 public:
193  UpdateWindow(QuartzView *view);
194 
195  bool IsGraphicsCommand()const
196  {
197  return true;
198  }
199 
200  void Execute()const;
201 };
202 
203 class DeletePixmap : public Command {
204 public:
205  DeletePixmap(Pixmap_t pixmap);
206  void Execute()const;
207 };
208 
209 //Set of 'xor' operations, required by TCanvas and ExecuteEvent's machinery.
210 class DrawBoxXor : public Command {
211 private:
214 
215 public:
216  DrawBoxXor(Window_t windowID, const Point &p1, const Point &p2);
217 
218  void Execute()const;
219  void Execute(CGContextRef ctx)const;
220 };
221 
222 class DrawLineXor : public Command {
223 private:
226 
227 public:
228  DrawLineXor(Window_t windowID, const Point &p1, const Point &p2);
229 
230  void Execute()const;
231  void Execute(CGContextRef ctx)const;
232 
233  Point start() const {return fP1;}
234  Point end() const {return fP2;}
235 };
236 
238 private:
241 
242  std::vector<Command *> fCommands;
243  std::vector<QuartzView *> fViewBranch;
244 
245  std::vector<Command *> fXorOps;
246 public:
247  typedef std::vector<Command *>::size_type size_type;
248 
249  CommandBuffer();
250  ~CommandBuffer();
251 
252  void AddDrawLine(Drawable_t wid, const GCValues_t &gc, Int_t x1, Int_t y1, Int_t x2, Int_t y2);
253  void AddDrawSegments(Drawable_t wid, const GCValues_t &gc, const Segment_t *segments, Int_t nSegments);
254  void AddClearArea(Window_t wid, Int_t x, Int_t y, UInt_t w, UInt_t h);
255  void AddCopyArea(Drawable_t src, Drawable_t dst, const GCValues_t &gc, Int_t srcX, Int_t srcY, UInt_t width, UInt_t height, Int_t dstX, Int_t dstY);
256  void AddDrawString(Drawable_t wid, const GCValues_t &gc, Int_t x, Int_t y, const char *text, Int_t len);
257  void AddFillRectangle(Drawable_t wid, const GCValues_t &gc, Int_t x, Int_t y, UInt_t w, UInt_t h);
258  void AddFillPolygon(Drawable_t wid, const GCValues_t &gc, const Point_t *polygon, Int_t nPoints);
259  void AddDrawRectangle(Drawable_t wid, const GCValues_t &gc, Int_t x, Int_t y, UInt_t w, UInt_t h);
260  void AddUpdateWindow(QuartzView *view);
261  void AddDeletePixmap(Pixmap_t pixmap);
262 
263  //'XOR' graphics for canvas.
264  void AddDrawBoxXor(Window_t windowID, Int_t x1, Int_t y1, Int_t x2, Int_t y2);
265  void AddDrawLineXor(Window_t windowID, Int_t x1, Int_t y1, Int_t x2, Int_t y2);
266 
267  void Flush(Details::CocoaPrivate *impl);
272 
274  {
275  return fCommands.size();
276  }
277 
278  void ClearXOROperations();
279 private:
280  void ClearCommands();
281  //Clip related stuff.
282  struct WidgetRect {
283  int fX1;
284  int fY1;
285  int fX2;
286  int fY2;
287 
289  : fX1(0), fY1(0), fX2(0), fY2(0)
290  {
291  }
292 
293  WidgetRect(int leftX, int bottomY, int rightX, int topY)
294  : fX1(leftX), fY1(bottomY), fX2(rightX), fY2(topY)
295  {
296  }
297  };
298 
299  void ClipOverlaps(QuartzView *view);
300  void BuildClipRegion(const WidgetRect &rect);
301 
302  std::vector<WidgetRect> fRectsToClip;
303  std::vector<CGRect> fClippedRegion;
304  std::vector<int> fXBounds;
305  std::vector<int> fYBounds;
306  std::vector<bool> fGrid;
307 };
308 
309 }//X11
310 }//MacOSX
311 }//ROOT
312 
313 #endif
ROOT::MacOSX::X11::CommandBuffer::WidgetRect::WidgetRect
WidgetRect()
Definition: X11Buffer.h:288
ROOT::MacOSX::X11::CommandBuffer::fCommands
std::vector< Command * > fCommands
Definition: X11Buffer.h:242
ROOT::MacOSX::X11::DrawLine::IsGraphicsCommand
bool IsGraphicsCommand() const
Definition: X11Buffer.h:76
ROOT::MacOSX::X11::DrawRectangle
Definition: X11Buffer.h:173
ROOT::MacOSX::X11::CopyArea::fSrc
const Drawable_t fSrc
Definition: X11Buffer.h:110
ROOT::MacOSX::X11::FillPolygon::IsGraphicsCommand
bool IsGraphicsCommand() const
Definition: X11Buffer.h:165
ROOT::MacOSX::X11::CommandBuffer::RemoveXORGraphicsOperationsForWindow
void RemoveXORGraphicsOperationsForWindow(Window_t wid)
Definition: X11Buffer.mm:687
Pixmap_t
Handle_t Pixmap_t
Definition: GuiTypes.h:29
ROOT::MacOSX::X11::Command::Execute
virtual void Execute() const =0
ROOT::MacOSX::X11::DrawLineXor
Definition: X11Buffer.h:222
ROOT::MacOSX::X11::CommandBuffer::AddDrawBoxXor
void AddDrawBoxXor(Window_t windowID, Int_t x1, Int_t y1, Int_t x2, Int_t y2)
Definition: X11Buffer.mm:487
ROOT::MacOSX::X11::DeletePixmap
Definition: X11Buffer.h:203
ROOT::MacOSX::X11::Command::IsGraphicsCommand
virtual bool IsGraphicsCommand() const
Definition: X11Buffer.mm:68
Rectangle_t
Definition: GuiTypes.h:360
ROOT::MacOSX::X11::DrawSegments
Definition: X11Buffer.h:82
ROOT::MacOSX::X11::DrawLineXor::Execute
void Execute() const
Definition: X11Buffer.mm:302
ROOT::MacOSX::X11::DrawRectangle::fRectangle
Rectangle_t fRectangle
Definition: X11Buffer.h:175
ROOT::MacOSX::X11::DrawString::Execute
void Execute() const
Definition: X11Buffer.mm:163
Point_t
Definition: GuiTypes.h:355
ROOT::MacOSX::X11::UpdateWindow::UpdateWindow
UpdateWindow(QuartzView *view)
Definition: X11Buffer.mm:231
ROOT::MacOSX::X11::CommandBuffer::WidgetRect::fY2
int fY2
Definition: X11Buffer.h:286
ROOT::MacOSX::X11::ClearArea::Execute
void Execute() const
Definition: X11Buffer.mm:118
ROOT::MacOSX::X11::UpdateWindow::IsGraphicsCommand
bool IsGraphicsCommand() const
Definition: X11Buffer.h:195
ROOT::MacOSX::X11::DrawLine::fP1
const Point fP1
Definition: X11Buffer.h:70
ROOT::MacOSX::X11::DrawLine::DrawLine
DrawLine(Drawable_t wid, const GCValues_t &gc, const Point &p1, const Point &p2)
Definition: X11Buffer.mm:74
ROOT::MacOSX::X11::CopyArea::fDstPoint
const Point fDstPoint
Definition: X11Buffer.h:112
ROOT::MacOSX::X11::DrawSegments::Execute
void Execute() const
Definition: X11Buffer.mm:102
ROOT::MacOSX::X11::CommandBuffer::WidgetRect::fY1
int fY1
Definition: X11Buffer.h:284
ROOT::MacOSX::X11::UpdateWindow::fView
QuartzView * fView
Definition: X11Buffer.h:190
ROOT::MacOSX::X11::FillRectangle::Execute
void Execute() const
Definition: X11Buffer.mm:181
GCValues_t
Definition: GuiTypes.h:223
ROOT::MacOSX::X11::DrawRectangle::DrawRectangle
DrawRectangle(Drawable_t wid, const GCValues_t &gc, const Rectangle_t &rectangle)
Definition: X11Buffer.mm:212
ROOT::MacOSX::X11::DrawString::DrawString
DrawString(Drawable_t wid, const GCValues_t &gc, const Point &point, const std::string &text)
Definition: X11Buffer.mm:154
ROOT::MacOSX::X11::DrawLine::fP2
const Point fP2
Definition: X11Buffer.h:71
width
include TDocParser_001 C image html pict1_TDocParser_001 png width
Definition: TDocParser.cxx:121
ROOT::MacOSX::X11::UpdateWindow
Definition: X11Buffer.h:188
ROOT::MacOSX::X11::ClearArea::IsGraphicsCommand
bool IsGraphicsCommand() const
Definition: X11Buffer.h:102
ROOT::MacOSX::X11::DrawSegments::DrawSegments
DrawSegments(Drawable_t wid, const GCValues_t &gc, const Segment_t *segments, Int_t nSegments)
Definition: X11Buffer.mm:91
x
Double_t x[n]
Definition: legend1.C:17
ROOT::MacOSX::X11::DrawRectangle::Execute
void Execute() const
Definition: X11Buffer.mm:220
ROOT::MacOSX::X11::DrawLine
Definition: X11Buffer.h:68
ROOT::MacOSX::X11::CommandBuffer::AddDrawLine
void AddDrawLine(Drawable_t wid, const GCValues_t &gc, Int_t x1, Int_t y1, Int_t x2, Int_t y2)
Definition: X11Buffer.mm:326
ROOT::MacOSX::X11::Command::fID
const Drawable_t fID
Definition: X11Buffer.h:49
ROOT::MacOSX::X11::CommandBuffer::WidgetRect::fX2
int fX2
Definition: X11Buffer.h:285
ROOT::MacOSX::X11::FillPolygon
Definition: X11Buffer.h:158
ROOT::MacOSX::X11::FillRectangle::fRectangle
const Rectangle_t fRectangle
Definition: X11Buffer.h:145
ROOT::MacOSX::X11::CopyArea
Definition: X11Buffer.h:108
ROOT::MacOSX::X11::CommandBuffer::CommandBuffer
CommandBuffer()
Definition: X11Buffer.mm:314
ROOT::MacOSX::X11::CommandBuffer::AddFillRectangle
void AddFillRectangle(Drawable_t wid, const GCValues_t &gc, Int_t x, Int_t y, UInt_t w, UInt_t h)
Definition: X11Buffer.mm:409
ROOT::MacOSX::X11::DrawString::fText
const std::string fText
Definition: X11Buffer.h:130
ROOT::MacOSX::X11::ClearArea::ClearArea
ClearArea(Window_t wid, const Rectangle_t &area)
Definition: X11Buffer.mm:111
text
TText * text
Definition: entrylist_figure1.C:10
ROOT::MacOSX::X11::DrawBoxXor::fP1
Point fP1
Definition: X11Buffer.h:212
ROOT::MacOSX::X11::ClearArea
Definition: X11Buffer.h:95
ROOT::MacOSX::X11::CopyArea::IsGraphicsCommand
bool IsGraphicsCommand() const
Definition: X11Buffer.h:118
ROOT::MacOSX::X11::FillRectangle::FillRectangle
FillRectangle(Drawable_t wid, const GCValues_t &gc, const Rectangle_t &rectangle)
Definition: X11Buffer.mm:173
ROOT::MacOSX::X11::CommandBuffer::BuildClipRegion
void BuildClipRegion(const WidgetRect &rect)
Definition: X11Buffer.mm:894
x1
static const double x1[5]
Definition: RooGaussKronrodIntegrator1D.cxx:346
Drawable_t
Handle_t Drawable_t
Definition: GuiTypes.h:30
ROOT::MacOSX::X11::CommandBuffer::WidgetRect
Definition: X11Buffer.h:282
ROOT::MacOSX::X11::CommandBuffer::fClippedRegion
std::vector< CGRect > fClippedRegion
Definition: X11Buffer.h:303
ROOT::MacOSX::X11::DrawString::fPoint
const Point fPoint
Definition: X11Buffer.h:129
ROOT::MacOSX::X11::FillPolygon::Execute
void Execute() const
Definition: X11Buffer.mm:203
ROOT::MacOSX::X11::CopyArea::fArea
const Rectangle_t fArea
Definition: X11Buffer.h:111
ROOT::MacOSX::X11::DrawBoxXor::DrawBoxXor
DrawBoxXor(Window_t windowID, const Point &p1, const Point &p2)
Definition: X11Buffer.mm:264
ROOT::MacOSX::X11::CommandBuffer::CommandBuffer
CommandBuffer(const CommandBuffer &rhs)
ROOT::MacOSX::X11::DeletePixmap::Execute
void Execute() const
Definition: X11Buffer.mm:255
ROOT::MacOSX::X11::CommandBuffer::Flush
void Flush(Details::CocoaPrivate *impl)
Definition: X11Buffer.mm:511
h
#define h(i)
Definition: RSha256.hxx:106
ROOT::MacOSX::X11::DrawSegments::fSegments
std::vector< Segment_t > fSegments
Definition: X11Buffer.h:84
ROOT::MacOSX::X11::Command::~Command
virtual ~Command()
Definition: X11Buffer.mm:52
ROOT::MacOSX::X11::CommandBuffer::fXorOps
std::vector< Command * > fXorOps
Definition: X11Buffer.h:245
ROOT::MacOSX::X11::CommandBuffer::~CommandBuffer
~CommandBuffer()
Definition: X11Buffer.mm:319
ROOT::MacOSX::X11::CommandBuffer::fViewBranch
std::vector< QuartzView * > fViewBranch
Definition: X11Buffer.h:243
GuiTypes.h
QuartzView
Definition: QuartzWindow.h:183
ROOT::MacOSX::X11::DrawLineXor::DrawLineXor
DrawLineXor(Window_t windowID, const Point &p1, const Point &p2)
Definition: X11Buffer.mm:294
ROOT::MacOSX::X11::DrawString
Definition: X11Buffer.h:127
ROOT::MacOSX::X11::Command::Command
Command(Drawable_t wid)
Definition: X11Buffer.mm:45
ROOT::MacOSX::X11::DrawSegments::IsGraphicsCommand
bool IsGraphicsCommand() const
Definition: X11Buffer.h:89
ROOT::MacOSX::X11::CommandBuffer::BufferSize
size_type BufferSize() const
Definition: X11Buffer.h:273
ROOT::MacOSX::X11::DrawBoxXor::fP2
Point fP2
Definition: X11Buffer.h:213
Window_t
Handle_t Window_t
Definition: GuiTypes.h:28
ROOT::MacOSX::Details::CocoaPrivate
Definition: CocoaPrivate.h:49
y
Double_t y[n]
Definition: legend1.C:17
ROOT::MacOSX::X11::CommandBuffer::AddDrawSegments
void AddDrawSegments(Drawable_t wid, const GCValues_t &gc, const Segment_t *segments, Int_t nSegments)
Definition: X11Buffer.mm:340
ROOT::MacOSX::X11::CommandBuffer::WidgetRect::fX1
int fX1
Definition: X11Buffer.h:283
unsigned int
ROOT::MacOSX::X11::DrawLineXor::end
Point end() const
Definition: X11Buffer.h:234
ROOT::MacOSX::X11::CopyArea::HasOperand
bool HasOperand(Drawable_t drawable) const
Definition: X11Buffer.mm:137
ROOT::MacOSX::X11::Command::fGC
const GCValues_t fGC
Definition: X11Buffer.h:50
ROOT::MacOSX::Details
Definition: TMacOSXSystem.h:30
ROOT::MacOSX::X11::CommandBuffer::AddClearArea
void AddClearArea(Window_t wid, Int_t x, Int_t y, UInt_t w, UInt_t h)
Definition: X11Buffer.mm:356
ROOT::MacOSX::X11::CommandBuffer::AddUpdateWindow
void AddUpdateWindow(QuartzView *view)
Definition: X11Buffer.mm:461
ROOT::MacOSX::X11::DrawRectangle::IsGraphicsCommand
bool IsGraphicsCommand() const
Definition: X11Buffer.h:180
ROOT::MacOSX::X11::FillRectangle
Definition: X11Buffer.h:143
ROOT::MacOSX::X11::CommandBuffer::fXBounds
std::vector< int > fXBounds
Definition: X11Buffer.h:304
ROOT::MacOSX::X11::CommandBuffer::AddDeletePixmap
void AddDeletePixmap(Pixmap_t pixmap)
Definition: X11Buffer.mm:475
ROOT::MacOSX::X11::UpdateWindow::Execute
void Execute() const
Definition: X11Buffer.mm:239
ROOT::MacOSX::X11::Command::operator=
Command & operator=(const Command &rhs)
ROOT::MacOSX::X11::CommandBuffer::ClipOverlaps
void ClipOverlaps(QuartzView *view)
Definition: X11Buffer.mm:737
ROOT::MacOSX::X11::DrawLineXor::fP1
Point fP1
Definition: X11Buffer.h:224
ROOT::MacOSX::X11::CommandBuffer::AddCopyArea
void AddCopyArea(Drawable_t src, Drawable_t dst, const GCValues_t &gc, Int_t srcX, Int_t srcY, UInt_t width, UInt_t height, Int_t dstX, Int_t dstY)
Definition: X11Buffer.mm:373
ROOT::MacOSX::X11::DrawBoxXor::Execute
void Execute() const
Definition: X11Buffer.mm:276
ROOT::MacOSX::X11::DrawBoxXor
Definition: X11Buffer.h:210
ROOT::MacOSX::X11::CommandBuffer::AddDrawString
void AddDrawString(Drawable_t wid, const GCValues_t &gc, Int_t x, Int_t y, const char *text, Int_t len)
Definition: X11Buffer.mm:393
ROOT::MacOSX::X11::DrawLineXor::fP2
Point fP2
Definition: X11Buffer.h:225
ROOT::MacOSX::X11::CommandBuffer::size_type
std::vector< Command * >::size_type size_type
Definition: X11Buffer.h:247
ROOT::MacOSX::X11::CommandBuffer::RemoveOperationsForDrawable
void RemoveOperationsForDrawable(Drawable_t wid)
Definition: X11Buffer.mm:656
points
point * points
Definition: X3DBuffer.c:22
ROOT::MacOSX::X11::CommandBuffer::ClearXOROperations
void ClearXOROperations()
Definition: X11Buffer.mm:707
ROOT::MacOSX::X11::DrawString::IsGraphicsCommand
bool IsGraphicsCommand() const
Definition: X11Buffer.h:135
ROOT::MacOSX::X11::ClearArea::fArea
const Rectangle_t fArea
Definition: X11Buffer.h:97
ROOT::MacOSX::X11::CommandBuffer::FlushXOROps
void FlushXOROps(Details::CocoaPrivate *impl)
Definition: X11Buffer.mm:593
x2
static const double x2[5]
Definition: RooGaussKronrodIntegrator1D.cxx:364
ROOT::MacOSX::X11::DrawLineXor::start
Point start() const
Definition: X11Buffer.h:233
ROOT::MacOSX::X11::Command
Definition: X11Buffer.h:45
ROOT::MacOSX::X11::DeletePixmap::DeletePixmap
DeletePixmap(Pixmap_t pixmap)
Definition: X11Buffer.mm:249
ROOT::MacOSX::X11::CommandBuffer::AddDrawRectangle
void AddDrawRectangle(Drawable_t wid, const GCValues_t &gc, Int_t x, Int_t y, UInt_t w, UInt_t h)
Definition: X11Buffer.mm:427
ROOT::MacOSX::X11::CommandBuffer::AddFillPolygon
void AddFillPolygon(Drawable_t wid, const GCValues_t &gc, const Point_t *polygon, Int_t nPoints)
Definition: X11Buffer.mm:445
ROOT::MacOSX::X11::CommandBuffer::fYBounds
std::vector< int > fYBounds
Definition: X11Buffer.h:305
ROOT::MacOSX::X11::CommandBuffer::WidgetRect::WidgetRect
WidgetRect(int leftX, int bottomY, int rightX, int topY)
Definition: X11Buffer.h:293
ROOT::MacOSX::X11::CopyArea::Execute
void Execute() const
Definition: X11Buffer.mm:143
ROOT::MacOSX::X11::FillPolygon::FillPolygon
FillPolygon(Drawable_t wid, const GCValues_t &gc, const Point_t *points, Int_t nPoints)
Definition: X11Buffer.mm:192
ROOT::MacOSX::X11::CommandBuffer
Definition: X11Buffer.h:237
ROOT::MacOSX::X11::CommandBuffer::AddDrawLineXor
void AddDrawLineXor(Window_t windowID, Int_t x1, Int_t y1, Int_t x2, Int_t y2)
Definition: X11Buffer.mm:499
Segment_t
Definition: GuiTypes.h:350
ROOT::MacOSX::X11::CommandBuffer::operator=
CommandBuffer & operator=(const CommandBuffer &rhs)
ROOT::MacOSX::X11::CommandBuffer::fGrid
std::vector< bool > fGrid
Definition: X11Buffer.h:306
ROOT::MacOSX::X11::FillPolygon::fPolygon
std::vector< Point_t > fPolygon
Definition: X11Buffer.h:160
ROOT::MacOSX::X11::Point
Definition: CocoaGuiTypes.h:12
ROOT::MacOSX::X11::FillRectangle::IsGraphicsCommand
bool IsGraphicsCommand() const
Definition: X11Buffer.h:150
ROOT::MacOSX::X11::DrawLine::Execute
void Execute() const
Definition: X11Buffer.mm:82
ROOT
VSD Structures.
Definition: StringConv.hxx:21
CocoaGuiTypes.h
ROOT::MacOSX::X11::CommandBuffer::ClearCommands
void ClearCommands()
Definition: X11Buffer.mm:698
ROOT::MacOSX::X11::CommandBuffer::fRectsToClip
std::vector< WidgetRect > fRectsToClip
Definition: X11Buffer.h:302
ROOT::MacOSX::X11::Command::Command
Command(const Command &rhs)
ROOT::MacOSX::X11::CopyArea::CopyArea
CopyArea(Drawable_t src, Drawable_t dst, const GCValues_t &gc, const Rectangle_t &area, const Point &dstPoint)
Definition: X11Buffer.mm:127
int
ROOT::MacOSX::X11
Definition: CocoaGuiTypes.h:10
ROOT::MacOSX::X11::Command::HasOperand
virtual bool HasOperand(Drawable_t drawable) const
Definition: X11Buffer.mm:62
ROOT::MacOSX::X11::CommandBuffer::RemoveGraphicsOperationsForWindow
void RemoveGraphicsOperationsForWindow(Window_t wid)
Definition: X11Buffer.mm:674