2
0

cdb.less 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738
  1. @import "common.less";
  2. .cdb-view > .hide-tabs > .tab > ::-webkit-scrollbar {
  3. width: 12px;
  4. }
  5. .cdb-view .cdb {
  6. margin-bottom: 350px;
  7. }
  8. .cdb-view.cdb-diff {
  9. .cdb-sheet th, th.start {
  10. background-color: #d60;
  11. }
  12. }
  13. .cdb {
  14. background-color : black;
  15. &:focus {
  16. outline: none;
  17. }
  18. .cdb-sheet {
  19. td.cursorView {
  20. border: 2px solid #ccc !important;
  21. }
  22. th.highlight {
  23. background-color: rgb(28, 60, 112);
  24. }
  25. .highlight {
  26. td.start, &th {
  27. background-color: rgb(28, 60, 112);
  28. }
  29. }
  30. .active-line {
  31. background-color: #1f1e1e;
  32. }
  33. tr.selected, td.selected {
  34. background-color : #313a48;
  35. &.top td.start { border-top: 1px solid #ccc; }
  36. &.bot td.start { border-bottom: 1px solid #ccc; }
  37. td.start, td.t_readonly {
  38. border-left: 1px solid #ccc;
  39. border-right: 1px solid #ccc;
  40. color: rgb(170, 170, 170);
  41. background-color: #0b57d0;
  42. }
  43. }
  44. td.selected {
  45. &.top { border-top: 1px solid #ccc; }
  46. &.right { border-right: 1px solid #ccc; }
  47. &.bot { border-bottom: 1px solid #ccc; }
  48. &.left { border-left: 1px solid #ccc; }
  49. }
  50. }
  51. .cdb-sheet {
  52. width : 100%;
  53. table-layout:fixed;
  54. border-collapse : collapse;
  55. border-spacing : 0;
  56. background-color: #222;
  57. position: relative; // so that error message follow along with scrolling
  58. th.start {
  59. width : 30px;
  60. border-left-color : #333;
  61. cursor:default;
  62. }
  63. td.start {
  64. text-align : center;
  65. cursor : pointer;
  66. background-color: #333;
  67. border-left: none;
  68. }
  69. tr.head td.start {
  70. cursor : nw-resize;
  71. }
  72. tr.separator {
  73. height : 10px;
  74. td {
  75. position: sticky;
  76. top: 19px;
  77. z-index: 2;
  78. border-left: none;
  79. padding-top: 6px;
  80. color : #bbb;
  81. font-weight : bold;
  82. background-color : #444;
  83. .toggle {
  84. padding : 0px 4px;
  85. padding-left : 10px;
  86. color : #aaa;
  87. &:hover {
  88. color : #ccc;
  89. }
  90. }
  91. }
  92. &.seplevel-1 td {
  93. .toggle {
  94. padding-left : 25px;
  95. }
  96. background-color : #3d3d3d;
  97. }
  98. &.seplevel-2 td {
  99. .toggle {
  100. padding-left : 40px;
  101. }
  102. background-color : #383838;
  103. }
  104. &.seplevel-3 td {
  105. .toggle {
  106. padding-left : 50px;
  107. }
  108. background-color : #343434;
  109. }
  110. &.seplevel-4 td {
  111. .toggle {
  112. padding-left : 60px;
  113. }
  114. background-color : #303030;
  115. }
  116. &.seplevel-5 td {
  117. .toggle {
  118. padding-left : 70px;
  119. }
  120. background-color : #303030;
  121. }
  122. &.seplevel-6 td {
  123. .toggle {
  124. padding-left : 80px;
  125. }
  126. background-color : #303030;
  127. }
  128. }
  129. tr.locIgnored {
  130. background-color: #221C1C;
  131. }
  132. td {
  133. padding : 2px 4px;
  134. overflow : hidden;
  135. }
  136. tr.props td, tr.code td, tr.list td {
  137. overflow : visible; // for flags dropdown
  138. }
  139. &> tbody > tr.props:last-child {
  140. border-bottom: 0;
  141. background-color: black;
  142. }
  143. td.edit {
  144. /*padding : 2px;
  145. padding-right : 6px;*/
  146. &> input, textarea, select {
  147. width : 100%;
  148. padding : 0px 2px;
  149. border : none;
  150. }
  151. &> textarea {
  152. overflow: hidden;
  153. }
  154. &> div.error {
  155. margin-top : 5px;
  156. position : absolute;
  157. z-index : @cdb-error-layer;
  158. color : red;
  159. background-color : #633;
  160. border : 1px solid #833;
  161. max-width : 200px;
  162. padding : 2px;
  163. }
  164. }
  165. td.edit_long {
  166. padding-bottom : 0px;
  167. }
  168. tr.filtered, tr.hidden, tr.sep-hidden {
  169. display : none;
  170. }
  171. tr.clickable {
  172. cursor : pointer;
  173. }
  174. tr.clickable:hover {
  175. background-color : #f8f8f8;
  176. }
  177. &:not(.cdb-sub-sheet) > thead.head > th {
  178. position: sticky;
  179. z-index: @header-layer;
  180. top: 0;
  181. }
  182. tr.head, th {
  183. font-weight: bold;
  184. text-align: center;
  185. padding: 1px 10px 4px 10px;
  186. box-shadow: inset 0px -1px 1px #666;
  187. border-left: 1px solid #444;
  188. background-color : #222;
  189. color : #ddd;
  190. width: auto;
  191. white-space: nowrap;
  192. overflow: hidden;
  193. cursor: pointer;
  194. user-select: none;
  195. }
  196. tr.head .display {
  197. font-style : italic;
  198. }
  199. td {
  200. user-select: none;
  201. border-left : 1px solid #444;
  202. }
  203. tr {
  204. border-bottom : 1px solid #333;
  205. }
  206. tr.validation-error {
  207. td {
  208. background-color: rgba(255, 0, 0, 0.3);
  209. }
  210. }
  211. // ----- types -------
  212. tr.list {
  213. background-color:black;
  214. & > td {
  215. padding : 0;
  216. padding-bottom: 20px;
  217. border : none;
  218. }
  219. }
  220. th.t_tilepos {
  221. width: 64px;
  222. }
  223. td.t_tilepos {
  224. text-align : center;
  225. }
  226. td.t_readonly {
  227. background-color: #333;
  228. }
  229. th.t_bool,
  230. th.t_int,
  231. th.t_float {
  232. width: 6%;
  233. }
  234. th.hidden, td.hidden {
  235. width: 1px;
  236. padding: 0;
  237. visibility: hidden;
  238. }
  239. td.t_bool {
  240. text-align : center;
  241. }
  242. td.t_bool.true {
  243. color: #76AA09;
  244. font-weight: bold;
  245. font-size: inherit;
  246. }
  247. td.t_bool.false {
  248. color: red;
  249. font-weight: normal;
  250. font-size: 75%;
  251. }
  252. td.t_script {
  253. div.script {
  254. white-space: nowrap;
  255. font-family : Consolas, Courier;
  256. font-size: 80%;
  257. }
  258. input, textarea {
  259. font-family : Consolas, Courier;
  260. }
  261. span {
  262. display: inline-block;
  263. }
  264. color : #CCC;
  265. .kwd {
  266. color : #88F;
  267. }
  268. .str {
  269. color : #C66;
  270. }
  271. .comment {
  272. color : #182;
  273. }
  274. }
  275. .tile {
  276. display: inline-block;
  277. vertical-align: middle;
  278. image-rendering: pixelated;
  279. }
  280. td.t_int, td.t_float {
  281. text-align : center;
  282. input {
  283. text-align : center;
  284. }
  285. }
  286. td.t_int.zero, td.t_float.zero {
  287. color: #888;
  288. }
  289. td.nan {
  290. color : #C44;
  291. }
  292. td.formula {
  293. font-style : italic;
  294. color : #888;
  295. }
  296. td.t_list, td.t_properties {
  297. white-space: nowrap;
  298. cursor : pointer;
  299. text-overflow: ellipsis;
  300. max-width: 900px;
  301. overflow: hidden!important;
  302. img {
  303. max-height: 32px;
  304. max-width: 32px;
  305. }
  306. //&.parent-sub-table {
  307. //background-color: #2b3036;
  308. //}
  309. }
  310. td.t_enum {
  311. padding-left : 5px;
  312. }
  313. td.t_color {
  314. text-align : center;
  315. position: relative;
  316. ._hide-modal {
  317. opacity : 0;
  318. }
  319. .sp-replacer {
  320. visibility: hidden;
  321. position: absolute;
  322. }
  323. .color {
  324. display : inline-block;
  325. width : 20px;
  326. height : 20px;
  327. border : 2px solid white;
  328. outline : 1px solid black;
  329. }
  330. }
  331. td.t_flags {
  332. position: relative;
  333. overflow: visible;
  334. }
  335. td.t_ref, td.t_enum {
  336. overflow : visible;
  337. }
  338. .flagValues {
  339. position : absolute;
  340. background-color : #333;
  341. width : 200px;
  342. padding : 5px;
  343. border : 1px solid #666;
  344. z-index: @cdb-flageditor-layer;
  345. label {
  346. display : block;
  347. clear : both;
  348. input {
  349. float : left;
  350. margin-right: 5px;
  351. }
  352. padding : 1px;
  353. }
  354. label:hover {
  355. background-color : #262d35;
  356. }
  357. }
  358. td.t_curve {
  359. width: 100%;
  360. height: 100%;
  361. .cdb-curve {
  362. display: block;
  363. height:50px;
  364. width:100%;
  365. }
  366. }
  367. .cdb-curve {
  368. display: inline-block;
  369. transform: scaleY(-1);
  370. height:1em;
  371. width:50px;
  372. path {
  373. fill: transparent;
  374. stroke-width: 0.5px;
  375. shape-rendering: geometricPrecision;
  376. vector-effect: non-scaling-stroke;
  377. }
  378. .x-axis, .y-axis {
  379. stroke: #AAA;
  380. }
  381. .curve {
  382. stroke: white;
  383. }
  384. }
  385. td.t_gradient {
  386. width: 100%;
  387. height: 100%;
  388. &.edit .cdb-gradient {
  389. visibility: hidden;
  390. }
  391. .cdb-gradient {
  392. display: block;
  393. width: 100%;
  394. height: 100%;
  395. min-height: 25px;
  396. min-width: 50px;
  397. }
  398. }
  399. .cdb-gradient {
  400. display: inline-block;
  401. position: relative;
  402. width: 50px;
  403. height: 1em;
  404. .inner-gradient, .alpha-bg {
  405. position: absolute;
  406. top: 0;
  407. left: 0;
  408. right: 0;
  409. bottom: 0;
  410. }
  411. .alpha-bg {
  412. z-index: 0;
  413. background:
  414. url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAE5JREFUWIVjnL12+38GCoCBnisl2hmYKNJNBTDqgFEHjDpg1AGjDhh1wKgDGE/f/kNRe+DCpd0UOWDAQ2DUAaMOGHXAqANGHTDqgFEHAAAO3QneZHM9AwAAAABJRU5ErkJggg==);
  415. }
  416. .inner-gradient {
  417. z-index: 1;
  418. }
  419. }
  420. span.error {
  421. color : #C44;
  422. }
  423. span.minor {
  424. color: #666;
  425. }
  426. tr.props {
  427. background-color: #111;
  428. &> td {
  429. border : none;
  430. padding : 0;
  431. text-align: right;
  432. &> div {
  433. display: inline-block;
  434. max-width: 600px;
  435. &.cdb-large {
  436. max-width: 1000px;
  437. }
  438. }
  439. }
  440. .cdb-sheet {
  441. th {
  442. width: 200px;
  443. &.start {
  444. width : 20px;
  445. }
  446. }
  447. td, td > input {
  448. text-align: left;
  449. }
  450. width : auto;
  451. min-width: 400px;
  452. border-right: 1px solid #333;
  453. margin-bottom: 15px;
  454. }
  455. }
  456. td.t_file {
  457. .preview {
  458. .previewContent {
  459. .label {
  460. text-align : center;
  461. margin-bottom : 5px;
  462. background-color: #444;
  463. font-family : monospace;
  464. }
  465. display : none;
  466. position : fixed;
  467. background-color : #333;
  468. color: white;
  469. border : 1px solid black;
  470. padding : 5px;
  471. z-index : @cdb-preview-layer;
  472. }
  473. }
  474. .inlineImage {
  475. >img {
  476. max-height: 100px;
  477. }
  478. }
  479. .preview:hover {
  480. .previewContent {
  481. display : block;
  482. }
  483. }
  484. }
  485. div.cdb-script {
  486. position : relative;
  487. .codeeditor {
  488. min-height: 500px;
  489. }
  490. }
  491. .cdb-types {
  492. position: absolute;
  493. z-index: 900;
  494. padding: 2px 2px 2px 2px;
  495. display: flex;
  496. background-color: #333333;
  497. border-style: solid;
  498. border-width: 1px;
  499. border-color: #474747;
  500. cursor:pointer;
  501. select {
  502. cursor:pointer;
  503. min-width: 100px;
  504. width: auto!important;
  505. }
  506. #dropdown-custom-type {
  507. width:fit-content;
  508. }
  509. #parameters {
  510. display: flex;
  511. }
  512. input {
  513. cursor:pointer;
  514. width: 50px;
  515. }
  516. input[type="checkbox"] {
  517. width: auto;
  518. height: auto;
  519. margin: 0px 0px 0px 0px;
  520. margin-top: 2px;
  521. margin-bottom: 2px;
  522. }
  523. p {
  524. margin-top: 2px;
  525. margin-bottom: 2px;
  526. padding-left: 2px;
  527. padding-right: 2px;
  528. }
  529. }
  530. .cdb-preview-drag {
  531. position: absolute;
  532. width: 100%;
  533. height: 5px;
  534. background-color: #54FF85;
  535. pointer-events: none;
  536. }
  537. }
  538. &.cdb-obj-editor {
  539. &:not(.cdb-large &) {
  540. margin-top : 10px;
  541. }
  542. >.cdb-sheet {
  543. border : 2px solid #333;
  544. >tr>th {
  545. width : 50px;
  546. }
  547. tr.props .cdb-sheet > tr > th {
  548. width : 50px;
  549. }
  550. }
  551. div.cdb-large .cdb-sheet {
  552. min-width: 0 !important;
  553. }
  554. div.cdb-script {
  555. .codeeditor {
  556. min-height: 300px;
  557. }
  558. }
  559. }
  560. .floating-thead {
  561. position: fixed;
  562. background-color : #222;
  563. th:first-child {
  564. border-left: 1px solid #222;
  565. }
  566. th {
  567. overflow: hidden;
  568. color : #ddd;
  569. padding: 1px 10px;
  570. border-left: 1px solid #555;
  571. border-bottom: 2px solid #666;
  572. }
  573. }
  574. .content-modal {
  575. width: 350px;
  576. min-height: 300px;
  577. margin: auto;
  578. padding: 15px;
  579. background: #292929;
  580. border: 2px solid #555;
  581. color: #dadada;
  582. text-align: left;
  583. form {
  584. font-size: 14px;
  585. input[type=text], input[type=submit], select {
  586. height: 28px;
  587. }
  588. input:user-invalid {
  589. outline: 2px red dashed;
  590. }
  591. td {
  592. vertical-align: top;
  593. }
  594. td.first {
  595. width : 120px;
  596. }
  597. .formula {
  598. display: none;
  599. }
  600. .t_int, .t_float {
  601. .disp { display : table-row; }
  602. .formula { display: table-row; }
  603. }
  604. .t_string {
  605. .kind { display : table-row; }
  606. }
  607. .t_enum .values, .t_flags .values { display : table-row; }
  608. .t_ref .sheet { display : table-row; }
  609. .t_layer .sheet { display : table-row; }
  610. .t_custom .custom { display : table-row; }
  611. .t_id .scope { display : table-row; }
  612. .values, .sheet, .custom, .disp, .kind, .scope { display : none; }
  613. .doctog {
  614. cursor:pointer;
  615. color : #888;
  616. }
  617. .hide {
  618. display: none !important;
  619. }
  620. }
  621. form.edit {
  622. input.create {
  623. display: none;
  624. }
  625. }
  626. form.create {
  627. input.edit {
  628. display: none;
  629. }
  630. }
  631. #errorModal {
  632. color: red;
  633. text-align: center;
  634. }
  635. }
  636. }
  637. body.fullScreenMode {
  638. .lm_content, .lm_header, .lm_splitter {
  639. display : none;
  640. }
  641. .lm_content.fullScreen {
  642. display: block;
  643. position: absolute;
  644. left: 0;
  645. top: 0;
  646. width : 100% !important;
  647. height: 100% !important;
  648. }
  649. }