From a40ee4bcbc1f7901b59e0ff4954dbc06623db9f0 Mon Sep 17 00:00:00 2001 From: Matei Date: Sat, 17 Dec 2005 00:24:43 +0000 Subject: [PATCH] Fixed the button flickering bug. It turns out that guiHide/guiUnHide were settings controls to hidden/unhidden each tick, which caused the C++ code to reset mouse interaction properties even if the thing went from unhidden to unhidden. I fixed it by making guiHide and guiUnHide check whether the control is already hidden/unhidden before changing it, though maybe we want different behaviour from the C++ code. This was SVN commit r3262. --- binaries/data/mods/official/gui/test/4_session.xml | 4 ++-- .../official/gui/test/functions_page_session.js | 2 +- .../official/gui/test/functions_utility_object.js | 13 +++++++------ 3 files changed, 10 insertions(+), 9 deletions(-) diff --git a/binaries/data/mods/official/gui/test/4_session.xml b/binaries/data/mods/official/gui/test/4_session.xml index a9574807dd..c35de59e5c 100644 --- a/binaries/data/mods/official/gui/test/4_session.xml +++ b/binaries/data/mods/official/gui/test/4_session.xml @@ -53,7 +53,7 @@ setWaterHeight(getWaterHeight() - 0.25); ]]> - + diff --git a/binaries/data/mods/official/gui/test/functions_page_session.js b/binaries/data/mods/official/gui/test/functions_page_session.js index 20c1f36a28..e57ce3f7e2 100644 --- a/binaries/data/mods/official/gui/test/functions_page_session.js +++ b/binaries/data/mods/official/gui/test/functions_page_session.js @@ -315,7 +315,7 @@ function snRefresh() { // Reveal Status Orb guiUnHide ("snStatusPane"); - + // (later, we need to base this on the selected unit's stats changing) refreshStatusPane(); diff --git a/binaries/data/mods/official/gui/test/functions_utility_object.js b/binaries/data/mods/official/gui/test/functions_utility_object.js index 7f51dc5198..3aa8912a08 100755 --- a/binaries/data/mods/official/gui/test/functions_utility_object.js +++ b/binaries/data/mods/official/gui/test/functions_utility_object.js @@ -8,10 +8,11 @@ // Hide GUI object. function guiHide (objectName) { - var guiObject = getGUIObjectByName (objectName); - if (guiObject == "" || guiObject == null || guiObject == undefined || guiObject == "undefined") + var guiObject = getGUIObjectByName (objectName); + if( guiObject == "" || guiObject == null || guiObject == undefined || guiObject == "undefined" ) console.write ("GUI Object not found: " + objectName); - guiObject.hidden = true; + if( !guiObject.hidden ) + guiObject.hidden = true; } // ==================================================================== @@ -19,11 +20,11 @@ function guiHide (objectName) // Reveal GUI object. function guiUnHide (objectName) { - var guiObject = getGUIObjectByName (objectName); + var guiObject = getGUIObjectByName (objectName); if (guiObject == "" || guiObject == null || guiObject == undefined || guiObject == "undefined") console.write ("GUI Object not found: " + objectName); - guiObject.hidden = false; - + if( guiObject.hidden ) + guiObject.hidden = false; } // ====================================================================