change in topmenu and some fixes

This commit is contained in:
Eduardo Bart
2012-01-23 11:47:15 -02:00
parent e3096c1648
commit d500de9aa0
18 changed files with 93 additions and 59 deletions

View File

@@ -84,6 +84,9 @@ void UIAnchorLayout::removeWidget(const UIWidgetPtr& widget)
void UIAnchorLayout::updateWidget(const UIWidgetPtr& widget, UIAnchorGroup& anchorGroup)
{
UIWidgetPtr parentWidget = getParentWidget();
if(!parentWidget)
return;
Rect newRect = widget->getRect();
bool verticalMoved = false;
bool horizontalMoved = false;

View File

@@ -38,6 +38,8 @@ void UIHorizontalLayout::applyStyle(const OTMLNodePtr& styleNode)
void UIHorizontalLayout::internalUpdate()
{
UIWidgetPtr parentWidget = getParentWidget();
if(!parentWidget)
return;
UIWidgetList widgets = parentWidget->getChildren();
if(m_alignRight)

View File

@@ -37,6 +37,9 @@ void UIVerticalLayout::applyStyle(const OTMLNodePtr& styleNode)
void UIVerticalLayout::internalUpdate()
{
UIWidgetPtr parentWidget = getParentWidget();
if(!parentWidget)
return;
UIWidgetList widgets = parentWidget->getChildren();
if(m_alignBottom)

View File

@@ -639,6 +639,9 @@ void UIWidget::setVisible(bool visible)
parent->focusPreviousChild(Fw::ActiveFocusReason);
}
// visibility can change can change parent layout
updateParentLayout();
updateState(Fw::ActiveState);
updateState(Fw::HoverState);
}

View File

@@ -29,6 +29,7 @@ char Fw::utf8CharToLatin1(uchar *utf8, int *read)
{
char c = '?';
uchar opt1 = utf8[0];
*read = 1;
if(opt1 == 0xc3) {
*read = 2;
uchar opt2 = utf8[1];
@@ -39,7 +40,6 @@ char Fw::utf8CharToLatin1(uchar *utf8, int *read)
if(opt2 > 0xa1 && opt2 < 0xbb)
c = opt2;
} else if(opt1 < 0xc2) {
*read = 1;
c = opt1;
}
return c;
@@ -49,7 +49,7 @@ std::string Fw::utf8StringToLatin1(uchar *utf8) {
std::string out;
int len = strlen((char*)utf8);
for(int i=0; i<len;) {
int read;
int read = 0;
uchar *utf8char = &utf8[i];
out += Fw::utf8CharToLatin1(utf8char, &read);
i += read;