Hot Door CORE  0.7.1
Adobe® Illustrator® Plug-in Library
hdicoreAnnotator.h
Go to the documentation of this file.
1 
7 #ifndef __HDI_CORE_ANNOTATOR__
8 #define __HDI_CORE_ANNOTATOR__
9 
10 #include "hdicoreTypes.h"
11 
12 namespace hdi
13 {
14  namespace plugin
15  {
16  class Annotator;
17  }
18 
19  namespace core
20  {
21  class Callback;
22 
26  class Annotator
27  {
28  public:
32  enum Options
33  {
34  DrawBeforeAllOthers = 1 << 0,
35  DrawOnInactiveDocuments = 1 << 1,
36  DontDrawOnInactiveViews = 1 << 2
37  };
38 
50  Annotator();
51 
59  Annotator(const Annotator& a_);
60 
69  Annotator(const std::string& name_, const Callback& responder_);
70 
76  virtual ~Annotator();
77 
87  virtual Annotator& operator=(const Annotator& rhs_);
88 
97  virtual bool operator==(const Annotator& rhs_) const;
98 
107  virtual bool operator!=(const Annotator& rhs_) const;
108 
116  virtual bool isEmpty() const;
117 
131  virtual void destroy();
132 
144  virtual AIAnnotatorHandle aiAnnotatorHandle() const;
145 
153  virtual std::string name() const;
154 
162  virtual bool active() const;
163 
173  virtual void setActive(const bool active_);
174 
180  virtual void activate();
181 
187  virtual void deactivate();
188 
196  virtual Options options() const;
197 
205  virtual void setOptions(const Options flags_);
206 
214  virtual Callback* const callback() const;
215 
223  virtual void setCallback(const Callback& cb_);
224 
225 
226  private:
227  friend plugin::Annotator* __accessImpl(const Annotator&);
228 
232  void* __data;
233 
239  void* __impl() const;
240  };
241 
242  typedef std::auto_ptr<Annotator> AnnotatorAP;
243 
244  extern plugin::Annotator* __accessImpl(const Annotator&);
245  }
246 }
247 
251 );
252 
256 );
257 
258 #endif
259 // __HDI_CORE_ANNOTATOR__
Deals with annotator registration and drawing callbacks.
Definition: hdicoreAnnotator.h:26
Base class for templated __Callback class.
Definition: hdicoreCallback.h:67
Header file for a wide variety of necessary typedefs, enums, and forwards declarations.
Options
Options for how an annotator should behave.
Definition: hdicoreAnnotator.h:32
Definition: hdicoreaiArray.h:12