How does the SpecialSpacer system work?

Friedrich W. H. Kossebau kossebau at kde.org
Sat Apr 7 13:56:01 BST 2012


Hi,

I fear some of my UI-related commits have ignored the concept of the 
SpecialSpacer system, as I simply removed that extra widget because it looked 
like garbage to me and did not result in any visual or functional difference 
for what I tested (and reviewers have missed this as well :) ).

But I am wondering ATM why the high-priorized stretching bottom spacer is only 
added if all sub-UIs have a SpecialSpacer, not in any case. KoModeBox.cpp and 
KoToolDocker.cpp both count the numbers of those 

    if (specialCount == optionWidgetList.count()) {
        layout->setRowStretch(cnt, 100);
    }

So e.g. in the tool options docker with the "Draw a path." tool has also the 
WdgGeometryOptions as sub-UI, which is without a SpecialSpacer, so the bottom 
stretching spacer is not added.

So:
What is the concept behind this?
Why is the bottom stretching spacer not added in any case?
Should I readd the SpecialSpacer for all cases where I removed it? (need to 
check)

Cheers
Friedrich



More information about the calligra-devel mailing list