]>
Commit | Line | Data |
---|---|---|
bd9396d5 HH |
1 | <html><body bgcolor=#FFFFFF> |
2 | ||
3 | <h2><i>FrameLayout</i> window-docking system (WDS) for wxWindows-2.0</h1> | |
4 | ||
5 | (doc-v1.0.1, mailto:alex@soften.ktu.lt) | |
6 | ||
7 | <pre><b> | |
8 | 1. Overview | |
9 | 2. Main components | |
10 | 3. Persistance framework | |
11 | 4. Generated Source Code docs (useless) | |
12 | </b> | |
13 | ||
14 | 1. Overview | |
15 | =========== | |
16 | ||
17 | Docking is a relatively new method of layouting GUI | |
18 | components. It allows user to customize his/her workplace | |
19 | by simply dragging around and resizing contents within | |
20 | applications main window. These contents (further refered | |
21 | as control-bars) can be docked along top, bottom, left and | |
22 | right sides of the frame, positioning workplace's client area | |
23 | window (e.g. current document) in the center of the frame. | |
24 | ||
25 | 2. Main components. | |
26 | =================== | |
27 | ||
28 | * parent frame | |
29 | * four docking panes | |
30 | * control-bars | |
31 | * client area | |
32 | ||
33 | Parent frame is usually application's main window. | |
34 | Frame-Layout system (FL) allows layout compnents | |
35 | to be placed into any kind of window such as dialog, | |
36 | panel or modeless-frame. | |
37 | ||
38 | Docking panes are rectangluar areas which surround the client | |
39 | window along top, bottom, left and right edges. Control-bars | |
40 | are docked into these panes. | |
41 | ||
42 | Cotrol-bars are named so, because the usually embed common | |
43 | GUI controls such as toolbars, choices, text/tree controls. | |
44 | Control-bars can be fixed-size or flexible. For the later | |
45 | ones FL automaticlly places resizing handles along those edges | |
46 | of flexible-bar, which actually can be moved, e.g. edge which | |
47 | is in touch with the client are will have handle to allow | |
48 | ajusting the client's area vs. pane's area. | |
49 | ||
50 | Client area can be any provided window such as panel or MDI parent | |
51 | window. FL will resize and position this window to fit the free | |
52 | space, which is not occupied by surrounding panes. | |
53 | ||
54 | (the rest is "under construction" at the moment) | |
55 | ||
56 | --------------------------------------------------------------------- | |
57 | ||
58 | Persistance-Framework for wxWindows, 1998 (c) Aleksandras Gluchovas | |
59 | ||
60 | Contents | |
61 | ======== | |
62 | ||
63 | 1. Abstract | |
64 | 2. Extending wxWindows object system | |
65 | 3. Common scenario for making classes persistent | |
66 | 4. Kinds of persistent objects | |
67 | 5. PF behavior | |
68 | 6. Transient objects | |
69 | 7. Object versioning | |
70 | 8. Polymorphic persistence | |
71 | 9. Serializers for common wxWindows classes | |
72 | 10. Class/Macro Reference | |
73 | ||
74 | 1. Abstract | |
75 | =========== | |
76 | ||
77 | The persistence-framework (PF) aims to provide | |
78 | an easier means of making C++ objects persistent. | |
79 | It is solely specialized to store/load (i.e. serialize) | |
80 | objects, but not to manipulate their data, therefore | |
81 | it cannot act as a real object-database. This PF also could | |
82 | be used for implementing undo-able operations on object- | |
83 | systems (to some extent). It handles most common specialties | |
84 | of run-time data: | |
85 | ||
86 | 1) Not-storable (transient) objects | |
87 | 2) Differences in object structure among different builds | |
88 | 3) Not-data characteristics of objects - dynamic types | |
89 | of class instances | |
90 | ||
91 | 2. "Extending" wxWindows object system | |
92 | ====================================== | |
93 | ||
94 | PF does not require any modification to existing | |
95 | not-persistent classes. It uses meta-information | |
96 | held in derivatives of wxObject for | |
97 | the purpose of RTTI, thus only the later | |
98 | classes can be made persistent. Information | |
99 |