Rapicorn - Experimental UI Toolkit - Source Code  13.07.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines
paintcontainers.hh
Go to the documentation of this file.
00001  // Licensed GNU LGPL v3 or later: http://www.gnu.org/licenses/lgpl.html
00002 #ifndef __RAPICORN_PAINT_CONTAINERS_HH__
00003 #define __RAPICORN_PAINT_CONTAINERS_HH__
00004 
00005 #include <ui/container.hh>
00006 
00007 namespace Rapicorn {
00008 
00009 class Ambience : public virtual ContainerImpl {
00010 protected:
00011   virtual const PropertyList&   __aida_properties__         ();
00012 public:
00013   virtual void                  insensitive_background  (const String &color) = 0;
00014   virtual String                insensitive_background  () const = 0;
00015   virtual void                  prelight_background     (const String &color) = 0;
00016   virtual String                prelight_background     () const = 0;
00017   virtual void                  impressed_background    (const String &color) = 0;
00018   virtual String                impressed_background    () const = 0;
00019   virtual void                  normal_background       (const String &color) = 0;
00020   virtual String                normal_background       () const = 0;
00021   virtual void                  insensitive_lighting    (LightingType sh) = 0;
00022   virtual LightingType          insensitive_lighting    () const = 0;
00023   virtual void                  prelight_lighting       (LightingType sh) = 0;
00024   virtual LightingType          prelight_lighting       () const = 0;
00025   virtual void                  impressed_lighting      (LightingType sh) = 0;
00026   virtual LightingType          impressed_lighting      () const = 0;
00027   virtual void                  normal_lighting         (LightingType sh) = 0;
00028   virtual LightingType          normal_lighting         () const = 0;
00029   virtual void                  insensitive_shade       (LightingType sh) = 0;
00030   virtual LightingType          insensitive_shade       () const = 0;
00031   virtual void                  prelight_shade          (LightingType sh) = 0;
00032   virtual LightingType          prelight_shade          () const = 0;
00033   virtual void                  impressed_shade         (LightingType sh) = 0;
00034   virtual LightingType          impressed_shade         () const = 0;
00035   virtual void                  normal_shade            (LightingType sh) = 0;
00036   virtual LightingType          normal_shade            () const = 0;
00037   /* group setters */
00038   void                          background              (const String &color);
00039   void                          lighting                (LightingType sh);
00040   void                          shade                   (LightingType sh);
00041 private:
00042   String                        background              () const { RAPICORN_ASSERT_UNREACHED(); }
00043   LightingType                  lighting                () const { RAPICORN_ASSERT_UNREACHED(); }
00044   LightingType                  shade                   () const { RAPICORN_ASSERT_UNREACHED(); }
00045 };
00046 
00047 class Frame : public virtual ContainerImpl {
00048   FrameType                     frame_type      () const        { RAPICORN_ASSERT_UNREACHED(); }
00049 protected:
00050   virtual const PropertyList&   __aida_properties__ ();
00051 public:
00052   void                          frame_type      (FrameType ft);
00053   virtual FrameType             normal_frame    () const = 0;
00054   virtual void                  normal_frame    (FrameType ft) = 0;
00055   virtual FrameType             impressed_frame () const = 0;
00056   virtual void                  impressed_frame (FrameType ft) = 0;
00057   virtual bool                  overlap_child   () const = 0;
00058   virtual void                  overlap_child   (bool ovc) = 0;
00059   virtual bool                  tight_focus     () const = 0;
00060   virtual void                  tight_focus     (bool ovc) = 0;
00061 };
00062 
00063 class FocusFrame : public virtual Frame {
00064 protected:
00065   virtual const PropertyList&   __aida_properties__         ();
00066 public:
00067   virtual void                  focus_frame             (FrameType ft) = 0;
00068   virtual FrameType             focus_frame             () const = 0;
00069   struct Client : public virtual WidgetImpl {
00070     virtual bool                register_focus_frame    (FocusFrame &frame) = 0;
00071     virtual void                unregister_focus_frame  (FocusFrame &frame) = 0;
00072   };
00073 };
00074 
00075 } // Rapicorn
00076 
00077 #endif  /* __RAPICORN_PAINT_CONTAINERS_HH__ */
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines