On Tue, 15 Jul 2003 19:13:16 +0200 (CEST) Robert Vazan <[EMAIL PROTECTED]> wrote:
RV> > I don't understand this -- surely the wizard could still find the max RV> > size RV> > of all pages starting from the first one as it currently does in RV> > FitToPage() even if the sizer were used internally? The advantage is that RV> > you could add pages which can't be reached by applying GetNext() to the RV> > first one to the sizer as well. RV> RV> What you are writing here seems to be actual behaviour of patched RV> wizard, so what's the problem? No, the crucial (IMO) difference is that the wizard doesn't do this before hand (or does it?) but its size may change when you pass from page to page. IMHO this is not good. RV> > RV> Then why not make new behaviour forced without any checks? RV> > RV> > Sorry, which new behaviour? RV> RV> This was lost in thread. We talked about style flag that switches RV> between old behaviour (100-percent identical to old wizard except RV> implementation) and new behaviour (automatic FitToPage for all pages, RV> user-resizable window, no border around page). 1. border around page: this should definitely be just another accessor function (SetBorder()) 2. user-resizable: we should add style parameter to wxWizard ctor and make it resizeable only if it has wxRESIZE_BORDER flag 3. automatic FitToPage(): in my mind, this should be done only for the pages added to the sizer (the one returned by GetPageAreaSizer()), so we don't need an extra flag for this neither All this just to say that I don't think we need the extra flag as 3 things are IMO orthogonal and shouldn't be changed by a single flag. RV> The question was, whether this flag should be left as it is, changed to RV> member function, or made default. I proposed above to make it default RV> from wxWindows 2.5 up, forcing all applications to deal with it, because RV> everybody is using sizers for individual pages anyway. With my (3) above the old code would continue to work as before. The new code will have to explicitly call GetPageAreaSizer()->Add() and also specify wxRESIZE_BORDER if it wants it. RV> > It looks (from reading the code) that the wizard size may change when RV> > passing to another page -- is this true? RV> RV> Yes, that's what sizers are for, after all. The only problem I had with RV> this is that very big page following smallest page will move center of RV> wizard significantly away from center of screen. Keeping it centered RV> requires some work (sizers are calculated in asynchronous events) and RV> this functionality should be part of wxWindow, not wxWizard. No, I disagree. wxWizard shouldn't change size like this, this is bad UI. It should have the max size needed to display all of its pages, this is why I want to precalculate it in advance. So what do you think about this plan? BTW, if you agree, could you please make patch for wxWindows itself directly (CVS HEAD)? This will surely go there and not in Mahogany. TIA! VZ ------------------------------------------------------- This SF.Net email sponsored by: Parasoft Error proof Web apps, automate testing & more. Download & eval WebKing and get a free book. www.parasoft.com/bulletproofapps1 _______________________________________________ Mahogany-Developers mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/mahogany-developers
