1 /******************************************************************************** 2 * * 3 * R o o t W i n d o w W i d g e t * 4 * * 5 ********************************************************************************* 6 * Copyright (C) 1997,2006 by Jeroen van der Zijp. All Rights Reserved. * 7 ********************************************************************************* 8 * This library is free software; you can redistribute it and/or * 9 * modify it under the terms of the GNU Lesser General Public * 10 * License as published by the Free Software Foundation; either * 11 * version 2.1 of the License, or (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 GNU * 16 * Lesser General Public License for more details. * 17 * * 18 * You should have received a copy of the GNU Lesser General Public * 19 * License along with this library; if not, write to the Free Software * 20 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. * 21 ********************************************************************************* 22 * $Id: FXRootWindow.h 3297 2015-12-14 20:30:04Z arthurcnorman $ * 23 ********************************************************************************/ 24 #ifndef FXROOTWINDOW_H 25 #define FXROOTWINDOW_H 26 27 #ifndef FXCOMPOSITE_H 28 #include "FXComposite.h" 29 #endif 30 31 namespace FX { 32 33 34 /// Root window 35 class FXAPI FXRootWindow : public FXComposite { FXDECLARE(FXRootWindow)36 FXDECLARE(FXRootWindow) 37 protected: 38 FXRootWindow(){} 39 #ifdef WIN32 40 virtual FXID GetDC() const; 41 virtual int ReleaseDC(FXID) const; 42 #endif 43 private: 44 FXRootWindow(const FXRootWindow&); 45 FXRootWindow &operator=(const FXRootWindow&); 46 public: 47 48 /// Construct root window 49 FXRootWindow(FXApp* a,FXVisual *vis); 50 51 /// Root window need not be created 52 virtual void create(); 53 54 /// Root window may not be detached 55 virtual void detach(); 56 57 /// Root window can not be destroyed 58 virtual void destroy(); 59 60 /// Perform layout 61 virtual void layout(); 62 63 /// Return width of the root window 64 virtual FXint getDefaultWidth(); 65 66 /// Return height of the root window 67 virtual FXint getDefaultHeight(); 68 69 /// No op 70 virtual void recalc(); 71 72 /// Root window can not be moved 73 virtual void move(FXint x,FXint y); 74 75 /// Root window can not be resized 76 virtual void resize(FXint w,FXint h); 77 78 /// Root window can not be positioned 79 virtual void position(FXint x,FXint y,FXint w,FXint h); 80 81 /// Root window can not get focus 82 virtual void setFocus(); 83 84 /// Root window can not loose 85 virtual void killFocus(); 86 87 /// Destructor 88 virtual ~FXRootWindow(); 89 }; 90 91 } 92 93 #endif 94