Hello Chris & NG,
sorry for the late answer (I see that Robin has already kicked me for that :-)))) ). I have read all the messages you sent about NotebookCtrl. Regarding the first one:
1) As the tab text gets larger than the default, it is not
vertically centered. Is there a way to do this?I still haven't been able to center the text.
This feature is still not implemented in NotebookCtrl. It would not be so complicated to do, but I am wondering what happens if you have 2 tabs with very different font sizes. You would get them centered vertically, but the overall alignment will be bad to look at (the label would seem "shifted" in my opinion).
>> 3) I would like the focus and currently selected tab to
be clearer
>> (like the brown line above the tabs that appear in demo program).
>> The SetHighlightSelection and SetSelectionColour methods aren't
>> having any effect.
>
I discovered that with a larger font I had to increase the
vertical tab sizes. Once big enough, the highlight worked
fine. However, if I made it too big, and the tab is colored,
a horizontal white line appears across the middle of the tab.
Is this a required workaround, or is there a more
predictable way of doing it?
I still have to investigate this one. I have never used such big tabs, and I have implemented a somewhat ugly workaround to increase the tab width when you choose to use SetHighlightSelection(). Probably this workaround does not work very well with bigger tabs.
4) Is there a way to make the tab shapes different, such as having
rounded corners?I'd still like to know how to do this, if it is possible.
It dipens on how much rounded you want them... At the moment, without ThemeStyle() applied, the tabs have a 2 pixels rounded corner (radius = 2 pixels). It may probably be modified to handle more rounded tabs, and I welcome suggestions on how to do it in a general and effective way.
Regarding the event problem:
The event handler is getting called correctly for T1 and T2. But it
is getting called *twice* for each selection of P1 and P2.Can anyone tell me why this is happening?
You have an event.Skip() at the end of NestedNB.OnPageChanging.
Don't call event.Skip() here otherwise the P1/P2 event will propagate
into the parent NestedNB and trigger OnPageChanging again.
David's suggestion seemed correct at the beginning... However, if you don't call event.Skip(), you will not have the OnPageChanged() event after that and you won't be able to switch pages... I think I am missing something here, or probably I have misunderstood David's idea...
In any case, some time ago David has worked on NotebookCtrl and he has kindly sent me a new version of it with changes that correct some bugs and improve usability. If I manage to have some more suggestions on how to practically solve some of Chris problems with NotebookCtrl, I will implement them and post on my website a new version of NotebookCtrl.
Andrea.
···
_________________________________________
Andrea Gavana (gavana@kpo.kz)
Reservoir Engineer
KPDL
4, Millbank
SW1P 3JA London
Direct Tel: +44 (0) 20 717 08936
Mobile Tel: +44 (0) 77 487 70534
Fax: +44 (0) 20 717 08900
Web: http://xoomer.virgilio.it/infinity77
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯