31 #include <vdk/vdktypes.h>
32 #include <vdk/dlist.h>
33 #include <vdk/vdkutils.h>
34 #include <vdk/rawobj.h>
35 #include <vdk/vdkprops.h>
36 #include <vdk/vdkstring.h>
38 #ifdef USE_SIGCPLUSPLUS
39 # include <vdk/sigc_addon.h>
40 # include <vdk/sigc_events.h>
41 # include <vdk/sigc_eventsignals.h>
51 enum { object_class, form_class , container_class};
78 owner(owner),obj(obj),signal(signal) {}
98 owner(owner),obj(obj),signal(signal) {}
112 typedef VDKReadWriteValueProp<VDKObject,VDKPoint> SizeOProp;
114 class SizeObjectProp:
public SizeOProp
118 SizeObjectProp(
char* name,
VDKObject*
object,
136 #ifndef USE_SIGCPLUSPLUS
157 VDKReadWriteValueProp<VDKObject,VDKRgb> PrelightBackground;
158 VDKReadWriteValueProp<VDKObject,VDKRgb> InsensitiveBackground;
159 VDKReadWriteValueProp<VDKObject,VDKRgb> ActiveBackground;
160 VDKReadWriteValueProp<VDKObject,VDKRgb> SelectedBackground;
161 VDKReadWriteValueProp<VDKObject,VDKRgb> Foreground;
168 VDKReadWriteValueProp<VDKObject,VDKFont*>
Font;
176 VDKReadWriteValueProp<VDKObject,bool>
Enabled;
180 VDKReadWriteValueProp<VDKObject,VDKCursorType>
Cursor;
184 VDKReadWriteValueProp<VDKObject,bool>
Visible;
189 void SetNormalBackground(
VDKRgb c) {
192 void SetPrelightBackground(
VDKRgb c) {
195 void SetInsensitiveBackground(
VDKRgb c) {
198 void SetActiveBackground(
VDKRgb c) {
201 void SetSelectedBackground(
VDKRgb c) {
235 s_list_select,s_list_unselect,s_list_click_column,s_realize,
236 s_toggled,s_value_changed,s_child_attached,s_child_detached;
256 static int VDKEventPipe(GtkWidget* w, GdkEvent* event,
void* obj);
259 void _setBackground_(GtkWidget* wid,
260 int red,
int green,
int blue,
264 void _setForeground_(GtkWidget* wid,
265 int red,
int green,
int blue,
269 void _setFont_(GtkWidget* wid,
VDKFont* f);
272 void ConnectDefaultEvents();
275 void ConnectDefaultSignals();
278 void SignalEmit(
int signal,
int level);
282 virtual void ShowWidget(
bool visible);
307 virtual int isA() {
return object_class; }
317 virtual GtkWidget*
Widget();
356 return GTK_WIDGET_VISIBLE(
widget);
375 GtkStateType state = GTK_STATE_NORMAL);
377 void SetNormalForeground(
VDKRgb color)
387 GtkStateType state = GTK_STATE_NORMAL);
396 gtk_widget_set_usize(GTK_WIDGET(
widget),w,h);
412 virtual void Enable(
bool flag =
true);
423 virtual void SetTip(
char* );
434 virtual void Add(
VDKObject* obj,
int justify = l_justify,
435 int expand = TRUE,
int fill = TRUE ,
461 void Draw(GdkRectangle* area = NULL);
472 void SignalEmit(
int signal);
477 void SignalEmit(
char* sig);
483 SignalEmit(signal,Parent_level);
519 static void VDKSignalPipe(GtkWidget* w,
void* obj);
523 virtual int VDKObjectSignalResponse(GtkWidget* ,
int ,
void*,
bool)
530 virtual int VDKObjectEventResponse(GtkWidget* , GdkEvent*,
void*,
bool)
535 virtual int ObjectSignalDetach(
int ,
int )
539 virtual bool ObjectSignalAttach(
int )
543 virtual int ObjectEventDetach(VDKEvent )
547 virtual bool ObjectEventAttach(
int )
552 virtual int VDKObjectSignalResponseTableSize()
556 virtual int VDKObjectEventResponseTableSize()
567 virtual int VDKSignalResponse(GtkWidget* ,
int ,
void*,
void *,
bool)
574 virtual int VDKEventResponse(GtkWidget* , GdkEvent* ,
void*,
void*,
bool )
578 virtual int SignalDetach(
VDKObject* ,
int )
582 virtual bool SignalAttach(
int )
586 virtual int EventDetach(
VDKObject* ,VDKEvent )
590 virtual bool EventAttach(
int )
598 virtual int VDKSignalResponseTableSize()
605 virtual int VDKEventResponseTableSize()
656 virtual int VDKSignalUnitResponse(GtkWidget* ,
char* ,
void*)
672 virtual bool FindSignalAtClassLevel(
VDKObject* ,
char* )
682 virtual bool FindSignalAtParentLevel(
VDKObject* ,
char* )
692 static void VDKSignalUnitPipe(GtkWidget* ,
void* );
701 virtual bool FindEventAtClassLevel(
VDKObject* ,
char* )
709 virtual bool FindEventAtParentLevel(
VDKObject* ,
char* )
716 virtual int VDKEventUnitResponse(GtkWidget* ,
char* ,
758 virtual int VDKSignalResponseListSize() {
767 static int VDKEventUnitPipe(GtkWidget* , GdkEvent*,
void* );
769 #ifdef USE_SIGCPLUSPLUS
772 VDKRawEventSignal OnRawEvent;
774 VDKButtonSignal OnButtonEvent;
776 VDKKeySignal OnKeyEvent;
778 VDKKeyFocusSignal OnKeyFocusEvent;
780 VDKPointerFocusSignal OnPointerFocusEvent;
782 VDKPointerSignal OnPointerEvent;
784 VDKMapSignal OnMapEvent;
786 VDKGeometrySignal OnGeometryEvent;
788 VDKPaintSignal OnPaintEvent;
Provides a raw font.
Definition: vdkfont.h:38
Provides a VDKList iterator.
Definition: dlist.h:201
Hierarchy root class.
Definition: vdkutils.h:264
virtual ~VDKObject()
Definition: vdkobj.cc:235
void SetVisible(bool visible)
Definition: vdkobj.cc:270
GtkWidget * widget
Definition: vdkobj.h:241
VDKReadWriteValueProp< VDKObject, VDKRgb > NormalBackground
Definition: vdkobj.h:156
virtual void SetForeground(VDKRgb color, GtkStateType state=GTK_STATE_NORMAL)
Definition: vdkobj.cc:577
void SetUsize(VDKPoint s)
Definition: vdkobj.h:403
GtkWidget * sigwid
Definition: vdkobj.h:249
VDKObject(VDKForm *owner=NULL)
Definition: vdkobj.cc:69
int EventConnect(VDKObject *obj, char *event, bool(VDKObject::*method)(VDKObject *, GdkEvent *), bool after=false)
Definition: vdkobj.h:729
int EventConnect(char *, bool(VDKObject::*)(VDKObject *, GdkEvent *), bool after=false)
Definition: vdkobj.h:745
virtual void SetBackground(VDKRgb color, GtkStateType state=GTK_STATE_NORMAL)
Definition: vdkobj.cc:586
bool SignalDisconnect(int connection)
Definition: vdkobj.h:664
VDKRgb GetBackground(GtkStateType state=GTK_STATE_NORMAL)
Definition: vdkobj.cc:596
VDKReadWriteValueProp< VDKObject, bool > Enabled
Definition: vdkobj.h:176
VDKFont * GetFont()
Definition: vdkobj.h:342
bool EventDisconnect(int connection)
Definition: vdkobj.h:754
void SetCursor(VDKCursorType)
Definition: vdkobj.cc:180
void GrabFocus()
Definition: vdkobj.cc:682
virtual void Add(VDKObject *obj, int justify=l_justify, int expand=TRUE, int fill=TRUE, int padding=0)
Definition: vdkobj.cc:708
virtual GtkWidget * Widget()
Definition: vdkobj.cc:49
VDKObjectSignal s_clicked
Definition: vdkobj.h:234
GtkWidget * WrappedWidget()
Definition: vdkobj.cc:62
GtkWidget * ConnectingWidget()
Definition: vdkobj.cc:56
void Draw(GdkRectangle *area=NULL)
Definition: vdkobj.cc:789
VDKForm * Owner()
Definition: vdkobj.h:311
SizeObjectProp Usize
Definition: vdkobj.h:172
ItemList & Items()
Definition: vdkobj.h:440
VDKReadWriteValueProp< VDKObject, VDKCursorType > Cursor
Definition: vdkobj.h:180
bool GetVisible()
Definition: vdkobj.h:354
VDKCursorType GetCursor()
Definition: vdkobj.h:365
virtual void SetFont(VDKFont *f)
Definition: vdkobj.cc:535
VDKObject * Parent(VDKObject *p=NULL)
Definition: vdkobj.h:512
virtual void SetTip(char *)
Definition: vdkobj.cc:671
virtual int isA()
Definition: vdkobj.h:307
VDKReadWriteValueProp< VDKObject, VDKFont * > Font
Definition: vdkobj.h:168
void SetSize(int w, int h)
Definition: vdkobj.h:393
VDKRgb GetForeground(GtkStateType state=GTK_STATE_NORMAL)
Definition: vdkobj.cc:622
bool Destroy()
Definition: vdkobj.cc:765
VDKObject * parent
Definition: vdkobj.h:253
virtual void Setup()
Definition: vdkobj.h:467
int SignalConnect(char *signal, bool(VDKObject::*method)(VDKObject *), bool gtk=true, bool after=false)
Definition: vdkobj.h:648
void SignalEmitParent(int signal)
Definition: vdkobj.h:482
VDKReadWriteValueProp< VDKObject, bool > Visible
Definition: vdkobj.h:184
int SignalConnect(VDKObject *obj, char *signal, bool(VDKObject::*method)(VDKObject *), bool gtk=true, bool after=false)
Definition: vdkobj.h:627
Provides a simple point object.
Definition: vdkutils.h:94
Provides a base class for derived raw objects.
Definition: rawobj.h:39
Provides a simple RGB color structure.
Definition: vdkutils.h:38
Implements famous cont referenced string objects.
Definition: vdkstring.h:46