# ************************************************************* # # Licensed to the Apache Software Foundation (ASF) under one # or more contributor license agreements. See the NOTICE file # distributed with this work for additional information # regarding copyright ownership. The ASF licenses this file # to you under the Apache License, Version 2.0 (the # "License"); you may not use this file except in compliance # with the License. You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, # software distributed under the License is distributed on an # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY # KIND, either express or implied. See the License for the # specific language governing permissions and limitations # under the License. # # ************************************************************* Notes on API wrapper pieces ... SvxZoomDialog::SvxZoomDialog( Window* pParent, const SfxItemSet& rCoreSet ) : Dialog( pParent, SVX_RES( RID_SVXDLG_ZOOM ) ), What do we do ? + lots of potential VCL/Svx/Sfx etc. top-levels ... + Create the window & the 1st member: 'FooHandle' ? + Multiply inherited ? + object from where ? + Default: + a pseudo-Dialog / wrapper ... + load using layout (etc.) + register an SID table ? + necessary ? + SIDs ? - post it ... + [ Otherwise ... hook up via a helper / constructor member ... ] * Fixed: + OKButton / CancelButton + don't chain to PushButton::Click + if there is no ClickHdl set ... [ !urgh! ...] * FIXME: other widgets ... * How do we cope ? * .... + priorities ? Layout ? + de-coupling ? + native widgets ? + hmm... + custom widgets ? + 'OKButton' ... (?) :-) + 'CancelButton' + 'HelpButton' ... + a VCL hack ... + create an 'addLayout()' method ? + [ like cl's ? ] + implement this ... ** Lifecycle ? + how do we track the 'Impl' vs. the pImpl vs. (etc.) + held by mutual references ? + pointer to the widget itself passed in ? + MI ? + when the widget dies - just NULL the listener's back-ptr ? + Locking [!?] - how / why / what / who ? + urgh ... + threading bits ... + SID table (?) ... + [ necessary ? - just use the SID name as the XML attr ? ] + LAYOUT_ID(a) -> "#a" - stringified ... ** FIXME: + we need a decent MetricField implementation + it is more than a SpinField + need to move the 'Border' property down (etc.) + re-arrange the properties to be next to the impls. in awt ... + fix the XCurrencyField (huh) needs implementing for VCLXMetricField (non-existent) ... copy the code from XCurrencyField ? make a sub-class there ?