xref: /trunk/main/toolkit/doc/layout/apinotes.txt (revision 0bdb6530)
1*0bdb6530SAndrew Rist# *************************************************************
2*0bdb6530SAndrew Rist#
3*0bdb6530SAndrew Rist#  Licensed to the Apache Software Foundation (ASF) under one
4*0bdb6530SAndrew Rist#  or more contributor license agreements.  See the NOTICE file
5*0bdb6530SAndrew Rist#  distributed with this work for additional information
6*0bdb6530SAndrew Rist#  regarding copyright ownership.  The ASF licenses this file
7*0bdb6530SAndrew Rist#  to you under the Apache License, Version 2.0 (the
8*0bdb6530SAndrew Rist#  "License"); you may not use this file except in compliance
9*0bdb6530SAndrew Rist#  with the License.  You may obtain a copy of the License at
10*0bdb6530SAndrew Rist#
11*0bdb6530SAndrew Rist#    http://www.apache.org/licenses/LICENSE-2.0
12*0bdb6530SAndrew Rist#
13*0bdb6530SAndrew Rist#  Unless required by applicable law or agreed to in writing,
14*0bdb6530SAndrew Rist#  software distributed under the License is distributed on an
15*0bdb6530SAndrew Rist#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16*0bdb6530SAndrew Rist#  KIND, either express or implied.  See the License for the
17*0bdb6530SAndrew Rist#  specific language governing permissions and limitations
18*0bdb6530SAndrew Rist#  under the License.
19*0bdb6530SAndrew Rist#
20*0bdb6530SAndrew Rist# *************************************************************
21cdf0e10cSrcweirNotes on API wrapper pieces ...
22cdf0e10cSrcweir
23cdf0e10cSrcweirSvxZoomDialog::SvxZoomDialog( Window* pParent, const SfxItemSet& rCoreSet ) :
24cdf0e10cSrcweir	Dialog( pParent, SVX_RES( RID_SVXDLG_ZOOM ) ),
25cdf0e10cSrcweir
26cdf0e10cSrcweirWhat do we do ?
27cdf0e10cSrcweir	+ lots of potential VCL/Svx/Sfx etc. top-levels ...
28cdf0e10cSrcweir
29cdf0e10cSrcweir	+ Create the window & the 1st member: 'FooHandle' ?
30cdf0e10cSrcweir	    + Multiply inherited ?
31cdf0e10cSrcweir	+ object from where ?
32cdf0e10cSrcweir
33cdf0e10cSrcweir	+ Default:
34cdf0e10cSrcweir	    + a pseudo-Dialog / wrapper ...
35cdf0e10cSrcweir	    + load using layout (etc.)
36cdf0e10cSrcweir		+ register an SID table ?
37cdf0e10cSrcweir		    + necessary ?
38cdf0e10cSrcweir		+ SIDs ? - post it ...
39cdf0e10cSrcweir
40cdf0e10cSrcweir
41cdf0e10cSrcweir	+ [ Otherwise ... hook up via a helper /
42cdf0e10cSrcweir	    constructor member ... ]
43cdf0e10cSrcweir
44cdf0e10cSrcweir* Fixed:
45cdf0e10cSrcweir    + OKButton / CancelButton
46cdf0e10cSrcweir	+ don't chain to PushButton::Click
47cdf0e10cSrcweir	    + if there is no ClickHdl set ... [ !urgh! ...]
48cdf0e10cSrcweir
49cdf0e10cSrcweir    * FIXME:
50cdf0e10cSrcweir	other widgets ...
51cdf0e10cSrcweir	* How do we cope ? *
52cdf0e10cSrcweir	....
53cdf0e10cSrcweir	    + priorities ? Layout ?
54cdf0e10cSrcweir	    + de-coupling ?
55cdf0e10cSrcweir	    + native widgets ?
56cdf0e10cSrcweir	    + hmm...
57cdf0e10cSrcweir	+ custom widgets ?
58cdf0e10cSrcweir	    + 'OKButton' ... (?) :-)
59cdf0e10cSrcweir	    + 'CancelButton'
60cdf0e10cSrcweir	    + 'HelpButton' ...
61cdf0e10cSrcweir	+ a VCL hack ...
62cdf0e10cSrcweir	    + create an 'addLayout()' method ?
63cdf0e10cSrcweir	    + [ like cl's ? ]
64cdf0e10cSrcweir	+ implement this ...
65cdf0e10cSrcweir
66cdf0e10cSrcweir** Lifecycle ?
67cdf0e10cSrcweir    + how do we track the 'Impl'
68cdf0e10cSrcweir      vs. the pImpl vs. (etc.)
69cdf0e10cSrcweir	+ held by mutual references ?
70cdf0e10cSrcweir
71cdf0e10cSrcweir    + pointer to the widget itself passed in ?
72cdf0e10cSrcweir	+ MI ?
73cdf0e10cSrcweir    + when the widget dies - just NULL the
74cdf0e10cSrcweir      listener's back-ptr ?
75cdf0e10cSrcweir
76cdf0e10cSrcweir    + Locking [!?] - how / why / what / who ?
77cdf0e10cSrcweir	+ urgh ...
78cdf0e10cSrcweir	+ threading bits ...
79cdf0e10cSrcweir
80cdf0e10cSrcweir    + SID table (?) ...
81cdf0e10cSrcweir	+ [ necessary ? - just use the SID name as the XML attr ? ]
82cdf0e10cSrcweir	+ LAYOUT_ID(a) -> "#a" - stringified ...
83cdf0e10cSrcweir
84cdf0e10cSrcweir** FIXME:
85cdf0e10cSrcweir    + we need a decent MetricField implementation
86cdf0e10cSrcweir	+ it is more than a SpinField
87cdf0e10cSrcweir	+ need to move the 'Border' property down (etc.)
88cdf0e10cSrcweir	+ re-arrange the properties to be next to the impls.
89cdf0e10cSrcweir	  in awt ...
90cdf0e10cSrcweir
91cdf0e10cSrcweir    + fix the
92cdf0e10cSrcweir
93cdf0e10cSrcweirXCurrencyField (huh)
94cdf0e10cSrcweir    needs implementing for VCLXMetricField (non-existent) ...
95cdf0e10cSrcweir    copy the code from XCurrencyField ? make a sub-class there ?
96cdf0e10cSrcweir
97