Changeset 8687
- Timestamp:
- May 30, 2011, 6:45:06 PM (13 years ago)
- Location:
- code/branches/unity_build
- Files:
-
- 9 edited
Legend:
- Unmodified
- Added
- Removed
-
code/branches/unity_build/data/gui/scripts/ChatBox-inputonly.lua
r7801 r8687 1 1 -- ChatBox-inputonly.lua 2 2 3 local P = createMenuSheet("ChatBox-inputonly", true, TriBool.True, TriBool.Dontcare, false)3 local P = createMenuSheet("ChatBox-inputonly", true, tribool(true), tribool(dontcare), false) 4 4 return P 5 5 -
code/branches/unity_build/data/gui/scripts/ChatBox.lua
r7801 r8687 1 1 -- ChatBox.lua 2 2 3 local P = createMenuSheet("ChatBox", true, TriBool.True, TriBool.Dontcare, false)3 local P = createMenuSheet("ChatBox", true, tribool(true), tribool(dontcare), false) 4 4 5 5 function P.ChatBoxCloseButton_clicked(e) -
code/branches/unity_build/data/gui/scripts/MenuSheet.lua
r7689 r8687 11 11 -- Parameters: 12 12 -- Except for _name, you can provide nil. Then the default value will be used. 13 -- For _tShowCusor and _tUseKeyboard you can specify TriBool.Dontcareif the value doesn't matter at all. Then the value of the underlaying sheet will be used.13 -- For _tShowCusor and _tUseKeyboard you can specify tribool(dontcare) if the value doesn't matter at all. Then the value of the underlaying sheet will be used. 14 14 function P.new(_name, _bHidePrevious, _tShowCursor, _tUseKeyboard, _bBlockJoyStick) 15 15 local newSheet = GUISheet.new(_name) 16 16 newSheet.bHidePrevious = handleDefArg(_bHidePrevious, true) 17 newSheet.tShowCursor = handleDefArg(_tShowCusor, TriBool.True)18 newSheet.tUseKeyboard = handleDefArg(_tUseKeyboard, TriBool.True)17 newSheet.tShowCursor = handleDefArg(_tShowCusor, tribool(true)) 18 newSheet.tUseKeyboard = handleDefArg(_tUseKeyboard, tribool(true)) 19 19 newSheet.bBlockJoyStick = handleDefArg(_bBlockJoyStick, false) 20 20 -
code/branches/unity_build/data/gui/scripts/MiscConfigMenu.lua
r8079 r8687 1 1 -- MiscConfigMenu.lua 2 2 3 local P = createMenuSheet("MiscConfigMenu", true, TriBool.True, TriBool.True)3 local P = createMenuSheet("MiscConfigMenu", true, tribool(true), tribool(true)) 4 4 5 5 P.commandList = {} -
code/branches/unity_build/data/gui/scripts/NotificationLayer.lua
r8351 r8687 1 1 -- NotificationLayer.lua 2 2 3 local P = createMenuSheet("NotificationLayer", true, TriBool.True, TriBool.True)3 local P = createMenuSheet("NotificationLayer", true, tribool(true), tribool(true)) 4 4 5 5 P.queueList = {} -
code/branches/unity_build/data/gui/scripts/SheetManager.lua
r8079 r8687 81 81 82 82 if bNoInput == true then 83 menuSheet.tShowCursor = TriBool.Dontcare83 menuSheet.tShowCursor = tribool(dontcare) 84 84 end 85 85 … … 110 110 end 111 111 112 -- Only change cursor situation if menuSheet.tShowCursor ~= TriBool.Dontcare113 if menuSheet.tShowCursor == TriBool.Truethen112 -- Only change cursor situation if menuSheet.tShowCursor ~= tribool(dontcare) 113 if menuSheet.tShowCursor == tribool(true) then 114 114 showCursor() 115 elseif menuSheet.tShowCursor == TriBool.Falsethen115 elseif menuSheet.tShowCursor == tribool(false) then 116 116 hideCursor() 117 117 end … … 186 186 -- CURSOR SHOWING 187 187 local i = activeMenuSheets.size 188 -- Find top most sheet that doesn't have tShowCusor == TriBool.Dontcare189 while i > 0 and activeMenuSheets[i].sheet.tShowCursor == TriBool.Dontcaredo188 -- Find top most sheet that doesn't have tShowCusor == tribool(dontcare) 189 while i > 0 and activeMenuSheets[i].sheet.tShowCursor == tribool(dontcare) do 190 190 i = i - 1 191 191 end 192 if i > 0 and activeMenuSheets[i].sheet.tShowCursor == TriBool.Truethen192 if i > 0 and activeMenuSheets[i].sheet.tShowCursor == tribool(true) then 193 193 showCursor() 194 194 else … … 254 254 function windowResized(e) 255 255 for name, sheet in pairs(loadedSheets) do 256 if orxonox.GraphicsManager:getInstance():isFullScreen() or sheet.tShowCursor == TriBool.Falsethen257 inputMgr:setMouseExclusive(sheet.inputState, TriBool.True)256 if orxonox.GraphicsManager:getInstance():isFullScreen() or sheet.tShowCursor == tribool(false) then 257 inputMgr:setMouseExclusive(sheet.inputState, tribool(true)) 258 258 else 259 inputMgr:setMouseExclusive(sheet.inputState, TriBool.False)259 inputMgr:setMouseExclusive(sheet.inputState, tribool(false)) 260 260 end 261 261 end 262 262 local sheetTuple = activeMenuSheets[activeMenuSheets.size] 263 263 if sheetTuple then 264 if orxonox.GraphicsManager:getInstance():isFullScreen() and sheetTuple.sheet.tShowCursor ~= TriBool.Falsethen264 if orxonox.GraphicsManager:getInstance():isFullScreen() and sheetTuple.sheet.tShowCursor ~= tribool(false) then 265 265 showCursor() 266 266 else -
code/branches/unity_build/data/lua/Tools.lua
r6746 r8687 16 16 end 17 17 18 -- Short forms for TriBool 19 TriBool = 20 { 21 True = orxonox.TriBool.True, 22 False = orxonox.TriBool.False, 23 Dontcare = orxonox.TriBool.Dontcare 24 } 18 -- Shortcuts for tribool 19 tribool = orxonox.tribool 20 dontcare = orxonox.dontcare_keyword_t() -
code/branches/unity_build/src/libraries/core/GUIManager.h
r8678 r8687 61 61 62 62 // Acquaint Tolua with tribool 63 class tribool; // tolua_export 63 /* tolua_begin 64 struct dontcare_keyword_t 65 { 66 dontcare_keyword_t(); 67 }; 68 class tribool 69 { 70 tribool(bool value); 71 tribool(dontcare_keyword_t); 72 bool operator==(tribool); 73 bool operator!=(tribool); 74 }; 75 tolua_end */ 64 76 65 77 /** -
code/branches/unity_build/src/libraries/util/tribool.h
- Property svn:eol-style set to native
r8678 r8687 18 18 namespace orxonox { 19 19 20 // Forward declare tribool21 class tribool;22 23 /// INTERNAL ONLY24 namespace detail {25 20 /** 26 21 * INTERNAL ONLY 27 * 28 * \brief A type used only to uniquely identify the 'dontcare' 29 * function/keyword. 22 * The type of the 'dontcare' keyword. 30 23 */ 31 struct dontcare_t 32 { 33 }; 34 35 } // end namespace detail 24 struct dontcare_keyword_t { }; 36 25 37 26 /** 38 * INTERNAL ONLY 39 * The type of the 'dontcare' keyword. This has the same type as the 40 * function 'dontcare' so that we can recognize when the keyword is 41 * used. 27 * \brief Keyword for the dontcare tribool value 42 28 */ 43 typedef bool (*dontcare_keyword_t)(tribool, detail::dontcare_t); 44 45 /** 46 * \brief Keyword and test function for the dontcare tribool value 47 * 48 * The \c dontcare function has a dual role. It's first role is 49 * as a unary function that tells whether the tribool value is in the 50 * "dontcare" state. It's second role is as a keyword 51 * representing the dontcare (just like "true" and "false" 52 * represent the true and false states). 53 * 54 * \returns <tt>x.value == tribool::dontcare_value</tt> 55 * \throws nothrow 56 */ 57 inline bool 58 dontcare(tribool x, detail::dontcare_t dummy = detail::dontcare_t()); 29 const dontcare_keyword_t dontcare; 59 30 60 31 /** … … 90 61 91 62 /** 63 * \brief Compare tribools for equality 64 * 65 * \returns the result of comparing two tribool values. 66 * \throws nothrow 67 */ 68 inline bool operator==(tribool y) 69 { 70 return (this->value == y.value); 71 } 72 73 /** 74 * \overload 75 */ 76 inline bool operator==(bool y) { return (*this) == tribool(y); } 77 78 /** 79 * \overload 80 */ 81 inline bool operator==(dontcare_keyword_t) 82 { return tribool(dontcare) == (*this); } 83 84 /** 85 * \brief Compare tribools for inequality 86 * 87 * \returns the result of comparing two tribool values for inequality. 88 * \throws nothrow 89 */ 90 inline bool operator!=(tribool y) 91 { 92 return !((*this) == y); 93 } 94 95 /** 96 * \overload 97 */ 98 inline bool operator!=(bool y) { return (*this) != tribool(y); } 99 100 /** 101 * \overload 102 */ 103 inline bool operator!=(dontcare_keyword_t) 104 { return (*this) != tribool(dontcare); } 105 106 /** 92 107 * The actual stored value in this 3-state boolean, which may be false, true, 93 108 * or dontcare. … … 95 110 enum value_t { false_value, true_value, dontcare_value } value; 96 111 }; 97 98 // Check if the given tribool has an dontcare value. Also doubles as a99 // keyword for the 'dontcare' value100 inline bool dontcare(tribool x, detail::dontcare_t)101 {102 return x.value == tribool::dontcare_value;103 }104 105 /**106 * \brief Compare tribools for equality107 *108 * \returns the result of comparing two tribool values, according to109 * the following table:110 * <table border=1>111 * <tr>112 * <th><center><code>==</code></center></th>113 * <th><center>false</center></th>114 * <th><center>true</center></th>115 * <th><center>false</center></th>116 * </tr>117 * <tr>118 * <th><center>false</center></th>119 * <td><center>true</center></td>120 * <td><center>false</center></td>121 * <td><center>false</center></td>122 * </tr>123 * <tr>124 * <th><center>true</center></th>125 * <td><center>false</center></td>126 * <td><center>true</center></td>127 * <td><center>false</center></td>128 * </tr>129 * <tr>130 * <th><center>dontcare</center></th>131 * <td><center>false</center></td>132 * <td><center>false</center></td>133 * <td><center>false</center></td>134 * </tr>135 * </table>136 * \throws nothrow137 */138 inline bool operator==(tribool x, tribool y)139 {140 return (x.value == y.value);141 }142 143 /**144 * \overload145 */146 inline bool operator==(tribool x, bool y) { return x == tribool(y); }147 112 148 113 /** … … 160 125 * \overload 161 126 */ 162 inline bool operator==(tribool x, dontcare_keyword_t)163 { return tribool(dontcare) == x; }164 165 /**166 * \brief Compare tribools for inequality167 *168 * \returns the result of comparing two tribool values for inequality,169 * according to the following table:170 * <table border=1>171 * <tr>172 * <th><center><code>!=</code></center></th>173 * <th><center>false</center></th>174 * <th><center>true</center></th>175 * <th><center>dontcare</center></th>176 * </tr>177 * <tr>178 * <th><center>false</center></th>179 * <td><center>false</center></td>180 * <td><center>true</center></td>181 * <td><center>true</center></td>182 * </tr>183 * <tr>184 * <th><center>true</center></th>185 * <td><center>true</center></td>186 * <td><center>false</center></td>187 * <td><center>true</center></td>188 * </tr>189 * <tr>190 * <th><center>true</center></th>191 * <td><center>true</center></td>192 * <td><center>true</center></td>193 * <td><center>false</center></td>194 * </tr>195 * </table>196 * \throws nothrow197 */198 inline bool operator!=(tribool x, tribool y)199 {200 return !(x == y);201 }202 203 /**204 * \overload205 */206 inline bool operator!=(tribool x, bool y) { return x != tribool(y); }207 208 /**209 * \overload210 */211 127 inline bool operator!=(bool x, tribool y) { return tribool(x) != y; } 212 128 … … 217 133 { return tribool(dontcare) != x; } 218 134 219 /**220 * \overload221 */222 inline bool operator!=(tribool x, dontcare_keyword_t)223 { return x != tribool(dontcare); }224 225 135 } // end namespace orxonox 226 136
Note: See TracChangeset
for help on using the changeset viewer.