vdk 2.4.0
|
00001 /* 00002 * =========================== 00003 * VDK Visual Development Kit 00004 * Version 2.0.2 00005 * April 2002 00006 * =========================== 00007 * 00008 * Copyright (C) 1998, Mario Motta 00009 * Developed by Mario Motta <mmotta@guest.net> 00010 * 00011 * This library is free software; you can redistribute it and/or 00012 * modify it under the terms of the GNU Library General Public 00013 * License as published by the Free Software Foundation; either 00014 * version 2 of the License, or (at your option) any later version. 00015 * 00016 * This library is distributed in the hope that it will be useful, 00017 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00018 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00019 * Library General Public License for more details. 00020 * 00021 * You should have received a copy of the GNU Library General Public 00022 * License along with this library; if not, write to the Free Software 00023 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 00024 * 02111-1307, USA. 00025 */ 00026 #ifndef _vdkdockable_h 00027 #define _vdkdockable_h 00028 #include <vdk/boxes.h> 00029 #include <vdk/forms.h> 00030 00031 #define docked_signal 2048 00032 #define undocked_signal 2049 00033 00034 class VDKDockerBoxForm; 00040 class VDKDockerBox : public VDKBox 00041 { 00042 void Dock (); 00043 void Undock (); 00044 int justify, fill, expand, padding; 00045 friend class VDKObjectContainer; 00046 friend class VDKDockerBoxForm; 00047 void SetDocked (bool flag); 00048 bool GetDocked (); 00049 00050 protected: 00051 00052 VDKDockerBoxForm* dock_form; 00053 public: 00057 VDKReadWriteValueProp <VDKDockerBox, bool> Docked; 00063 VDKDockerBox (VDKForm* owner, int mode = v_box); 00067 virtual ~VDKDockerBox (); 00068 00069 VDKDockerBoxForm* DockForm() { return dock_form; } 00070 00071 }; 00072 00073 class VDKDockerBoxForm: public VDKForm 00074 { 00075 friend class VDKDockerBox; 00076 VDKObjectContainer* box_from; 00077 VDKDockerBox* docker; 00078 VDKDockerBoxForm (VDKForm* owner, char* title = NULL); 00079 ~VDKDockerBoxForm (); 00080 void Setup (); 00081 bool CanClose (); 00082 }; 00083 #endif