From ede51c528e5cebc7f1930d5c9da541e7d11c0138 Mon Sep 17 00:00:00 2001 From: Vojtech Bocek Date: Fri, 7 Feb 2014 23:58:09 +0100 Subject: Conditional -> GUIObject and make all gui objects children of GUIObject Signed-off-by: Vojtech Bocek Change-Id: Ic0a7d6354dabe5919b83942f2f1aa0715625e522 --- gui/listbox.cpp | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) (limited to 'gui/listbox.cpp') diff --git a/gui/listbox.cpp b/gui/listbox.cpp index 626cbacf4..99e2dedf1 100644 --- a/gui/listbox.cpp +++ b/gui/listbox.cpp @@ -51,7 +51,7 @@ extern "C" { #define SCROLLING_FLOOR 10 #define SCROLLING_MULTIPLIER 6 -GUIListBox::GUIListBox(xml_node<>* node) +GUIListBox::GUIListBox(xml_node<>* node) : GUIObject(node) { xml_attribute<>* attr; xml_node<>* child; @@ -352,6 +352,9 @@ GUIListBox::~GUIListBox() int GUIListBox::Render(void) { + if(!isConditionTrue()) + return 0; + // First step, fill background gr_color(mBackgroundColor.red, mBackgroundColor.green, mBackgroundColor.blue, 255); gr_fill(mRenderX, mRenderY + mHeaderH, mRenderW, mRenderH - mHeaderH); @@ -522,6 +525,9 @@ int GUIListBox::Render(void) int GUIListBox::Update(void) { + if(!isConditionTrue()) + return 0; + if (!mHeaderIsStatic) { std::string newValue = gui_parse_text(mHeaderText); if (mLastValue != newValue) { @@ -602,6 +608,9 @@ int GUIListBox::GetSelection(int x, int y) int GUIListBox::NotifyTouch(TOUCH_STATE state, int x, int y) { + if(!isConditionTrue()) + return -1; + static int lastY = 0, last2Y = 0, fastScroll = 0; int selection = 0; @@ -753,6 +762,9 @@ int GUIListBox::NotifyTouch(TOUCH_STATE state, int x, int y) int GUIListBox::NotifyVarChange(std::string varName, std::string value) { + if(!isConditionTrue()) + return 0; + if (!mHeaderIsStatic) { std::string newValue = gui_parse_text(mHeaderText); if (mLastValue != newValue) { -- cgit v1.2.3