Rapicorn - Experimental UI Toolkit - Source Code  13.07.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines
clientapi.hh
Go to the documentation of this file.
00001  // --- Generated by AidaCxxStub ---
00002 #ifndef __RAPICORN_CLIENTAPI_HH_
00003 #define __RAPICORN_CLIENTAPI_HH_
00004 
00005 // includes:
00006 #include <ui/utilities.hh>
00007 namespace Rapicorn {
00008 class WidgetImpl; // FIXME
00009 class WindowImpl;
00010 }
00011 
00012 // --- ClientHH Boilerplate ---
00013 #include <rapicorn-core.hh>
00014 
00015 // --- Interfaces (class declarations) ---
00016 
00017 namespace Rapicorn {
00018 
00020 enum AdjustmentSourceType {
00021   ADJUSTMENT_SOURCE_NONE = 0,
00022   ADJUSTMENT_SOURCE_ANCESTRY_HORIZONTAL = 1,
00023   ADJUSTMENT_SOURCE_ANCESTRY_VERTICAL = 2,
00024   ADJUSTMENT_SOURCE_ANCESTRY_VALUE = 3,
00025 };
00026 inline void operator<<= (Rapicorn::Aida::FieldBuffer &fb,  AdjustmentSourceType  e) { fb <<= Rapicorn::Aida::EnumValue (e); }
00027 inline void operator>>= (Rapicorn::Aida::FieldReader &frr, AdjustmentSourceType &e) { e = AdjustmentSourceType (frr.pop_evalue()); }
00029 
00031 enum AlignType {
00032   ALIGN_LEFT = 1,
00033   ALIGN_CENTER = 2,
00034   ALIGN_RIGHT = 3,
00035 };
00036 inline void operator<<= (Rapicorn::Aida::FieldBuffer &fb,  AlignType  e) { fb <<= Rapicorn::Aida::EnumValue (e); }
00037 inline void operator>>= (Rapicorn::Aida::FieldReader &frr, AlignType &e) { e = AlignType (frr.pop_evalue()); }
00039 
00041 enum AnchorType {
00042   ANCHOR_NONE = 0,
00043   ANCHOR_CENTER = 1,
00044   ANCHOR_EAST = 2,
00045   ANCHOR_NORTH_EAST = 3,
00046   ANCHOR_NORTH = 4,
00047   ANCHOR_NORTH_WEST = 5,
00048   ANCHOR_WEST = 6,
00049   ANCHOR_SOUTH_WEST = 7,
00050   ANCHOR_SOUTH = 8,
00051   ANCHOR_SOUTH_EAST = 9,
00052 };
00053 inline void operator<<= (Rapicorn::Aida::FieldBuffer &fb,  AnchorType  e) { fb <<= Rapicorn::Aida::EnumValue (e); }
00054 inline void operator>>= (Rapicorn::Aida::FieldReader &frr, AnchorType &e) { e = AnchorType (frr.pop_evalue()); }
00056 
00058 enum ClickType {
00059   CLICK_ON_PRESS = 1,
00060   CLICK_ON_RELEASE = 2,
00061   CLICK_SLOW_REPEAT = 3,
00062   CLICK_FAST_REPEAT = 4,
00063   CLICK_KEY_REPEAT = 5,
00064 };
00065 inline void operator<<= (Rapicorn::Aida::FieldBuffer &fb,  ClickType  e) { fb <<= Rapicorn::Aida::EnumValue (e); }
00066 inline void operator>>= (Rapicorn::Aida::FieldReader &frr, ClickType &e) { e = ClickType (frr.pop_evalue()); }
00068 
00070 enum ColorType {
00071   COLOR_NONE = 0,
00072   COLOR_FOREGROUND = 1,
00073   COLOR_BACKGROUND = 2,
00074   COLOR_BACKGROUND_EVEN = 3,
00075   COLOR_BACKGROUND_ODD = 4,
00076   COLOR_DARK = 5,
00077   COLOR_DARK_SHADOW = 6,
00078   COLOR_DARK_GLINT = 7,
00079   COLOR_LIGHT = 8,
00080   COLOR_LIGHT_SHADOW = 9,
00081   COLOR_LIGHT_GLINT = 10,
00082   COLOR_FOCUS = 11,
00083   COLOR_BLACK = 12,
00084   COLOR_WHITE = 13,
00085   COLOR_RED = 14,
00086   COLOR_YELLOW = 15,
00087   COLOR_GREEN = 16,
00088   COLOR_CYAN = 17,
00089   COLOR_BLUE = 18,
00090   COLOR_MAGENTA = 19,
00091 };
00092 inline void operator<<= (Rapicorn::Aida::FieldBuffer &fb,  ColorType  e) { fb <<= Rapicorn::Aida::EnumValue (e); }
00093 inline void operator>>= (Rapicorn::Aida::FieldReader &frr, ColorType &e) { e = ColorType (frr.pop_evalue()); }
00095 
00097 enum ColorSchemeType {
00098   COLOR_INHERIT = 0,
00099   COLOR_NORMAL = 1,
00100   COLOR_SELECTED = 2,
00101   COLOR_BASE = 3,
00102 };
00103 inline void operator<<= (Rapicorn::Aida::FieldBuffer &fb,  ColorSchemeType  e) { fb <<= Rapicorn::Aida::EnumValue (e); }
00104 inline void operator>>= (Rapicorn::Aida::FieldReader &frr, ColorSchemeType &e) { e = ColorSchemeType (frr.pop_evalue()); }
00106 
00108 enum DirType {
00109   DIR_NONE = 0,
00110   DIR_RIGHT = 1,
00111   DIR_UP = 2,
00112   DIR_LEFT = 3,
00113   DIR_DOWN = 4,
00114 };
00115 inline void operator<<= (Rapicorn::Aida::FieldBuffer &fb,  DirType  e) { fb <<= Rapicorn::Aida::EnumValue (e); }
00116 inline void operator>>= (Rapicorn::Aida::FieldReader &frr, DirType &e) { e = DirType (frr.pop_evalue()); }
00118 
00120 enum EllipsizeType {
00121   ELLIPSIZE_START = 1,
00122   ELLIPSIZE_MIDDLE = 2,
00123   ELLIPSIZE_END = 3,
00124 };
00125 inline void operator<<= (Rapicorn::Aida::FieldBuffer &fb,  EllipsizeType  e) { fb <<= Rapicorn::Aida::EnumValue (e); }
00126 inline void operator>>= (Rapicorn::Aida::FieldReader &frr, EllipsizeType &e) { e = EllipsizeType (frr.pop_evalue()); }
00128 
00130 enum FocusDirType {
00131   FOCUS_NEXT = 1,
00132   FOCUS_PREV = 2,
00133   FOCUS_RIGHT = 3,
00134   FOCUS_UP = 4,
00135   FOCUS_LEFT = 5,
00136   FOCUS_DOWN = 6,
00137 };
00138 inline void operator<<= (Rapicorn::Aida::FieldBuffer &fb,  FocusDirType  e) { fb <<= Rapicorn::Aida::EnumValue (e); }
00139 inline void operator>>= (Rapicorn::Aida::FieldReader &frr, FocusDirType &e) { e = FocusDirType (frr.pop_evalue()); }
00141 
00143 enum FrameType {
00144   FRAME_NONE = 0,
00145   FRAME_BACKGROUND = 1,
00146   FRAME_IN = 2,
00147   FRAME_OUT = 3,
00148   FRAME_ETCHED_IN = 4,
00149   FRAME_ETCHED_OUT = 5,
00150   FRAME_FOCUS = 6,
00151   FRAME_ALERT_FOCUS = 7,
00152 };
00153 inline void operator<<= (Rapicorn::Aida::FieldBuffer &fb,  FrameType  e) { fb <<= Rapicorn::Aida::EnumValue (e); }
00154 inline void operator>>= (Rapicorn::Aida::FieldReader &frr, FrameType &e) { e = FrameType (frr.pop_evalue()); }
00156 
00158 enum LightingType {
00159   LIGHTING_NONE = 0,
00160   LIGHTING_UPPER_LEFT = 1,
00161   LIGHTING_UPPER_RIGHT = 2,
00162   LIGHTING_LOWER_LEFT = 3,
00163   LIGHTING_LOWER_RIGHT = 4,
00164   LIGHTING_CENTER = 5,
00165   LIGHTING_DIFFUSE = 6,
00166   LIGHTING_DARK_FLAG = 128,
00167   LIGHTING_DARK_UPPER_LEFT = 129,
00168   LIGHTING_DARK_UPPER_RIGHT = 130,
00169   LIGHTING_DARK_LOWER_LEFT = 131,
00170   LIGHTING_DARK_LOWER_RIGHT = 132,
00171   LIGHTING_DARK_CENTER = 133,
00172   LIGHTING_DARK_DIFFUSE = 134,
00173 };
00174 inline void operator<<= (Rapicorn::Aida::FieldBuffer &fb,  LightingType  e) { fb <<= Rapicorn::Aida::EnumValue (e); }
00175 inline void operator>>= (Rapicorn::Aida::FieldReader &frr, LightingType &e) { e = LightingType (frr.pop_evalue()); }
00176 inline LightingType  operator&  (LightingType  s1, LightingType s2) { return LightingType (s1 & Rapicorn::Aida::uint64 (s2)); }
00177 inline LightingType& operator&= (LightingType &s1, LightingType s2) { s1 = s1 & s2; return s1; }
00178 inline LightingType  operator|  (LightingType  s1, LightingType s2) { return LightingType (s1 | Rapicorn::Aida::uint64 (s2)); }
00179 inline LightingType& operator|= (LightingType &s1, LightingType s2) { s1 = s1 | s2; return s1; }
00181 
00183 enum SelectionMode {
00184   SELECTION_NONE = 0,
00185   SELECTION_SINGLE = 1,
00186   SELECTION_BROWSE = 2,
00187   SELECTION_MULTIPLE = 3,
00188 };
00189 inline void operator<<= (Rapicorn::Aida::FieldBuffer &fb,  SelectionMode  e) { fb <<= Rapicorn::Aida::EnumValue (e); }
00190 inline void operator>>= (Rapicorn::Aida::FieldReader &frr, SelectionMode &e) { e = SelectionMode (frr.pop_evalue()); }
00192 
00194 enum SizePolicyType {
00195   SIZE_POLICY_NORMAL = 0,
00196   SIZE_POLICY_WIDTH_FROM_HEIGHT = 1,
00197   SIZE_POLICY_HEIGHT_FROM_WIDTH = 2,
00198 };
00199 inline void operator<<= (Rapicorn::Aida::FieldBuffer &fb,  SizePolicyType  e) { fb <<= Rapicorn::Aida::EnumValue (e); }
00200 inline void operator>>= (Rapicorn::Aida::FieldReader &frr, SizePolicyType &e) { e = SizePolicyType (frr.pop_evalue()); }
00202 
00204 enum StateType {
00205   STATE_NORMAL = 0,
00206   STATE_INSENSITIVE = 1,
00207   STATE_PRELIGHT = 2,
00208   STATE_IMPRESSED = 4,
00209   STATE_FOCUS = 8,
00210   STATE_DEFAULT = 16,
00211 };
00212 inline void operator<<= (Rapicorn::Aida::FieldBuffer &fb,  StateType  e) { fb <<= Rapicorn::Aida::EnumValue (e); }
00213 inline void operator>>= (Rapicorn::Aida::FieldReader &frr, StateType &e) { e = StateType (frr.pop_evalue()); }
00214 inline StateType  operator&  (StateType  s1, StateType s2) { return StateType (s1 & Rapicorn::Aida::uint64 (s2)); }
00215 inline StateType& operator&= (StateType &s1, StateType s2) { s1 = s1 & s2; return s1; }
00216 inline StateType  operator|  (StateType  s1, StateType s2) { return StateType (s1 | Rapicorn::Aida::uint64 (s2)); }
00217 inline StateType& operator|= (StateType &s1, StateType s2) { s1 = s1 | s2; return s1; }
00219 
00221 enum TextMode {
00222   TEXT_MODE_WRAPPED = 1,
00223   TEXT_MODE_ELLIPSIZED = 2,
00224   TEXT_MODE_SINGLE_LINE = 3,
00225 };
00226 inline void operator<<= (Rapicorn::Aida::FieldBuffer &fb,  TextMode  e) { fb <<= Rapicorn::Aida::EnumValue (e); }
00227 inline void operator>>= (Rapicorn::Aida::FieldReader &frr, TextMode &e) { e = TextMode (frr.pop_evalue()); }
00229 
00231 enum WindowType {
00232   WINDOW_TYPE_NORMAL = 0,
00233   WINDOW_TYPE_DESKTOP = 1,
00234   WINDOW_TYPE_DOCK = 2,
00235   WINDOW_TYPE_TOOLBAR = 3,
00236   WINDOW_TYPE_MENU = 4,
00237   WINDOW_TYPE_UTILITY = 5,
00238   WINDOW_TYPE_SPLASH = 6,
00239   WINDOW_TYPE_DIALOG = 7,
00240   WINDOW_TYPE_DROPDOWN_MENU = 8,
00241   WINDOW_TYPE_POPUP_MENU = 9,
00242   WINDOW_TYPE_TOOLTIP = 10,
00243   WINDOW_TYPE_NOTIFICATION = 11,
00244   WINDOW_TYPE_COMBO = 12,
00245   WINDOW_TYPE_DND = 13,
00246 };
00247 inline void operator<<= (Rapicorn::Aida::FieldBuffer &fb,  WindowType  e) { fb <<= Rapicorn::Aida::EnumValue (e); }
00248 inline void operator>>= (Rapicorn::Aida::FieldReader &frr, WindowType &e) { e = WindowType (frr.pop_evalue()); }
00250 
00251 struct BoolSeq : public std::vector<bool>
00252 {
00253   typedef std::vector<bool> Sequence;
00254   reference append_back(); 
00255   std::string                   __aida_type_name__ () const     { return "Rapicorn::BoolSeq"; }
00256   Rapicorn::Aida::TypeCode      __aida_type_code__ () const     { return Rapicorn::Aida::TypeMap::lookup (__aida_type_name__()); }
00257 };
00258 void operator<<= (Rapicorn::Aida::FieldBuffer&, const BoolSeq&);
00259 void operator>>= (Rapicorn::Aida::FieldReader&, BoolSeq&);
00260 
00261 struct StringSeq : public std::vector<std::string>
00262 {
00263   typedef std::vector<std::string> Sequence;
00264   reference append_back(); 
00265   std::string                   __aida_type_name__ () const     { return "Rapicorn::StringSeq"; }
00266   Rapicorn::Aida::TypeCode      __aida_type_code__ () const     { return Rapicorn::Aida::TypeMap::lookup (__aida_type_name__()); }
00267   // class_scope:StringSeq:
00268   explicit StringSeq () {}
00269   /*ctor*/ StringSeq (const std::vector<std::string> &strv) : Sequence (strv) {}
00270 };
00271 void operator<<= (Rapicorn::Aida::FieldBuffer&, const StringSeq&);
00272 void operator>>= (Rapicorn::Aida::FieldReader&, StringSeq&);
00273 
00274 struct AnySeq : public std::vector<Rapicorn::Aida::Any>
00275 {
00276   typedef std::vector<Rapicorn::Aida::Any> Sequence;
00277   reference append_back(); 
00278   std::string                   __aida_type_name__ () const     { return "Rapicorn::AnySeq"; }
00279   Rapicorn::Aida::TypeCode      __aida_type_code__ () const     { return Rapicorn::Aida::TypeMap::lookup (__aida_type_name__()); }
00280 };
00281 void operator<<= (Rapicorn::Aida::FieldBuffer&, const AnySeq&);
00282 void operator>>= (Rapicorn::Aida::FieldReader&, AnySeq&);
00283 
00284 struct AnySeqSeq : public std::vector<AnySeq>
00285 {
00286   typedef std::vector<AnySeq> Sequence;
00287   reference append_back(); 
00288   std::string                   __aida_type_name__ () const     { return "Rapicorn::AnySeqSeq"; }
00289   Rapicorn::Aida::TypeCode      __aida_type_code__ () const     { return Rapicorn::Aida::TypeMap::lookup (__aida_type_name__()); }
00290 };
00291 void operator<<= (Rapicorn::Aida::FieldBuffer&, const AnySeqSeq&);
00292 void operator>>= (Rapicorn::Aida::FieldReader&, AnySeqSeq&);
00293 
00294 struct PixelSeq : public std::vector<int>
00295 {
00296   typedef std::vector<int> Sequence;
00297   reference append_back(); 
00298   std::string                   __aida_type_name__ () const     { return "Rapicorn::PixelSeq"; }
00299   Rapicorn::Aida::TypeCode      __aida_type_code__ () const     { return Rapicorn::Aida::TypeMap::lookup (__aida_type_name__()); }
00300 };
00301 void operator<<= (Rapicorn::Aida::FieldBuffer&, const PixelSeq&);
00302 void operator>>= (Rapicorn::Aida::FieldReader&, PixelSeq&);
00303 
00304 struct Pixbuf
00305 {
00307   int                           row_length;
00308   PixelSeq                      pixels;
00309   StringSeq                     variables;
00311   inline                        Pixbuf () { row_length = 0; }
00312   std::string                   __aida_type_name__ () const     { return "Rapicorn::Pixbuf"; }
00313   Rapicorn::Aida::TypeCode      __aida_type_code__ () const     { return Rapicorn::Aida::TypeMap::lookup (__aida_type_name__()); }
00314   bool                          operator==  (const Pixbuf &other) const;
00315   bool                          operator!=  (const Pixbuf &other) const { return !operator== (other); }
00316   void                          operator<<= (Rapicorn::Aida::Any &any);
00317   friend void                   operator<<= (Rapicorn::Aida::Any &any, const Pixbuf &rec);
00318   // class_scope:Pixbuf:
00320   explicit        Pixbuf       (uint w, uint h) : row_length (0) { pixels.resize (w, h); }
00322   void            resize       (uint w, uint h) { row_length = w; pixels.resize (row_length * h); }
00324   uint32_t*       row          (uint y)         { return y < uint32_t (height()) ? (uint32_t*) &pixels[row_length * y] : NULL; }
00326   const uint32_t* row          (uint y) const   { return y < uint32_t (height()) ? (uint32_t*) &pixels[row_length * y] : NULL; }
00328   int             width        () const         { return row_length; }
00330   int             height       () const         { return row_length ? pixels.size() / row_length : 0; }
00331 };
00332 void operator<<= (Rapicorn::Aida::FieldBuffer&, const Pixbuf&);
00333 void operator>>= (Rapicorn::Aida::FieldReader&, Pixbuf&);
00334 
00336 enum UpdateKind {
00337   UPDATE_READ = 1,
00338   UPDATE_CHANGE = 2,
00339   UPDATE_INSERTION = 3,
00340   UPDATE_DELETION = 4,
00341 };
00342 inline void operator<<= (Rapicorn::Aida::FieldBuffer &fb,  UpdateKind  e) { fb <<= Rapicorn::Aida::EnumValue (e); }
00343 inline void operator>>= (Rapicorn::Aida::FieldReader &frr, UpdateKind &e) { e = UpdateKind (frr.pop_evalue()); }
00345 
00346 struct UpdateSpan
00347 {
00349   int                           start;
00350   int                           length;
00352   inline                        UpdateSpan () { start = 0; length = 0; }
00353   std::string                   __aida_type_name__ () const     { return "Rapicorn::UpdateSpan"; }
00354   Rapicorn::Aida::TypeCode      __aida_type_code__ () const     { return Rapicorn::Aida::TypeMap::lookup (__aida_type_name__()); }
00355   bool                          operator==  (const UpdateSpan &other) const;
00356   bool                          operator!=  (const UpdateSpan &other) const { return !operator== (other); }
00357   void                          operator<<= (Rapicorn::Aida::Any &any);
00358   friend void                   operator<<= (Rapicorn::Aida::Any &any, const UpdateSpan &rec);
00359   // class_scope:UpdateSpan:
00360   explicit UpdateSpan (int _start, int _length) : start (_start), length (_length) {}
00361 };
00362 void operator<<= (Rapicorn::Aida::FieldBuffer&, const UpdateSpan&);
00363 void operator>>= (Rapicorn::Aida::FieldReader&, UpdateSpan&);
00364 
00365 struct UpdateRequest
00366 {
00368   UpdateKind                    kind;
00369   UpdateSpan                    rowspan;
00370   UpdateSpan                    colspan;
00371   StringSeq                     variables;
00372   Rapicorn::Aida::Any           value;
00374   inline                        UpdateRequest () { kind = UpdateKind (0); }
00375   std::string                   __aida_type_name__ () const     { return "Rapicorn::UpdateRequest"; }
00376   Rapicorn::Aida::TypeCode      __aida_type_code__ () const     { return Rapicorn::Aida::TypeMap::lookup (__aida_type_name__()); }
00377   bool                          operator==  (const UpdateRequest &other) const;
00378   bool                          operator!=  (const UpdateRequest &other) const { return !operator== (other); }
00379   void                          operator<<= (Rapicorn::Aida::Any &any);
00380   friend void                   operator<<= (Rapicorn::Aida::Any &any, const UpdateRequest &rec);
00381   // class_scope:UpdateRequest:
00382   explicit UpdateRequest (UpdateKind _kind, const UpdateSpan &rs, const UpdateSpan &cs = UpdateSpan()) :
00383     kind (_kind), rowspan (rs), colspan (cs) {}
00384 };
00385 void operator<<= (Rapicorn::Aida::FieldBuffer&, const UpdateRequest&);
00386 void operator>>= (Rapicorn::Aida::FieldReader&, UpdateRequest&);
00387 
00390 
00391 class ListModelHandle : public virtual Rapicorn::Aida::SmartHandle
00392 {
00393   typedef Rapicorn::Aida::Connector<ListModelHandle, void (const UpdateRequest &urequest)> __Aida_Signal__updated;
00394   size_t __aida_connect__updated (size_t, const std::function<void (const UpdateRequest &urequest)>&);
00395   static ListModelHandle                 __aida_cast__ (Rapicorn::Aida::SmartHandle&, const Rapicorn::Aida::TypeHashList&);
00396   static const Rapicorn::Aida::TypeHash& __aida_typeid__();
00397 protected:
00398 public:
00399   static Rapicorn::Aida::BaseConnection* __aida_connection__();
00400   const Rapicorn::Aida::TypeHashList     __aida_typelist__();
00401   template<class SmartHandle>
00402   static ListModelHandle        down_cast (SmartHandle smh) { return smh == NULL ? ListModelHandle() : __aida_cast__ (smh, smh.__aida_typelist__()); }
00403   explicit                      ListModelHandle ();
00404   __Aida_Signal__updated        sig_updated () { return __Aida_Signal__updated (*this, &ListModelHandle::__aida_connect__updated); }
00405   int                           count           ();
00406   Rapicorn::Aida::Any           row             (int index);
00407 };
00408 void operator<<= (Rapicorn::Aida::FieldBuffer&, const ListModelHandle&);
00409 void operator>>= (Rapicorn::Aida::FieldReader&, ListModelHandle&);
00410 typedef ListModelHandle ListModelH; 
00411 
00414 
00415 class ListModelRelayHandle : public virtual Rapicorn::Aida::SmartHandle
00416 {
00417   typedef Rapicorn::Aida::Connector<ListModelRelayHandle, void (const UpdateRequest &urequest)> __Aida_Signal__refill;
00418   size_t __aida_connect__refill (size_t, const std::function<void (const UpdateRequest &urequest)>&);
00419   static ListModelRelayHandle            __aida_cast__ (Rapicorn::Aida::SmartHandle&, const Rapicorn::Aida::TypeHashList&);
00420   static const Rapicorn::Aida::TypeHash& __aida_typeid__();
00421 protected:
00422 public:
00423   static Rapicorn::Aida::BaseConnection* __aida_connection__();
00424   const Rapicorn::Aida::TypeHashList     __aida_typelist__();
00425   template<class SmartHandle>
00426   static ListModelRelayHandle   down_cast (SmartHandle smh) { return smh == NULL ? ListModelRelayHandle() : __aida_cast__ (smh, smh.__aida_typelist__()); }
00427   explicit                      ListModelRelayHandle ();
00428   __Aida_Signal__refill         sig_refill () { return __Aida_Signal__refill (*this, &ListModelRelayHandle::__aida_connect__refill); }
00429   ListModelHandle               model                ();
00430   void                          fill                 (int first,
00431                                                       const AnySeq &asq);
00432   void                          update               (const UpdateRequest &urequest);
00433 };
00434 void operator<<= (Rapicorn::Aida::FieldBuffer&, const ListModelRelayHandle&);
00435 void operator>>= (Rapicorn::Aida::FieldReader&, ListModelRelayHandle&);
00436 typedef ListModelRelayHandle ListModelRelayH; 
00437 
00438 struct Requisition
00439 {
00441   double                        width;
00442   double                        height;
00444   inline                        Requisition () { width = 0; height = 0; }
00445   std::string                   __aida_type_name__ () const     { return "Rapicorn::Requisition"; }
00446   Rapicorn::Aida::TypeCode      __aida_type_code__ () const     { return Rapicorn::Aida::TypeMap::lookup (__aida_type_name__()); }
00447   bool                          operator==  (const Requisition &other) const;
00448   bool                          operator!=  (const Requisition &other) const { return !operator== (other); }
00449   void                          operator<<= (Rapicorn::Aida::Any &any);
00450   friend void                   operator<<= (Rapicorn::Aida::Any &any, const Requisition &rec);
00451   // class_scope:Requisition:
00452   inline Requisition (double w, double h) : width (w), height (h) {}
00453 };
00454 void operator<<= (Rapicorn::Aida::FieldBuffer&, const Requisition&);
00455 void operator>>= (Rapicorn::Aida::FieldReader&, Requisition&);
00456 
00457 class WidgetHandle;
00458 
00459 struct WidgetSeq : public std::vector<Rapicorn::Aida::SmartMember<WidgetHandle>>
00460 {
00461   typedef std::vector<Rapicorn::Aida::SmartMember<WidgetHandle>> Sequence;
00462   reference append_back(); 
00463   std::string                   __aida_type_name__ () const     { return "Rapicorn::WidgetSeq"; }
00464   Rapicorn::Aida::TypeCode      __aida_type_code__ () const     { return Rapicorn::Aida::TypeMap::lookup (__aida_type_name__()); }
00465 };
00466 void operator<<= (Rapicorn::Aida::FieldBuffer&, const WidgetSeq&);
00467 void operator>>= (Rapicorn::Aida::FieldReader&, WidgetSeq&);
00468 
00471 
00472 class WidgetHandle : public virtual Rapicorn::Aida::SmartHandle
00473 {
00474   static WidgetHandle                    __aida_cast__ (Rapicorn::Aida::SmartHandle&, const Rapicorn::Aida::TypeHashList&);
00475   static const Rapicorn::Aida::TypeHash& __aida_typeid__();
00476 protected:
00477 public:
00478   static Rapicorn::Aida::BaseConnection* __aida_connection__();
00479   const Rapicorn::Aida::TypeHashList     __aida_typelist__();
00480   template<class SmartHandle>
00481   static WidgetHandle           down_cast (SmartHandle smh) { return smh == NULL ? WidgetHandle() : __aida_cast__ (smh, smh.__aida_typelist__()); }
00482   explicit                      WidgetHandle ();
00483   std::string                   name           () const;
00484   void                          name           (const std::string&);
00485   double                        width          () const;
00486   void                          width          (double);
00487   double                        height         () const;
00488   void                          height         (double);
00489   bool                          hexpand        () const;
00490   void                          hexpand        (bool);
00491   bool                          vexpand        () const;
00492   void                          vexpand        (bool);
00493   bool                          hspread        () const;
00494   void                          hspread        (bool);
00495   bool                          vspread        () const;
00496   void                          vspread        (bool);
00497   bool                          hshrink        () const;
00498   void                          hshrink        (bool);
00499   bool                          vshrink        () const;
00500   void                          vshrink        (bool);
00501   bool                          visible        () const;
00502   void                          visible        (bool);
00503   bool                          sensitive      () const;
00504   void                          sensitive      (bool);
00505   double                        hposition      () const;
00506   void                          hposition      (double);
00507   double                        hspan          () const;
00508   void                          hspan          (double);
00509   double                        vposition      () const;
00510   void                          vposition      (double);
00511   double                        vspan          () const;
00512   void                          vspan          (double);
00513   int                           left_spacing   () const;
00514   void                          left_spacing   (int);
00515   int                           right_spacing  () const;
00516   void                          right_spacing  (int);
00517   int                           bottom_spacing () const;
00518   void                          bottom_spacing (int);
00519   int                           top_spacing    () const;
00520   void                          top_spacing    (int);
00521   double                        hanchor        () const;
00522   void                          hanchor        (double);
00523   double                        vanchor        () const;
00524   void                          vanchor        (double);
00525   double                        halign         () const;
00526   void                          halign         (double);
00527   double                        hscale         () const;
00528   void                          hscale         (double);
00529   double                        valign         () const;
00530   void                          valign         (double);
00531   double                        vscale         () const;
00532   void                          vscale         (double);
00533   ColorSchemeType               color_scheme   () const;
00534   void                          color_scheme   (ColorSchemeType);
00535   bool                          match_selector        (const std::string &selector);
00536   WidgetHandle                  query_selector        (const std::string &selector);
00537   WidgetSeq                     query_selector_all    (const std::string &selector);
00538   WidgetHandle                  query_selector_unique (const std::string &selector);
00539   std::string                   test_dump             ();
00540   // class_scope:Widget:
00542   template<class Target> Target component (const std::string &selector) { return Target::down_cast (query_selector_unique (selector)); }
00543 };
00544 void operator<<= (Rapicorn::Aida::FieldBuffer&, const WidgetHandle&);
00545 void operator>>= (Rapicorn::Aida::FieldReader&, WidgetHandle&);
00546 typedef WidgetHandle WidgetH; 
00547 
00550 
00551 class ContainerHandle : public WidgetHandle
00552 {
00553   static ContainerHandle                 __aida_cast__ (Rapicorn::Aida::SmartHandle&, const Rapicorn::Aida::TypeHashList&);
00554   static const Rapicorn::Aida::TypeHash& __aida_typeid__();
00555 protected:
00556 public:
00557   const Rapicorn::Aida::TypeHashList     __aida_typelist__();
00558   template<class SmartHandle>
00559   static ContainerHandle        down_cast (SmartHandle smh) { return smh == NULL ? ContainerHandle() : __aida_cast__ (smh, smh.__aida_typelist__()); }
00560   explicit                      ContainerHandle ();
00561   WidgetHandle                  create_child    (const std::string &widget_identifier,
00562                                                  const StringSeq &args = StringSeq());
00563 };
00564 void operator<<= (Rapicorn::Aida::FieldBuffer&, const ContainerHandle&);
00565 void operator>>= (Rapicorn::Aida::FieldReader&, ContainerHandle&);
00566 typedef ContainerHandle ContainerH; 
00567 
00570 
00571 class ButtonAreaHandle : public ContainerHandle
00572 {
00573   static ButtonAreaHandle                __aida_cast__ (Rapicorn::Aida::SmartHandle&, const Rapicorn::Aida::TypeHashList&);
00574   static const Rapicorn::Aida::TypeHash& __aida_typeid__();
00575 protected:
00576 public:
00577   const Rapicorn::Aida::TypeHashList     __aida_typelist__();
00578   template<class SmartHandle>
00579   static ButtonAreaHandle       down_cast (SmartHandle smh) { return smh == NULL ? ButtonAreaHandle() : __aida_cast__ (smh, smh.__aida_typelist__()); }
00580   explicit                      ButtonAreaHandle ();
00581   std::string                   on_click  () const;
00582   void                          on_click  (const std::string&);
00583   std::string                   on_click2 () const;
00584   void                          on_click2 (const std::string&);
00585   std::string                   on_click3 () const;
00586   void                          on_click3 (const std::string&);
00587 };
00588 void operator<<= (Rapicorn::Aida::FieldBuffer&, const ButtonAreaHandle&);
00589 void operator>>= (Rapicorn::Aida::FieldReader&, ButtonAreaHandle&);
00590 typedef ButtonAreaHandle ButtonAreaH; 
00591 
00594 
00595 class DrawableHandle : public WidgetHandle
00596 {
00597   typedef Rapicorn::Aida::Connector<DrawableHandle, void (int x, int y, int w, int h)> __Aida_Signal__redraw;
00598   size_t __aida_connect__redraw (size_t, const std::function<void (int x, int y, int w, int h)>&);
00599   static DrawableHandle                  __aida_cast__ (Rapicorn::Aida::SmartHandle&, const Rapicorn::Aida::TypeHashList&);
00600   static const Rapicorn::Aida::TypeHash& __aida_typeid__();
00601 protected:
00602 public:
00603   const Rapicorn::Aida::TypeHashList     __aida_typelist__();
00604   template<class SmartHandle>
00605   static DrawableHandle         down_cast (SmartHandle smh) { return smh == NULL ? DrawableHandle() : __aida_cast__ (smh, smh.__aida_typelist__()); }
00606   explicit                      DrawableHandle ();
00607   __Aida_Signal__redraw         sig_redraw () { return __Aida_Signal__redraw (*this, &DrawableHandle::__aida_connect__redraw); }
00608   void                          draw_rect      (int x,
00609                                                 int y,
00610                                                 const Pixbuf &pixbuf);
00611 };
00612 void operator<<= (Rapicorn::Aida::FieldBuffer&, const DrawableHandle&);
00613 void operator>>= (Rapicorn::Aida::FieldReader&, DrawableHandle&);
00614 typedef DrawableHandle DrawableH; 
00615 
00618 
00619 class WidgetListHandle : public ContainerHandle
00620 {
00621   static WidgetListHandle                __aida_cast__ (Rapicorn::Aida::SmartHandle&, const Rapicorn::Aida::TypeHashList&);
00622   static const Rapicorn::Aida::TypeHash& __aida_typeid__();
00623 protected:
00624 public:
00625   const Rapicorn::Aida::TypeHashList     __aida_typelist__();
00626   template<class SmartHandle>
00627   static WidgetListHandle       down_cast (SmartHandle smh) { return smh == NULL ? WidgetListHandle() : __aida_cast__ (smh, smh.__aida_typelist__()); }
00628   explicit                      WidgetListHandle ();
00629   std::string                   model          () const;
00630   void                          model          (const std::string&);
00631   SelectionMode                 selection_mode () const;
00632   void                          selection_mode (SelectionMode);
00633   void                          set_selection    (const BoolSeq &selection);
00634   BoolSeq                       get_selection    ();
00635   void                          select_range     (int first,
00636                                                   int length);
00637   void                          unselect_range   (int first,
00638                                                   int length);
00639 };
00640 void operator<<= (Rapicorn::Aida::FieldBuffer&, const WidgetListHandle&);
00641 void operator>>= (Rapicorn::Aida::FieldReader&, WidgetListHandle&);
00642 typedef WidgetListHandle WidgetListH; 
00643 
00646 
00647 class WindowHandle : public ContainerHandle
00648 {
00649   typedef Rapicorn::Aida::Connector<WindowHandle, bool (const std::string &cmdname, const StringSeq &args)> __Aida_Signal__commands;
00650   size_t __aida_connect__commands (size_t, const std::function<bool (const std::string &cmdname, const StringSeq &args)>&);
00651   typedef Rapicorn::Aida::Connector<WindowHandle, void ()> __Aida_Signal__displayed;
00652   size_t __aida_connect__displayed (size_t, const std::function<void ()>&);
00653   static WindowHandle                    __aida_cast__ (Rapicorn::Aida::SmartHandle&, const Rapicorn::Aida::TypeHashList&);
00654   static const Rapicorn::Aida::TypeHash& __aida_typeid__();
00655 protected:
00656 public:
00657   const Rapicorn::Aida::TypeHashList     __aida_typelist__();
00658   template<class SmartHandle>
00659   static WindowHandle           down_cast (SmartHandle smh) { return smh == NULL ? WindowHandle() : __aida_cast__ (smh, smh.__aida_typelist__()); }
00660   explicit                      WindowHandle ();
00661   std::string                   title      () const;
00662   void                          title      (const std::string&);
00663   bool                          auto_focus () const;
00664   void                          auto_focus (bool);
00665   __Aida_Signal__commands       sig_commands () { return __Aida_Signal__commands (*this, &WindowHandle::__aida_connect__commands); }
00666   __Aida_Signal__displayed      sig_displayed () { return __Aida_Signal__displayed (*this, &WindowHandle::__aida_connect__displayed); }
00667   bool                          viewable          ();
00668   void                          show              ();
00669   bool                          closed            ();
00670   void                          close             ();
00671   bool                          snapshot          (const std::string &pngname);
00672   bool                          synthesize_click  (WidgetHandle &widget,
00673                                                    int button,
00674                                                    double xalign = 0.5,
00675                                                    double yalign = 0.5);
00676   bool                          synthesize_enter  (double xalign = 0.5,
00677                                                    double yalign = 0.5);
00678   bool                          synthesize_leave  ();
00679   bool                          synthesize_delete ();
00680 };
00681 void operator<<= (Rapicorn::Aida::FieldBuffer&, const WindowHandle&);
00682 void operator>>= (Rapicorn::Aida::FieldReader&, WindowHandle&);
00683 typedef WindowHandle WindowH; 
00684 
00685 struct WindowList : public std::vector<Rapicorn::Aida::SmartMember<WindowHandle>>
00686 {
00687   typedef std::vector<Rapicorn::Aida::SmartMember<WindowHandle>> Sequence;
00688   reference append_back(); 
00689   std::string                   __aida_type_name__ () const     { return "Rapicorn::WindowList"; }
00690   Rapicorn::Aida::TypeCode      __aida_type_code__ () const     { return Rapicorn::Aida::TypeMap::lookup (__aida_type_name__()); }
00691 };
00692 void operator<<= (Rapicorn::Aida::FieldBuffer&, const WindowList&);
00693 void operator>>= (Rapicorn::Aida::FieldReader&, WindowList&);
00694 
00697 
00698 class ApplicationHandle : public virtual Rapicorn::Aida::SmartHandle
00699 {
00700   typedef Rapicorn::Aida::Connector<ApplicationHandle, void ()> __Aida_Signal__missing_primary;
00701   size_t __aida_connect__missing_primary (size_t, const std::function<void ()>&);
00702   static ApplicationHandle               __aida_cast__ (Rapicorn::Aida::SmartHandle&, const Rapicorn::Aida::TypeHashList&);
00703   static const Rapicorn::Aida::TypeHash& __aida_typeid__();
00704 protected:
00705 public:
00706   static Rapicorn::Aida::BaseConnection* __aida_connection__();
00707   const Rapicorn::Aida::TypeHashList     __aida_typelist__();
00708   template<class SmartHandle>
00709   static ApplicationHandle      down_cast (SmartHandle smh) { return smh == NULL ? ApplicationHandle() : __aida_cast__ (smh, smh.__aida_typelist__()); }
00710   explicit                      ApplicationHandle ();
00711   __Aida_Signal__missing_primary sig_missing_primary () { return __Aida_Signal__missing_primary (*this, &ApplicationHandle::__aida_connect__missing_primary); }
00712   std::string                   auto_path               (const std::string &file_name,
00713                                                          const std::string &binary_path,
00714                                                          bool search_vpath = 1);
00715   StringSeq                     auto_load               (const std::string &defs_domain,
00716                                                          const std::string &file_name,
00717                                                          const std::string &binary_path,
00718                                                          const std::string &i18n_domain = "");
00719   bool                          factory_window          (const std::string &factory_definition);
00720   void                          load_string             (const std::string &defs_domain,
00721                                                          const std::string &xml_string,
00722                                                          const std::string &i18n_domain = "");
00723   WindowHandle                  create_window           (const std::string &window_identifier,
00724                                                          const StringSeq &arguments = StringSeq());
00725   bool                          finishable              ();
00726   void                          close_all               ();
00727   WindowHandle                  query_window            (const std::string &selector);
00728   WindowList                    query_windows           (const std::string &selector);
00729   WindowList                    list_windows            ();
00730   ListModelRelayHandle          create_list_model_relay (const std::string &name = "");
00731   void                          test_counter_set        (int val);
00732   void                          test_counter_add        (int val);
00733   int                           test_counter_get        ();
00734   int                           test_counter_inc_fetch  ();
00735   Rapicorn::Aida::int64         test_hook               ();
00736   // class_scope:Application:
00737   static int                      run            ();
00738   static void                     quit           (int quit_code = 0);
00739   static void                     shutdown       ();
00740   static int                      run_and_exit   () RAPICORN_NORETURN;
00741   static ApplicationHandle        the            ();
00742 protected:
00743   static MainLoop*                main_loop     ();
00744 };
00745 void operator<<= (Rapicorn::Aida::FieldBuffer&, const ApplicationHandle&);
00746 void operator>>= (Rapicorn::Aida::FieldReader&, ApplicationHandle&);
00747 typedef ApplicationHandle ApplicationH; 
00748 
00750 enum TestEnum {
00751   TEST_ENUM_VALUE1 = 1,
00752   TEST_ENUM_VALUE2 = 2,
00753   TEST_ENUM_VALUE3 = 3,
00754 };
00755 inline void operator<<= (Rapicorn::Aida::FieldBuffer &fb,  TestEnum  e) { fb <<= Rapicorn::Aida::EnumValue (e); }
00756 inline void operator>>= (Rapicorn::Aida::FieldReader &frr, TestEnum &e) { e = TestEnum (frr.pop_evalue()); }
00758 
00761 
00762 class IdlTestWidgetHandle : public WidgetHandle
00763 {
00764   static IdlTestWidgetHandle             __aida_cast__ (Rapicorn::Aida::SmartHandle&, const Rapicorn::Aida::TypeHashList&);
00765   static const Rapicorn::Aida::TypeHash& __aida_typeid__();
00766 protected:
00767 public:
00768   const Rapicorn::Aida::TypeHashList     __aida_typelist__();
00769   template<class SmartHandle>
00770   static IdlTestWidgetHandle    down_cast (SmartHandle smh) { return smh == NULL ? IdlTestWidgetHandle() : __aida_cast__ (smh, smh.__aida_typelist__()); }
00771   explicit                      IdlTestWidgetHandle ();
00772   bool                          bool_prop     () const;
00773   void                          bool_prop     (bool);
00774   int                           int_prop      () const;
00775   void                          int_prop      (int);
00776   double                        float_prop    () const;
00777   void                          float_prop    (double);
00778   std::string                   string_prop   () const;
00779   void                          string_prop   (const std::string&);
00780   TestEnum                      enum_prop     () const;
00781   void                          enum_prop     (TestEnum);
00782   Requisition                   record_prop   () const;
00783   void                          record_prop   (const Requisition&);
00784   StringSeq                     sequence_prop () const;
00785   void                          sequence_prop (const StringSeq&);
00786   IdlTestWidgetHandle           self_prop     () const;
00787   void                          self_prop     (IdlTestWidgetHandle);
00788 };
00789 void operator<<= (Rapicorn::Aida::FieldBuffer&, const IdlTestWidgetHandle&);
00790 void operator>>= (Rapicorn::Aida::FieldReader&, IdlTestWidgetHandle&);
00791 typedef IdlTestWidgetHandle IdlTestWidgetH; 
00792 } // Rapicorn
00793 
00794 namespace Rapicorn {
00795 
00796 namespace Aida {
00797 
00798 template<> inline TypeCode TypeCode::from_enum<Rapicorn::AdjustmentSourceType>() { return TypeMap::lookup ("Rapicorn::AdjustmentSourceType"); }
00799 
00800 template<> inline TypeCode TypeCode::from_enum<Rapicorn::AlignType>() { return TypeMap::lookup ("Rapicorn::AlignType"); }
00801 
00802 template<> inline TypeCode TypeCode::from_enum<Rapicorn::AnchorType>() { return TypeMap::lookup ("Rapicorn::AnchorType"); }
00803 
00804 template<> inline TypeCode TypeCode::from_enum<Rapicorn::ClickType>() { return TypeMap::lookup ("Rapicorn::ClickType"); }
00805 
00806 template<> inline TypeCode TypeCode::from_enum<Rapicorn::ColorType>() { return TypeMap::lookup ("Rapicorn::ColorType"); }
00807 
00808 template<> inline TypeCode TypeCode::from_enum<Rapicorn::ColorSchemeType>() { return TypeMap::lookup ("Rapicorn::ColorSchemeType"); }
00809 
00810 template<> inline TypeCode TypeCode::from_enum<Rapicorn::DirType>() { return TypeMap::lookup ("Rapicorn::DirType"); }
00811 
00812 template<> inline TypeCode TypeCode::from_enum<Rapicorn::EllipsizeType>() { return TypeMap::lookup ("Rapicorn::EllipsizeType"); }
00813 
00814 template<> inline TypeCode TypeCode::from_enum<Rapicorn::FocusDirType>() { return TypeMap::lookup ("Rapicorn::FocusDirType"); }
00815 
00816 template<> inline TypeCode TypeCode::from_enum<Rapicorn::FrameType>() { return TypeMap::lookup ("Rapicorn::FrameType"); }
00817 
00818 template<> inline TypeCode TypeCode::from_enum<Rapicorn::LightingType>() { return TypeMap::lookup ("Rapicorn::LightingType"); }
00819 
00820 template<> inline TypeCode TypeCode::from_enum<Rapicorn::SelectionMode>() { return TypeMap::lookup ("Rapicorn::SelectionMode"); }
00821 
00822 template<> inline TypeCode TypeCode::from_enum<Rapicorn::SizePolicyType>() { return TypeMap::lookup ("Rapicorn::SizePolicyType"); }
00823 
00824 template<> inline TypeCode TypeCode::from_enum<Rapicorn::StateType>() { return TypeMap::lookup ("Rapicorn::StateType"); }
00825 
00826 template<> inline TypeCode TypeCode::from_enum<Rapicorn::TextMode>() { return TypeMap::lookup ("Rapicorn::TextMode"); }
00827 
00828 template<> inline TypeCode TypeCode::from_enum<Rapicorn::WindowType>() { return TypeMap::lookup ("Rapicorn::WindowType"); }
00829 
00830 template<> inline TypeCode TypeCode::from_enum<Rapicorn::UpdateKind>() { return TypeMap::lookup ("Rapicorn::UpdateKind"); }
00831 
00832 template<> inline TypeCode TypeCode::from_enum<Rapicorn::TestEnum>() { return TypeMap::lookup ("Rapicorn::TestEnum"); }
00833 } // Aida
00834 } // Rapicorn
00835 
00836 // global_scope:
00837 namespace Rapicorn {
00838 
00839 bool              init_app_initialized    ();
00840 ApplicationHandle init_app                (const String       &app_ident,
00841                                            int                *argcp,
00842                                            char              **argv,
00843                                            const StringVector &args = StringVector());
00844 ApplicationHandle init_test_app           (const String       &app_ident,
00845                                            int                *argcp,
00846                                            char              **argv,
00847                                            const StringVector &args = StringVector());
00848 void              exit_app                (int status) RAPICORN_NORETURN;
00849 
00850 } // Rapicorn
00851 #define RAPICORN_PIXBUF_TYPE    Rapicorn::Pixbuf
00852 #include <ui/pixmap.hh>
00853 #endif /* __RAPICORN_CLIENTAPI_HH_ */
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines