invader.rcss 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701
  1. @spritesheet theme
  2. {
  3. src: invader.tga;
  4. /**
  5. The following specifies a list of sprite names and associated rectangles into the image given above.
  6. Any sprite given here can be specified in a decorator. Their names must be globally unique.
  7. Rectangles are specified as: x y width height.
  8. */
  9. title-bar-l: 147px 0px 82px 85px;
  10. title-bar-c: 229px 0px 1px 85px;
  11. title-bar-r: 231px 0px 15px 85px;
  12. /* huditems are vertically flipped titlebars */
  13. huditem-l: 147px 55px 82px -55px;
  14. huditem-c: 229px 55px 1px -55px;
  15. huditem-r: 231px 55px 15px -55px;
  16. icon-help: 128px 152px 51px 39px;
  17. icon-invader: 179px 152px 51px 39px;
  18. icon-game: 230px 152px 51px 39px;
  19. icon-hiscore: 281px 152px 51px 39px;
  20. icon-waves: 332px 152px 51px 39px;
  21. icon-flag: 336px 191px 51px 39px;
  22. icon-lives: 383px 152px 51px 39px;
  23. icon-score: 434px 152px 51px 39px;
  24. window-tl: 0px 0px 133px 140px;
  25. window-t: 134px 0px 1px 140px;
  26. window-tr: 136px 0px 10px 140px;
  27. window-l: 0px 139px 10px 1px;
  28. window-c: 11px 139px 1px 1px;
  29. window-r: 10px 139px -10px 1px; /* mirrored left */
  30. window-bl: 0px 140px 11px 11px;
  31. window-b: 11px 140px 1px 11px;
  32. window-br: 136px 140px 10px 11px;
  33. button: 247px 0px 159px 45px;
  34. button-hover: 247px 45px 159px 45px;
  35. button-active: 247px 90px 159px 45px;
  36. button-inner: 259px 19px 135px 1px;
  37. button-inner-hover: 259px 64px 135px 1px;
  38. button-inner-active: 259px 109px 135px 1px;
  39. text-l: 162px 192px 14px 31px;
  40. text-c: 176px 192px 1px 31px;
  41. textarea: 162px 192px 145px 31px;
  42. textarea-inner: 173px 206px 127px 10px;
  43. selectbox-tl: 281px 275px 11px 9px;
  44. selectbox-t: 292px 275px 1px 9px;
  45. selectbox-tr: 294px 275px 11px 9px;
  46. selectbox-l: 281px 283px 11px 1px;
  47. selectbox-c: 292px 283px 1px 1px;
  48. selectbox-bl: 281px 285px 11px 11px;
  49. selectbox-b: 292px 285px 1px 11px;
  50. selectbox-br: 294px 285px 11px 11px;
  51. selectvalue: 162px 192px 145px 37px;
  52. selectvalue-hover: 162px 230px 145px 37px;
  53. selectarrow: 307px 192px 30px 37px;
  54. selectarrow-hover: 307px 230px 30px 37px;
  55. selectarrow-active: 307px 268px 30px 37px;
  56. radio: 407px 0px 30px 30px;
  57. radio-hover: 437px 0px 30px 30px;
  58. radio-active: 467px 0px 30px 30px;
  59. radio-checked: 407px 30px 30px 30px;
  60. radio-checked-hover: 437px 30px 30px 30px;
  61. radio-checked-active: 467px 30px 30px 30px;
  62. checkbox: 407px 60px 30px 30px;
  63. checkbox-hover: 437px 60px 30px 30px;
  64. checkbox-active: 467px 60px 30px 30px;
  65. checkbox-checked: 407px 90px 30px 30px;
  66. checkbox-checked-hover: 437px 90px 30px 30px;
  67. checkbox-checked-active: 467px 90px 30px 30px;
  68. datagridheader-l: 127px 192px 16px 31px;
  69. datagridheader-c: 143px 192px 2px 31px;
  70. datagridheader-r: 145px 192px 15px 31px;
  71. datagridexpand: 3px 232px 17px 17px;
  72. datagridexpand-hover: 21px 232px 17px 17px;
  73. datagridexpand-active: 39px 232px 17px 17px;
  74. datagridexpand-collapsed: 3px 250px 17px 17px;
  75. datagridexpand-collapsed-hover: 21px 250px 17px 17px;
  76. datagridexpand-collapsed-active: 39px 250px 17px 17px;
  77. slidertrack-t: 70px 199px 27px 2px;
  78. slidertrack-c: 70px 201px 27px 1px;
  79. slidertrack-b: 70px 202px 27px 2px;
  80. sliderbar-t: 56px 152px 23px 23px;
  81. sliderbar-c: 56px 175px 23px 1px;
  82. sliderbar-b: 56px 176px 23px 22px;
  83. sliderbar-hover-t: 80px 152px 23px 23px;
  84. sliderbar-hover-c: 80px 175px 23px 1px;
  85. sliderbar-hover-b: 80px 176px 23px 22px;
  86. sliderbar-active-t: 104px 152px 23px 23px;
  87. sliderbar-active-c: 104px 175px 23px 1px;
  88. sliderbar-active-b: 104px 176px 23px 22px;
  89. sliderarrowdec: 0px 152px 27px 24px;
  90. sliderarrowdec-hover: 0px 177px 27px 24px;
  91. sliderarrowdec-active: 0px 202px 27px 24px;
  92. sliderarrowinc: 28px 152px 27px 24px;
  93. sliderarrowinc-hover: 28px 177px 27px 24px;
  94. sliderarrowinc-active: 28px 202px 27px 24px;
  95. range-track: 219px 194px 3px 32px;
  96. range-track-inner: 220px 204px 1px 14px;
  97. range-bar: 127px 191px 34px 32px;
  98. range-dec: 3px 232px 17px 17px;
  99. range-dec-hover: 21px 232px 17px 17px;
  100. range-dec-active: 39px 232px 17px 17px;
  101. range-inc: 3px 250px 17px 17px;
  102. range-inc-hover: 21px 250px 17px 17px;
  103. range-inc-active: 39px 250px 17px 17px;
  104. }
  105. body
  106. {
  107. font-family: Delicious;
  108. font-weight: normal;
  109. font-style: normal;
  110. font-size: 15px;
  111. color: white;
  112. }
  113. body.window
  114. {
  115. padding-top: 43px;
  116. padding-bottom: 20px;
  117. min-width: 250px;
  118. max-width: 800px;
  119. min-height: 135px;
  120. max-height: 700px;
  121. }
  122. div#title_bar
  123. {
  124. z-index: 1;
  125. position: absolute;
  126. top: 0px;
  127. left: 0px;
  128. text-align: left;
  129. }
  130. div#title_bar div#icon
  131. {
  132. position: absolute;
  133. left: 20px;
  134. top: 2px;
  135. width: 51px;
  136. height: 39px;
  137. }
  138. div#title_bar span
  139. {
  140. padding-left: 85px;
  141. padding-right: 25px;
  142. padding-top: 17px;
  143. padding-bottom: 51px;
  144. font-size: 22px;
  145. font-weight: bold;
  146. font-effect: outline(1px black);
  147. decorator: tiled-horizontal( title-bar-l, title-bar-c, title-bar-r );
  148. }
  149. div#window
  150. {
  151. width: auto;
  152. padding: 10px 15px;
  153. decorator: tiled-box(
  154. window-tl, window-t, window-tr,
  155. window-l, window-c, window-r,
  156. window-bl, window-b, window-br
  157. );
  158. }
  159. div#content
  160. {
  161. z-index: 2;
  162. width: auto;
  163. height: 100%;
  164. overflow: hidden auto;
  165. text-align: center;
  166. }
  167. p
  168. {
  169. text-align: left;
  170. margin-bottom: 1em;
  171. }
  172. h1
  173. {
  174. margin-left: 0.4em;
  175. margin-bottom: 0.4em;
  176. text-align: left;
  177. font-size: 16px;
  178. font-weight: bold;
  179. font-effect: shadow(1px 1px black);
  180. }
  181. input,
  182. select,
  183. dataselect
  184. {
  185. margin-left: 20px;
  186. }
  187. input.submit
  188. {
  189. margin-left: 0px;
  190. }
  191. button,
  192. input.submit
  193. {
  194. display: inline-block;
  195. width: 159px;
  196. height: 37px;
  197. padding-top: 8px;
  198. vertical-align: -18px;
  199. font-size: 18px;
  200. text-align: center;
  201. tab-index: auto;
  202. decorator: image(button);
  203. }
  204. button:focus,
  205. input.submit:focus
  206. {
  207. font-weight: bold;
  208. font-effect: shadow(1px 1px black);
  209. }
  210. button:hover,
  211. input.submit:hover
  212. {
  213. decorator: image(button-hover);
  214. }
  215. button:active,
  216. input.submit:active
  217. {
  218. decorator: image(button-active);
  219. }
  220. input.submit:disabled
  221. {
  222. decorator: image(button);
  223. image-color: rgba(50, 150, 150, 120);
  224. cursor: unavailable;
  225. }
  226. input.text, input.password
  227. {
  228. height: 31px;
  229. padding: 10px 10px 0px;
  230. decorator: tiled-horizontal( text-l, text-c, auto ); /* Right becomes mirrored left */
  231. cursor: text;
  232. }
  233. textarea
  234. {
  235. padding: 14px 12px 10px;
  236. decorator: ninepatch( textarea, textarea-inner );
  237. cursor: text;
  238. }
  239. input.text,
  240. input.password,
  241. select,
  242. dataselect,
  243. textarea
  244. {
  245. color: #333;
  246. font-size: 13px;
  247. }
  248. datagrid input.text
  249. {
  250. width: 100%;
  251. height: 18px;
  252. margin: 0;
  253. padding: 0 5px;
  254. border-width: 1px;
  255. border-color: black;
  256. background-color: white;
  257. font-size: 15px;
  258. decorator: none;
  259. }
  260. select,
  261. dataselect
  262. {
  263. width: 175px;
  264. height: 37px;
  265. }
  266. select selectvalue,
  267. dataselect selectvalue
  268. {
  269. width: auto;
  270. margin-right: 30px;
  271. height: 27px;
  272. padding: 10px 10px 0px 10px;
  273. decorator: image( selectvalue );
  274. }
  275. select selectvalue:hover,
  276. dataselect selectvalue:hover
  277. {
  278. decorator: image( selectvalue-hover );
  279. }
  280. select selectarrow,
  281. dataselect selectarrow
  282. {
  283. width: 30px;
  284. height: 37px;
  285. decorator: image( selectarrow );
  286. }
  287. select selectarrow:hover,
  288. dataselect selectarrow:hover
  289. {
  290. decorator: image( selectarrow-hover );
  291. }
  292. select selectarrow:active,
  293. select selectarrow:checked,
  294. dataselect selectarrow:active,
  295. dataselect selectarrow:checked
  296. {
  297. decorator: image( selectarrow-active );
  298. }
  299. select selectbox,
  300. dataselect selectbox
  301. {
  302. margin-left: 1px;
  303. margin-top: -7px;
  304. width: 162px;
  305. padding: 1px 4px 4px 4px;
  306. }
  307. select selectbox,
  308. dataselect selectbox,
  309. datagrid datagridbody
  310. {
  311. decorator: tiled-box(
  312. selectbox-tl, selectbox-t, selectbox-tr,
  313. selectbox-l, selectbox-c, auto, /* auto mirrors left */
  314. selectbox-bl, selectbox-b, selectbox-br
  315. );
  316. }
  317. select selectbox option,
  318. dataselect selectbox option
  319. {
  320. width: auto;
  321. padding: 3px 0 3px 6px;
  322. background: #DDDD;
  323. }
  324. select selectbox option:nth-child(even),
  325. dataselect selectbox option:nth-child(even),
  326. datagrid datagridrow:nth-child(even)
  327. {
  328. background: #FFFFFFA0;
  329. }
  330. select selectbox option:checked,
  331. dataselect selectbox option:checked
  332. {
  333. font-weight: bold;
  334. }
  335. select selectbox option:hover,
  336. dataselect selectbox option:hover
  337. {
  338. background: #FF5D5D;
  339. }
  340. input.radio,
  341. input.checkbox
  342. {
  343. width: 30px;
  344. height: 30px;
  345. vertical-align: -11px;
  346. }
  347. input.radio
  348. {
  349. decorator: image(radio);
  350. }
  351. input.radio:hover
  352. {
  353. decorator: image(radio-hover);
  354. }
  355. input.radio:active
  356. {
  357. decorator: image(radio-active);
  358. }
  359. input.radio:checked
  360. {
  361. decorator: image(radio-checked);
  362. }
  363. input.radio:checked:hover
  364. {
  365. decorator: image(radio-checked-hover);
  366. }
  367. input.radio:checked:active
  368. {
  369. decorator: image(radio-checked-active);
  370. }
  371. input.checkbox
  372. {
  373. decorator: image(checkbox);
  374. }
  375. input.checkbox:hover
  376. {
  377. decorator: image(checkbox-hover);
  378. }
  379. input.checkbox:active
  380. {
  381. decorator: image(checkbox-active);
  382. }
  383. input.checkbox:checked
  384. {
  385. decorator: image(checkbox-checked);
  386. }
  387. input.checkbox:checked:hover
  388. {
  389. decorator: image(checkbox-checked-hover);
  390. }
  391. input.checkbox:checked:active
  392. {
  393. decorator: image(checkbox-checked-active);
  394. }
  395. input.range {
  396. width: 200px;
  397. height: 32px;
  398. vertical-align: -12px;
  399. }
  400. input.range slidertrack {
  401. margin-top: 3px;
  402. height: 22px;
  403. image-color: #ecc;
  404. decorator: ninepatch( range-track, range-track-inner );
  405. }
  406. input.range sliderbar {
  407. margin-left: -8px;
  408. margin-right: -7px;
  409. margin-top: -3px;
  410. width: 34px;
  411. height: 23px;
  412. decorator: image( range-bar );
  413. }
  414. input.range:hover sliderbar {
  415. image-color: #cc0;
  416. }
  417. input.range sliderbar:active {
  418. image-color: #c80;
  419. }
  420. input.range sliderarrowdec, input.range sliderarrowinc {
  421. width: 17px;
  422. height: 17px;
  423. margin-top: 6px;
  424. }
  425. input.range sliderarrowdec { decorator: image( range-dec ); }
  426. input.range sliderarrowinc { decorator: image( range-inc ); }
  427. input.range sliderarrowdec:hover { decorator: image( range-dec-hover ); }
  428. input.range sliderarrowinc:hover { decorator: image( range-inc-hover ); }
  429. input.range sliderarrowdec:active { decorator: image( range-dec-active ); }
  430. input.range sliderarrowinc:active { decorator: image( range-inc-active ); }
  431. datagrid datagridheader
  432. {
  433. width: auto;
  434. height: 25px;
  435. padding: 5px 10px 0px 10px;
  436. decorator: tiled-horizontal( datagridheader-l, datagridheader-c, datagridheader-r );
  437. }
  438. datagrid datagridbody
  439. {
  440. color: black;
  441. margin-left: 4px;
  442. margin-right: 3px;
  443. padding: 0px 4px 4px 4px;
  444. }
  445. datagridexpand
  446. {
  447. display: block;
  448. margin: 1px 0px 1px 5px;
  449. height: 17px;
  450. width: 17px;
  451. decorator: image( datagridexpand );
  452. }
  453. datagridexpand:hover
  454. {
  455. decorator: image( datagridexpand-hover );
  456. }
  457. datagridexpand:active
  458. {
  459. decorator: image( datagridexpand-active );
  460. }
  461. datagridexpand.collapsed
  462. {
  463. decorator: image( datagridexpand-collapsed );
  464. }
  465. datagridexpand.collapsed:hover
  466. {
  467. decorator: image( datagridexpand-collapsed-hover );
  468. }
  469. datagridexpand.collapsed:active
  470. {
  471. decorator: image( datagridexpand-collapsed-active );
  472. }
  473. scrollbarvertical
  474. {
  475. margin-top: -6px;
  476. margin-bottom: -6px;
  477. margin-right: -11px;
  478. width: 27px;
  479. }
  480. scrollbarvertical slidertrack
  481. {
  482. decorator: tiled-vertical( slidertrack-t, slidertrack-c, slidertrack-b );
  483. }
  484. scrollbarvertical slidertrack:active
  485. {
  486. image-color: #aaa;
  487. }
  488. scrollbarvertical sliderbar
  489. {
  490. margin-left: 4px;
  491. width: 23px;
  492. min-height: 46px;
  493. decorator: tiled-vertical( sliderbar-t, sliderbar-c, sliderbar-b );
  494. }
  495. scrollbarvertical sliderbar:hover
  496. {
  497. decorator: tiled-vertical( sliderbar-hover-t, sliderbar-hover-c, sliderbar-hover-b );
  498. }
  499. scrollbarvertical sliderbar:active
  500. {
  501. decorator: tiled-vertical( sliderbar-active-t, sliderbar-active-c, sliderbar-active-b );
  502. }
  503. scrollbarvertical sliderarrowdec,
  504. scrollbarvertical sliderarrowinc
  505. {
  506. width: 27px;
  507. height: 24px;
  508. }
  509. scrollbarvertical sliderarrowdec
  510. {
  511. decorator: image( sliderarrowdec );
  512. }
  513. scrollbarvertical sliderarrowdec:hover
  514. {
  515. decorator: image( sliderarrowdec-hover );
  516. }
  517. scrollbarvertical sliderarrowdec:active
  518. {
  519. decorator: image( sliderarrowdec-active );
  520. }
  521. scrollbarvertical sliderarrowinc
  522. {
  523. decorator: image( sliderarrowinc );
  524. }
  525. scrollbarvertical sliderarrowinc:hover
  526. {
  527. decorator: image( sliderarrowinc-hover );
  528. }
  529. scrollbarvertical sliderarrowinc:active
  530. {
  531. decorator: image( sliderarrowinc-active );
  532. }
  533. scrollbarhorizontal
  534. {
  535. width: 0px;
  536. height: 0px;
  537. }
  538. textarea scrollbarvertical
  539. {
  540. cursor: arrow;
  541. margin: 10px 0px 4px 0;
  542. width: 12px;
  543. }
  544. textarea scrollbarvertical slidertrack
  545. {
  546. decorator: none;
  547. }
  548. textarea scrollbarvertical sliderbar
  549. {
  550. margin-left: 2px;
  551. width: 10px;
  552. min-height: 16px;
  553. }
  554. textarea scrollbarvertical sliderarrowdec,
  555. textarea scrollbarvertical sliderarrowinc
  556. {
  557. width: 0px;
  558. height: 0px;
  559. }
  560. textarea scrollbarhorizontal
  561. {
  562. cursor: arrow;
  563. margin-left: 7px;
  564. height: 12px;
  565. }
  566. textarea scrollbarhorizontal sliderbar
  567. {
  568. background-color: #BC0000CC;
  569. height: 8px;
  570. min-width: 10px;
  571. }
  572. textarea scrollbarhorizontal sliderbar:hover
  573. {
  574. background-color: #B82500CC;
  575. }
  576. textarea scrollbarhorizontal sliderbar:active
  577. {
  578. background-color: #770000CC;
  579. }