Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members

FXWindow.h
1 /********************************************************************************
2 * *
3 * W i n d o w O b j e c t *
4 * *
5 *********************************************************************************
6 * Copyright (C) 1997,2024 by Jeroen van der Zijp. All Rights Reserved. *
7 *********************************************************************************
8 * This library is free software; you can redistribute it and/or modify *
9 * it under the terms of the GNU Lesser General Public License as published by *
10 * the Free Software Foundation; either version 3 of the License, or *
11 * (at your option) any later version. *
12 * *
13 * This library is distributed in the hope that it will be useful, *
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of *
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
16 * GNU Lesser General Public License for more details. *
17 * *
18 * You should have received a copy of the GNU Lesser General Public License *
19 * along with this program. If not, see <http://www.gnu.org/licenses/> *
20 ********************************************************************************/
21 #ifndef FXWINDOW_H
22 #define FXWINDOW_H
23 
24 #ifndef FXDRAWABLE_H
25 #include "FXDrawable.h"
26 #endif
27 
28 namespace FX {
29 
30 
31 // Forward declarations
32 class FXIcon;
33 class FXBitmap;
34 class FXCursor;
35 class FXRegion;
36 class FXDCWindow;
37 class FXComposite;
38 class FXAccelTable;
39 class FXComposeContext;
40 
41 
43 enum {
44  LAYOUT_NORMAL = 0,
45  LAYOUT_SIDE_TOP = 0,
46  LAYOUT_SIDE_BOTTOM = 0x00000001,
47  LAYOUT_SIDE_LEFT = 0x00000002,
48  LAYOUT_SIDE_RIGHT = LAYOUT_SIDE_LEFT|LAYOUT_SIDE_BOTTOM,
49  LAYOUT_FILL_COLUMN = 0x00000001,
50  LAYOUT_FILL_ROW = 0x00000002,
51  LAYOUT_LEFT = 0,
52  LAYOUT_RIGHT = 0x00000004,
53  LAYOUT_CENTER_X = 0x00000008,
54  LAYOUT_FIX_X = LAYOUT_RIGHT|LAYOUT_CENTER_X,
55  LAYOUT_TOP = 0,
56  LAYOUT_BOTTOM = 0x00000010,
57  LAYOUT_CENTER_Y = 0x00000020,
58  LAYOUT_FIX_Y = LAYOUT_BOTTOM|LAYOUT_CENTER_Y,
59  LAYOUT_DOCK_SAME = 0,
60  LAYOUT_DOCK_NEXT = 0x00000040,
61  LAYOUT_RESERVED_1 = 0x00000080,
62  LAYOUT_FIX_WIDTH = 0x00000100,
63  LAYOUT_FIX_HEIGHT = 0x00000200,
64  LAYOUT_MIN_WIDTH = 0,
65  LAYOUT_MIN_HEIGHT = 0,
66  LAYOUT_FILL_X = 0x00000400,
67  LAYOUT_FILL_Y = 0x00000800,
68  LAYOUT_FILL = LAYOUT_FILL_X|LAYOUT_FILL_Y,
69  LAYOUT_EXPLICIT = LAYOUT_FIX_X|LAYOUT_FIX_Y|LAYOUT_FIX_WIDTH|LAYOUT_FIX_HEIGHT
70  };
71 
72 
74 enum {
75  FRAME_NONE = 0,
76  FRAME_SUNKEN = 0x00001000,
77  FRAME_RAISED = 0x00002000,
78  FRAME_THICK = 0x00004000,
79  FRAME_GROOVE = FRAME_THICK,
80  FRAME_RIDGE = FRAME_THICK|FRAME_RAISED|FRAME_SUNKEN,
81  FRAME_LINE = FRAME_RAISED|FRAME_SUNKEN,
82  FRAME_NORMAL = FRAME_SUNKEN|FRAME_THICK
83  };
84 
85 
87 enum {
88  PACK_NORMAL = 0,
89  PACK_UNIFORM_HEIGHT = 0x00008000,
90  PACK_UNIFORM_WIDTH = 0x00010000
91  };
92 
93 
95 enum FXDNDOrigin {
96  FROM_SELECTION = 0,
97  FROM_CLIPBOARD = 1,
98  FROM_DRAGNDROP = 2
99  };
100 
101 
103 enum FXDragAction {
104  DRAG_REJECT = 0,
105  DRAG_ASK = 1,
106  DRAG_COPY = 2,
107  DRAG_MOVE = 3,
108  DRAG_LINK = 4,
109  DRAG_PRIVATE = 5,
110  DRAG_ACCEPT = 6
111  };
112 
113 
130 class FXAPI FXWindow : public FXDrawable {
131  FXDECLARE(FXWindow)
132  friend class FXApp;
133 private:
134  FXWindow *parent; // Parent Window
135  FXWindow *owner; // Owner Window
136  FXWindow *first; // First Child
137  FXWindow *last; // Last Child
138  FXWindow *next; // Next Sibling
139  FXWindow *prev; // Previous Sibling
140  FXWindow *focus; // Focus Child
141  FXuint wk; // Window Key
142 protected:
143  FXComposeContext *composeContext; // Compose context
144  FXCursor *defaultCursor; // Normal Cursor
145  FXCursor *dragCursor; // Cursor during drag
146  FXAccelTable *accelTable; // Accelerator table
147  FXObject *target; // Target object
148  FXSelector message; // Message ID
149  FXint xpos; // Window X Position
150  FXint ypos; // Window Y Position
151  FXColor backColor; // Window background color
152  FXString tag; // Help tag
153  FXuint flags; // Window state flags
154  FXuint options; // Window options
155 public:
156  static FXDragType octetType; // Raw octet stream
157  static FXDragType deleteType; // Delete request
158  static FXDragType textType; // Ascii text request
159  static FXDragType colorType; // Color request
160  static FXDragType urilistType; // URI list request
161  static FXDragType utf8Type; // UTF-8 text request
162  static FXDragType utf16Type; // UTF-16 text request
163  static FXDragType actionType; // Clipboard action
164  static const FXDragType stringType; // Clipboard text type (pre-registered)
165  static const FXDragType imageType; // Clipboard image type (pre-registered)
166 protected:
167  virtual FXbool doesOverrideRedirect() const;
168 protected:
169 #ifdef WIN32
170  virtual FXID GetDC() const;
171  virtual int ReleaseDC(FXID) const;
172  virtual const void* GetClass() const;
173 #else
174  void addColormapWindows();
175  void remColormapWindows();
176 #endif
177 protected:
178  FXWindow();
179  FXWindow(FXApp* a,FXVisual *vis);
180  FXWindow(FXApp* a,FXWindow* own,FXuint opts,FXint x,FXint y,FXint w,FXint h);
181 private:
182  FXWindow(const FXWindow&);
183  FXWindow& operator=(const FXWindow&);
184 protected:
185 
186  // Window state flags
187  enum {
188  FLAG_SHOWN = 0x00000001, // Is shown
189  FLAG_ENABLED = 0x00000002, // Able to receive input
190  FLAG_UPDATE = 0x00000004, // Is subject to GUI update
191  FLAG_DROPTARGET = 0x00000008, // Drop target
192  FLAG_FOCUSED = 0x00000010, // Has focus
193  FLAG_DIRTY = 0x00000020, // Needs layout
194  FLAG_RECALC = 0x00000040, // Needs recalculation
195  FLAG_TIP = 0x00000080, // Show tip
196  FLAG_HELP = 0x00000100, // Show help
197  FLAG_DEFAULT = 0x00000200, // Default widget
198  FLAG_INITIAL = 0x00000400, // Initial widget
199  FLAG_SHELL = 0x00000800, // Shell window
200  FLAG_ACTIVE = 0x00001000, // Window is active
201  FLAG_PRESSED = 0x00002000, // Button has been pressed
202  FLAG_KEY = 0x00004000, // Keyboard key pressed
203  FLAG_CARET = 0x00008000, // Caret is on
204  FLAG_CHANGED = 0x00010000, // Window data changed
205  FLAG_LASSO = 0x00020000, // Lasso mode
206  FLAG_TRYDRAG = 0x00040000, // Tentative drag mode
207  FLAG_DODRAG = 0x00080000, // Doing drag mode
208  FLAG_SCROLLINSIDE = 0x00100000, // Scroll only when inside
209  FLAG_SCROLLING = 0x00200000, // Right mouse scrolling
210  FLAG_OWNED = 0x00400000, // Owned window handle
211  FLAG_CURSOR = 0x00800000 // Showing cursor
212  };
213 
214 public:
215 
217  enum WindowClass {
218  ClassNormal,
231  ClassDesktop
232  };
233 
234 public:
235  long onPaint(FXObject*,FXSelector,void*);
236  long onMap(FXObject*,FXSelector,void*);
237  long onUnmap(FXObject*,FXSelector,void*);
238  long onConfigure(FXObject*,FXSelector,void*);
239  long onUpdate(FXObject*,FXSelector,void*);
240  long onMotion(FXObject*,FXSelector,void*);
241  long onMouseWheel(FXObject*,FXSelector,void*);
242  long onEnter(FXObject*,FXSelector,void*);
243  long onLeave(FXObject*,FXSelector,void*);
244  long onLeftBtnPress(FXObject*,FXSelector,void*);
245  long onLeftBtnRelease(FXObject*,FXSelector,void*);
246  long onMiddleBtnPress(FXObject*,FXSelector,void*);
247  long onMiddleBtnRelease(FXObject*,FXSelector,void*);
248  long onRightBtnPress(FXObject*,FXSelector,void*);
249  long onRightBtnRelease(FXObject*,FXSelector,void*);
250  long onSpaceBallMotion(FXObject*,FXSelector,void*);
251  long onSpaceBallButtonPress(FXObject*,FXSelector,void*);
252  long onSpaceBallButtonRelease(FXObject*,FXSelector,void*);
253  long onBeginDrag(FXObject*,FXSelector,void*);
254  long onEndDrag(FXObject*,FXSelector,void*);
255  long onDragged(FXObject*,FXSelector,void*);
256  long onKeyPress(FXObject*,FXSelector,void*);
257  long onKeyRelease(FXObject*,FXSelector,void*);
258  long onUngrabbed(FXObject*,FXSelector,void*);
259  long onDestroy(FXObject*,FXSelector,void*);
260  long onFocusSelf(FXObject*,FXSelector,void*);
261  long onFocusIn(FXObject*,FXSelector,void*);
262  long onFocusOut(FXObject*,FXSelector,void*);
263  long onSelectionLost(FXObject*,FXSelector,void*);
264  long onSelectionGained(FXObject*,FXSelector,void*);
265  long onSelectionRequest(FXObject*,FXSelector,void*);
266  long onClipboardLost(FXObject*,FXSelector,void*);
267  long onClipboardGained(FXObject*,FXSelector,void*);
268  long onClipboardRequest(FXObject*,FXSelector,void*);
269  long onDNDEnter(FXObject*,FXSelector,void*);
270  long onDNDLeave(FXObject*,FXSelector,void*);
271  long onDNDMotion(FXObject*,FXSelector,void*);
272  long onDNDDrop(FXObject*,FXSelector,void*);
273  long onDNDRequest(FXObject*,FXSelector,void*);
274  long onQueryHelp(FXObject*,FXSelector,void*);
275  long onQueryTip(FXObject*,FXSelector,void*);
276  long onCmdShow(FXObject*,FXSelector,void*);
277  long onCmdHide(FXObject*,FXSelector,void*);
278  long onUpdToggleShown(FXObject*,FXSelector,void*);
279  long onCmdToggleShown(FXObject*,FXSelector,void*);
280  long onCmdRaise(FXObject*,FXSelector,void*);
281  long onCmdLower(FXObject*,FXSelector,void*);
282  long onCmdEnable(FXObject*,FXSelector,void*);
283  long onCmdDisable(FXObject*,FXSelector,void*);
284  long onUpdToggleEnabled(FXObject*,FXSelector,void*);
285  long onCmdToggleEnabled(FXObject*,FXSelector,void*);
286  long onCmdUpdate(FXObject*,FXSelector,void*);
287  long onUpdYes(FXObject*,FXSelector,void*);
288  long onCmdDelete(FXObject*,FXSelector,void*);
289 public:
290  enum {
291  ID_NONE,
292  ID_HIDE,
293  ID_SHOW,
294  ID_TOGGLESHOWN,
295  ID_LOWER,
296  ID_RAISE,
297  ID_DELETE,
298  ID_DISABLE,
299  ID_ENABLE,
300  ID_TOGGLEENABLED,
301  ID_UNCHECK,
302  ID_CHECK,
303  ID_UNKNOWN,
304  ID_UPDATE,
305  ID_TIPTIMER,
306  ID_SETVALUE,
307  ID_SETINTVALUE,
308  ID_SETLONGVALUE,
309  ID_SETREALVALUE,
310  ID_SETSTRINGVALUE,
311  ID_SETICONVALUE,
312  ID_SETINTRANGE,
313  ID_SETREALRANGE,
314  ID_GETINTVALUE,
315  ID_GETLONGVALUE,
316  ID_GETREALVALUE,
317  ID_GETSTRINGVALUE,
318  ID_GETICONVALUE,
319  ID_GETINTRANGE,
320  ID_GETREALRANGE,
321  ID_SETHELPSTRING,
322  ID_GETHELPSTRING,
323  ID_SETTIPSTRING,
324  ID_GETTIPSTRING,
325  ID_QUERY_MENU,
326  ID_HOTKEY,
327  ID_ACCEL,
328  ID_UNPOST,
329  ID_POST,
330  ID_MDI_TILEHORIZONTAL,
331  ID_MDI_TILEVERTICAL,
332  ID_MDI_CASCADE,
333  ID_MDI_MAXIMIZE,
334  ID_MDI_MINIMIZE,
335  ID_MDI_RESTORE,
336  ID_MDI_CLOSE,
337  ID_MDI_WINDOW,
338  ID_MDI_MENUWINDOW,
339  ID_MDI_MENUMINIMIZE,
340  ID_MDI_MENURESTORE,
341  ID_MDI_MENUCLOSE,
342  ID_MDI_NEXT,
343  ID_MDI_PREV,
344  ID_LAST
345  };
346 public:
347 
348  // Predefined DND type names
349  static const FXchar octetTypeName[];
350  static const FXchar deleteTypeName[];
351  static const FXchar textTypeName[];
352  static const FXchar colorTypeName[];
353  static const FXchar urilistTypeName[];
354  static const FXchar utf8TypeName[];
355  static const FXchar utf16TypeName[];
356  static const FXchar actionTypeName[];
357 
358 public:
359 
361  FXWindow(FXComposite* p,FXuint opts=0,FXint x=0,FXint y=0,FXint w=0,FXint h=0);
362 
364  FXWindow* getParent() const { return parent; }
365 
367  FXWindow* getOwner() const { return owner; }
368 
370  FXWindow* getNext() const { return next; }
371 
373  FXWindow* getPrev() const { return prev; }
374 
376  FXWindow* getFirst() const { return first; }
377 
379  FXWindow* getLast() const { return last; }
380 
382  FXWindow* getFocus() const { return focus; }
383 
385  FXWindow* getShell() const;
386 
388  FXWindow* getRoot() const;
389 
391  virtual WindowClass getWindowClass() const;
392 
394  void setKey(FXuint k){ wk=k; }
395 
397  FXuint getKey() const { return wk; }
398 
400  FXWindow* getChildWithKey(FXuint k) const;
401 
403  void setTarget(FXObject *t){ target=t; }
404 
406  FXObject* getTarget() const { return target; }
407 
409  void setSelector(FXSelector sel){ message=sel; }
410 
412  FXSelector getSelector() const { return message; }
413 
415  FXint getX() const { return xpos; }
416 
418  FXint getY() const { return ypos; }
419 
421  virtual FXint getDefaultWidth();
422 
424  virtual FXint getDefaultHeight();
425 
427  virtual FXint getWidthForHeight(FXint givenheight);
428 
430  virtual FXint getHeightForWidth(FXint givenwidth);
431 
433  void setX(FXint x);
434 
436  void setY(FXint y);
437 
443  void setWidth(FXint w);
444 
450  void setHeight(FXint h);
451 
453  void setLayoutHints(FXuint lout);
454 
456  FXuint getLayoutHints() const;
457 
459  FXAccelTable* getAccelTable() const { return accelTable; }
460 
462  void setAccelTable(FXAccelTable* acceltable){ accelTable=acceltable; }
463 
465  void addHotKey(FXHotKey code);
466 
468  void remHotKey(FXHotKey code);
469 
471  void setHelpTag(const FXString& text){ tag=text; }
472 
474  const FXString& getHelpTag() const { return tag; }
475 
477  FXbool isShell() const;
478 
480  FXbool isOwnerOf(const FXWindow* window) const;
481 
483  FXbool isChildOf(const FXWindow* window) const;
484 
486  FXbool containsChild(const FXWindow* child) const;
487 
489  FXWindow* getChildAt(FXint x,FXint y) const;
490 
492  FXint numChildren() const;
493 
498  FXint indexOfChild(const FXWindow *window) const;
499 
504  FXWindow* childAtIndex(FXint index) const;
505 
507  static FXWindow* commonAncestor(FXWindow* a,FXWindow* b);
508 
510  static FXbool before(const FXWindow *a,const FXWindow* b);
511 
513  static FXbool after(const FXWindow *a,const FXWindow* b);
514 
516  FXComposeContext* getComposeContext() const { return composeContext; }
517 
519  void createComposeContext();
520 
522  void destroyComposeContext();
523 
525  FXbool cursorShown() const;
526 
528  void showCursor(FXbool flag=true);
529 
531  void setDefaultCursor(FXCursor* cur);
532 
534  FXCursor* getDefaultCursor() const { return defaultCursor; }
535 
537  void setDragCursor(FXCursor* cur);
538 
540  FXCursor* getDragCursor() const { return dragCursor; }
541 
543  FXbool getCursorPosition(FXint& x,FXint& y,FXuint& buttons) const;
544 
546  FXbool setCursorPosition(FXint x,FXint y);
547 
549  FXbool isActive() const;
550 
552  virtual FXbool canFocus() const;
553 
555  FXbool hasFocus() const;
556 
558  FXbool inFocusChain() const;
559 
561  virtual void setFocus();
562 
564  virtual void killFocus();
565 
567  FXbool isDefault() const;
568 
576  virtual void setDefault(FXuchar flag=true);
577 
579  FXWindow* findDefault() const;
580 
582  FXbool isInitial() const;
583 
585  void setInitial(FXbool flag=true);
586 
588  FXWindow* findInitial() const;
589 
591  FXbool isEnabled() const;
592 
594  virtual void enable();
595 
597  virtual void disable();
598 
600  virtual void create();
601 
603  virtual void attach(FXID w);
604 
606  virtual void detach();
607 
609  virtual void destroy();
610 
612  virtual void setShape(const FXRegion& region);
613 
615  virtual void setShape(FXBitmap* bitmap);
616 
618  virtual void setShape(FXIcon* icon);
619 
621  virtual void clearShape();
622 
624  virtual void raise();
625 
627  virtual void lower();
628 
634  virtual void move(FXint x,FXint y);
635 
641  virtual void resize(FXint w,FXint h);
642 
648  virtual void position(FXint x,FXint y,FXint w,FXint h);
649 
651  virtual void recalc();
652 
654  virtual void layout();
655 
657  void forceRefresh();
658 
660  virtual void reparent(FXWindow* father,FXWindow *other=nullptr);
661 
663  void scroll(FXint x,FXint y,FXint w,FXint h,FXint dx,FXint dy) const;
664 
666  void update(FXint x,FXint y,FXint w,FXint h) const;
667 
669  void update() const;
670 
672  void repaint(FXint x,FXint y,FXint w,FXint h) const;
673 
675  void repaint() const;
676 
678  FXbool grabbed() const;
679 
684  void grab();
685 
687  void ungrab();
688 
690  FXbool grabbedKeyboard() const;
691 
693  void grabKeyboard();
694 
696  void ungrabKeyboard();
697 
699  FXbool shown() const;
700 
702  virtual void show();
703 
705  virtual void hide();
706 
708  virtual FXbool isComposite() const;
709 
711  FXbool underCursor() const;
712 
714  FXbool hasSelection() const;
715 
717  FXbool acquireSelection(const FXDragType *types,FXuint numtypes);
718 
720  FXbool releaseSelection();
721 
723  FXbool hasClipboard() const;
724 
726  FXbool acquireClipboard(const FXDragType *types,FXuint numtypes);
727 
729  FXbool releaseClipboard();
730 
732  FXbool isDropEnabled() const;
733 
735  virtual void dropEnable();
736 
738  virtual void dropDisable();
739 
741  FXbool isDragging() const;
742 
744  FXbool beginDrag(const FXDragType *types,FXuint numtypes);
745 
750  FXbool handleDrag(FXint x,FXint y,FXDragAction action=DRAG_COPY);
751 
756  FXDragAction endDrag(FXbool drop=true);
757 
759  FXbool isDropTarget() const;
760 
765  void setDragRectangle(FXint x,FXint y,FXint w,FXint h,FXbool wantupdates=true) const;
766 
771  void clearDragRectangle() const;
772 
774  void acceptDrop(FXDragAction action=DRAG_ACCEPT) const;
775 
777  FXDragAction didAccept() const;
778 
790  void dropFinished(FXDragAction action=DRAG_REJECT) const;
791 
793  FXbool inquireDNDTypes(FXDNDOrigin origin,FXDragType*& types,FXuint& numtypes) const;
794 
796  FXbool offeredDNDType(FXDNDOrigin origin,FXDragType type) const;
797 
799  FXDragAction inquireDNDAction() const;
800 
805  FXbool setDNDData(FXDNDOrigin origin,FXDragType type,FXuchar* data,FXuint size) const;
806 
810  FXbool setDNDData(FXDNDOrigin origin,FXDragType type,const FXString& string) const;
811 
816  FXbool getDNDData(FXDNDOrigin origin,FXDragType type,FXuchar*& data,FXuint& size) const;
817 
821  FXbool getDNDData(FXDNDOrigin origin,FXDragType type,FXString& string) const;
822 
824  virtual FXbool contains(FXint parentx,FXint parenty) const;
825 
827  void translateCoordinatesFrom(FXint& tox,FXint& toy,const FXWindow* fromwindow,FXint fromx,FXint fromy) const;
828 
830  void translateCoordinatesTo(FXint& tox,FXint& toy,const FXWindow* towindow,FXint fromx,FXint fromy) const;
831 
833  virtual void setBackColor(FXColor clr);
834 
836  FXColor getBackColor() const { return backColor; }
837 
839  virtual FXbool doesSaveUnder() const;
840 
849  virtual const FXchar* tr(const FXchar* text,const FXchar* hint=nullptr,FXint count=-1) const FX_FORMAT(2) ;
850 
852  virtual void save(FXStream& store) const;
853 
855  virtual void load(FXStream& store);
856 
858  virtual ~FXWindow();
859  };
860 
861 }
862 
863 #endif
Special child window.
Definition: FXWindow.h:221
Notify window.
Definition: FXWindow.h:230
FXWindow * getFocus() const
Return a pointer to the currently focused child window.
Definition: FXWindow.h:382
A Bitmap is a rectangular array of pixels.
Definition: FXBitmap.h:55
Window is the base class for all widgets in FOX.
Definition: FXWindow.h:130
FXAccelTable * getAccelTable() const
Return a pointer to the accelerator table.
Definition: FXWindow.h:459
Main application window.
Definition: FXWindow.h:226
FXComposeContext * getComposeContext() const
Return compose context.
Definition: FXWindow.h:516
FXWindow * getLast() const
Return a pointer to this window&#39;s last child window, if any.
Definition: FXWindow.h:379
The accelerator table sends a message to a specific target object when the indicated key and modifier...
Definition: FXAccelTable.h:36
FXWindow * getParent() const
Return a pointer to the parent window.
Definition: FXWindow.h:364
Graphics child window.
Definition: FXWindow.h:220
Tooltip window.
Definition: FXWindow.h:225
FXuint getKey() const
Return window key.
Definition: FXWindow.h:397
The Application object is the central point of a FOX user-interface.
Definition: FXApp.h:134
void setSelector(FXSelector sel)
Set the message identifier for this window.
Definition: FXWindow.h:409
FXWindow * getFirst() const
Return a pointer to this window&#39;s first child window , if any.
Definition: FXWindow.h:376
Popup window.
Definition: FXWindow.h:224
FXWindow * getPrev() const
Return a pointer to the previous (sibling) window , if any.
Definition: FXWindow.h:373
A stream is a way to serialize data and objects into a byte stream.
Definition: FXStream.h:81
FXWindow * getOwner() const
Return a pointer to the owner window.
Definition: FXWindow.h:367
void setTarget(FXObject *t)
Set the message target object for this window.
Definition: FXWindow.h:403
Root window.
Definition: FXWindow.h:222
void setKey(FXuint k)
Change window key.
Definition: FXWindow.h:394
Splash window.
Definition: FXWindow.h:229
Definition: FX4Splitter.h:28
An Icon is an image with two additional server-side resources: a shape bitmap, which is used to mask ...
Definition: FXIcon.h:42
FXObject * getTarget() const
Get the message target object for this window, if any.
Definition: FXWindow.h:406
Shell window.
Definition: FXWindow.h:223
Compose Context manages the state of an input method if input method support is enabled.
Definition: FXComposeContext.h:39
Normal child window.
Definition: FXWindow.h:219
Cursor class.
Definition: FXCursor.h:52
Visual describes pixel format of a drawable.
Definition: FXVisual.h:58
FXSelector getSelector() const
Get the message identifier for this window.
Definition: FXWindow.h:412
FXint getX() const
Get this window&#39;s x-coordinate, in the parent&#39;s coordinate system.
Definition: FXWindow.h:415
FXColor getBackColor() const
Get background color.
Definition: FXWindow.h:836
FXint getY() const
Get this window&#39;s y-coordinate, in the parent&#39;s coordinate system.
Definition: FXWindow.h:418
Object is the base class for all objects in FOX; in order to receive messages from the user interface...
Definition: FXObject.h:138
Region.
Definition: FXRegion.h:28
FXWindow * getNext() const
Return a pointer to the next (sibling) window, if any.
Definition: FXWindow.h:370
FXCursor * getDragCursor() const
Return the drag cursor for this window.
Definition: FXWindow.h:540
const FXString & getHelpTag() const
Get the help tag for this widget.
Definition: FXWindow.h:474
void setHelpTag(const FXString &text)
Change help tag for this widget.
Definition: FXWindow.h:471
Dialog box window.
Definition: FXWindow.h:227
WindowClass
Window classes.
Definition: FXWindow.h:217
FXCursor * getDefaultCursor() const
Return the default cursor for this window.
Definition: FXWindow.h:534
void setAccelTable(FXAccelTable *acceltable)
Set the accelerator table.
Definition: FXWindow.h:462
Toolbar window.
Definition: FXWindow.h:228
FXString provides essential string manipulation capabilities in FOX.
Definition: FXString.h:42
Drawable is an abstract base class for any surface that can be drawn upon, such as a FXWindow...
Definition: FXDrawable.h:38

Copyright © 1997-2022 Jeroen van der Zijp