vdk 2.4.0
vdkdockable.h
1 /*
2  * ===========================
3  * VDK Visual Development Kit
4  * Version 2.0.2
5  * April 2002
6  * ===========================
7  *
8  * Copyright (C) 1998, Mario Motta
9  * Developed by Mario Motta <mmotta@guest.net>
10  *
11  * This library is free software; you can redistribute it and/or
12  * modify it under the terms of the GNU Library General Public
13  * License as published by the Free Software Foundation; either
14  * version 2 of the License, or (at your option) any later version.
15  *
16  * This library is distributed in the hope that it will be useful,
17  * but WITHOUT ANY WARRANTY; without even the implied warranty of
18  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
19  * Library General Public License for more details.
20  *
21  * You should have received a copy of the GNU Library General Public
22  * License along with this library; if not, write to the Free Software
23  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
24  * 02111-1307, USA.
25  */
26 #ifndef _vdkdockable_h
27 #define _vdkdockable_h
28 #include <vdk/boxes.h>
29 #include <vdk/forms.h>
30 
31 #define docked_signal 2048
32 #define undocked_signal 2049
33 
34 class VDKDockerBoxForm;
40 class VDKDockerBox : public VDKBox
41 {
42  void Dock ();
43  void Undock ();
44  int justify, fill, expand, padding;
45  friend class VDKObjectContainer;
46  friend class VDKDockerBoxForm;
47  void SetDocked (bool flag);
48  bool GetDocked ();
49 
50  protected:
51 
52  VDKDockerBoxForm* dock_form;
53  public:
57  VDKReadWriteValueProp <VDKDockerBox, bool> Docked;
63  VDKDockerBox (VDKForm* owner, int mode = v_box);
67  virtual ~VDKDockerBox ();
68 
69  VDKDockerBoxForm* DockForm() { return dock_form; }
70 
71 };
72 
73 class VDKDockerBoxForm: public VDKForm
74 {
75  friend class VDKDockerBox;
76  VDKObjectContainer* box_from;
77  VDKDockerBox* docker;
78  VDKDockerBoxForm (VDKForm* owner, char* title = NULL);
79  ~VDKDockerBoxForm ();
80  void Setup ();
81  bool CanClose ();
82  };
83 #endif
VDKDockerBox
Provides a box that can be detached from his container and attached (docked) into a separate form.
Definition: vdkdockable.h:40
VDKDockerBox::Docked
VDKReadWriteValueProp< VDKDockerBox, bool > Docked
Definition: vdkdockable.h:57
VDKObjectContainer
Containers base class.
Definition: widcontain.h:39
VDKDockerBox::VDKDockerBox
VDKDockerBox(VDKForm *owner, int mode=v_box)
Definition: vdkdockable.cc:29
VDKForm::Setup
virtual void Setup(void)=0
VDKForm
VDKForm widgets, generally the outermost widget container.
Definition: forms.h:68
VDKForm::CanClose
virtual bool CanClose(void)
Definition: forms.cc:674
VDKBox
One of the most used widget containers.
Definition: boxes.h:37
VDKDockerBox::~VDKDockerBox
virtual ~VDKDockerBox()
Definition: vdkdockable.cc:43