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

FXMDIButton.h

Go to the documentation of this file.
00001 /********************************************************************************
00002 *                                                                               *
00003 *             M u l t i p l e   D o c u m e n t   B u t t o n                   *
00004 *                                                                               *
00005 *********************************************************************************
00006 * Copyright (C) 1998,2009 by Jeroen van der Zijp.   All Rights Reserved.        *
00007 *********************************************************************************
00008 * This library is free software; you can redistribute it and/or modify          *
00009 * it under the terms of the GNU Lesser General Public License as published by   *
00010 * the Free Software Foundation; either version 3 of the License, or             *
00011 * (at your option) any later version.                                           *
00012 *                                                                               *
00013 * This library is distributed in the hope that it will be useful,               *
00014 * but WITHOUT ANY WARRANTY; without even the implied warranty of                *
00015 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the                 *
00016 * GNU Lesser General Public License for more details.                           *
00017 *                                                                               *
00018 * You should have received a copy of the GNU Lesser General Public License      *
00019 * along with this program.  If not, see <http://www.gnu.org/licenses/>          *
00020 *********************************************************************************
00021 * $Id: FXMDIButton.h,v 1.20 2009/01/06 13:07:25 fox Exp $                       *
00022 ********************************************************************************/
00023 #ifndef FXMDIBUTTON_H
00024 #define FXMDIBUTTON_H
00025 
00026 #ifndef FXBUTTON_H
00027 #include "FXButton.h"
00028 #endif
00029 
00030 namespace FX {
00031 
00032 class FXIcon;
00033 
00034 
00035 /// MDI Delete button
00036 class FXAPI FXMDIDeleteButton : public FXButton {
00037   FXDECLARE(FXMDIDeleteButton)
00038 protected:
00039   FXMDIDeleteButton(){}
00040 private:
00041   FXMDIDeleteButton(const FXMDIDeleteButton&);
00042   FXMDIDeleteButton &operator=(const FXMDIDeleteButton&);
00043 public:
00044   long onPaint(FXObject*,FXSelector,void*);
00045 public:
00046   /// Constructor
00047   FXMDIDeleteButton(FXComposite* p,FXObject* tgt=NULL,FXSelector sel=0,FXuint opts=FRAME_RAISED,FXint x=0,FXint y=0,FXint w=0,FXint h=0);
00048   virtual FXint getDefaultWidth();
00049   virtual FXint getDefaultHeight();
00050   };
00051 
00052 
00053 /// MDI Restore button
00054 class FXAPI FXMDIRestoreButton : public FXButton {
00055   FXDECLARE(FXMDIRestoreButton)
00056 protected:
00057   FXMDIRestoreButton(){}
00058 private:
00059   FXMDIRestoreButton(const FXMDIRestoreButton&);
00060   FXMDIRestoreButton &operator=(const FXMDIRestoreButton&);
00061 public:
00062   long onPaint(FXObject*,FXSelector,void*);
00063 public:
00064   /// Constructor
00065   FXMDIRestoreButton(FXComposite* p,FXObject* tgt=NULL,FXSelector sel=0,FXuint opts=FRAME_RAISED,FXint x=0,FXint y=0,FXint w=0,FXint h=0);
00066   virtual FXint getDefaultWidth();
00067   virtual FXint getDefaultHeight();
00068   };
00069 
00070 
00071 /// MDI Maximize button
00072 class FXAPI FXMDIMaximizeButton : public FXButton {
00073   FXDECLARE(FXMDIMaximizeButton)
00074 protected:
00075   FXMDIMaximizeButton(){}
00076 private:
00077   FXMDIMaximizeButton(const FXMDIMaximizeButton&);
00078   FXMDIMaximizeButton &operator=(const FXMDIMaximizeButton&);
00079 public:
00080   long onPaint(FXObject*,FXSelector,void*);
00081 public:
00082   /// Constructor
00083   FXMDIMaximizeButton(FXComposite* p,FXObject* tgt=NULL,FXSelector sel=0,FXuint opts=FRAME_RAISED,FXint x=0,FXint y=0,FXint w=0,FXint h=0);
00084   virtual FXint getDefaultWidth();
00085   virtual FXint getDefaultHeight();
00086   };
00087 
00088 
00089 /// MDI Minimize button
00090 class FXAPI FXMDIMinimizeButton : public FXButton {
00091   FXDECLARE(FXMDIMinimizeButton)
00092 protected:
00093   FXMDIMinimizeButton(){}
00094 private:
00095   FXMDIMinimizeButton(const FXMDIMinimizeButton&);
00096   FXMDIMinimizeButton &operator=(const FXMDIMinimizeButton&);
00097 public:
00098   long onPaint(FXObject*,FXSelector,void*);
00099 public:
00100   /// Constructor
00101   FXMDIMinimizeButton(FXComposite* p,FXObject* tgt=NULL,FXSelector sel=0,FXuint opts=FRAME_RAISED,FXint x=0,FXint y=0,FXint w=0,FXint h=0);
00102   virtual FXint getDefaultWidth();
00103   virtual FXint getDefaultHeight();
00104   };
00105 
00106 
00107 /// MDI Window button
00108 class FXAPI FXMDIWindowButton : public FXMenuButton {
00109   FXDECLARE(FXMDIWindowButton)
00110 protected:
00111   FXMDIWindowButton(){}
00112 private:
00113   FXMDIWindowButton(const FXMDIWindowButton&);
00114   FXMDIWindowButton &operator=(const FXMDIWindowButton&);
00115 public:
00116   long onPaint(FXObject*,FXSelector,void*);
00117 public:
00118   /// Constructor
00119   FXMDIWindowButton(FXComposite* p,FXPopup* pup,FXObject* tgt=NULL,FXSelector sel=0,FXuint opts=0,FXint x=0,FXint y=0,FXint w=0,FXint h=0);
00120   virtual FXint getDefaultWidth();
00121   virtual FXint getDefaultHeight();
00122   };
00123 
00124 
00125 /// MDI Window Menu
00126 class FXAPI FXMDIMenu : public FXMenuPane {
00127   FXDECLARE(FXMDIMenu)
00128 private:
00129   FXIcon *closeicon;
00130   FXIcon *maximizeicon;
00131   FXIcon *minimizeicon;
00132   FXIcon *restoreicon;
00133 protected:
00134   FXMDIMenu(){}
00135 private:
00136   FXMDIMenu(const FXMDIMenu&);
00137   FXMDIMenu &operator=(const FXMDIMenu&);
00138 public:
00139 
00140   /// Construct MDI menu
00141   FXMDIMenu(FXWindow *owner,FXObject* tgt=NULL);
00142 
00143   /// Destructor
00144   virtual ~FXMDIMenu();
00145   };
00146 
00147 }
00148 
00149 #endif

Copyright © 1997-2009 Jeroen van der Zijp