{
public:
_SplitPanelMaker(_UiBuilder* uibuilder)
- : _UiBuilderControlMaker(uibuilder){};
+ : _UiBuilderControlMaker(uibuilder)
+ {
+ __pTransform = uibuilder->GetTransformer();
+ };
virtual ~_SplitPanelMaker(void){};
static _UiBuilderControlMaker*
GetInstance(_UiBuilder* uibuilder)
float minDividerPosition = 0.0f;
float maxDividerPosition = 0.0f;
float dividerPosition = 0.0f;
+ float originalValue = 0.0f;
SplitPanelDividerStyle splitPanelDividerStyle = SPLIT_PANEL_DIVIDER_STYLE_MOVABLE;
SplitPanelDividerDirection splitPanelDividerDirection = SPLIT_PANEL_DIVIDER_DIRECTION_VERTICAL;
if (pControl->GetElement("minDividerPosition", elementString))
{
minDividerPosition = _CoordinateSystemUtils::ConvertToFloat(elementString);
+
+ if (__pTransform != null)
+ {
+ originalValue = minDividerPosition;
+ minDividerPosition = __pTransform->Transform(originalValue);
+ }
+
pSplitPanel->SetMinimumDividerPosition(minDividerPosition);
}
if (pControl->GetElement("maxDividerPosition", elementString))
{
maxDividerPosition = _CoordinateSystemUtils::ConvertToFloat(elementString);
+
+ if (__pTransform != null)
+ {
+ originalValue = maxDividerPosition;
+ maxDividerPosition = __pTransform->Transform(originalValue);
+ }
+
pSplitPanel->SetMaximumDividerPosition(maxDividerPosition);
}
if (pControl->GetElement("dividerPosition", elementString))
{
dividerPosition = _CoordinateSystemUtils::ConvertToFloat(elementString);
+
+ if (__pTransform != null)
+ {
+ originalValue = dividerPosition;
+ dividerPosition = __pTransform->Transform(originalValue);
+ }
+
pSplitPanel->SetDividerPosition(dividerPosition);
}
return pSplitPanel;
}
+private:
+ _ICoordinateSystemTransformer* __pTransform;
}; // _SplitPanelMaker
_SplitPanelRegister::_SplitPanelRegister(void)