LayoutScheme.cpp 126 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434
  1. /*
  2. ** Command & Conquer Generals(tm)
  3. ** Copyright 2025 Electronic Arts Inc.
  4. **
  5. ** This program is free software: you can redistribute it and/or modify
  6. ** it under the terms of the GNU General Public License as published by
  7. ** the Free Software Foundation, either version 3 of the License, or
  8. ** (at your option) any later version.
  9. **
  10. ** This program is distributed in the hope that it will be useful,
  11. ** but WITHOUT ANY WARRANTY; without even the implied warranty of
  12. ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  13. ** GNU General Public License for more details.
  14. **
  15. ** You should have received a copy of the GNU General Public License
  16. ** along with this program. If not, see <http://www.gnu.org/licenses/>.
  17. */
  18. ////////////////////////////////////////////////////////////////////////////////
  19. // //
  20. // (c) 2001-2003 Electronic Arts Inc. //
  21. // //
  22. ////////////////////////////////////////////////////////////////////////////////
  23. // FILE: LayoutScheme.cpp /////////////////////////////////////////////////////
  24. //-----------------------------------------------------------------------------
  25. //
  26. // Westwood Studios Pacific.
  27. //
  28. // Confidential Information
  29. // Copyright (C) 2001 - All Rights Reserved
  30. //
  31. //-----------------------------------------------------------------------------
  32. //
  33. // Project: GUIEdit
  34. //
  35. // File name: LayoutScheme.cpp
  36. //
  37. // Created: Colin Day, August 2001
  38. //
  39. // Desc: Layout scheme loading and editing
  40. //
  41. //-----------------------------------------------------------------------------
  42. ///////////////////////////////////////////////////////////////////////////////
  43. // SYSTEM INCLUDES ////////////////////////////////////////////////////////////
  44. #include <stdlib.h>
  45. #include <assert.h>
  46. #include <stdio.h>
  47. // USER INCLUDES //////////////////////////////////////////////////////////////
  48. #include "Common/Debug.h"
  49. #include "GameClient/Gadget.h"
  50. #include "GameClient/GameWindowManager.h"
  51. #include "GameClient/GadgetPushButton.h"
  52. #include "GameClient/GadgetCheckBox.h"
  53. #include "GameClient/GadgetRadioButton.h"
  54. #include "GameClient/GadgetProgressBar.h"
  55. #include "GameClient/GadgetSlider.h"
  56. #include "GameClient/GadgetListbox.h"
  57. #include "GameClient/GadgetComboBox.h"
  58. #include "GameClient/GadgetTabControl.h"
  59. #include "GameClient/GadgetTextEntry.h"
  60. #include "GameClient/GadgetStaticText.h"
  61. #include "GUIEdit.h"
  62. #include "EditWindow.h"
  63. #include "GUIEditWindowManager.h"
  64. #include "Resource.h"
  65. #include "Properties.h"
  66. #include "LayoutScheme.h"
  67. // DEFINES ////////////////////////////////////////////////////////////////////
  68. ///////////////////////////////////////////////////////////////////////////////
  69. // PRIVATE TYPES //////////////////////////////////////////////////////////////
  70. ///////////////////////////////////////////////////////////////////////////////
  71. #define SCHEME_VERSION 1
  72. ///////////////////////////////////////////////////////////////////////////////
  73. // PRIVATE DATA ///////////////////////////////////////////////////////////////
  74. ///////////////////////////////////////////////////////////////////////////////
  75. static LayoutScheme *theScheme = NULL;
  76. ///////////////////////////////////////////////////////////////////////////////
  77. // PUBLIC DATA ////////////////////////////////////////////////////////////////
  78. ///////////////////////////////////////////////////////////////////////////////
  79. LayoutScheme *TheDefaultScheme = NULL;
  80. // PRIVATE PROTOTYPES /////////////////////////////////////////////////////////
  81. ///////////////////////////////////////////////////////////////////////////////
  82. // PRIVATE FUNCTIONS //////////////////////////////////////////////////////////
  83. ///////////////////////////////////////////////////////////////////////////////
  84. // loadSchemeDataToDialog =====================================================
  85. /** Load the current data in theScheme to the dialog layout */
  86. //=============================================================================
  87. static void loadSchemeDataToDialog( HWND hWndDialog )
  88. {
  89. // load the name of the current scheme
  90. SetDlgItemText( hWndDialog, STATIC_CURRENT_SCHEME,
  91. theScheme->getSchemeFilename() );
  92. // load the state combo box with every option available
  93. SendDlgItemMessage( hWndDialog, COMBO_STATE, CB_RESETCONTENT, 0, 0 );
  94. LoadStateCombo( GWS_PUSH_BUTTON |
  95. GWS_RADIO_BUTTON |
  96. GWS_CHECK_BOX |
  97. GWS_PROGRESS_BAR |
  98. GWS_SCROLL_LISTBOX |
  99. GWS_HORZ_SLIDER |
  100. GWS_VERT_SLIDER |
  101. GWS_STATIC_TEXT |
  102. GWS_ENTRY_FIELD |
  103. GWS_USER_WINDOW |
  104. GWS_COMBO_BOX,
  105. GetDlgItem( hWndDialog, COMBO_STATE ) );
  106. // load the image combo box with the images from the gui collection
  107. SendDlgItemMessage( hWndDialog, COMBO_IMAGE, CB_RESETCONTENT, 0, 0 );
  108. LoadImageListComboBox( GetDlgItem( hWndDialog, COMBO_IMAGE ) );
  109. //
  110. // load our own internal table of images and colors to the
  111. // property dialog tables
  112. //
  113. Int i;
  114. ImageAndColorInfo *info;
  115. for( i = FIRST_VALID_IDENTIFIER; i < NUM_STATE_IDENTIFIERS; i++ )
  116. {
  117. info = theScheme->getImageAndColor( (StateIdentifier)i );
  118. assert( info );
  119. StoreImageAndColor( info->stateID,
  120. info->image,
  121. info->color,
  122. info->borderColor );
  123. } // end for i
  124. // switch to the generic state
  125. SwitchToState( GENERIC_ENABLED, hWndDialog );
  126. // load the text color combo
  127. SendDlgItemMessage( hWndDialog, COMBO_TEXT_STATE, CB_RESETCONTENT, 0, 0 );
  128. LoadTextStateCombo( GetDlgItem( hWndDialog, COMBO_TEXT_STATE ),
  129. theScheme->getEnabledTextColor(),
  130. theScheme->getEnabledTextBorderColor(),
  131. theScheme->getDisabledTextColor(),
  132. theScheme->getDisabledTextBorderColor(),
  133. theScheme->getHiliteTextColor(),
  134. theScheme->getHiliteTextBorderColor() );
  135. // load the font combo if present
  136. SendDlgItemMessage( hWndDialog, COMBO_FONT, CB_RESETCONTENT, 0, 0 );
  137. LoadFontCombo( GetDlgItem( hWndDialog, COMBO_FONT ), theScheme->getFont() );
  138. } // end loadSchemeDataToDialog
  139. // saveData ===================================================================
  140. //=============================================================================
  141. static void saveData( HWND hWndDialog )
  142. {
  143. //
  144. // copy the image and color data from the property tables to our
  145. // own
  146. //
  147. Int i;
  148. ImageAndColorInfo *info;
  149. for( i = FIRST_VALID_IDENTIFIER; i < NUM_STATE_IDENTIFIERS; i++ )
  150. {
  151. info = GetStateInfo( (StateIdentifier)i );
  152. assert( info );
  153. theScheme->storeImageAndColor( info->stateID,
  154. info->image,
  155. info->color,
  156. info->borderColor );
  157. } // end for i
  158. // save default text colors
  159. theScheme->setEnabledTextColor( GetPropsEnabledTextColor() );
  160. theScheme->setEnabledTextBorderColor( GetPropsEnabledTextBorderColor() );
  161. theScheme->setDisabledTextColor( GetPropsDisabledTextColor() );
  162. theScheme->setDisabledTextBorderColor( GetPropsDisabledTextBorderColor() );
  163. theScheme->setHiliteTextColor( GetPropsHiliteTextColor() );
  164. theScheme->setHiliteTextBorderColor( GetPropsHiliteTextBorderColor() );
  165. // save the font
  166. theScheme->setFont( GetSelectedFontFromCombo( GetDlgItem( hWndDialog, COMBO_FONT ) ) );
  167. } // end saveData
  168. // saveAsDialog ===============================================================
  169. /** Bring up the standard windows browser save as dialog and return
  170. * filename selected */
  171. //=============================================================================
  172. char *saveAsDialog( void )
  173. {
  174. static char filename[ _MAX_PATH ];
  175. OPENFILENAME ofn;
  176. Bool returnCode;
  177. char filter[] = "Layout Scheme Files (*.ls)\0*.ls\0" \
  178. "All Files (*.*)\0*.*\0\0" ;
  179. ofn.lStructSize = sizeof( OPENFILENAME );
  180. ofn.hwndOwner = TheEditor->getWindowHandle();
  181. ofn.hInstance = NULL;
  182. ofn.lpstrFilter = filter;
  183. ofn.lpstrCustomFilter = NULL;
  184. ofn.nMaxCustFilter = 0;
  185. ofn.nFilterIndex = 0;
  186. ofn.lpstrFile = filename;
  187. ofn.nMaxFile = _MAX_PATH;
  188. ofn.lpstrFileTitle = NULL;
  189. ofn.nMaxFileTitle = 0;
  190. ofn.lpstrInitialDir = NULL;
  191. ofn.lpstrTitle = NULL;
  192. ofn.Flags = OFN_NOREADONLYRETURN | OFN_OVERWRITEPROMPT | OFN_PATHMUSTEXIST | OFN_NOCHANGEDIR;
  193. ofn.nFileOffset = 0;
  194. ofn.nFileExtension = 0;
  195. ofn.lpstrDefExt = "ls";
  196. ofn.lCustData = 0L ;
  197. ofn.lpfnHook = NULL ;
  198. ofn.lpTemplateName = NULL ;
  199. returnCode = GetSaveFileName( &ofn );
  200. if( returnCode )
  201. return filename;
  202. else
  203. return NULL;
  204. } // end saveAsDialog
  205. // openDialog =================================================================
  206. /** Bring up the standard windows browser open dialog and return
  207. * filename selected */
  208. //=============================================================================
  209. char *openDialog( void )
  210. {
  211. static char filename[ _MAX_PATH ];
  212. OPENFILENAME ofn;
  213. Bool returnCode;
  214. char filter[] = "Layout Scheme Files (*.ls)\0*.ls\0" \
  215. "All Files (*.*)\0*.*\0\0" ;
  216. ofn.lStructSize = sizeof( OPENFILENAME );
  217. ofn.hwndOwner = TheEditor->getWindowHandle();
  218. ofn.hInstance = NULL;
  219. ofn.lpstrFilter = filter;
  220. ofn.lpstrCustomFilter = NULL;
  221. ofn.nMaxCustFilter = 0;
  222. ofn.nFilterIndex = 0;
  223. ofn.lpstrFile = filename;
  224. ofn.nMaxFile = _MAX_PATH;
  225. ofn.lpstrFileTitle = NULL;
  226. ofn.nMaxFileTitle = 0;
  227. ofn.lpstrInitialDir = NULL;
  228. ofn.lpstrTitle = NULL;
  229. ofn.Flags = OFN_NOREADONLYRETURN | OFN_FILEMUSTEXIST | OFN_PATHMUSTEXIST | OFN_NOCHANGEDIR;
  230. ofn.nFileOffset = 0;
  231. ofn.nFileExtension = 0;
  232. ofn.lpstrDefExt = "ls";
  233. ofn.lCustData = 0L ;
  234. ofn.lpfnHook = NULL ;
  235. ofn.lpTemplateName = NULL ;
  236. returnCode = GetOpenFileName( &ofn );
  237. if( returnCode )
  238. return filename;
  239. else
  240. return NULL;
  241. } // end openDialog
  242. // layoutSchemeCallback =======================================================
  243. /** Dialog callback for layout scheme dialog */
  244. //=============================================================================
  245. static LRESULT CALLBACK layoutSchemeCallback( HWND hWndDialog,
  246. UINT message,
  247. WPARAM wParam,
  248. LPARAM lParam )
  249. {
  250. Int returnCode;
  251. //
  252. // this is largely based on the property dialog code so lets just
  253. // let the default handle code work here too
  254. //
  255. if( HandleCommonDialogMessages( hWndDialog, message,
  256. wParam, lParam, &returnCode ) == TRUE )
  257. return returnCode;
  258. switch( message )
  259. {
  260. // ------------------------------------------------------------------------
  261. case WM_INITDIALOG:
  262. {
  263. // load the dialog engine and items with the current data of the scheme
  264. loadSchemeDataToDialog( hWndDialog );
  265. break;
  266. } // end init dialog
  267. // ------------------------------------------------------------------------
  268. case WM_COMMAND:
  269. {
  270. // Int notifyCode = HIWORD( wParam ); // notification code
  271. Int controlID = LOWORD( wParam ); // control ID
  272. // HWND hWndControl = (HWND)lParam; // control window handle
  273. switch( controlID )
  274. {
  275. // --------------------------------------------------------------------
  276. case BUTTON_APPLY_SCHEME:
  277. {
  278. Int result;
  279. //
  280. // this will take the scheme settings currently loaded as the
  281. // "working scheme" to ALL windows and gadgets in the current
  282. // layout, because this is such a large sweeping change we will
  283. // ask them if they are sure
  284. //
  285. result = MessageBox( NULL, "This will apply these scheme color and image settings to ALL windows and gadgets currently loaded in the edit window. Are you sure you want to proceed?",
  286. "Are You Sure?", MB_YESNO | MB_ICONWARNING );
  287. if( result == IDNO )
  288. break;
  289. //
  290. // change all the windows to have the settings loaded in the
  291. // current working scheme in the state identifier entry tables,
  292. // note that we are applying the scheme in the property
  293. // entry tables and NOT the scheme in "theScheme", this is to
  294. // allow people to load a scheme file, or edit the parameters
  295. // and apply those changes to controls without changing the
  296. // current layout scheme.
  297. //
  298. theScheme->applyPropertyTablesToWindow( TheWindowManager->winGetWindowList() );
  299. //
  300. // also apply these changes to the window lists in the clipboard
  301. // just to be complete
  302. //
  303. theScheme->applyPropertyTablesToWindow( TheGUIEditWindowManager->getClipboardList() );
  304. theScheme->applyPropertyTablesToWindow( TheGUIEditWindowManager->getClipboardDupeList() );
  305. break;
  306. } // end apply scheme
  307. // --------------------------------------------------------------------
  308. case BUTTON_SAVE:
  309. {
  310. char *filename = saveAsDialog();
  311. if( theScheme && filename )
  312. {
  313. saveData( hWndDialog );
  314. theScheme->saveScheme( filename );
  315. SetDlgItemText( hWndDialog, STATIC_CURRENT_SCHEME,
  316. theScheme->getSchemeFilename() );
  317. } // end if
  318. break;
  319. } // end save
  320. // --------------------------------------------------------------------
  321. case BUTTON_LOAD:
  322. {
  323. char *filename = openDialog();
  324. if( theScheme && filename )
  325. {
  326. // load the new data
  327. if( theScheme->loadScheme( filename ) )
  328. {
  329. // load the dialog engine and items with the current data of the scheme
  330. loadSchemeDataToDialog( hWndDialog );
  331. } // end if
  332. else
  333. {
  334. MessageBox( TheEditor->getWindowHandle(),
  335. "Unable to open scheme file.", "Error", MB_OK );
  336. } // end else
  337. } // end if
  338. break;
  339. } // end load
  340. // --------------------------------------------------------------------
  341. case IDOK:
  342. saveData( hWndDialog );
  343. theScheme->saveScheme( theScheme->getSchemeFilename() );
  344. EndDialog( hWndDialog, TRUE );
  345. break;
  346. // --------------------------------------------------------------------
  347. case IDCANCEL:
  348. // do nothing, just get outta here!
  349. EndDialog( hWndDialog, FALSE );
  350. break;
  351. } // end switch
  352. break;
  353. } // end command
  354. } // end switch, message
  355. return 0;
  356. } // end layoutSchemeCallback
  357. // LayoutScheme::applyPropertyTablesToWindow ==================================
  358. /** apply the image and color info stored in the state identifer tables
  359. used for "property editing" to all appropriate windows currently
  360. loaded in the editor */
  361. //=============================================================================
  362. void LayoutScheme::applyPropertyTablesToWindow( GameWindow *root )
  363. {
  364. // end recursion
  365. if( root == NULL )
  366. return;
  367. // apply changes to this window
  368. ImageAndColorInfo *info;
  369. if( BitTest( root->winGetStyle(), GWS_PUSH_BUTTON ) )
  370. {
  371. info = GetStateInfo( BUTTON_ENABLED );
  372. GadgetButtonSetEnabledImage( root, info->image );
  373. GadgetButtonSetEnabledColor( root, info->color );
  374. GadgetButtonSetEnabledBorderColor( root, info->borderColor );
  375. info = GetStateInfo( BUTTON_ENABLED_PUSHED );
  376. GadgetButtonSetEnabledSelectedImage( root, info->image );
  377. GadgetButtonSetEnabledSelectedColor( root, info->color );
  378. GadgetButtonSetEnabledSelectedBorderColor( root, info->borderColor );
  379. info = GetStateInfo( BUTTON_DISABLED );
  380. GadgetButtonSetDisabledImage( root, info->image );
  381. GadgetButtonSetDisabledColor( root, info->color );
  382. GadgetButtonSetDisabledBorderColor( root, info->borderColor );
  383. info = GetStateInfo( BUTTON_DISABLED_PUSHED );
  384. GadgetButtonSetDisabledSelectedImage( root, info->image );
  385. GadgetButtonSetDisabledSelectedColor( root, info->color );
  386. GadgetButtonSetDisabledSelectedBorderColor( root, info->borderColor );
  387. info = GetStateInfo( BUTTON_HILITE );
  388. GadgetButtonSetHiliteImage( root, info->image );
  389. GadgetButtonSetHiliteColor( root, info->color );
  390. GadgetButtonSetHiliteBorderColor( root, info->borderColor );
  391. info = GetStateInfo( BUTTON_HILITE_PUSHED );
  392. GadgetButtonSetHiliteSelectedImage( root, info->image );
  393. GadgetButtonSetHiliteSelectedColor( root, info->color );
  394. GadgetButtonSetHiliteSelectedBorderColor( root, info->borderColor );
  395. } // end if
  396. else if( BitTest( root->winGetStyle(), GWS_RADIO_BUTTON ) )
  397. {
  398. info = GetStateInfo( RADIO_ENABLED );
  399. GadgetRadioSetEnabledImage( root, info->image );
  400. GadgetRadioSetEnabledColor( root, info->color );
  401. GadgetRadioSetEnabledBorderColor( root, info->borderColor );
  402. info = GetStateInfo( RADIO_ENABLED_UNCHECKED_BOX );
  403. GadgetRadioSetEnabledUncheckedBoxImage( root, info->image );
  404. GadgetRadioSetEnabledUncheckedBoxColor( root, info->color );
  405. GadgetRadioSetEnabledUncheckedBoxBorderColor( root, info->borderColor );
  406. info = GetStateInfo( RADIO_ENABLED_CHECKED_BOX );
  407. GadgetRadioSetEnabledCheckedBoxImage( root, info->image );
  408. GadgetRadioSetEnabledCheckedBoxColor( root, info->color );
  409. GadgetRadioSetEnabledCheckedBoxBorderColor( root, info->borderColor );
  410. info = GetStateInfo( RADIO_DISABLED );
  411. GadgetRadioSetDisabledImage( root, info->image );
  412. GadgetRadioSetDisabledColor( root, info->color );
  413. GadgetRadioSetDisabledBorderColor( root, info->borderColor );
  414. info = GetStateInfo( RADIO_DISABLED_UNCHECKED_BOX );
  415. GadgetRadioSetDisabledUncheckedBoxImage( root, info->image );
  416. GadgetRadioSetDisabledUncheckedBoxColor( root, info->color );
  417. GadgetRadioSetDisabledUncheckedBoxBorderColor( root, info->borderColor );
  418. info = GetStateInfo( RADIO_DISABLED_CHECKED_BOX );
  419. GadgetRadioSetDisabledCheckedBoxImage( root, info->image );
  420. GadgetRadioSetDisabledCheckedBoxColor( root, info->color );
  421. GadgetRadioSetDisabledCheckedBoxBorderColor( root, info->borderColor );
  422. info = GetStateInfo( RADIO_HILITE );
  423. GadgetRadioSetHiliteImage( root, info->image );
  424. GadgetRadioSetHiliteColor( root, info->color );
  425. GadgetRadioSetHiliteBorderColor( root, info->borderColor );
  426. info = GetStateInfo( RADIO_HILITE_UNCHECKED_BOX );
  427. GadgetRadioSetHiliteUncheckedBoxImage( root, info->image );
  428. GadgetRadioSetHiliteUncheckedBoxColor( root, info->color );
  429. GadgetRadioSetHiliteUncheckedBoxBorderColor( root, info->borderColor );
  430. info = GetStateInfo( RADIO_HILITE_CHECKED_BOX );
  431. GadgetRadioSetHiliteCheckedBoxImage( root, info->image );
  432. GadgetRadioSetHiliteCheckedBoxColor( root, info->color );
  433. GadgetRadioSetHiliteCheckedBoxBorderColor( root, info->borderColor );
  434. } // end else if
  435. else if( BitTest( root->winGetStyle(), GWS_CHECK_BOX ) )
  436. {
  437. info = GetStateInfo( CHECK_BOX_ENABLED );
  438. GadgetCheckBoxSetEnabledImage( root, info->image );
  439. GadgetCheckBoxSetEnabledColor( root, info->color );
  440. GadgetCheckBoxSetEnabledBorderColor( root, info->borderColor );
  441. info = GetStateInfo( CHECK_BOX_ENABLED_UNCHECKED_BOX );
  442. GadgetCheckBoxSetEnabledUncheckedBoxImage( root, info->image );
  443. GadgetCheckBoxSetEnabledUncheckedBoxColor( root, info->color );
  444. GadgetCheckBoxSetEnabledUncheckedBoxBorderColor( root, info->borderColor );
  445. info = GetStateInfo( CHECK_BOX_ENABLED_CHECKED_BOX );
  446. GadgetCheckBoxSetEnabledCheckedBoxImage( root, info->image );
  447. GadgetCheckBoxSetEnabledCheckedBoxColor( root, info->color );
  448. GadgetCheckBoxSetEnabledCheckedBoxBorderColor( root, info->borderColor );
  449. info = GetStateInfo( CHECK_BOX_DISABLED );
  450. GadgetCheckBoxSetDisabledImage( root, info->image );
  451. GadgetCheckBoxSetDisabledColor( root, info->color );
  452. GadgetCheckBoxSetDisabledBorderColor( root, info->borderColor );
  453. info = GetStateInfo( CHECK_BOX_DISABLED_UNCHECKED_BOX );
  454. GadgetCheckBoxSetDisabledUncheckedBoxImage( root, info->image );
  455. GadgetCheckBoxSetDisabledUncheckedBoxColor( root, info->color );
  456. GadgetCheckBoxSetDisabledUncheckedBoxBorderColor( root, info->borderColor );
  457. info = GetStateInfo( CHECK_BOX_DISABLED_CHECKED_BOX );
  458. GadgetCheckBoxSetDisabledCheckedBoxImage( root, info->image );
  459. GadgetCheckBoxSetDisabledCheckedBoxColor( root, info->color );
  460. GadgetCheckBoxSetDisabledCheckedBoxBorderColor( root, info->borderColor );
  461. info = GetStateInfo( CHECK_BOX_HILITE );
  462. GadgetCheckBoxSetHiliteImage( root, info->image );
  463. GadgetCheckBoxSetHiliteColor( root, info->color );
  464. GadgetCheckBoxSetHiliteBorderColor( root, info->borderColor );
  465. info = GetStateInfo( CHECK_BOX_HILITE_UNCHECKED_BOX );
  466. GadgetCheckBoxSetHiliteUncheckedBoxImage( root, info->image );
  467. GadgetCheckBoxSetHiliteUncheckedBoxColor( root, info->color );
  468. GadgetCheckBoxSetHiliteUncheckedBoxBorderColor( root, info->borderColor );
  469. info = GetStateInfo( CHECK_BOX_HILITE_CHECKED_BOX );
  470. GadgetCheckBoxSetHiliteCheckedBoxImage( root, info->image );
  471. GadgetCheckBoxSetHiliteCheckedBoxColor( root, info->color );
  472. GadgetCheckBoxSetHiliteCheckedBoxBorderColor( root, info->borderColor );
  473. } // end else if
  474. else if( BitTest( root->winGetStyle(), GWS_VERT_SLIDER ) )
  475. {
  476. info = GetStateInfo( VSLIDER_ENABLED_TOP );
  477. GadgetSliderSetEnabledImageTop( root, info->image );
  478. GadgetSliderSetEnabledColor( root, info->color );
  479. GadgetSliderSetEnabledBorderColor( root, info->borderColor );
  480. info = GetStateInfo( VSLIDER_ENABLED_BOTTOM );
  481. GadgetSliderSetEnabledImageBottom( root, info->image );
  482. info = GetStateInfo( VSLIDER_ENABLED_CENTER );
  483. GadgetSliderSetEnabledImageCenter( root, info->image );
  484. info = GetStateInfo( VSLIDER_ENABLED_SMALL_CENTER );
  485. GadgetSliderSetEnabledImageSmallCenter( root, info->image );
  486. info = GetStateInfo( VSLIDER_DISABLED_TOP );
  487. GadgetSliderSetDisabledImageTop( root, info->image );
  488. GadgetSliderSetDisabledColor( root, info->color );
  489. GadgetSliderSetDisabledBorderColor( root, info->borderColor );
  490. info = GetStateInfo( VSLIDER_DISABLED_BOTTOM );
  491. GadgetSliderSetDisabledImageBottom( root, info->image );
  492. info = GetStateInfo( VSLIDER_DISABLED_CENTER );
  493. GadgetSliderSetDisabledImageCenter( root, info->image );
  494. info = GetStateInfo( VSLIDER_DISABLED_SMALL_CENTER );
  495. GadgetSliderSetDisabledImageSmallCenter( root, info->image );
  496. info = GetStateInfo( VSLIDER_HILITE_TOP );
  497. GadgetSliderSetDisabledImageTop( root, info->image );
  498. GadgetSliderSetDisabledColor( root, info->color );
  499. GadgetSliderSetDisabledBorderColor( root, info->borderColor );
  500. info = GetStateInfo( VSLIDER_HILITE_BOTTOM );
  501. GadgetSliderSetDisabledImageBottom( root, info->image );
  502. info = GetStateInfo( VSLIDER_HILITE_CENTER );
  503. GadgetSliderSetDisabledImageCenter( root, info->image );
  504. info = GetStateInfo( VSLIDER_HILITE_SMALL_CENTER );
  505. GadgetSliderSetDisabledImageSmallCenter( root, info->image );
  506. info = GetStateInfo( VSLIDER_THUMB_ENABLED );
  507. GadgetSliderSetEnabledThumbImage( root, info->image );
  508. GadgetSliderSetEnabledThumbColor( root, info->color );
  509. GadgetSliderSetEnabledThumbBorderColor( root, info->borderColor );
  510. info = GetStateInfo( VSLIDER_THUMB_ENABLED_PUSHED );
  511. GadgetSliderSetEnabledSelectedThumbImage( root, info->image );
  512. GadgetSliderSetEnabledSelectedThumbColor( root, info->color );
  513. GadgetSliderSetEnabledSelectedThumbBorderColor( root, info->borderColor );
  514. info = GetStateInfo( VSLIDER_THUMB_DISABLED );
  515. GadgetSliderSetDisabledThumbImage( root, info->image );
  516. GadgetSliderSetDisabledThumbColor( root, info->color );
  517. GadgetSliderSetDisabledThumbBorderColor( root, info->borderColor );
  518. info = GetStateInfo( VSLIDER_THUMB_DISABLED_PUSHED );
  519. GadgetSliderSetDisabledSelectedThumbImage( root, info->image );
  520. GadgetSliderSetDisabledSelectedThumbColor( root, info->color );
  521. GadgetSliderSetDisabledSelectedThumbBorderColor( root, info->borderColor );
  522. info = GetStateInfo( VSLIDER_THUMB_HILITE );
  523. GadgetSliderSetHiliteThumbImage( root, info->image );
  524. GadgetSliderSetHiliteThumbColor( root, info->color );
  525. GadgetSliderSetHiliteThumbBorderColor( root, info->borderColor );
  526. info = GetStateInfo( VSLIDER_THUMB_HILITE_PUSHED );
  527. GadgetSliderSetHiliteSelectedThumbImage( root, info->image );
  528. GadgetSliderSetHiliteSelectedThumbColor( root, info->color );
  529. GadgetSliderSetHiliteSelectedThumbBorderColor( root, info->borderColor );
  530. } // end else if
  531. else if( BitTest( root->winGetStyle(), GWS_HORZ_SLIDER ) )
  532. {
  533. info = GetStateInfo( HSLIDER_ENABLED_LEFT );
  534. GadgetSliderSetEnabledImageLeft( root, info->image );
  535. GadgetSliderSetEnabledColor( root, info->color );
  536. GadgetSliderSetEnabledBorderColor( root, info->borderColor );
  537. info = GetStateInfo( HSLIDER_ENABLED_RIGHT );
  538. GadgetSliderSetEnabledImageRight( root, info->image );
  539. info = GetStateInfo( HSLIDER_ENABLED_CENTER );
  540. GadgetSliderSetEnabledImageCenter( root, info->image );
  541. info = GetStateInfo( HSLIDER_ENABLED_SMALL_CENTER );
  542. GadgetSliderSetEnabledImageSmallCenter( root, info->image );
  543. info = GetStateInfo( HSLIDER_DISABLED_LEFT );
  544. GadgetSliderSetDisabledImageLeft( root, info->image );
  545. GadgetSliderSetDisabledColor( root, info->color );
  546. GadgetSliderSetDisabledBorderColor( root, info->borderColor );
  547. info = GetStateInfo( HSLIDER_DISABLED_RIGHT );
  548. GadgetSliderSetDisabledImageRight( root, info->image );
  549. info = GetStateInfo( HSLIDER_DISABLED_CENTER );
  550. GadgetSliderSetDisabledImageCenter( root, info->image );
  551. info = GetStateInfo( HSLIDER_DISABLED_SMALL_CENTER );
  552. GadgetSliderSetDisabledImageSmallCenter( root, info->image );
  553. info = GetStateInfo( HSLIDER_HILITE_LEFT );
  554. GadgetSliderSetDisabledImageLeft( root, info->image );
  555. GadgetSliderSetDisabledColor( root, info->color );
  556. GadgetSliderSetDisabledBorderColor( root, info->borderColor );
  557. info = GetStateInfo( HSLIDER_HILITE_RIGHT );
  558. GadgetSliderSetDisabledImageRight( root, info->image );
  559. info = GetStateInfo( HSLIDER_HILITE_CENTER );
  560. GadgetSliderSetDisabledImageCenter( root, info->image );
  561. info = GetStateInfo( HSLIDER_HILITE_SMALL_CENTER );
  562. GadgetSliderSetDisabledImageSmallCenter( root, info->image );
  563. info = GetStateInfo( HSLIDER_THUMB_ENABLED );
  564. GadgetSliderSetEnabledThumbImage( root, info->image );
  565. GadgetSliderSetEnabledThumbColor( root, info->color );
  566. GadgetSliderSetEnabledThumbBorderColor( root, info->borderColor );
  567. info = GetStateInfo( HSLIDER_THUMB_ENABLED_PUSHED );
  568. GadgetSliderSetEnabledSelectedThumbImage( root, info->image );
  569. GadgetSliderSetEnabledSelectedThumbColor( root, info->color );
  570. GadgetSliderSetEnabledSelectedThumbBorderColor( root, info->borderColor );
  571. info = GetStateInfo( HSLIDER_THUMB_DISABLED );
  572. GadgetSliderSetDisabledThumbImage( root, info->image );
  573. GadgetSliderSetDisabledThumbColor( root, info->color );
  574. GadgetSliderSetDisabledThumbBorderColor( root, info->borderColor );
  575. info = GetStateInfo( HSLIDER_THUMB_DISABLED_PUSHED );
  576. GadgetSliderSetDisabledSelectedThumbImage( root, info->image );
  577. GadgetSliderSetDisabledSelectedThumbColor( root, info->color );
  578. GadgetSliderSetDisabledSelectedThumbBorderColor( root, info->borderColor );
  579. info = GetStateInfo( HSLIDER_THUMB_HILITE );
  580. GadgetSliderSetHiliteThumbImage( root, info->image );
  581. GadgetSliderSetHiliteThumbColor( root, info->color );
  582. GadgetSliderSetHiliteThumbBorderColor( root, info->borderColor );
  583. info = GetStateInfo( HSLIDER_THUMB_HILITE_PUSHED );
  584. GadgetSliderSetHiliteSelectedThumbImage( root, info->image );
  585. GadgetSliderSetHiliteSelectedThumbColor( root, info->color );
  586. GadgetSliderSetHiliteSelectedThumbBorderColor( root, info->borderColor );
  587. } // end else if
  588. else if( BitTest( root->winGetStyle(), GWS_SCROLL_LISTBOX ) )
  589. {
  590. info = GetStateInfo( LISTBOX_ENABLED );
  591. GadgetListBoxSetEnabledImage( root, info->image );
  592. GadgetListBoxSetEnabledColor( root, info->color );
  593. GadgetListBoxSetEnabledBorderColor( root, info->borderColor );
  594. info = GetStateInfo( LISTBOX_ENABLED_SELECTED_ITEM_LEFT );
  595. GadgetListBoxSetEnabledSelectedItemImageLeft( root, info->image );
  596. GadgetListBoxSetEnabledSelectedItemColor( root, info->color );
  597. GadgetListBoxSetEnabledSelectedItemBorderColor( root, info->borderColor );
  598. info = GetStateInfo( LISTBOX_ENABLED_SELECTED_ITEM_RIGHT );
  599. GadgetListBoxSetEnabledSelectedItemImageRight( root, info->image );
  600. info = GetStateInfo( LISTBOX_ENABLED_SELECTED_ITEM_CENTER );
  601. GadgetListBoxSetEnabledSelectedItemImageCenter( root, info->image );
  602. info = GetStateInfo( LISTBOX_ENABLED_SELECTED_ITEM_SMALL_CENTER );
  603. GadgetListBoxSetEnabledSelectedItemImageSmallCenter( root, info->image );
  604. info = GetStateInfo( LISTBOX_DISABLED );
  605. GadgetListBoxSetDisabledImage( root, info->image );
  606. GadgetListBoxSetDisabledColor( root, info->color );
  607. GadgetListBoxSetDisabledBorderColor( root, info->borderColor );
  608. info = GetStateInfo( LISTBOX_DISABLED_SELECTED_ITEM_LEFT );
  609. GadgetListBoxSetDisabledSelectedItemImageLeft( root, info->image );
  610. GadgetListBoxSetDisabledSelectedItemColor( root, info->color );
  611. GadgetListBoxSetDisabledSelectedItemBorderColor( root, info->borderColor );
  612. info = GetStateInfo( LISTBOX_DISABLED_SELECTED_ITEM_RIGHT );
  613. GadgetListBoxSetDisabledSelectedItemImageRight( root, info->image );
  614. info = GetStateInfo( LISTBOX_DISABLED_SELECTED_ITEM_CENTER );
  615. GadgetListBoxSetDisabledSelectedItemImageCenter( root, info->image );
  616. info = GetStateInfo( LISTBOX_DISABLED_SELECTED_ITEM_SMALL_CENTER );
  617. GadgetListBoxSetDisabledSelectedItemImageSmallCenter( root, info->image );
  618. info = GetStateInfo( LISTBOX_HILITE );
  619. GadgetListBoxSetHiliteImage( root, info->image );
  620. GadgetListBoxSetHiliteColor( root, info->color );
  621. GadgetListBoxSetHiliteBorderColor( root, info->borderColor );
  622. info = GetStateInfo( LISTBOX_HILITE_SELECTED_ITEM_LEFT );
  623. GadgetListBoxSetHiliteSelectedItemImageLeft( root, info->image );
  624. GadgetListBoxSetHiliteSelectedItemColor( root, info->color );
  625. GadgetListBoxSetHiliteSelectedItemBorderColor( root, info->borderColor );
  626. info = GetStateInfo( LISTBOX_HILITE_SELECTED_ITEM_RIGHT );
  627. GadgetListBoxSetHiliteSelectedItemImageRight( root, info->image );
  628. info = GetStateInfo( LISTBOX_HILITE_SELECTED_ITEM_CENTER );
  629. GadgetListBoxSetHiliteSelectedItemImageCenter( root, info->image );
  630. info = GetStateInfo( LISTBOX_HILITE_SELECTED_ITEM_SMALL_CENTER );
  631. GadgetListBoxSetHiliteSelectedItemImageSmallCenter( root, info->image );
  632. GameWindow *upButton = GadgetListBoxGetUpButton( root );
  633. if( upButton )
  634. {
  635. info = GetStateInfo( LISTBOX_UP_BUTTON_ENABLED );
  636. GadgetButtonSetEnabledImage( upButton, info->image );
  637. GadgetButtonSetEnabledColor( upButton, info->color );
  638. GadgetButtonSetEnabledBorderColor( upButton, info->borderColor );
  639. info = GetStateInfo( LISTBOX_UP_BUTTON_ENABLED_PUSHED );
  640. GadgetButtonSetEnabledSelectedImage( upButton, info->image );
  641. GadgetButtonSetEnabledSelectedColor( upButton, info->color );
  642. GadgetButtonSetEnabledSelectedBorderColor( upButton, info->borderColor );
  643. info = GetStateInfo( LISTBOX_UP_BUTTON_DISABLED );
  644. GadgetButtonSetDisabledImage( upButton, info->image );
  645. GadgetButtonSetDisabledColor( upButton, info->color );
  646. GadgetButtonSetDisabledBorderColor( upButton, info->borderColor );
  647. info = GetStateInfo( LISTBOX_UP_BUTTON_DISABLED_PUSHED );
  648. GadgetButtonSetDisabledSelectedImage( upButton, info->image );
  649. GadgetButtonSetDisabledSelectedColor( upButton, info->color );
  650. GadgetButtonSetDisabledSelectedBorderColor( upButton, info->borderColor );
  651. info = GetStateInfo( LISTBOX_UP_BUTTON_HILITE );
  652. GadgetButtonSetHiliteImage( upButton, info->image );
  653. GadgetButtonSetHiliteColor( upButton, info->color );
  654. GadgetButtonSetHiliteBorderColor( upButton, info->borderColor );
  655. info = GetStateInfo( LISTBOX_UP_BUTTON_HILITE_PUSHED );
  656. GadgetButtonSetHiliteSelectedImage( upButton, info->image );
  657. GadgetButtonSetHiliteSelectedColor( upButton, info->color );
  658. GadgetButtonSetHiliteSelectedBorderColor( upButton, info->borderColor );
  659. } // end if
  660. GameWindow *downButton = GadgetListBoxGetDownButton( root );
  661. if( downButton )
  662. {
  663. info = GetStateInfo( LISTBOX_DOWN_BUTTON_ENABLED );
  664. GadgetButtonSetEnabledImage( downButton, info->image );
  665. GadgetButtonSetEnabledColor( downButton, info->color );
  666. GadgetButtonSetEnabledBorderColor( downButton, info->borderColor );
  667. info = GetStateInfo( LISTBOX_DOWN_BUTTON_ENABLED_PUSHED );
  668. GadgetButtonSetEnabledSelectedImage( downButton, info->image );
  669. GadgetButtonSetEnabledSelectedColor( downButton, info->color );
  670. GadgetButtonSetEnabledSelectedBorderColor( downButton, info->borderColor );
  671. info = GetStateInfo( LISTBOX_DOWN_BUTTON_DISABLED );
  672. GadgetButtonSetDisabledImage( downButton, info->image );
  673. GadgetButtonSetDisabledColor( downButton, info->color );
  674. GadgetButtonSetDisabledBorderColor( downButton, info->borderColor );
  675. info = GetStateInfo( LISTBOX_DOWN_BUTTON_DISABLED_PUSHED );
  676. GadgetButtonSetDisabledSelectedImage( downButton, info->image );
  677. GadgetButtonSetDisabledSelectedColor( downButton, info->color );
  678. GadgetButtonSetDisabledSelectedBorderColor( downButton, info->borderColor );
  679. info = GetStateInfo( LISTBOX_DOWN_BUTTON_HILITE );
  680. GadgetButtonSetHiliteImage( downButton, info->image );
  681. GadgetButtonSetHiliteColor( downButton, info->color );
  682. GadgetButtonSetHiliteBorderColor( downButton, info->borderColor );
  683. info = GetStateInfo( LISTBOX_DOWN_BUTTON_HILITE_PUSHED );
  684. GadgetButtonSetHiliteSelectedImage( downButton, info->image );
  685. GadgetButtonSetHiliteSelectedColor( downButton, info->color );
  686. GadgetButtonSetHiliteSelectedBorderColor( downButton, info->borderColor );
  687. } // end if
  688. GameWindow *slider = GadgetListBoxGetSlider( root );
  689. if( slider )
  690. {
  691. info = GetStateInfo( LISTBOX_SLIDER_ENABLED_TOP );
  692. GadgetSliderSetEnabledImageTop( slider, info->image );
  693. GadgetSliderSetEnabledColor( slider, info->color );
  694. GadgetSliderSetEnabledBorderColor( slider, info->borderColor );
  695. info = GetStateInfo( LISTBOX_SLIDER_ENABLED_BOTTOM );
  696. GadgetSliderSetEnabledImageBottom( slider, info->image );
  697. info = GetStateInfo( LISTBOX_SLIDER_ENABLED_CENTER );
  698. GadgetSliderSetEnabledImageCenter( slider, info->image );
  699. info = GetStateInfo( LISTBOX_SLIDER_ENABLED_SMALL_CENTER );
  700. GadgetSliderSetEnabledImageSmallCenter( slider, info->image );
  701. info = GetStateInfo( LISTBOX_SLIDER_DISABLED_TOP );
  702. GadgetSliderSetDisabledImageTop( slider, info->image );
  703. GadgetSliderSetDisabledColor( slider, info->color );
  704. GadgetSliderSetDisabledBorderColor( slider, info->borderColor );
  705. info = GetStateInfo( LISTBOX_SLIDER_DISABLED_BOTTOM );
  706. GadgetSliderSetDisabledImageBottom( slider, info->image );
  707. info = GetStateInfo( LISTBOX_SLIDER_DISABLED_CENTER );
  708. GadgetSliderSetDisabledImageCenter( slider, info->image );
  709. info = GetStateInfo( LISTBOX_SLIDER_DISABLED_SMALL_CENTER );
  710. GadgetSliderSetDisabledImageSmallCenter( slider, info->image );
  711. info = GetStateInfo( LISTBOX_SLIDER_HILITE_TOP );
  712. GadgetSliderSetDisabledImageTop( slider, info->image );
  713. GadgetSliderSetDisabledColor( slider, info->color );
  714. GadgetSliderSetDisabledBorderColor( slider, info->borderColor );
  715. info = GetStateInfo( LISTBOX_SLIDER_HILITE_BOTTOM );
  716. GadgetSliderSetDisabledImageBottom( slider, info->image );
  717. info = GetStateInfo( LISTBOX_SLIDER_HILITE_CENTER );
  718. GadgetSliderSetDisabledImageCenter( slider, info->image );
  719. info = GetStateInfo( LISTBOX_SLIDER_HILITE_SMALL_CENTER );
  720. GadgetSliderSetDisabledImageSmallCenter( slider, info->image );
  721. info = GetStateInfo( LISTBOX_SLIDER_THUMB_ENABLED );
  722. GadgetSliderSetEnabledThumbImage( slider, info->image );
  723. GadgetSliderSetEnabledThumbColor( slider, info->color );
  724. GadgetSliderSetEnabledThumbBorderColor( slider, info->borderColor );
  725. info = GetStateInfo( LISTBOX_SLIDER_THUMB_ENABLED_PUSHED );
  726. GadgetSliderSetEnabledSelectedThumbImage( slider, info->image );
  727. GadgetSliderSetEnabledSelectedThumbColor( slider, info->color );
  728. GadgetSliderSetEnabledSelectedThumbBorderColor( slider, info->borderColor );
  729. info = GetStateInfo( LISTBOX_SLIDER_THUMB_DISABLED );
  730. GadgetSliderSetDisabledThumbImage( slider, info->image );
  731. GadgetSliderSetDisabledThumbColor( slider, info->color );
  732. GadgetSliderSetDisabledThumbBorderColor( slider, info->borderColor );
  733. info = GetStateInfo( LISTBOX_SLIDER_THUMB_DISABLED_PUSHED );
  734. GadgetSliderSetDisabledSelectedThumbImage( slider, info->image );
  735. GadgetSliderSetDisabledSelectedThumbColor( slider, info->color );
  736. GadgetSliderSetDisabledSelectedThumbBorderColor( slider, info->borderColor );
  737. info = GetStateInfo( LISTBOX_SLIDER_THUMB_HILITE );
  738. GadgetSliderSetHiliteThumbImage( slider, info->image );
  739. GadgetSliderSetHiliteThumbColor( slider, info->color );
  740. GadgetSliderSetHiliteThumbBorderColor( slider, info->borderColor );
  741. info = GetStateInfo( LISTBOX_SLIDER_THUMB_HILITE_PUSHED );
  742. GadgetSliderSetHiliteSelectedThumbImage( slider, info->image );
  743. GadgetSliderSetHiliteSelectedThumbColor( slider, info->color );
  744. GadgetSliderSetHiliteSelectedThumbBorderColor( slider, info->borderColor );
  745. } // end if
  746. } // end else if
  747. else if( BitTest( root->winGetStyle(), GWS_COMBO_BOX ) )
  748. {
  749. info = GetStateInfo( COMBOBOX_ENABLED );
  750. GadgetListBoxSetEnabledImage( root, info->image );
  751. GadgetListBoxSetEnabledColor( root, info->color );
  752. GadgetListBoxSetEnabledBorderColor( root, info->borderColor );
  753. info = GetStateInfo( COMBOBOX_ENABLED_SELECTED_ITEM_LEFT );
  754. GadgetListBoxSetEnabledSelectedItemImageLeft( root, info->image );
  755. GadgetListBoxSetEnabledSelectedItemColor( root, info->color );
  756. GadgetListBoxSetEnabledSelectedItemBorderColor( root, info->borderColor );
  757. info = GetStateInfo( COMBOBOX_ENABLED_SELECTED_ITEM_RIGHT );
  758. GadgetListBoxSetEnabledSelectedItemImageRight( root, info->image );
  759. info = GetStateInfo( COMBOBOX_ENABLED_SELECTED_ITEM_CENTER );
  760. GadgetListBoxSetEnabledSelectedItemImageCenter( root, info->image );
  761. info = GetStateInfo( COMBOBOX_ENABLED_SELECTED_ITEM_SMALL_CENTER );
  762. GadgetListBoxSetEnabledSelectedItemImageSmallCenter( root, info->image );
  763. info = GetStateInfo( COMBOBOX_DISABLED );
  764. GadgetListBoxSetDisabledImage( root, info->image );
  765. GadgetListBoxSetDisabledColor( root, info->color );
  766. GadgetListBoxSetDisabledBorderColor( root, info->borderColor );
  767. info = GetStateInfo( COMBOBOX_DISABLED_SELECTED_ITEM_LEFT );
  768. GadgetListBoxSetDisabledSelectedItemImageLeft( root, info->image );
  769. GadgetListBoxSetDisabledSelectedItemColor( root, info->color );
  770. GadgetListBoxSetDisabledSelectedItemBorderColor( root, info->borderColor );
  771. info = GetStateInfo( COMBOBOX_DISABLED_SELECTED_ITEM_RIGHT );
  772. GadgetListBoxSetDisabledSelectedItemImageRight( root, info->image );
  773. info = GetStateInfo( COMBOBOX_DISABLED_SELECTED_ITEM_CENTER );
  774. GadgetListBoxSetDisabledSelectedItemImageCenter( root, info->image );
  775. info = GetStateInfo( COMBOBOX_DISABLED_SELECTED_ITEM_SMALL_CENTER );
  776. GadgetListBoxSetDisabledSelectedItemImageSmallCenter( root, info->image );
  777. info = GetStateInfo( COMBOBOX_HILITE );
  778. GadgetListBoxSetHiliteImage( root, info->image );
  779. GadgetListBoxSetHiliteColor( root, info->color );
  780. GadgetListBoxSetHiliteBorderColor( root, info->borderColor );
  781. info = GetStateInfo( COMBOBOX_HILITE_SELECTED_ITEM_LEFT );
  782. GadgetListBoxSetHiliteSelectedItemImageLeft( root, info->image );
  783. GadgetListBoxSetHiliteSelectedItemColor( root, info->color );
  784. GadgetListBoxSetHiliteSelectedItemBorderColor( root, info->borderColor );
  785. info = GetStateInfo( COMBOBOX_HILITE_SELECTED_ITEM_RIGHT );
  786. GadgetListBoxSetHiliteSelectedItemImageRight( root, info->image );
  787. info = GetStateInfo( COMBOBOX_HILITE_SELECTED_ITEM_CENTER );
  788. GadgetListBoxSetHiliteSelectedItemImageCenter( root, info->image );
  789. info = GetStateInfo( COMBOBOX_HILITE_SELECTED_ITEM_SMALL_CENTER );
  790. GadgetListBoxSetHiliteSelectedItemImageSmallCenter( root, info->image );
  791. GameWindow *dropDownButton = GadgetComboBoxGetDropDownButton( root );
  792. if( dropDownButton )
  793. {
  794. info = GetStateInfo( COMBOBOX_DROP_DOWN_BUTTON_ENABLED );
  795. GadgetButtonSetEnabledImage( dropDownButton, info->image );
  796. GadgetButtonSetEnabledColor( dropDownButton, info->color );
  797. GadgetButtonSetEnabledBorderColor( dropDownButton, info->borderColor );
  798. info = GetStateInfo( COMBOBOX_DROP_DOWN_BUTTON_ENABLED_PUSHED );
  799. GadgetButtonSetEnabledSelectedImage( dropDownButton, info->image );
  800. GadgetButtonSetEnabledSelectedColor( dropDownButton, info->color );
  801. GadgetButtonSetEnabledSelectedBorderColor( dropDownButton, info->borderColor );
  802. info = GetStateInfo( COMBOBOX_DROP_DOWN_BUTTON_DISABLED );
  803. GadgetButtonSetDisabledImage( dropDownButton, info->image );
  804. GadgetButtonSetDisabledColor( dropDownButton, info->color );
  805. GadgetButtonSetDisabledBorderColor( dropDownButton, info->borderColor );
  806. info = GetStateInfo( COMBOBOX_DROP_DOWN_BUTTON_DISABLED_PUSHED );
  807. GadgetButtonSetDisabledSelectedImage( dropDownButton, info->image );
  808. GadgetButtonSetDisabledSelectedColor( dropDownButton, info->color );
  809. GadgetButtonSetDisabledSelectedBorderColor( dropDownButton, info->borderColor );
  810. info = GetStateInfo( COMBOBOX_DROP_DOWN_BUTTON_HILITE );
  811. GadgetButtonSetHiliteImage( dropDownButton, info->image );
  812. GadgetButtonSetHiliteColor( dropDownButton, info->color );
  813. GadgetButtonSetHiliteBorderColor( dropDownButton, info->borderColor );
  814. info = GetStateInfo( COMBOBOX_DROP_DOWN_BUTTON_HILITE_PUSHED );
  815. GadgetButtonSetHiliteSelectedImage( dropDownButton, info->image );
  816. GadgetButtonSetHiliteSelectedColor( dropDownButton, info->color );
  817. GadgetButtonSetHiliteSelectedBorderColor( dropDownButton, info->borderColor );
  818. }// end if
  819. GameWindow *editBox = GadgetComboBoxGetEditBox( root );
  820. if ( editBox )
  821. {
  822. info = GetStateInfo( COMBOBOX_EDIT_BOX_ENABLED_LEFT );
  823. GadgetTextEntrySetEnabledImageLeft( editBox, info->image );
  824. GadgetTextEntrySetEnabledColor( editBox, info->color );
  825. GadgetTextEntrySetEnabledBorderColor( editBox, info->borderColor );
  826. info = GetStateInfo( COMBOBOX_EDIT_BOX_ENABLED_RIGHT );
  827. GadgetTextEntrySetEnabledImageRight( editBox, info->image );
  828. info = GetStateInfo( COMBOBOX_EDIT_BOX_ENABLED_CENTER );
  829. GadgetTextEntrySetEnabledImageCenter( editBox, info->image );
  830. info = GetStateInfo( COMBOBOX_EDIT_BOX_ENABLED_SMALL_CENTER );
  831. GadgetTextEntrySetEnabledImageSmallCenter( editBox, info->image );
  832. info = GetStateInfo( COMBOBOX_EDIT_BOX_DISABLED_LEFT );
  833. GadgetTextEntrySetDisabledImageLeft( editBox, info->image );
  834. GadgetTextEntrySetDisabledColor( editBox, info->color );
  835. GadgetTextEntrySetDisabledBorderColor( editBox, info->borderColor );
  836. info = GetStateInfo( COMBOBOX_EDIT_BOX_DISABLED_RIGHT );
  837. GadgetTextEntrySetDisabledImageRight( editBox, info->image );
  838. info = GetStateInfo( COMBOBOX_EDIT_BOX_DISABLED_CENTER );
  839. GadgetTextEntrySetDisabledImageCenter( editBox, info->image );
  840. info = GetStateInfo( COMBOBOX_EDIT_BOX_DISABLED_SMALL_CENTER );
  841. GadgetTextEntrySetDisabledImageSmallCenter( editBox, info->image );
  842. info = GetStateInfo( COMBOBOX_EDIT_BOX_HILITE_LEFT );
  843. GadgetTextEntrySetHiliteImageLeft( editBox, info->image );
  844. GadgetTextEntrySetHiliteColor( editBox, info->color );
  845. GadgetTextEntrySetHiliteBorderColor( editBox, info->borderColor );
  846. info = GetStateInfo( COMBOBOX_EDIT_BOX_HILITE_RIGHT );
  847. GadgetTextEntrySetHiliteImageRight( editBox, info->image );
  848. info = GetStateInfo( COMBOBOX_EDIT_BOX_HILITE_CENTER );
  849. GadgetTextEntrySetHiliteImageCenter( editBox, info->image );
  850. info = GetStateInfo( COMBOBOX_EDIT_BOX_HILITE_SMALL_CENTER );
  851. GadgetTextEntrySetHiliteImageSmallCenter( editBox, info->image );
  852. } // end if
  853. GameWindow *listBox = GadgetComboBoxGetListBox( root );
  854. if( listBox )
  855. {
  856. info = GetStateInfo( COMBOBOX_LISTBOX_ENABLED );
  857. GadgetListBoxSetEnabledImage( listBox, info->image );
  858. GadgetListBoxSetEnabledColor( listBox, info->color );
  859. GadgetListBoxSetEnabledBorderColor( listBox, info->borderColor );
  860. info = GetStateInfo( COMBOBOX_LISTBOX_ENABLED_SELECTED_ITEM_LEFT );
  861. GadgetListBoxSetEnabledSelectedItemImageLeft( listBox, info->image );
  862. GadgetListBoxSetEnabledSelectedItemColor( listBox, info->color );
  863. GadgetListBoxSetEnabledSelectedItemBorderColor( listBox, info->borderColor );
  864. info = GetStateInfo( COMBOBOX_LISTBOX_ENABLED_SELECTED_ITEM_RIGHT );
  865. GadgetListBoxSetEnabledSelectedItemImageRight( listBox, info->image );
  866. info = GetStateInfo( COMBOBOX_LISTBOX_ENABLED_SELECTED_ITEM_CENTER );
  867. GadgetListBoxSetEnabledSelectedItemImageCenter( listBox, info->image );
  868. info = GetStateInfo( COMBOBOX_LISTBOX_ENABLED_SELECTED_ITEM_SMALL_CENTER );
  869. GadgetListBoxSetEnabledSelectedItemImageSmallCenter( listBox, info->image );
  870. info = GetStateInfo( COMBOBOX_LISTBOX_DISABLED );
  871. GadgetListBoxSetDisabledImage( listBox, info->image );
  872. GadgetListBoxSetDisabledColor( listBox, info->color );
  873. GadgetListBoxSetDisabledBorderColor( listBox, info->borderColor );
  874. info = GetStateInfo( COMBOBOX_LISTBOX_DISABLED_SELECTED_ITEM_LEFT );
  875. GadgetListBoxSetDisabledSelectedItemImageLeft( listBox, info->image );
  876. GadgetListBoxSetDisabledSelectedItemColor( listBox, info->color );
  877. GadgetListBoxSetDisabledSelectedItemBorderColor( listBox, info->borderColor );
  878. info = GetStateInfo( COMBOBOX_LISTBOX_DISABLED_SELECTED_ITEM_RIGHT );
  879. GadgetListBoxSetDisabledSelectedItemImageRight( listBox, info->image );
  880. info = GetStateInfo( COMBOBOX_LISTBOX_DISABLED_SELECTED_ITEM_CENTER );
  881. GadgetListBoxSetDisabledSelectedItemImageCenter( listBox, info->image );
  882. info = GetStateInfo( COMBOBOX_LISTBOX_DISABLED_SELECTED_ITEM_SMALL_CENTER );
  883. GadgetListBoxSetDisabledSelectedItemImageSmallCenter( listBox, info->image );
  884. info = GetStateInfo( COMBOBOX_LISTBOX_HILITE );
  885. GadgetListBoxSetHiliteImage( listBox, info->image );
  886. GadgetListBoxSetHiliteColor( listBox, info->color );
  887. GadgetListBoxSetHiliteBorderColor( listBox, info->borderColor );
  888. info = GetStateInfo( COMBOBOX_LISTBOX_HILITE_SELECTED_ITEM_LEFT );
  889. GadgetListBoxSetHiliteSelectedItemImageLeft( listBox, info->image );
  890. GadgetListBoxSetHiliteSelectedItemColor( listBox, info->color );
  891. GadgetListBoxSetHiliteSelectedItemBorderColor( listBox, info->borderColor );
  892. info = GetStateInfo( COMBOBOX_LISTBOX_HILITE_SELECTED_ITEM_RIGHT );
  893. GadgetListBoxSetHiliteSelectedItemImageRight( listBox, info->image );
  894. info = GetStateInfo( COMBOBOX_LISTBOX_HILITE_SELECTED_ITEM_CENTER );
  895. GadgetListBoxSetHiliteSelectedItemImageCenter( listBox, info->image );
  896. info = GetStateInfo( COMBOBOX_LISTBOX_HILITE_SELECTED_ITEM_SMALL_CENTER );
  897. GadgetListBoxSetHiliteSelectedItemImageSmallCenter( listBox, info->image );
  898. GameWindow *upButton = GadgetListBoxGetUpButton( listBox );
  899. if( upButton )
  900. {
  901. info = GetStateInfo( COMBOBOX_LISTBOX_UP_BUTTON_ENABLED );
  902. GadgetButtonSetEnabledImage( upButton, info->image );
  903. GadgetButtonSetEnabledColor( upButton, info->color );
  904. GadgetButtonSetEnabledBorderColor( upButton, info->borderColor );
  905. info = GetStateInfo( COMBOBOX_LISTBOX_UP_BUTTON_ENABLED_PUSHED );
  906. GadgetButtonSetEnabledSelectedImage( upButton, info->image );
  907. GadgetButtonSetEnabledSelectedColor( upButton, info->color );
  908. GadgetButtonSetEnabledSelectedBorderColor( upButton, info->borderColor );
  909. info = GetStateInfo( COMBOBOX_LISTBOX_UP_BUTTON_DISABLED );
  910. GadgetButtonSetDisabledImage( upButton, info->image );
  911. GadgetButtonSetDisabledColor( upButton, info->color );
  912. GadgetButtonSetDisabledBorderColor( upButton, info->borderColor );
  913. info = GetStateInfo( COMBOBOX_LISTBOX_UP_BUTTON_DISABLED_PUSHED );
  914. GadgetButtonSetDisabledSelectedImage( upButton, info->image );
  915. GadgetButtonSetDisabledSelectedColor( upButton, info->color );
  916. GadgetButtonSetDisabledSelectedBorderColor( upButton, info->borderColor );
  917. info = GetStateInfo( COMBOBOX_LISTBOX_UP_BUTTON_HILITE );
  918. GadgetButtonSetHiliteImage( upButton, info->image );
  919. GadgetButtonSetHiliteColor( upButton, info->color );
  920. GadgetButtonSetHiliteBorderColor( upButton, info->borderColor );
  921. info = GetStateInfo( COMBOBOX_LISTBOX_UP_BUTTON_HILITE_PUSHED );
  922. GadgetButtonSetHiliteSelectedImage( upButton, info->image );
  923. GadgetButtonSetHiliteSelectedColor( upButton, info->color );
  924. GadgetButtonSetHiliteSelectedBorderColor( upButton, info->borderColor );
  925. } // end if
  926. GameWindow *downButton = GadgetListBoxGetDownButton( listBox );
  927. if( downButton )
  928. {
  929. info = GetStateInfo( COMBOBOX_LISTBOX_DOWN_BUTTON_ENABLED );
  930. GadgetButtonSetEnabledImage( downButton, info->image );
  931. GadgetButtonSetEnabledColor( downButton, info->color );
  932. GadgetButtonSetEnabledBorderColor( downButton, info->borderColor );
  933. info = GetStateInfo( COMBOBOX_LISTBOX_DOWN_BUTTON_ENABLED_PUSHED );
  934. GadgetButtonSetEnabledSelectedImage( downButton, info->image );
  935. GadgetButtonSetEnabledSelectedColor( downButton, info->color );
  936. GadgetButtonSetEnabledSelectedBorderColor( downButton, info->borderColor );
  937. info = GetStateInfo( COMBOBOX_LISTBOX_DOWN_BUTTON_DISABLED );
  938. GadgetButtonSetDisabledImage( downButton, info->image );
  939. GadgetButtonSetDisabledColor( downButton, info->color );
  940. GadgetButtonSetDisabledBorderColor( downButton, info->borderColor );
  941. info = GetStateInfo( COMBOBOX_LISTBOX_DOWN_BUTTON_DISABLED_PUSHED );
  942. GadgetButtonSetDisabledSelectedImage( downButton, info->image );
  943. GadgetButtonSetDisabledSelectedColor( downButton, info->color );
  944. GadgetButtonSetDisabledSelectedBorderColor( downButton, info->borderColor );
  945. info = GetStateInfo( COMBOBOX_LISTBOX_DOWN_BUTTON_HILITE );
  946. GadgetButtonSetHiliteImage( downButton, info->image );
  947. GadgetButtonSetHiliteColor( downButton, info->color );
  948. GadgetButtonSetHiliteBorderColor( downButton, info->borderColor );
  949. info = GetStateInfo( COMBOBOX_LISTBOX_DOWN_BUTTON_HILITE_PUSHED );
  950. GadgetButtonSetHiliteSelectedImage( downButton, info->image );
  951. GadgetButtonSetHiliteSelectedColor( downButton, info->color );
  952. GadgetButtonSetHiliteSelectedBorderColor( downButton, info->borderColor );
  953. } // end if
  954. GameWindow *slider = GadgetListBoxGetSlider( listBox );
  955. if( slider )
  956. {
  957. info = GetStateInfo( COMBOBOX_LISTBOX_SLIDER_ENABLED_TOP );
  958. GadgetSliderSetEnabledImageTop( slider, info->image );
  959. GadgetSliderSetEnabledColor( slider, info->color );
  960. GadgetSliderSetEnabledBorderColor( slider, info->borderColor );
  961. info = GetStateInfo( COMBOBOX_LISTBOX_SLIDER_ENABLED_BOTTOM );
  962. GadgetSliderSetEnabledImageBottom( slider, info->image );
  963. info = GetStateInfo( COMBOBOX_LISTBOX_SLIDER_ENABLED_CENTER );
  964. GadgetSliderSetEnabledImageCenter( slider, info->image );
  965. info = GetStateInfo( COMBOBOX_LISTBOX_SLIDER_ENABLED_SMALL_CENTER );
  966. GadgetSliderSetEnabledImageSmallCenter( slider, info->image );
  967. info = GetStateInfo( COMBOBOX_LISTBOX_SLIDER_DISABLED_TOP );
  968. GadgetSliderSetDisabledImageTop( slider, info->image );
  969. GadgetSliderSetDisabledColor( slider, info->color );
  970. GadgetSliderSetDisabledBorderColor( slider, info->borderColor );
  971. info = GetStateInfo( COMBOBOX_LISTBOX_SLIDER_DISABLED_BOTTOM );
  972. GadgetSliderSetDisabledImageBottom( slider, info->image );
  973. info = GetStateInfo( COMBOBOX_LISTBOX_SLIDER_DISABLED_CENTER );
  974. GadgetSliderSetDisabledImageCenter( slider, info->image );
  975. info = GetStateInfo( COMBOBOX_LISTBOX_SLIDER_DISABLED_SMALL_CENTER );
  976. GadgetSliderSetDisabledImageSmallCenter( slider, info->image );
  977. info = GetStateInfo( COMBOBOX_LISTBOX_SLIDER_HILITE_TOP );
  978. GadgetSliderSetDisabledImageTop( slider, info->image );
  979. GadgetSliderSetDisabledColor( slider, info->color );
  980. GadgetSliderSetDisabledBorderColor( slider, info->borderColor );
  981. info = GetStateInfo( COMBOBOX_LISTBOX_SLIDER_HILITE_BOTTOM );
  982. GadgetSliderSetDisabledImageBottom( slider, info->image );
  983. info = GetStateInfo( COMBOBOX_LISTBOX_SLIDER_HILITE_CENTER );
  984. GadgetSliderSetDisabledImageCenter( slider, info->image );
  985. info = GetStateInfo( COMBOBOX_LISTBOX_SLIDER_HILITE_SMALL_CENTER );
  986. GadgetSliderSetDisabledImageSmallCenter( slider, info->image );
  987. info = GetStateInfo( COMBOBOX_LISTBOX_SLIDER_THUMB_ENABLED );
  988. GadgetSliderSetEnabledThumbImage( slider, info->image );
  989. GadgetSliderSetEnabledThumbColor( slider, info->color );
  990. GadgetSliderSetEnabledThumbBorderColor( slider, info->borderColor );
  991. info = GetStateInfo( COMBOBOX_LISTBOX_SLIDER_THUMB_ENABLED_PUSHED );
  992. GadgetSliderSetEnabledSelectedThumbImage( slider, info->image );
  993. GadgetSliderSetEnabledSelectedThumbColor( slider, info->color );
  994. GadgetSliderSetEnabledSelectedThumbBorderColor( slider, info->borderColor );
  995. info = GetStateInfo( COMBOBOX_LISTBOX_SLIDER_THUMB_DISABLED );
  996. GadgetSliderSetDisabledThumbImage( slider, info->image );
  997. GadgetSliderSetDisabledThumbColor( slider, info->color );
  998. GadgetSliderSetDisabledThumbBorderColor( slider, info->borderColor );
  999. info = GetStateInfo( COMBOBOX_LISTBOX_SLIDER_THUMB_DISABLED_PUSHED );
  1000. GadgetSliderSetDisabledSelectedThumbImage( slider, info->image );
  1001. GadgetSliderSetDisabledSelectedThumbColor( slider, info->color );
  1002. GadgetSliderSetDisabledSelectedThumbBorderColor( slider, info->borderColor );
  1003. info = GetStateInfo( COMBOBOX_LISTBOX_SLIDER_THUMB_HILITE );
  1004. GadgetSliderSetHiliteThumbImage( slider, info->image );
  1005. GadgetSliderSetHiliteThumbColor( slider, info->color );
  1006. GadgetSliderSetHiliteThumbBorderColor( slider, info->borderColor );
  1007. info = GetStateInfo( COMBOBOX_LISTBOX_SLIDER_THUMB_HILITE_PUSHED );
  1008. GadgetSliderSetHiliteSelectedThumbImage( slider, info->image );
  1009. GadgetSliderSetHiliteSelectedThumbColor( slider, info->color );
  1010. GadgetSliderSetHiliteSelectedThumbBorderColor( slider, info->borderColor );
  1011. } // end if
  1012. }// end if (combo listbox)
  1013. }// end if
  1014. else if( BitTest( root->winGetStyle(), GWS_ENTRY_FIELD ) )
  1015. {
  1016. info = GetStateInfo( TEXT_ENTRY_ENABLED_LEFT );
  1017. GadgetTextEntrySetEnabledImageLeft( root, info->image );
  1018. GadgetTextEntrySetEnabledColor( root, info->color );
  1019. GadgetTextEntrySetEnabledBorderColor( root, info->borderColor );
  1020. info = GetStateInfo( TEXT_ENTRY_ENABLED_RIGHT );
  1021. GadgetTextEntrySetEnabledImageRight( root, info->image );
  1022. info = GetStateInfo( TEXT_ENTRY_ENABLED_CENTER );
  1023. GadgetTextEntrySetEnabledImageCenter( root, info->image );
  1024. info = GetStateInfo( TEXT_ENTRY_ENABLED_SMALL_CENTER );
  1025. GadgetTextEntrySetEnabledImageSmallCenter( root, info->image );
  1026. info = GetStateInfo( TEXT_ENTRY_DISABLED_LEFT );
  1027. GadgetTextEntrySetDisabledImageLeft( root, info->image );
  1028. GadgetTextEntrySetDisabledColor( root, info->color );
  1029. GadgetTextEntrySetDisabledBorderColor( root, info->borderColor );
  1030. info = GetStateInfo( TEXT_ENTRY_DISABLED_RIGHT );
  1031. GadgetTextEntrySetDisabledImageRight( root, info->image );
  1032. info = GetStateInfo( TEXT_ENTRY_DISABLED_CENTER );
  1033. GadgetTextEntrySetDisabledImageCenter( root, info->image );
  1034. info = GetStateInfo( TEXT_ENTRY_DISABLED_SMALL_CENTER );
  1035. GadgetTextEntrySetDisabledImageSmallCenter( root, info->image );
  1036. info = GetStateInfo( TEXT_ENTRY_HILITE_LEFT );
  1037. GadgetTextEntrySetHiliteImageLeft( root, info->image );
  1038. GadgetTextEntrySetHiliteColor( root, info->color );
  1039. GadgetTextEntrySetHiliteBorderColor( root, info->borderColor );
  1040. info = GetStateInfo( TEXT_ENTRY_HILITE_RIGHT );
  1041. GadgetTextEntrySetHiliteImageRight( root, info->image );
  1042. info = GetStateInfo( TEXT_ENTRY_HILITE_CENTER );
  1043. GadgetTextEntrySetHiliteImageCenter( root, info->image );
  1044. info = GetStateInfo( TEXT_ENTRY_HILITE_SMALL_CENTER );
  1045. GadgetTextEntrySetHiliteImageSmallCenter( root, info->image );
  1046. } // end else if
  1047. else if( BitTest( root->winGetStyle(), GWS_STATIC_TEXT ) )
  1048. {
  1049. info = GetStateInfo( STATIC_TEXT_ENABLED );
  1050. GadgetStaticTextSetEnabledImage( root, info->image );
  1051. GadgetStaticTextSetEnabledColor( root, info->color );
  1052. GadgetStaticTextSetEnabledBorderColor( root, info->borderColor );
  1053. info = GetStateInfo( STATIC_TEXT_DISABLED );
  1054. GadgetStaticTextSetDisabledImage( root, info->image );
  1055. GadgetStaticTextSetDisabledColor( root, info->color );
  1056. GadgetStaticTextSetDisabledBorderColor( root, info->borderColor );
  1057. info = GetStateInfo( STATIC_TEXT_HILITE );
  1058. GadgetStaticTextSetHiliteImage( root, info->image );
  1059. GadgetStaticTextSetHiliteColor( root, info->color );
  1060. GadgetStaticTextSetHiliteBorderColor( root, info->borderColor );
  1061. } // end else if
  1062. else if( BitTest( root->winGetStyle(), GWS_PROGRESS_BAR ) )
  1063. {
  1064. info = GetStateInfo( PROGRESS_BAR_ENABLED_LEFT );
  1065. GadgetProgressBarSetEnabledImageLeft( root, info->image );
  1066. GadgetProgressBarSetEnabledColor( root, info->color );
  1067. GadgetProgressBarSetEnabledBorderColor( root, info->borderColor );
  1068. info = GetStateInfo( PROGRESS_BAR_ENABLED_RIGHT );
  1069. GadgetProgressBarSetEnabledImageRight( root, info->image );
  1070. info = GetStateInfo( PROGRESS_BAR_ENABLED_CENTER );
  1071. GadgetProgressBarSetEnabledImageCenter( root, info->image );
  1072. info = GetStateInfo( PROGRESS_BAR_ENABLED_SMALL_CENTER );
  1073. GadgetProgressBarSetEnabledImageSmallCenter( root, info->image );
  1074. info = GetStateInfo( PROGRESS_BAR_ENABLED_BAR_LEFT );
  1075. GadgetProgressBarSetEnabledBarImageLeft( root, info->image );
  1076. GadgetProgressBarSetEnabledBarColor( root, info->color );
  1077. GadgetProgressBarSetEnabledBarBorderColor( root, info->borderColor );
  1078. info = GetStateInfo( PROGRESS_BAR_ENABLED_BAR_RIGHT );
  1079. GadgetProgressBarSetEnabledBarImageRight( root, info->image );
  1080. info = GetStateInfo( PROGRESS_BAR_ENABLED_BAR_CENTER );
  1081. GadgetProgressBarSetEnabledBarImageCenter( root, info->image );
  1082. info = GetStateInfo( PROGRESS_BAR_ENABLED_BAR_SMALL_CENTER );
  1083. GadgetProgressBarSetEnabledBarImageSmallCenter( root, info->image );
  1084. info = GetStateInfo( PROGRESS_BAR_DISABLED_LEFT );
  1085. GadgetProgressBarSetDisabledImageLeft( root, info->image );
  1086. GadgetProgressBarSetDisabledColor( root, info->color );
  1087. GadgetProgressBarSetDisabledBorderColor( root, info->borderColor );
  1088. info = GetStateInfo( PROGRESS_BAR_DISABLED_RIGHT );
  1089. GadgetProgressBarSetDisabledImageRight( root, info->image );
  1090. info = GetStateInfo( PROGRESS_BAR_DISABLED_CENTER );
  1091. GadgetProgressBarSetDisabledImageCenter( root, info->image );
  1092. info = GetStateInfo( PROGRESS_BAR_DISABLED_SMALL_CENTER );
  1093. GadgetProgressBarSetDisabledImageSmallCenter( root, info->image );
  1094. info = GetStateInfo( PROGRESS_BAR_DISABLED_BAR_LEFT );
  1095. GadgetProgressBarSetDisabledBarImageLeft( root, info->image );
  1096. GadgetProgressBarSetDisabledBarColor( root, info->color );
  1097. GadgetProgressBarSetDisabledBarBorderColor( root, info->borderColor );
  1098. info = GetStateInfo( PROGRESS_BAR_DISABLED_BAR_RIGHT );
  1099. GadgetProgressBarSetDisabledBarImageRight( root, info->image );
  1100. info = GetStateInfo( PROGRESS_BAR_DISABLED_BAR_CENTER );
  1101. GadgetProgressBarSetDisabledBarImageCenter( root, info->image );
  1102. info = GetStateInfo( PROGRESS_BAR_DISABLED_BAR_SMALL_CENTER );
  1103. GadgetProgressBarSetDisabledBarImageSmallCenter( root, info->image );
  1104. info = GetStateInfo( PROGRESS_BAR_HILITE_LEFT );
  1105. GadgetProgressBarSetHiliteImageLeft( root, info->image );
  1106. GadgetProgressBarSetHiliteColor( root, info->color );
  1107. GadgetProgressBarSetHiliteBorderColor( root, info->borderColor );
  1108. info = GetStateInfo( PROGRESS_BAR_HILITE_RIGHT );
  1109. GadgetProgressBarSetHiliteImageRight( root, info->image );
  1110. info = GetStateInfo( PROGRESS_BAR_HILITE_CENTER );
  1111. GadgetProgressBarSetHiliteImageCenter( root, info->image );
  1112. info = GetStateInfo( PROGRESS_BAR_HILITE_SMALL_CENTER );
  1113. GadgetProgressBarSetHiliteImageSmallCenter( root, info->image );
  1114. info = GetStateInfo( PROGRESS_BAR_HILITE_BAR_LEFT );
  1115. GadgetProgressBarSetHiliteBarImageLeft( root, info->image );
  1116. GadgetProgressBarSetHiliteBarColor( root, info->color );
  1117. GadgetProgressBarSetHiliteBarBorderColor( root, info->borderColor );
  1118. info = GetStateInfo( PROGRESS_BAR_HILITE_BAR_RIGHT );
  1119. GadgetProgressBarSetHiliteBarImageRight( root, info->image );
  1120. info = GetStateInfo( PROGRESS_BAR_HILITE_BAR_CENTER );
  1121. GadgetProgressBarSetHiliteBarImageCenter( root, info->image );
  1122. info = GetStateInfo( PROGRESS_BAR_HILITE_BAR_SMALL_CENTER );
  1123. GadgetProgressBarSetHiliteBarImageSmallCenter( root, info->image );
  1124. } // end else if
  1125. else if( BitTest( root->winGetStyle(), GWS_TAB_CONTROL ) )
  1126. {
  1127. info = GetStateInfo( TC_TAB_0_ENABLED );
  1128. GadgetTabControlSetEnabledImageTabZero( root, info->image );
  1129. GadgetTabControlSetEnabledColorTabZero( root, info->color );
  1130. GadgetTabControlSetEnabledBorderColorTabZero( root, info->borderColor );
  1131. info = GetStateInfo( TC_TAB_1_ENABLED );
  1132. GadgetTabControlSetEnabledImageTabOne( root, info->image );
  1133. GadgetTabControlSetEnabledColorTabOne( root, info->color );
  1134. GadgetTabControlSetEnabledBorderColorTabOne( root, info->borderColor );
  1135. info = GetStateInfo( TC_TAB_2_ENABLED );
  1136. GadgetTabControlSetEnabledImageTabTwo( root, info->image );
  1137. GadgetTabControlSetEnabledColorTabTwo( root, info->color );
  1138. GadgetTabControlSetEnabledBorderColorTabTwo( root, info->borderColor );
  1139. info = GetStateInfo( TC_TAB_3_ENABLED );
  1140. GadgetTabControlSetEnabledImageTabThree( root, info->image );
  1141. GadgetTabControlSetEnabledColorTabThree( root, info->color );
  1142. GadgetTabControlSetEnabledBorderColorTabThree( root, info->borderColor );
  1143. info = GetStateInfo( TC_TAB_4_ENABLED );
  1144. GadgetTabControlSetEnabledImageTabFour( root, info->image );
  1145. GadgetTabControlSetEnabledColorTabFour( root, info->color );
  1146. GadgetTabControlSetEnabledBorderColorTabFour( root, info->borderColor );
  1147. info = GetStateInfo( TC_TAB_5_ENABLED );
  1148. GadgetTabControlSetEnabledImageTabFive( root, info->image );
  1149. GadgetTabControlSetEnabledColorTabFive( root, info->color );
  1150. GadgetTabControlSetEnabledBorderColorTabFive( root, info->borderColor );
  1151. info = GetStateInfo( TC_TAB_6_ENABLED );
  1152. GadgetTabControlSetEnabledImageTabSix( root, info->image );
  1153. GadgetTabControlSetEnabledColorTabSix( root, info->color );
  1154. GadgetTabControlSetEnabledBorderColorTabSix( root, info->borderColor );
  1155. info = GetStateInfo( TC_TAB_7_ENABLED );
  1156. GadgetTabControlSetEnabledImageTabSeven( root, info->image );
  1157. GadgetTabControlSetEnabledColorTabSeven( root, info->color );
  1158. GadgetTabControlSetEnabledBorderColorTabSeven( root, info->borderColor );
  1159. info = GetStateInfo( TAB_CONTROL_ENABLED );
  1160. GadgetTabControlSetEnabledImageBackground( root, info->image );
  1161. GadgetTabControlSetEnabledColorBackground( root, info->color );
  1162. GadgetTabControlSetEnabledBorderColorBackground( root, info->borderColor );
  1163. info = GetStateInfo( TC_TAB_0_DISABLED );
  1164. GadgetTabControlSetDisabledImageTabZero( root, info->image );
  1165. GadgetTabControlSetDisabledColorTabZero( root, info->color );
  1166. GadgetTabControlSetDisabledBorderColorTabZero( root, info->borderColor );
  1167. info = GetStateInfo( TC_TAB_1_DISABLED );
  1168. GadgetTabControlSetDisabledImageTabOne( root, info->image );
  1169. GadgetTabControlSetDisabledColorTabOne( root, info->color );
  1170. GadgetTabControlSetDisabledBorderColorTabOne( root, info->borderColor );
  1171. info = GetStateInfo( TC_TAB_2_DISABLED );
  1172. GadgetTabControlSetDisabledImageTabTwo( root, info->image );
  1173. GadgetTabControlSetDisabledColorTabTwo( root, info->color );
  1174. GadgetTabControlSetDisabledBorderColorTabTwo( root, info->borderColor );
  1175. info = GetStateInfo( TC_TAB_3_DISABLED );
  1176. GadgetTabControlSetDisabledImageTabThree( root, info->image );
  1177. GadgetTabControlSetDisabledColorTabThree( root, info->color );
  1178. GadgetTabControlSetDisabledBorderColorTabThree( root, info->borderColor );
  1179. info = GetStateInfo( TC_TAB_4_DISABLED );
  1180. GadgetTabControlSetDisabledImageTabFour( root, info->image );
  1181. GadgetTabControlSetDisabledColorTabFour( root, info->color );
  1182. GadgetTabControlSetDisabledBorderColorTabFour( root, info->borderColor );
  1183. info = GetStateInfo( TC_TAB_5_DISABLED );
  1184. GadgetTabControlSetDisabledImageTabFive( root, info->image );
  1185. GadgetTabControlSetDisabledColorTabFive( root, info->color );
  1186. GadgetTabControlSetDisabledBorderColorTabFive( root, info->borderColor );
  1187. info = GetStateInfo( TC_TAB_6_DISABLED );
  1188. GadgetTabControlSetDisabledImageTabSix( root, info->image );
  1189. GadgetTabControlSetDisabledColorTabSix( root, info->color );
  1190. GadgetTabControlSetDisabledBorderColorTabSix( root, info->borderColor );
  1191. info = GetStateInfo( TC_TAB_7_DISABLED );
  1192. GadgetTabControlSetDisabledImageTabSeven( root, info->image );
  1193. GadgetTabControlSetDisabledColorTabSeven( root, info->color );
  1194. GadgetTabControlSetDisabledBorderColorTabSeven( root, info->borderColor );
  1195. info = GetStateInfo( TAB_CONTROL_DISABLED );
  1196. GadgetTabControlSetDisabledImageBackground( root, info->image );
  1197. GadgetTabControlSetDisabledColorBackground( root, info->color );
  1198. GadgetTabControlSetDisabledBorderColorBackground( root, info->borderColor );
  1199. info = GetStateInfo( TC_TAB_0_HILITE );
  1200. GadgetTabControlSetHiliteImageTabZero( root, info->image );
  1201. GadgetTabControlSetHiliteColorTabZero( root, info->color );
  1202. GadgetTabControlSetHiliteBorderColorTabZero( root, info->borderColor );
  1203. info = GetStateInfo( TC_TAB_1_HILITE );
  1204. GadgetTabControlSetHiliteImageTabOne( root, info->image );
  1205. GadgetTabControlSetHiliteColorTabOne( root, info->color );
  1206. GadgetTabControlSetHiliteBorderColorTabOne( root, info->borderColor );
  1207. info = GetStateInfo( TC_TAB_2_HILITE );
  1208. GadgetTabControlSetHiliteImageTabTwo( root, info->image );
  1209. GadgetTabControlSetHiliteColorTabTwo( root, info->color );
  1210. GadgetTabControlSetHiliteBorderColorTabTwo( root, info->borderColor );
  1211. info = GetStateInfo( TC_TAB_3_HILITE );
  1212. GadgetTabControlSetHiliteImageTabThree( root, info->image );
  1213. GadgetTabControlSetHiliteColorTabThree( root, info->color );
  1214. GadgetTabControlSetHiliteBorderColorTabThree( root, info->borderColor );
  1215. info = GetStateInfo( TC_TAB_4_HILITE );
  1216. GadgetTabControlSetHiliteImageTabFour( root, info->image );
  1217. GadgetTabControlSetHiliteColorTabFour( root, info->color );
  1218. GadgetTabControlSetHiliteBorderColorTabFour( root, info->borderColor );
  1219. info = GetStateInfo( TC_TAB_5_HILITE );
  1220. GadgetTabControlSetHiliteImageTabFive( root, info->image );
  1221. GadgetTabControlSetHiliteColorTabFive( root, info->color );
  1222. GadgetTabControlSetHiliteBorderColorTabFive( root, info->borderColor );
  1223. info = GetStateInfo( TC_TAB_6_HILITE );
  1224. GadgetTabControlSetHiliteImageTabSix( root, info->image );
  1225. GadgetTabControlSetHiliteColorTabSix( root, info->color );
  1226. GadgetTabControlSetHiliteBorderColorTabSix( root, info->borderColor );
  1227. info = GetStateInfo( TC_TAB_7_HILITE );
  1228. GadgetTabControlSetHiliteImageTabSeven( root, info->image );
  1229. GadgetTabControlSetHiliteColorTabSeven( root, info->color );
  1230. GadgetTabControlSetHiliteBorderColorTabSeven( root, info->borderColor );
  1231. info = GetStateInfo( TAB_CONTROL_HILITE );
  1232. GadgetTabControlSetHiliteImageBackground( root, info->image );
  1233. GadgetTabControlSetHiliteColorBackground( root, info->color );
  1234. GadgetTabControlSetHiliteBorderColorBackground( root, info->borderColor );
  1235. }
  1236. else
  1237. {
  1238. info = GetStateInfo( GENERIC_ENABLED );
  1239. root->winSetEnabledImage( 0, info->image );
  1240. root->winSetEnabledColor( 0, info->color );
  1241. root->winSetEnabledBorderColor( 0, info->borderColor );
  1242. info = GetStateInfo( GENERIC_DISABLED );
  1243. root->winSetDisabledImage( 0, info->image );
  1244. root->winSetDisabledColor( 0, info->color );
  1245. root->winSetDisabledBorderColor( 0, info->borderColor );
  1246. info = GetStateInfo( GENERIC_HILITE );
  1247. root->winSetHiliteImage( 0, info->image );
  1248. root->winSetHiliteColor( 0, info->color );
  1249. root->winSetHiliteBorderColor( 0, info->borderColor );
  1250. } // end else
  1251. //
  1252. // apply changes to children of this window, unless this
  1253. // window is a gadget itself, those are "atomic" units remember ;)
  1254. //
  1255. if( TheEditor->windowIsGadget( root ) == FALSE )
  1256. applyPropertyTablesToWindow( root->winGetChild() );
  1257. // on to the next window
  1258. applyPropertyTablesToWindow( root->winGetNext() );
  1259. // force an update of the edit window
  1260. TheEditWindow->draw();
  1261. } // end applyPropertyTablesToWindow
  1262. ///////////////////////////////////////////////////////////////////////////////
  1263. // PUBLIC FUNCTIONS ///////////////////////////////////////////////////////////
  1264. ///////////////////////////////////////////////////////////////////////////////
  1265. // LayoutScheme::LayoutScheme =================================================
  1266. /** */
  1267. //=============================================================================
  1268. LayoutScheme::LayoutScheme( void )
  1269. {
  1270. strcpy( m_schemeFilename, "Default.ls" );
  1271. memset( &m_imageAndColorTable, 0, sizeof( ImageAndColorInfo ) * NUM_STATE_IDENTIFIERS );
  1272. m_enabledText.color = GAME_COLOR_UNDEFINED;
  1273. m_enabledText.borderColor = GAME_COLOR_UNDEFINED;
  1274. m_disabledText.color = GAME_COLOR_UNDEFINED;
  1275. m_disabledText.borderColor = GAME_COLOR_UNDEFINED;
  1276. m_hiliteText.color = GAME_COLOR_UNDEFINED;
  1277. m_hiliteText.borderColor = GAME_COLOR_UNDEFINED;
  1278. m_font = NULL;
  1279. } // end LayoutScheme
  1280. // LayoutScheme::~LayoutScheme ================================================
  1281. /** */
  1282. //=============================================================================
  1283. LayoutScheme::~LayoutScheme( void )
  1284. {
  1285. Int i;
  1286. // free all the state name strings
  1287. for( i = 0; i < NUM_STATE_IDENTIFIERS; i++ )
  1288. {
  1289. if( m_imageAndColorTable[ i ].stateName )
  1290. {
  1291. delete [] m_imageAndColorTable[ i ].stateName;
  1292. m_imageAndColorTable[ i ].stateName = NULL;
  1293. } // end if
  1294. } // end for i
  1295. } // end ~LayoutScheme
  1296. // LayoutScheme::init =========================================================
  1297. /** Init */
  1298. //=============================================================================
  1299. void LayoutScheme::init( void )
  1300. {
  1301. Int i;
  1302. ImageAndColorInfo *info;
  1303. // just up the default state values
  1304. for( i = FIRST_VALID_IDENTIFIER; i < NUM_STATE_IDENTIFIERS; i++ )
  1305. {
  1306. // get info from the static table created for property editing
  1307. info = GetStateInfo( (StateIdentifier)i );
  1308. assert( info );
  1309. m_imageAndColorTable[ i ].windowType = info->windowType;
  1310. m_imageAndColorTable[ i ].stateID = info->stateID;
  1311. m_imageAndColorTable[ i ].image = info->image;
  1312. m_imageAndColorTable[ i ].color = info->color;
  1313. m_imageAndColorTable[ i ].borderColor = info->borderColor;
  1314. m_imageAndColorTable[ i ].stateName = new char[strlen( info->stateName ) + 1];
  1315. strcpy(m_imageAndColorTable[ i ].stateName, info->stateName );
  1316. } // end for i
  1317. // assign a default set of colors
  1318. UnsignedByte alpha = 255;
  1319. Color red = GameMakeColor( 255, 0, 0, alpha );
  1320. Color darkRed = GameMakeColor( 128, 0, 0, alpha );
  1321. Color lightRed = GameMakeColor( 255, 128, 128, alpha );
  1322. Color green = GameMakeColor( 0, 255, 0, alpha );
  1323. Color darkGreen = GameMakeColor( 0, 128, 0, alpha );
  1324. Color lightGreen = GameMakeColor( 128, 255, 128, alpha );
  1325. Color blue = GameMakeColor( 0, 0, 255, alpha );
  1326. Color darkBlue = GameMakeColor( 0, 0, 128, alpha );
  1327. Color lightBlue = GameMakeColor( 128, 128, 255, alpha );
  1328. // Color purple = GameMakeColor( 255, 0, 255, alpha );
  1329. // Color darkPurple = GameMakeColor( 128, 0, 128, alpha );
  1330. // Color lightPurple = GameMakeColor( 255, 128, 255, alpha );
  1331. Color yellow = GameMakeColor( 255, 255, 0, alpha );
  1332. // Color darkYellow = GameMakeColor( 128, 128, 0, alpha );
  1333. // Color lightYellow = GameMakeColor( 255, 255, 128, alpha );
  1334. // Color cyan = GameMakeColor( 0, 255, 255, alpha );
  1335. // Color darkCyan = GameMakeColor( 64, 128, 128, alpha );
  1336. // Color lightCyan = GameMakeColor( 128, 255, 255, alpha );
  1337. Color gray = GameMakeColor( 128, 128, 128, alpha );
  1338. Color darkGray = GameMakeColor( 64, 64, 64, alpha );
  1339. Color lightGray = GameMakeColor( 192, 192, 192, alpha );
  1340. Color black = GameMakeColor( 0, 0, 0, alpha );
  1341. Color white = GameMakeColor( 254, 254, 254, alpha );
  1342. const Image *image;
  1343. // push button
  1344. image = TheMappedImageCollection->findImageByName( AsciiString( "PushButtonEnabled" ) );
  1345. storeImageAndColor( BUTTON_ENABLED, image, red, lightRed );
  1346. image = TheMappedImageCollection->findImageByName( AsciiString( "PushButtonEnabledSelected" ) );
  1347. storeImageAndColor( BUTTON_ENABLED_PUSHED, image, yellow, white );
  1348. image = TheMappedImageCollection->findImageByName( AsciiString( "PushButtonDisabled" ) );
  1349. storeImageAndColor( BUTTON_DISABLED, image, gray, lightGray );
  1350. image = TheMappedImageCollection->findImageByName( AsciiString( "PushButtonDisabledSelected" ) );
  1351. storeImageAndColor( BUTTON_DISABLED_PUSHED, image, lightGray, gray );
  1352. image = TheMappedImageCollection->findImageByName( AsciiString( "PushButtonHilite" ) );
  1353. storeImageAndColor( BUTTON_HILITE, image, green, darkGreen );
  1354. image = TheMappedImageCollection->findImageByName( AsciiString( "PushButtonHiliteSelected" ) );
  1355. storeImageAndColor( BUTTON_HILITE_PUSHED, image, yellow, white );
  1356. // radio button
  1357. image = TheMappedImageCollection->findImageByName( AsciiString( "RadioButtonEnabled" ) );
  1358. storeImageAndColor( RADIO_ENABLED, image, red, lightRed );
  1359. image = TheMappedImageCollection->findImageByName( AsciiString( "RadioButtonEnabledBoxUnselected" ) );
  1360. storeImageAndColor( RADIO_ENABLED_UNCHECKED_BOX, image, darkRed, black );
  1361. image = TheMappedImageCollection->findImageByName( AsciiString( "RadioButtonEnabledBoxSelected" ) );
  1362. storeImageAndColor( RADIO_ENABLED_CHECKED_BOX, image, blue, lightBlue );
  1363. image = TheMappedImageCollection->findImageByName( AsciiString( "RadioButtonDisabled" ) );
  1364. storeImageAndColor( RADIO_DISABLED, image, gray, lightGray );
  1365. image = TheMappedImageCollection->findImageByName( AsciiString( "RadioButtonDisabledBoxUnselected" ) );
  1366. storeImageAndColor( RADIO_DISABLED_UNCHECKED_BOX, image, gray, lightGray );
  1367. image = TheMappedImageCollection->findImageByName( AsciiString( "RadioButtonDisabledBoxSelected" ) );
  1368. storeImageAndColor( RADIO_DISABLED_CHECKED_BOX, image, darkGray, white );
  1369. image = TheMappedImageCollection->findImageByName( AsciiString( "RadioButtonHilite" ) );
  1370. storeImageAndColor( RADIO_HILITE, image, green, lightGreen );
  1371. image = TheMappedImageCollection->findImageByName( AsciiString( "RadioButtonHiliteBoxUnselected" ) );
  1372. storeImageAndColor( RADIO_HILITE_UNCHECKED_BOX, image, darkGreen, lightGreen );
  1373. image = TheMappedImageCollection->findImageByName( AsciiString( "RadioButtonHiliteBoxSelected" ) );
  1374. storeImageAndColor( RADIO_HILITE_CHECKED_BOX, image, yellow, white );
  1375. // check box
  1376. image = TheMappedImageCollection->findImageByName( AsciiString( "CheckBoxEnabled" ) );
  1377. storeImageAndColor( CHECK_BOX_ENABLED, image, red, lightRed );
  1378. image = TheMappedImageCollection->findImageByName( AsciiString( "CheckBoxEnabledBoxUnselected" ) );
  1379. storeImageAndColor( CHECK_BOX_ENABLED_UNCHECKED_BOX, image, WIN_COLOR_UNDEFINED, lightBlue );
  1380. image = TheMappedImageCollection->findImageByName( AsciiString( "CheckBoxEnabledBoxSelected" ) );
  1381. storeImageAndColor( CHECK_BOX_ENABLED_CHECKED_BOX, image, blue, lightBlue );
  1382. image = TheMappedImageCollection->findImageByName( AsciiString( "CheckBoxDisabled" ) );
  1383. storeImageAndColor( CHECK_BOX_DISABLED, image, gray, lightGray );
  1384. image = TheMappedImageCollection->findImageByName( AsciiString( "CheckBoxDisabledBoxUnselected" ) );
  1385. storeImageAndColor( CHECK_BOX_DISABLED_UNCHECKED_BOX, image, WIN_COLOR_UNDEFINED, lightGray );
  1386. image = TheMappedImageCollection->findImageByName( AsciiString( "CheckBoxDisabledBoxSelected" ) );
  1387. storeImageAndColor( CHECK_BOX_DISABLED_CHECKED_BOX, image, darkGray, white );
  1388. image = TheMappedImageCollection->findImageByName( AsciiString( "CheckBoxHilite" ) );
  1389. storeImageAndColor( CHECK_BOX_HILITE, image, green, lightGreen );
  1390. image = TheMappedImageCollection->findImageByName( AsciiString( "CheckBoxHiliteBoxUnselected" ) );
  1391. storeImageAndColor( CHECK_BOX_HILITE_UNCHECKED_BOX, image, WIN_COLOR_UNDEFINED, lightBlue );
  1392. image = TheMappedImageCollection->findImageByName( AsciiString( "CheckBoxHiliteBoxSelected" ) );
  1393. storeImageAndColor( CHECK_BOX_HILITE_CHECKED_BOX, image, yellow, white );
  1394. // horz slider
  1395. image = TheMappedImageCollection->findImageByName( AsciiString( "HSliderEnabledLeftEnd" ) );
  1396. storeImageAndColor( HSLIDER_ENABLED_LEFT, image, red, lightRed );
  1397. image = TheMappedImageCollection->findImageByName( AsciiString( "HSliderEnabledRightEnd" ) );
  1398. storeImageAndColor( HSLIDER_ENABLED_RIGHT, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1399. image = TheMappedImageCollection->findImageByName( AsciiString( "HSliderEnabledRepeatingCenter" ) );
  1400. storeImageAndColor( HSLIDER_ENABLED_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1401. image = TheMappedImageCollection->findImageByName( AsciiString( "HSliderEnabledSmallRepeatingCenter" ) );
  1402. storeImageAndColor( HSLIDER_ENABLED_SMALL_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1403. image = TheMappedImageCollection->findImageByName( AsciiString( "HSliderDisabledLeftEnd" ) );
  1404. storeImageAndColor( HSLIDER_DISABLED_LEFT, image, gray, darkGray );
  1405. image = TheMappedImageCollection->findImageByName( AsciiString( "HSliderDisabledRightEnd" ) );
  1406. storeImageAndColor( HSLIDER_DISABLED_RIGHT, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1407. image = TheMappedImageCollection->findImageByName( AsciiString( "HSliderDisabledRepeatingCenter" ) );
  1408. storeImageAndColor( HSLIDER_DISABLED_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1409. image = TheMappedImageCollection->findImageByName( AsciiString( "HSliderDisabledSmallRepeatingCenter" ) );
  1410. storeImageAndColor( HSLIDER_DISABLED_SMALL_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1411. image = TheMappedImageCollection->findImageByName( AsciiString( "HSliderHiliteLeftEnd" ) );
  1412. storeImageAndColor( HSLIDER_HILITE_LEFT, image, green, darkGreen );
  1413. image = TheMappedImageCollection->findImageByName( AsciiString( "HSliderHiliteRightEnd" ) );
  1414. storeImageAndColor( HSLIDER_HILITE_RIGHT, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1415. image = TheMappedImageCollection->findImageByName( AsciiString( "HSliderHiliteRepeatingCenter" ) );
  1416. storeImageAndColor( HSLIDER_HILITE_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1417. image = TheMappedImageCollection->findImageByName( AsciiString( "HSliderHiliteSmallRepeatingCenter" ) );
  1418. storeImageAndColor( HSLIDER_HILITE_SMALL_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1419. image = TheMappedImageCollection->findImageByName( AsciiString( "HSliderThumbEnabled" ) );
  1420. storeImageAndColor( HSLIDER_THUMB_ENABLED, image, lightRed, red );
  1421. image = TheMappedImageCollection->findImageByName( AsciiString( "HSliderThumbEnabledSelected" ) );
  1422. storeImageAndColor( HSLIDER_THUMB_ENABLED_PUSHED, image, gray, lightGray );
  1423. image = TheMappedImageCollection->findImageByName( AsciiString( "HSliderThumbDisabled" ) );
  1424. storeImageAndColor( HSLIDER_THUMB_DISABLED, image, darkGray, gray );
  1425. image = TheMappedImageCollection->findImageByName( AsciiString( "HSliderThumbDisabledSelected" ) );
  1426. storeImageAndColor( HSLIDER_THUMB_DISABLED_PUSHED, image, black, darkGray );
  1427. image = TheMappedImageCollection->findImageByName( AsciiString( "HSliderThumbHilite" ) );
  1428. storeImageAndColor( HSLIDER_THUMB_HILITE, image, green, lightGreen );
  1429. image = TheMappedImageCollection->findImageByName( AsciiString( "HSliderThumbHiliteSelected" ) );
  1430. storeImageAndColor( HSLIDER_THUMB_HILITE_PUSHED, image, blue, lightBlue );
  1431. // vert slider
  1432. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderEnabledTopEnd" ) );
  1433. storeImageAndColor( VSLIDER_ENABLED_TOP, image, red, lightRed );
  1434. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderEnabledBottomEnd" ) );
  1435. storeImageAndColor( VSLIDER_ENABLED_BOTTOM, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1436. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderEnabledRepeatingCenter" ) );
  1437. storeImageAndColor( VSLIDER_ENABLED_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1438. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderEnabledSmallRepeatingCenter" ) );
  1439. storeImageAndColor( VSLIDER_ENABLED_SMALL_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1440. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderDisabledTopEnd" ) );
  1441. storeImageAndColor( VSLIDER_DISABLED_TOP, image, gray, darkGray );
  1442. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderDisabledBottomEnd" ) );
  1443. storeImageAndColor( VSLIDER_DISABLED_BOTTOM, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1444. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderDisabledRepeatingCenter" ) );
  1445. storeImageAndColor( VSLIDER_DISABLED_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1446. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderDisabledSmallRepeatingCenter" ) );
  1447. storeImageAndColor( VSLIDER_DISABLED_SMALL_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1448. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderHiliteTopEnd" ) );
  1449. storeImageAndColor( VSLIDER_HILITE_TOP, image, green, darkGreen );
  1450. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderHiliteBottomEnd" ) );
  1451. storeImageAndColor( VSLIDER_HILITE_BOTTOM, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1452. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderHiliteRepeatingCenter" ) );
  1453. storeImageAndColor( VSLIDER_HILITE_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1454. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderHiliteSmallRepeatingCenter" ) );
  1455. storeImageAndColor( VSLIDER_HILITE_SMALL_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1456. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderThumbEnabled" ) );
  1457. storeImageAndColor( VSLIDER_THUMB_ENABLED, image, red, lightRed );
  1458. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderThumbEnabledSelected" ) );
  1459. storeImageAndColor( VSLIDER_THUMB_ENABLED_PUSHED, image, gray, lightGray );
  1460. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderThumbDisabled" ) );
  1461. storeImageAndColor( VSLIDER_THUMB_DISABLED, image, darkGray, gray );
  1462. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderThumbDisabledSelected" ) );
  1463. storeImageAndColor( VSLIDER_THUMB_DISABLED_PUSHED, image, black, darkGray );
  1464. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderThumbHilite" ) );
  1465. storeImageAndColor( VSLIDER_THUMB_HILITE, image, green, lightGreen );
  1466. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderThumbHiliteSelected" ) );
  1467. storeImageAndColor( VSLIDER_THUMB_HILITE_PUSHED, image, blue, lightBlue );
  1468. // listbox
  1469. image = TheMappedImageCollection->findImageByName( AsciiString( "ListBoxEnabled" ) );
  1470. storeImageAndColor( LISTBOX_ENABLED, image, red, lightRed );
  1471. image = TheMappedImageCollection->findImageByName( AsciiString( "ListBoxEnabledSelectedItemLeftEnd" ) );
  1472. storeImageAndColor( LISTBOX_ENABLED_SELECTED_ITEM_LEFT, image, yellow, white );
  1473. image = TheMappedImageCollection->findImageByName( AsciiString( "ListBoxEnabledSelectedItemRightEnd" ) );
  1474. storeImageAndColor( LISTBOX_ENABLED_SELECTED_ITEM_RIGHT, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1475. image = TheMappedImageCollection->findImageByName( AsciiString( "ListBoxEnabledSelectedItemRepeatingCenter" ) );
  1476. storeImageAndColor( LISTBOX_ENABLED_SELECTED_ITEM_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1477. image = TheMappedImageCollection->findImageByName( AsciiString( "ListBoxEnabledSelectedItemSmallRepeatingCenter" ) );
  1478. storeImageAndColor( LISTBOX_ENABLED_SELECTED_ITEM_SMALL_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1479. image = TheMappedImageCollection->findImageByName( AsciiString( "ListBoxDisabled" ) );
  1480. storeImageAndColor( LISTBOX_DISABLED, image, gray, lightGray );
  1481. image = TheMappedImageCollection->findImageByName( AsciiString( "ListBoxDisabledSelectedItemLeftEnd" ) );
  1482. storeImageAndColor( LISTBOX_DISABLED_SELECTED_ITEM_LEFT, image, lightGray, white );
  1483. image = TheMappedImageCollection->findImageByName( AsciiString( "ListBoxDisabledSelectedItemRightEnd" ) );
  1484. storeImageAndColor( LISTBOX_DISABLED_SELECTED_ITEM_RIGHT, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1485. image = TheMappedImageCollection->findImageByName( AsciiString( "ListBoxDisabledSelectedItemRepeatingCenter" ) );
  1486. storeImageAndColor( LISTBOX_DISABLED_SELECTED_ITEM_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1487. image = TheMappedImageCollection->findImageByName( AsciiString( "ListBoxDisabledSelectedItemSmallRepeatingCenter" ) );
  1488. storeImageAndColor( LISTBOX_DISABLED_SELECTED_ITEM_SMALL_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1489. image = TheMappedImageCollection->findImageByName( AsciiString( "ListBoxHilite" ) );
  1490. storeImageAndColor( LISTBOX_HILITE, image, green, darkGreen );
  1491. image = TheMappedImageCollection->findImageByName( AsciiString( "ListBoxHiliteSelectedItemLeftEnd" ) );
  1492. storeImageAndColor( LISTBOX_HILITE_SELECTED_ITEM_LEFT, image, white, darkGreen );
  1493. image = TheMappedImageCollection->findImageByName( AsciiString( "ListBoxHiliteSelectedItemRightEnd" ) );
  1494. storeImageAndColor( LISTBOX_HILITE_SELECTED_ITEM_RIGHT, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1495. image = TheMappedImageCollection->findImageByName( AsciiString( "ListBoxHiliteSelectedItemRepeatingCenter" ) );
  1496. storeImageAndColor( LISTBOX_HILITE_SELECTED_ITEM_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1497. image = TheMappedImageCollection->findImageByName( AsciiString( "ListBoxHiliteSelectedItemSmallRepeatingCenter" ) );
  1498. storeImageAndColor( LISTBOX_HILITE_SELECTED_ITEM_SMALL_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1499. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeUpButtonEnabled" ) );
  1500. storeImageAndColor( LISTBOX_UP_BUTTON_ENABLED, image, red, lightRed );
  1501. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeUpButtonEnabled" ) );
  1502. storeImageAndColor( LISTBOX_UP_BUTTON_ENABLED_PUSHED, image, yellow, white );
  1503. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeUpButtonDisabled" ) );
  1504. storeImageAndColor( LISTBOX_UP_BUTTON_DISABLED, image, gray, lightGray );
  1505. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeUpButtonDisabled" ) );
  1506. storeImageAndColor( LISTBOX_UP_BUTTON_DISABLED_PUSHED, image, lightGray, white );
  1507. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeUpButtonHilite" ) );
  1508. storeImageAndColor( LISTBOX_UP_BUTTON_HILITE, image, green, darkGreen );
  1509. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeUpButtonHiliteSelected" ) );
  1510. storeImageAndColor( LISTBOX_UP_BUTTON_HILITE_PUSHED, image, white, darkGreen );
  1511. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeDownButtonEnabled" ) );
  1512. storeImageAndColor( LISTBOX_DOWN_BUTTON_ENABLED, image, red, lightRed );
  1513. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeDownButtonEnabled" ) );
  1514. storeImageAndColor( LISTBOX_DOWN_BUTTON_ENABLED_PUSHED, image, yellow, white );
  1515. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeDownButtonDisabled" ) );
  1516. storeImageAndColor( LISTBOX_DOWN_BUTTON_DISABLED, image, gray, lightGray );
  1517. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeDownButtonDisabled" ) );
  1518. storeImageAndColor( LISTBOX_DOWN_BUTTON_DISABLED_PUSHED, image, lightGray, white );
  1519. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeDownButtonHilite" ) );
  1520. storeImageAndColor( LISTBOX_DOWN_BUTTON_HILITE, image, green, darkGreen );
  1521. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeDownButtonHiliteSelected" ) );
  1522. storeImageAndColor( LISTBOX_DOWN_BUTTON_HILITE_PUSHED, image, white, darkGreen );
  1523. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeEnabledTopEnd" ) );
  1524. storeImageAndColor( LISTBOX_SLIDER_ENABLED_TOP, image, red, lightRed );
  1525. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeEnabledBottomEnd" ) );
  1526. storeImageAndColor( LISTBOX_SLIDER_ENABLED_BOTTOM, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1527. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeEnabledRepeatingCenter" ) );
  1528. storeImageAndColor( LISTBOX_SLIDER_ENABLED_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1529. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeEnabledSmallRepeatingCenter" ) );
  1530. storeImageAndColor( LISTBOX_SLIDER_ENABLED_SMALL_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1531. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeDisabledTopEnd" ) );
  1532. storeImageAndColor( LISTBOX_SLIDER_DISABLED_TOP, image, gray, darkGray );
  1533. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeDisabledBottomEnd" ) );
  1534. storeImageAndColor( LISTBOX_SLIDER_DISABLED_BOTTOM, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1535. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeDisabledRepeatingCenter" ) );
  1536. storeImageAndColor( LISTBOX_SLIDER_DISABLED_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1537. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeDisabledSmallRepeatingCenter" ) );
  1538. storeImageAndColor( LISTBOX_SLIDER_DISABLED_SMALL_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1539. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeHiliteTopEnd" ) );
  1540. storeImageAndColor( LISTBOX_SLIDER_HILITE_TOP, image, green, darkGreen );
  1541. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeHiliteBottomEnd" ) );
  1542. storeImageAndColor( LISTBOX_SLIDER_HILITE_BOTTOM, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1543. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeHiliteRepeatingCenter" ) );
  1544. storeImageAndColor( LISTBOX_SLIDER_HILITE_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1545. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeHiliteSmallRepeatingCenter" ) );
  1546. storeImageAndColor( LISTBOX_SLIDER_HILITE_SMALL_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1547. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeThumbEnabled" ) );
  1548. storeImageAndColor( LISTBOX_SLIDER_THUMB_ENABLED, image, red, lightRed );
  1549. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeThumbEnabled" ) );
  1550. storeImageAndColor( LISTBOX_SLIDER_THUMB_ENABLED_PUSHED, image, yellow, white );
  1551. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeThumbDisabled" ) );
  1552. storeImageAndColor( LISTBOX_SLIDER_THUMB_DISABLED, image, gray, lightGray );
  1553. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeThumbDisabled" ) );
  1554. storeImageAndColor( LISTBOX_SLIDER_THUMB_DISABLED_PUSHED, image, lightGray, white );
  1555. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeThumbHilite" ) );
  1556. storeImageAndColor( LISTBOX_SLIDER_THUMB_HILITE, image, green, darkGreen );
  1557. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeThumbHiliteSelected" ) );
  1558. storeImageAndColor( LISTBOX_SLIDER_THUMB_HILITE_PUSHED, image, white, darkGreen );
  1559. // Combo Box
  1560. //---------------------------------------------------------------------------
  1561. image = TheMappedImageCollection->findImageByName( AsciiString( "ListBoxEnabled" ) );
  1562. storeImageAndColor( COMBOBOX_ENABLED, image, red, lightRed );
  1563. image = TheMappedImageCollection->findImageByName( AsciiString( "ListBoxEnabledSelectedItemLeftEnd" ) );
  1564. storeImageAndColor( COMBOBOX_ENABLED_SELECTED_ITEM_LEFT, image, yellow, white );
  1565. image = TheMappedImageCollection->findImageByName( AsciiString( "ListBoxEnabledSelectedItemRightEnd" ) );
  1566. storeImageAndColor( COMBOBOX_ENABLED_SELECTED_ITEM_RIGHT, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1567. image = TheMappedImageCollection->findImageByName( AsciiString( "ListBoxEnabledSelectedItemRepeatingCenter" ) );
  1568. storeImageAndColor( COMBOBOX_ENABLED_SELECTED_ITEM_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1569. image = TheMappedImageCollection->findImageByName( AsciiString( "ListBoxEnabledSelectedItemSmallRepeatingCenter" ) );
  1570. storeImageAndColor( COMBOBOX_ENABLED_SELECTED_ITEM_SMALL_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1571. image = TheMappedImageCollection->findImageByName( AsciiString( "ListBoxDisabled" ) );
  1572. storeImageAndColor( COMBOBOX_DISABLED, image, gray, lightGray );
  1573. image = TheMappedImageCollection->findImageByName( AsciiString( "ListBoxDisabledSelectedItemLeftEnd" ) );
  1574. storeImageAndColor( COMBOBOX_DISABLED_SELECTED_ITEM_LEFT, image, lightGray, white );
  1575. image = TheMappedImageCollection->findImageByName( AsciiString( "ListBoxDisabledSelectedItemRightEnd" ) );
  1576. storeImageAndColor( COMBOBOX_DISABLED_SELECTED_ITEM_RIGHT, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1577. image = TheMappedImageCollection->findImageByName( AsciiString( "ListBoxDisabledSelectedItemRepeatingCenter" ) );
  1578. storeImageAndColor( COMBOBOX_DISABLED_SELECTED_ITEM_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1579. image = TheMappedImageCollection->findImageByName( AsciiString( "ListBoxDisabledSelectedItemSmallRepeatingCenter" ) );
  1580. storeImageAndColor( COMBOBOX_DISABLED_SELECTED_ITEM_SMALL_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1581. image = TheMappedImageCollection->findImageByName( AsciiString( "ListBoxHilite" ) );
  1582. storeImageAndColor( COMBOBOX_HILITE, image, green, darkGreen );
  1583. image = TheMappedImageCollection->findImageByName( AsciiString( "ListBoxHiliteSelectedItemLeftEnd" ) );
  1584. storeImageAndColor( COMBOBOX_HILITE_SELECTED_ITEM_LEFT, image, white, darkGreen );
  1585. image = TheMappedImageCollection->findImageByName( AsciiString( "ListBoxHiliteSelectedItemRightEnd" ) );
  1586. storeImageAndColor( COMBOBOX_HILITE_SELECTED_ITEM_RIGHT, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1587. image = TheMappedImageCollection->findImageByName( AsciiString( "ListBoxHiliteSelectedItemRepeatingCenter" ) );
  1588. storeImageAndColor( COMBOBOX_HILITE_SELECTED_ITEM_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1589. image = TheMappedImageCollection->findImageByName( AsciiString( "ListBoxHiliteSelectedItemSmallRepeatingCenter" ) );
  1590. storeImageAndColor( COMBOBOX_HILITE_SELECTED_ITEM_SMALL_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1591. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeDownButtonEnabled" ) );
  1592. storeImageAndColor( COMBOBOX_DROP_DOWN_BUTTON_ENABLED, image, red, lightRed );
  1593. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeDownButtonEnabled" ) );
  1594. storeImageAndColor( COMBOBOX_DROP_DOWN_BUTTON_ENABLED_PUSHED, image, yellow, white );
  1595. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeDownButtonDisabled" ) );
  1596. storeImageAndColor( COMBOBOX_DROP_DOWN_BUTTON_DISABLED, image, gray, lightGray );
  1597. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeDownButtonDisabled" ) );
  1598. storeImageAndColor( COMBOBOX_DROP_DOWN_BUTTON_DISABLED_PUSHED, image, lightGray, gray );
  1599. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeDownButtonHilite" ) );
  1600. storeImageAndColor( COMBOBOX_DROP_DOWN_BUTTON_HILITE, image, green, darkGreen );
  1601. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeDownButtonHilite" ) );
  1602. storeImageAndColor( COMBOBOX_DROP_DOWN_BUTTON_HILITE_PUSHED, image, yellow, white );
  1603. image = TheMappedImageCollection->findImageByName( AsciiString( "TextEntryEnabledLeftEnd" ) );
  1604. storeImageAndColor( COMBOBOX_EDIT_BOX_ENABLED_LEFT, image, red, lightRed );
  1605. image = TheMappedImageCollection->findImageByName( AsciiString( "TextEntryEnabledRightEnd" ) );
  1606. storeImageAndColor( COMBOBOX_EDIT_BOX_ENABLED_RIGHT, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1607. image = TheMappedImageCollection->findImageByName( AsciiString( "TextEntryEnabledRepeatingCenter" ) );
  1608. storeImageAndColor( COMBOBOX_EDIT_BOX_ENABLED_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1609. image = TheMappedImageCollection->findImageByName( AsciiString( "TextEntryEnabledSmallRepeatingCenter" ) );
  1610. storeImageAndColor( COMBOBOX_EDIT_BOX_ENABLED_SMALL_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1611. image = TheMappedImageCollection->findImageByName( AsciiString( "TextEntryDisabledLeftEnd" ) );
  1612. storeImageAndColor( COMBOBOX_EDIT_BOX_DISABLED_LEFT, image, gray, black );
  1613. image = TheMappedImageCollection->findImageByName( AsciiString( "TextEntryDisabledRightEnd" ) );
  1614. storeImageAndColor( COMBOBOX_EDIT_BOX_DISABLED_RIGHT, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1615. image = TheMappedImageCollection->findImageByName( AsciiString( "TextEntryDisabledRepeatingCenter" ) );
  1616. storeImageAndColor( COMBOBOX_EDIT_BOX_DISABLED_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1617. image = TheMappedImageCollection->findImageByName( AsciiString( "TextEntryDisabledSmallRepeatingCenter" ) );
  1618. storeImageAndColor( COMBOBOX_EDIT_BOX_DISABLED_SMALL_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1619. image = TheMappedImageCollection->findImageByName( AsciiString( "TextEntryHiliteLeftEnd" ) );
  1620. storeImageAndColor( COMBOBOX_EDIT_BOX_HILITE_LEFT, image, green, darkGreen );
  1621. image = TheMappedImageCollection->findImageByName( AsciiString( "TextEntryHiliteRightEnd" ) );
  1622. storeImageAndColor( COMBOBOX_EDIT_BOX_HILITE_RIGHT, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1623. image = TheMappedImageCollection->findImageByName( AsciiString( "TextEntryHiliteRepeatingCenter" ) );
  1624. storeImageAndColor( COMBOBOX_EDIT_BOX_HILITE_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1625. image = TheMappedImageCollection->findImageByName( AsciiString( "TextEntryHiliteSmallRepeatingCenter" ) );
  1626. storeImageAndColor( COMBOBOX_EDIT_BOX_HILITE_SMALL_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1627. image = TheMappedImageCollection->findImageByName( AsciiString( "ListBoxEnabled" ) );
  1628. storeImageAndColor( COMBOBOX_LISTBOX_ENABLED, image, red, lightRed );
  1629. image = TheMappedImageCollection->findImageByName( AsciiString( "ListBoxEnabledSelectedItemLeftEnd" ) );
  1630. storeImageAndColor( COMBOBOX_LISTBOX_ENABLED_SELECTED_ITEM_LEFT, image, yellow, white );
  1631. image = TheMappedImageCollection->findImageByName( AsciiString( "ListBoxEnabledSelectedItemRightEnd" ) );
  1632. storeImageAndColor( COMBOBOX_LISTBOX_ENABLED_SELECTED_ITEM_RIGHT, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1633. image = TheMappedImageCollection->findImageByName( AsciiString( "ListBoxEnabledSelectedItemRepeatingCenter" ) );
  1634. storeImageAndColor( COMBOBOX_LISTBOX_ENABLED_SELECTED_ITEM_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1635. image = TheMappedImageCollection->findImageByName( AsciiString( "ListBoxEnabledSelectedItemSmallRepeatingCenter" ) );
  1636. storeImageAndColor( COMBOBOX_LISTBOX_ENABLED_SELECTED_ITEM_SMALL_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1637. image = TheMappedImageCollection->findImageByName( AsciiString( "ListBoxDisabled" ) );
  1638. storeImageAndColor( COMBOBOX_LISTBOX_DISABLED, image, gray, lightGray );
  1639. image = TheMappedImageCollection->findImageByName( AsciiString( "ListBoxDisabledSelectedItemLeftEnd" ) );
  1640. storeImageAndColor( COMBOBOX_LISTBOX_DISABLED_SELECTED_ITEM_LEFT, image, lightGray, white );
  1641. image = TheMappedImageCollection->findImageByName( AsciiString( "ListBoxDisabledSelectedItemRightEnd" ) );
  1642. storeImageAndColor( COMBOBOX_LISTBOX_DISABLED_SELECTED_ITEM_RIGHT, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1643. image = TheMappedImageCollection->findImageByName( AsciiString( "ListBoxDisabledSelectedItemRepeatingCenter" ) );
  1644. storeImageAndColor( COMBOBOX_LISTBOX_DISABLED_SELECTED_ITEM_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1645. image = TheMappedImageCollection->findImageByName( AsciiString( "ListBoxDisabledSelectedItemSmallRepeatingCenter" ) );
  1646. storeImageAndColor( COMBOBOX_LISTBOX_DISABLED_SELECTED_ITEM_SMALL_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1647. image = TheMappedImageCollection->findImageByName( AsciiString( "ListBoxHilite" ) );
  1648. storeImageAndColor( COMBOBOX_LISTBOX_HILITE, image, green, darkGreen );
  1649. image = TheMappedImageCollection->findImageByName( AsciiString( "ListBoxHiliteSelectedItemLeftEnd" ) );
  1650. storeImageAndColor( COMBOBOX_LISTBOX_HILITE_SELECTED_ITEM_LEFT, image, white, darkGreen );
  1651. image = TheMappedImageCollection->findImageByName( AsciiString( "ListBoxHiliteSelectedItemRightEnd" ) );
  1652. storeImageAndColor( COMBOBOX_LISTBOX_HILITE_SELECTED_ITEM_RIGHT, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1653. image = TheMappedImageCollection->findImageByName( AsciiString( "ListBoxHiliteSelectedItemRepeatingCenter" ) );
  1654. storeImageAndColor( COMBOBOX_LISTBOX_HILITE_SELECTED_ITEM_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1655. image = TheMappedImageCollection->findImageByName( AsciiString( "ListBoxHiliteSelectedItemSmallRepeatingCenter" ) );
  1656. storeImageAndColor( COMBOBOX_LISTBOX_HILITE_SELECTED_ITEM_SMALL_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1657. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeUpButtonEnabled" ) );
  1658. storeImageAndColor( COMBOBOX_LISTBOX_UP_BUTTON_ENABLED, image, red, lightRed );
  1659. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeUpButtonEnabled" ) );
  1660. storeImageAndColor( COMBOBOX_LISTBOX_UP_BUTTON_ENABLED_PUSHED, image, yellow, white );
  1661. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeUpButtonDisabled" ) );
  1662. storeImageAndColor( COMBOBOX_LISTBOX_UP_BUTTON_DISABLED, image, gray, lightGray );
  1663. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeUpButtonDisabled" ) );
  1664. storeImageAndColor( COMBOBOX_LISTBOX_UP_BUTTON_DISABLED_PUSHED, image, lightGray, white );
  1665. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeUpButtonHilite" ) );
  1666. storeImageAndColor( COMBOBOX_LISTBOX_UP_BUTTON_HILITE, image, green, darkGreen );
  1667. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeUpButtonHiliteSelected" ) );
  1668. storeImageAndColor( COMBOBOX_LISTBOX_UP_BUTTON_HILITE_PUSHED, image, white, darkGreen );
  1669. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeDownButtonEnabled" ) );
  1670. storeImageAndColor( COMBOBOX_LISTBOX_DOWN_BUTTON_ENABLED, image, red, lightRed );
  1671. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeDownButtonEnabled" ) );
  1672. storeImageAndColor( COMBOBOX_LISTBOX_DOWN_BUTTON_ENABLED_PUSHED, image, yellow, white );
  1673. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeDownButtonDisabled" ) );
  1674. storeImageAndColor( COMBOBOX_LISTBOX_DOWN_BUTTON_DISABLED, image, gray, lightGray );
  1675. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeDownButtonDisabled" ) );
  1676. storeImageAndColor( COMBOBOX_LISTBOX_DOWN_BUTTON_DISABLED_PUSHED, image, lightGray, white );
  1677. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeDownButtonHilite" ) );
  1678. storeImageAndColor( COMBOBOX_LISTBOX_DOWN_BUTTON_HILITE, image, green, darkGreen );
  1679. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeDownButtonHiliteSelected" ) );
  1680. storeImageAndColor( COMBOBOX_LISTBOX_DOWN_BUTTON_HILITE_PUSHED, image, white, darkGreen );
  1681. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeEnabledTopEnd" ) );
  1682. storeImageAndColor( COMBOBOX_LISTBOX_SLIDER_ENABLED_TOP, image, red, lightRed );
  1683. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeEnabledBottomEnd" ) );
  1684. storeImageAndColor( COMBOBOX_LISTBOX_SLIDER_ENABLED_BOTTOM, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1685. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeEnabledRepeatingCenter" ) );
  1686. storeImageAndColor( COMBOBOX_LISTBOX_SLIDER_ENABLED_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1687. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeEnabledSmallRepeatingCenter" ) );
  1688. storeImageAndColor( COMBOBOX_LISTBOX_SLIDER_ENABLED_SMALL_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1689. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeDisabledTopEnd" ) );
  1690. storeImageAndColor( COMBOBOX_LISTBOX_SLIDER_DISABLED_TOP, image, gray, darkGray );
  1691. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeDisabledBottomEnd" ) );
  1692. storeImageAndColor( COMBOBOX_LISTBOX_SLIDER_DISABLED_BOTTOM, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1693. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeDisabledRepeatingCenter" ) );
  1694. storeImageAndColor( COMBOBOX_LISTBOX_SLIDER_DISABLED_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1695. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeDisabledSmallRepeatingCenter" ) );
  1696. storeImageAndColor( COMBOBOX_LISTBOX_SLIDER_DISABLED_SMALL_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1697. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeHiliteTopEnd" ) );
  1698. storeImageAndColor( COMBOBOX_LISTBOX_SLIDER_HILITE_TOP, image, green, darkGreen );
  1699. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeHiliteBottomEnd" ) );
  1700. storeImageAndColor( COMBOBOX_LISTBOX_SLIDER_HILITE_BOTTOM, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1701. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeHiliteRepeatingCenter" ) );
  1702. storeImageAndColor( COMBOBOX_LISTBOX_SLIDER_HILITE_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1703. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeHiliteSmallRepeatingCenter" ) );
  1704. storeImageAndColor( COMBOBOX_LISTBOX_SLIDER_HILITE_SMALL_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1705. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeThumbEnabled" ) );
  1706. storeImageAndColor( COMBOBOX_LISTBOX_SLIDER_THUMB_ENABLED, image, red, lightRed );
  1707. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeThumbEnabled" ) );
  1708. storeImageAndColor( COMBOBOX_LISTBOX_SLIDER_THUMB_ENABLED_PUSHED, image, yellow, white );
  1709. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeThumbDisabled" ) );
  1710. storeImageAndColor( COMBOBOX_LISTBOX_SLIDER_THUMB_DISABLED, image, gray, lightGray );
  1711. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeThumbDisabled" ) );
  1712. storeImageAndColor( COMBOBOX_LISTBOX_SLIDER_THUMB_DISABLED_PUSHED, image, lightGray, white );
  1713. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeThumbHilite" ) );
  1714. storeImageAndColor( COMBOBOX_LISTBOX_SLIDER_THUMB_HILITE, image, green, darkGreen );
  1715. image = TheMappedImageCollection->findImageByName( AsciiString( "VSliderLargeThumbHiliteSelected" ) );
  1716. storeImageAndColor( COMBOBOX_LISTBOX_SLIDER_THUMB_HILITE_PUSHED, image, white, darkGreen );
  1717. // progress bar
  1718. //---------------------------------------------------------------------------
  1719. image = TheMappedImageCollection->findImageByName( AsciiString( "ProgressBarEnabledLeftEnd" ) );
  1720. storeImageAndColor( PROGRESS_BAR_ENABLED_LEFT, image, red, lightRed );
  1721. image = TheMappedImageCollection->findImageByName( AsciiString( "ProgressBarEnabledRightEnd" ) );
  1722. storeImageAndColor( PROGRESS_BAR_ENABLED_RIGHT, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1723. image = TheMappedImageCollection->findImageByName( AsciiString( "ProgressBarEnabledRepeatingCenter" ) );
  1724. storeImageAndColor( PROGRESS_BAR_ENABLED_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1725. image = TheMappedImageCollection->findImageByName( AsciiString( "ProgressBarEnabledSmallRepeatingCenter" ) );
  1726. storeImageAndColor( PROGRESS_BAR_ENABLED_SMALL_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1727. image = TheMappedImageCollection->findImageByName( AsciiString( "ProgressBarEnabledBarLeftEnd" ) );
  1728. storeImageAndColor( PROGRESS_BAR_ENABLED_BAR_LEFT, image, yellow, white );
  1729. image = TheMappedImageCollection->findImageByName( AsciiString( "ProgressBarEnabledBarRightEnd" ) );
  1730. storeImageAndColor( PROGRESS_BAR_ENABLED_BAR_RIGHT, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1731. image = TheMappedImageCollection->findImageByName( AsciiString( "ProgressBarEnabledBarRepeatingCenter" ) );
  1732. storeImageAndColor( PROGRESS_BAR_ENABLED_BAR_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1733. image = TheMappedImageCollection->findImageByName( AsciiString( "ProgressBarEnabledBarSmallRepeatingCenter" ) );
  1734. storeImageAndColor( PROGRESS_BAR_ENABLED_BAR_SMALL_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1735. //---------------------------------------------------------------------------
  1736. image = TheMappedImageCollection->findImageByName( AsciiString( "ProgressBarDisabledLeftEnd" ) );
  1737. storeImageAndColor( PROGRESS_BAR_DISABLED_LEFT, image, darkGray, lightGray );
  1738. image = TheMappedImageCollection->findImageByName( AsciiString( "ProgressBarDisabledRightEnd" ) );
  1739. storeImageAndColor( PROGRESS_BAR_DISABLED_RIGHT, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1740. image = TheMappedImageCollection->findImageByName( AsciiString( "ProgressBarDisabledRepeatingCenter" ) );
  1741. storeImageAndColor( PROGRESS_BAR_DISABLED_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1742. image = TheMappedImageCollection->findImageByName( AsciiString( "ProgressBarDisabledSmallRepeatingCenter" ) );
  1743. storeImageAndColor( PROGRESS_BAR_DISABLED_SMALL_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1744. image = TheMappedImageCollection->findImageByName( AsciiString( "ProgressBarDisabledBarLeftEnd" ) );
  1745. storeImageAndColor( PROGRESS_BAR_DISABLED_BAR_LEFT, image, lightGray, white );
  1746. image = TheMappedImageCollection->findImageByName( AsciiString( "ProgressBarDisabledBarRightEnd" ) );
  1747. storeImageAndColor( PROGRESS_BAR_DISABLED_BAR_RIGHT, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1748. image = TheMappedImageCollection->findImageByName( AsciiString( "ProgressBarDisabledBarRepeatingCenter" ) );
  1749. storeImageAndColor( PROGRESS_BAR_DISABLED_BAR_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1750. image = TheMappedImageCollection->findImageByName( AsciiString( "ProgressBarDisabledBarSmallRepeatingCenter" ) );
  1751. storeImageAndColor( PROGRESS_BAR_DISABLED_BAR_SMALL_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1752. //---------------------------------------------------------------------------
  1753. image = TheMappedImageCollection->findImageByName( AsciiString( "ProgressBarHiliteLeftEnd" ) );
  1754. storeImageAndColor( PROGRESS_BAR_HILITE_LEFT, image, green, darkGreen );
  1755. image = TheMappedImageCollection->findImageByName( AsciiString( "ProgressBarHiliteRightEnd" ) );
  1756. storeImageAndColor( PROGRESS_BAR_HILITE_RIGHT, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1757. image = TheMappedImageCollection->findImageByName( AsciiString( "ProgressBarHiliteRepeatingCenter" ) );
  1758. storeImageAndColor( PROGRESS_BAR_HILITE_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1759. image = TheMappedImageCollection->findImageByName( AsciiString( "ProgressBarHiliteSmallRepeatingCenter" ) );
  1760. storeImageAndColor( PROGRESS_BAR_HILITE_SMALL_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1761. image = TheMappedImageCollection->findImageByName( AsciiString( "ProgressBarHiliteBarLeftEnd" ) );
  1762. storeImageAndColor( PROGRESS_BAR_HILITE_BAR_LEFT, image, yellow, white );
  1763. image = TheMappedImageCollection->findImageByName( AsciiString( "ProgressBarHiliteBarRightEnd" ) );
  1764. storeImageAndColor( PROGRESS_BAR_HILITE_BAR_RIGHT, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1765. image = TheMappedImageCollection->findImageByName( AsciiString( "ProgressBarHiliteBarRepeatingCenter" ) );
  1766. storeImageAndColor( PROGRESS_BAR_HILITE_BAR_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1767. image = TheMappedImageCollection->findImageByName( AsciiString( "ProgressBarHiliteBarSmallRepeatingCenter" ) );
  1768. storeImageAndColor( PROGRESS_BAR_HILITE_BAR_SMALL_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1769. // static text
  1770. //---------------------------------------------------------------------------
  1771. image = TheMappedImageCollection->findImageByName( AsciiString( "StaticTextEnabled" ) );
  1772. storeImageAndColor( STATIC_TEXT_ENABLED, image, red, lightRed );
  1773. image = TheMappedImageCollection->findImageByName( AsciiString( "StaticTextDisabled" ) );
  1774. storeImageAndColor( STATIC_TEXT_DISABLED, image, darkGray, lightGray );
  1775. image = TheMappedImageCollection->findImageByName( AsciiString( "StaticTextHilite" ) );
  1776. storeImageAndColor( STATIC_TEXT_HILITE, image, darkGreen, lightGreen );
  1777. // text entry
  1778. image = TheMappedImageCollection->findImageByName( AsciiString( "TextEntryEnabledLeftEnd" ) );
  1779. storeImageAndColor( TEXT_ENTRY_ENABLED_LEFT, image, red, lightRed );
  1780. image = TheMappedImageCollection->findImageByName( AsciiString( "TextEntryEnabledRightEnd" ) );
  1781. storeImageAndColor( TEXT_ENTRY_ENABLED_RIGHT, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1782. image = TheMappedImageCollection->findImageByName( AsciiString( "TextEntryEnabledRepeatingCenter" ) );
  1783. storeImageAndColor( TEXT_ENTRY_ENABLED_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1784. image = TheMappedImageCollection->findImageByName( AsciiString( "TextEntryEnabledSmallRepeatingCenter" ) );
  1785. storeImageAndColor( TEXT_ENTRY_ENABLED_SMALL_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1786. image = TheMappedImageCollection->findImageByName( AsciiString( "TextEntryDisabledLeftEnd" ) );
  1787. storeImageAndColor( TEXT_ENTRY_DISABLED_LEFT, image, gray, black );
  1788. image = TheMappedImageCollection->findImageByName( AsciiString( "TextEntryDisabledRightEnd" ) );
  1789. storeImageAndColor( TEXT_ENTRY_DISABLED_RIGHT, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1790. image = TheMappedImageCollection->findImageByName( AsciiString( "TextEntryDisabledRepeatingCenter" ) );
  1791. storeImageAndColor( TEXT_ENTRY_DISABLED_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1792. image = TheMappedImageCollection->findImageByName( AsciiString( "TextEntryDisabledSmallRepeatingCenter" ) );
  1793. storeImageAndColor( TEXT_ENTRY_DISABLED_SMALL_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1794. image = TheMappedImageCollection->findImageByName( AsciiString( "TextEntryHiliteLeftEnd" ) );
  1795. storeImageAndColor( TEXT_ENTRY_HILITE_LEFT, image, green, darkGreen );
  1796. image = TheMappedImageCollection->findImageByName( AsciiString( "TextEntryHiliteRightEnd" ) );
  1797. storeImageAndColor( TEXT_ENTRY_HILITE_RIGHT, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1798. image = TheMappedImageCollection->findImageByName( AsciiString( "TextEntryHiliteRepeatingCenter" ) );
  1799. storeImageAndColor( TEXT_ENTRY_HILITE_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1800. image = TheMappedImageCollection->findImageByName( AsciiString( "TextEntryHiliteSmallRepeatingCenter" ) );
  1801. storeImageAndColor( TEXT_ENTRY_HILITE_SMALL_CENTER, image, WIN_COLOR_UNDEFINED, WIN_COLOR_UNDEFINED );
  1802. // Tab Control
  1803. image = TheMappedImageCollection->findImageByName( AsciiString( "TabControlZeroEnabled" ) );
  1804. storeImageAndColor( TC_TAB_0_ENABLED, image, red, lightRed );
  1805. image = TheMappedImageCollection->findImageByName( AsciiString( "TabControlZeroDisabled" ) );
  1806. storeImageAndColor( TC_TAB_0_DISABLED, image, gray, lightGray );
  1807. image = TheMappedImageCollection->findImageByName( AsciiString( "TabControlZeroHilite" ) );
  1808. storeImageAndColor( TC_TAB_0_HILITE, image, green, darkGreen );
  1809. image = TheMappedImageCollection->findImageByName( AsciiString( "TabControlOneEnabled" ) );
  1810. storeImageAndColor( TC_TAB_1_ENABLED, image, red, lightRed );
  1811. image = TheMappedImageCollection->findImageByName( AsciiString( "TabControlOneDisabled" ) );
  1812. storeImageAndColor( TC_TAB_1_DISABLED, image, gray, lightGray );
  1813. image = TheMappedImageCollection->findImageByName( AsciiString( "TabControlOneHilite" ) );
  1814. storeImageAndColor( TC_TAB_1_HILITE, image, green, darkGreen );
  1815. image = TheMappedImageCollection->findImageByName( AsciiString( "TabControlTwoEnabled" ) );
  1816. storeImageAndColor( TC_TAB_2_ENABLED, image, red, lightRed );
  1817. image = TheMappedImageCollection->findImageByName( AsciiString( "TabControlTwoDisabled" ) );
  1818. storeImageAndColor( TC_TAB_2_DISABLED, image, gray, lightGray );
  1819. image = TheMappedImageCollection->findImageByName( AsciiString( "TabControlTwoHilite" ) );
  1820. storeImageAndColor( TC_TAB_2_HILITE, image, green, darkGreen );
  1821. image = TheMappedImageCollection->findImageByName( AsciiString( "TabControlThreeEnabled" ) );
  1822. storeImageAndColor( TC_TAB_3_ENABLED, image, red, lightRed );
  1823. image = TheMappedImageCollection->findImageByName( AsciiString( "TabControlThreeDisabled" ) );
  1824. storeImageAndColor( TC_TAB_3_DISABLED, image, gray, lightGray );
  1825. image = TheMappedImageCollection->findImageByName( AsciiString( "TabControlThreeHilite" ) );
  1826. storeImageAndColor( TC_TAB_3_HILITE, image, green, darkGreen );
  1827. image = TheMappedImageCollection->findImageByName( AsciiString( "TabControlFourEnabled" ) );
  1828. storeImageAndColor( TC_TAB_4_ENABLED, image, red, lightRed );
  1829. image = TheMappedImageCollection->findImageByName( AsciiString( "TabControlFourDisabled" ) );
  1830. storeImageAndColor( TC_TAB_4_DISABLED, image, gray, lightGray );
  1831. image = TheMappedImageCollection->findImageByName( AsciiString( "TabControlFourHilite" ) );
  1832. storeImageAndColor( TC_TAB_4_HILITE, image, green, darkGreen );
  1833. image = TheMappedImageCollection->findImageByName( AsciiString( "TabControlFiveEnabled" ) );
  1834. storeImageAndColor( TC_TAB_5_ENABLED, image, red, lightRed );
  1835. image = TheMappedImageCollection->findImageByName( AsciiString( "TabControlFiveDisabled" ) );
  1836. storeImageAndColor( TC_TAB_5_DISABLED, image, gray, lightGray );
  1837. image = TheMappedImageCollection->findImageByName( AsciiString( "TabControlFiveHilite" ) );
  1838. storeImageAndColor( TC_TAB_5_HILITE, image, green, darkGreen );
  1839. image = TheMappedImageCollection->findImageByName( AsciiString( "TabControlSixEnabled" ) );
  1840. storeImageAndColor( TC_TAB_6_ENABLED, image, red, lightRed );
  1841. image = TheMappedImageCollection->findImageByName( AsciiString( "TabControlSixDisabled" ) );
  1842. storeImageAndColor( TC_TAB_6_DISABLED, image, gray, lightGray );
  1843. image = TheMappedImageCollection->findImageByName( AsciiString( "TabControlSixHilite" ) );
  1844. storeImageAndColor( TC_TAB_6_HILITE, image, green, darkGreen );
  1845. image = TheMappedImageCollection->findImageByName( AsciiString( "TabControlSevenEnabled" ) );
  1846. storeImageAndColor( TC_TAB_7_ENABLED, image, red, lightRed );
  1847. image = TheMappedImageCollection->findImageByName( AsciiString( "TabControlSevenDisabled" ) );
  1848. storeImageAndColor( TC_TAB_7_DISABLED, image, gray, lightGray );
  1849. image = TheMappedImageCollection->findImageByName( AsciiString( "TabControlSevenHilite" ) );
  1850. storeImageAndColor( TC_TAB_7_HILITE, image, green, darkGreen );
  1851. storeImageAndColor( TAB_CONTROL_ENABLED, NULL, black, white );
  1852. storeImageAndColor( TAB_CONTROL_DISABLED, NULL, darkGray, white );
  1853. storeImageAndColor( TAB_CONTROL_HILITE, NULL, black, white );
  1854. // generic
  1855. storeImageAndColor( GENERIC_ENABLED, NULL, darkBlue, white );
  1856. storeImageAndColor( GENERIC_DISABLED, NULL, darkGray, white );
  1857. storeImageAndColor( GENERIC_HILITE, NULL, lightBlue, white );
  1858. // default text colors
  1859. m_enabledText.color = white;
  1860. m_enabledText.borderColor = black;
  1861. m_disabledText.color = lightGray;
  1862. m_disabledText.borderColor = darkGray;
  1863. m_hiliteText.color = lightBlue;
  1864. m_hiliteText.borderColor = darkBlue;
  1865. // default font
  1866. m_font = TheWindowManager->winFindFont( AsciiString("Times New Roman"), 14, FALSE );
  1867. } // end init
  1868. // LayoutScheme::openDialog ===================================================
  1869. /** Bring up the layout scheme dialog box */
  1870. //=============================================================================
  1871. void LayoutScheme::openDialog( void )
  1872. {
  1873. // save the scheme instance we're going to open the dialog on
  1874. theScheme = this;
  1875. // create the dialog box
  1876. DialogBox( TheEditor->getInstance(), (LPCTSTR)LAYOUT_SCHEME_DIALOG,
  1877. TheEditor->getWindowHandle(), (DLGPROC)layoutSchemeCallback );
  1878. theScheme = NULL;
  1879. } // end openDialog
  1880. // LayoutScheme::findEntry ====================================================
  1881. /** Find the entry for the state */
  1882. //=============================================================================
  1883. ImageAndColorInfo *LayoutScheme::findEntry( StateIdentifier id )
  1884. {
  1885. // santiy
  1886. if( id < 0 || id >= NUM_STATE_IDENTIFIERS )
  1887. {
  1888. DEBUG_LOG(( "Illegal state to to layout 'findEntry' '%d'\n", id ));
  1889. assert( 0 );
  1890. return NULL;
  1891. } // end if
  1892. // search the state table
  1893. for( Int i = 0; i < NUM_STATE_IDENTIFIERS; i++ )
  1894. {
  1895. if( m_imageAndColorTable[ i ].stateID == id )
  1896. return &m_imageAndColorTable[ i ];
  1897. } // end for i
  1898. return NULL; // not found
  1899. } // end findEntry
  1900. // LayoutScheme::getImageAndColor =============================================
  1901. /** Get the color and color info for the state */
  1902. //=============================================================================
  1903. ImageAndColorInfo *LayoutScheme::getImageAndColor( StateIdentifier id )
  1904. {
  1905. // sanity
  1906. if( id < 0 || id >= NUM_STATE_IDENTIFIERS )
  1907. {
  1908. DEBUG_LOG(( "getImageAndColor: Illegal state '%d'\n", id ));
  1909. assert( 0 );
  1910. return NULL;
  1911. } // end if
  1912. // return the entry for the state
  1913. return findEntry( id );
  1914. } // end getImageAndColor
  1915. // LayoutScheme::storeImageAndColor ===========================================
  1916. /** Store the image and colors of the specific state in our own data array */
  1917. //=============================================================================
  1918. void LayoutScheme::storeImageAndColor( StateIdentifier id, const Image *image,
  1919. Color color, Color borderColor )
  1920. {
  1921. // sanity
  1922. if( id < 0 || id >= NUM_STATE_IDENTIFIERS )
  1923. {
  1924. DEBUG_LOG(( "Illegal state identifier in layout scheme store image and color '%d'\n", id ));
  1925. assert( 0 );
  1926. return;
  1927. } // end if
  1928. // store the info
  1929. ImageAndColorInfo *entry = findEntry( id );
  1930. if( entry )
  1931. {
  1932. entry->image = image;
  1933. entry->color = color;
  1934. entry->borderColor = borderColor;
  1935. } // en dif
  1936. } // end storeImageAndColor
  1937. // LayoutScheme::saveScheme ===================================================
  1938. /** Save the scheme to the filename provided */
  1939. //=============================================================================
  1940. Bool LayoutScheme::saveScheme( char *filename )
  1941. {
  1942. FILE *fp;
  1943. UnsignedByte colorR, colorG, colorB, colorA,
  1944. bColorR, bColorG, bColorB, bColorA;
  1945. // open the file
  1946. fp = fopen( filename, "w" );
  1947. if( fp == NULL )
  1948. {
  1949. DEBUG_LOG(( "saveScheme: Unable to open file '%s'\n", filename ));
  1950. MessageBox( TheEditor->getWindowHandle(),
  1951. "Unable to open scheme for for saving. Read only?", "Save Error", MB_OK );
  1952. return FALSE;
  1953. } // end if
  1954. // save the filename we're using now
  1955. setSchemeFilename( filename );
  1956. // write header
  1957. fprintf( fp, "Window Layout Scheme: Version '%d'\n", SCHEME_VERSION );
  1958. // write default text colors
  1959. GameGetColorComponents( m_enabledText.color, &colorR, &colorG, &colorB, &colorA );
  1960. fprintf( fp, "Enabled Text: (%d,%d,%d,%d)\n", colorR, colorG, colorB, colorA );
  1961. GameGetColorComponents( m_enabledText.borderColor, &colorR, &colorG, &colorB, &colorA );
  1962. fprintf( fp, "Enabled Text Border: (%d,%d,%d,%d)\n", colorR, colorG, colorB, colorA );
  1963. GameGetColorComponents( m_disabledText.color, &colorR, &colorG, &colorB, &colorA );
  1964. fprintf( fp, "Disabled Text: (%d,%d,%d,%d)\n", colorR, colorG, colorB, colorA );
  1965. GameGetColorComponents( m_disabledText.borderColor, &colorR, &colorG, &colorB, &colorA );
  1966. fprintf( fp, "Disabled Text Border: (%d,%d,%d,%d)\n", colorR, colorG, colorB, colorA );
  1967. GameGetColorComponents( m_hiliteText.color, &colorR, &colorG, &colorB, &colorA );
  1968. fprintf( fp, "Hilite Text: (%d,%d,%d,%d)\n", colorR, colorG, colorB, colorA );
  1969. GameGetColorComponents( m_hiliteText.borderColor, &colorR, &colorG, &colorB, &colorA );
  1970. fprintf( fp, "Hilite Text Border: (%d,%d,%d,%d)\n", colorR, colorG, colorB, colorA );
  1971. // write default font
  1972. char fontBuffer[ 256 ];
  1973. if( m_font )
  1974. sprintf( fontBuffer, "\"%s\" Size: %d Bold: %d",
  1975. m_font->nameString.str(), m_font->pointSize, m_font->bold );
  1976. else
  1977. sprintf( fontBuffer, "\"None\" Size: 0 Bold: 0" );
  1978. fprintf( fp, "Default Font: %s\n", fontBuffer );
  1979. // write all the data for all the states
  1980. fprintf( fp, "Number of states: %d\n", NUM_STATE_IDENTIFIERS );
  1981. ImageAndColorInfo *info;
  1982. for( Int i = 0; i < NUM_STATE_IDENTIFIERS; i++ )
  1983. {
  1984. // get the info
  1985. info = findEntry( (StateIdentifier)i );
  1986. assert( info );
  1987. // get the color data in more RGB friendly output
  1988. GameGetColorComponents( info->color, &colorR, &colorG,
  1989. &colorB, &colorA );
  1990. GameGetColorComponents( info->borderColor, &bColorR, &bColorG,
  1991. &bColorB, &bColorA );
  1992. // output it
  1993. fprintf( fp, "%d: Image: %s Color: (%d,%d,%d,%d) Border: (%d,%d,%d,%d)\n",
  1994. i, info->image ? info->image->getName().str() : "NONE", colorR, colorG, colorB, colorA,
  1995. bColorR, bColorG, bColorB, bColorA );
  1996. } // end for i
  1997. // close the file
  1998. fclose( fp );
  1999. return TRUE;
  2000. } // end saveScheme
  2001. // LayoutScheme::loadScheme ===================================================
  2002. /** Load the layout scheme into this class instance */
  2003. //=============================================================================
  2004. Bool LayoutScheme::loadScheme( char *filename )
  2005. {
  2006. FILE *fp;
  2007. UnsignedByte colorR, colorG, colorB, colorA,
  2008. bColorR, bColorG, bColorB, bColorA;
  2009. // open the file
  2010. fp = fopen( filename, "r" );
  2011. if( fp == NULL )
  2012. return FALSE;
  2013. // save the filename we're using now
  2014. setSchemeFilename( filename );
  2015. // write header
  2016. Int version;
  2017. fscanf( fp, "Window Layout Scheme: Version '%d'\n", &version );
  2018. if( version != SCHEME_VERSION )
  2019. {
  2020. DEBUG_LOG(( "loadScheme: Old layout file version '%d'\n", version ));
  2021. MessageBox( TheEditor->getWindowHandle(),
  2022. "Old layout version, cannot open.", "Old File", MB_OK );
  2023. return FALSE;
  2024. } // end if
  2025. // default text colors
  2026. fscanf( fp, "Enabled Text: (%d,%d,%d,%d)\n", &colorR, &colorG, &colorB, &colorA );
  2027. m_enabledText.color = GameMakeColor( colorR, colorG, colorB, colorA );
  2028. fscanf( fp, "Enabled Text Border: (%d,%d,%d,%d)\n", &colorR, &colorG, &colorB, &colorA );
  2029. m_enabledText.borderColor = GameMakeColor( colorR, colorG, colorB, colorA );
  2030. fscanf( fp, "Disabled Text: (%d,%d,%d,%d)\n", &colorR, &colorG, &colorB, &colorA );
  2031. m_disabledText.color = GameMakeColor( colorR, colorG, colorB, colorA );
  2032. fscanf( fp, "Disabled Text Border: (%d,%d,%d,%d)\n", &colorR, &colorG, &colorB, &colorA );
  2033. m_disabledText.borderColor = GameMakeColor( colorR, colorG, colorB, colorA );
  2034. fscanf( fp, "Hilite Text: (%d,%d,%d,%d)\n", &colorR, &colorG, &colorB, &colorA );
  2035. m_hiliteText.color = GameMakeColor( colorR, colorG, colorB, colorA );
  2036. fscanf( fp, "Hilite Text Border: (%d,%d,%d,%d)\n", &colorR, &colorG, &colorB, &colorA );
  2037. m_hiliteText.borderColor = GameMakeColor( colorR, colorG, colorB, colorA );
  2038. // default font
  2039. char fontBuffer[ 256 ];
  2040. Int size, bold;
  2041. char c = fgetc( fp );
  2042. // skip past the first quote
  2043. while( c != '\"' )
  2044. c = fgetc( fp );
  2045. c = fgetc( fp ); // the quote itself
  2046. // copy the name till the next quote is read
  2047. Int index = 0;
  2048. while( c != '\"' )
  2049. {
  2050. fontBuffer[ index++ ] = c;
  2051. c = fgetc( fp );
  2052. } // end while
  2053. fontBuffer[ index ] = '\0';
  2054. c = fgetc( fp ); // the end quite itself
  2055. // read the size and bold data elements
  2056. fscanf( fp, " Size: %d Bold: %d\n", &size, &bold );
  2057. // set the font
  2058. m_font = TheFontLibrary->getFont( AsciiString(fontBuffer), size, bold );
  2059. // all the data for all the states
  2060. Int numStates, state;
  2061. char imageBuffer[ 128 ];
  2062. fscanf( fp, "Number of states: %d\n", &numStates );
  2063. for( Int i = 0; i < numStates; i++ )
  2064. {
  2065. // read all the data
  2066. fscanf( fp, "%d: Image: %s Color: (%d,%d,%d,%d) Border: (%d,%d,%d,%d)\n",
  2067. &state, imageBuffer, &colorR, &colorG, &colorB, &colorA,
  2068. &bColorR, &bColorG, &bColorB, &bColorA );
  2069. // sanity
  2070. assert( state == i );
  2071. // store the info
  2072. storeImageAndColor( (StateIdentifier)state,
  2073. TheMappedImageCollection->findImageByName( AsciiString( imageBuffer ) ),
  2074. GameMakeColor( colorR, colorG, colorB, colorA ),
  2075. GameMakeColor( bColorR, bColorG, bColorB, bColorA ) );
  2076. } // end for i
  2077. // close the file
  2078. fclose( fp );
  2079. return TRUE;
  2080. } // end loadScheme