tools.css 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934
  1. /*
  2. Created on : 07-sep-2014, 9:09:03
  3. Author : realor
  4. */
  5. .service_panel
  6. {
  7. position:absolute;
  8. top:4px;
  9. left:4px;
  10. right:4px;
  11. bottom:4px;
  12. -webkit-user-select: none;
  13. -moz-user-select: none;
  14. -khtml-user-select: none;
  15. -ms-user-select: none;
  16. }
  17. .service_panel .header
  18. {
  19. width:100%;
  20. position:absolute;
  21. top:0;
  22. left:0;
  23. right:0;
  24. height:22px;
  25. }
  26. .service_panel > .header > .image_button
  27. {
  28. position:absolute;
  29. top:0;
  30. bottom:0;
  31. width: 20px;
  32. height: 20px;
  33. margin: 0px;
  34. padding:0;
  35. background-repeat: no-repeat;
  36. background-size: 16px 16px;
  37. background-position: center center;
  38. cursor: pointer;
  39. border-radius: 2px;
  40. background-color: #f6f6f6;
  41. border:none;
  42. box-shadow: none;
  43. }
  44. .service_panel > .header > .image_button.home
  45. {
  46. left:0;
  47. background-image: url(images/home.svg);
  48. }
  49. .service_panel > .header > .image_button.back
  50. {
  51. left:24px;
  52. background-image: url(images/back.svg);
  53. }
  54. .service_panel >.header > .image_button:hover
  55. {
  56. background-color: #ffb0b0;
  57. }
  58. .service_panel >.header > .image_button:focus
  59. {
  60. outline:1px dotted black;
  61. }
  62. .service_panel > .header > .directory
  63. {
  64. position:absolute;
  65. left:48px;
  66. right:0;
  67. top:0;
  68. bottom:0;
  69. font-size:13px;
  70. font-weight:normal;
  71. text-align: left;
  72. line-height: 20px;
  73. padding:1px;
  74. padding-left: 2px;
  75. color: #804040;
  76. border: 1px solid #c0c0c0;
  77. overflow:hidden;
  78. }
  79. .service_panel > .path_entries
  80. {
  81. padding-left: 0;
  82. position: absolute;
  83. top:24px;
  84. left:0;
  85. right:0;
  86. bottom:52px;
  87. overflow-y: auto;
  88. margin-top:0;
  89. margin-bottom:0;
  90. -webkit-user-select: none;
  91. -moz-user-select: none;
  92. -khtml-user-select: none;
  93. -ms-user-select: none;
  94. border:1px solid #c0c0c0;
  95. }
  96. .service_panel > .footer
  97. {
  98. position:absolute;
  99. bottom:0;
  100. left:0;
  101. right:0;
  102. height:50px;
  103. }
  104. .service_panel > .footer > .buttons_panel
  105. {
  106. position:absolute;
  107. top:0;
  108. bottom:0;
  109. left:0;
  110. right:0;
  111. text-align: center;
  112. }
  113. .service_panel .entry
  114. {
  115. list-style-type: none;
  116. text-align: left;
  117. }
  118. .service_panel .entry > a
  119. {
  120. display:block;
  121. text-decoration: none;
  122. color: #404040;
  123. cursor:pointer;
  124. padding: 2px;
  125. padding-left: 20px;
  126. font-size:13px;
  127. background-position: 2px 2px;
  128. background-repeat: no-repeat;
  129. background-size: 16px 16px;
  130. border: 1px solid transparent;
  131. }
  132. .service_panel .entry > a:hover
  133. {
  134. color:black;
  135. animation: item_hover 1s;
  136. background-color: #C0C0C0;
  137. color: black;
  138. }
  139. .service_panel .entry > a:focus
  140. {
  141. border: 1px dotted black;
  142. outline:none;
  143. }
  144. .service_panel .entry.service > a
  145. {
  146. font-weight:bold;
  147. background-image: url(images/service.svg);
  148. }
  149. .service_panel .entry.collection > a
  150. {
  151. background-image: url(images/collection.svg);
  152. }
  153. .service_panel .entry.file > a
  154. {
  155. color: #606060;
  156. background-image: url(images/file.svg);
  157. }
  158. .service_panel .entry.selected > a,
  159. .service_panel .entry.selected > a:hover
  160. {
  161. color:black;
  162. background-color:#F0A0A0;
  163. animation: none;
  164. }
  165. .bim_inventory_header
  166. {
  167. text-align: left;
  168. margin-bottom: 6px;
  169. }
  170. .bim_inventory_header label
  171. {
  172. margin-right: 4px;
  173. }
  174. .bim_inventory_tabs
  175. {
  176. text-align: left;
  177. }
  178. .bim_layout_panel
  179. {
  180. position: absolute;
  181. top: 0;
  182. left:0;
  183. right:0;
  184. bottom:0;
  185. overflow: auto;
  186. padding: 0;
  187. border: none;
  188. }
  189. .tool_button.cloud_explorer
  190. {
  191. background-image: url(images/tools/cloud_explorer.svg);
  192. }
  193. .tool_button.opencloud
  194. {
  195. background-image: url(images/tools/opencloud.svg);
  196. }
  197. .tool_button.savecloud
  198. {
  199. background-image: url(images/tools/savecloud.svg);
  200. }
  201. .tool_button.openlocal
  202. {
  203. background-image: url(images/tools/openlocal.svg);
  204. }
  205. .tool_button.savelocal
  206. {
  207. background-image: url(images/tools/savelocal.svg);
  208. }
  209. .tool_button.orbit
  210. {
  211. background-image: url(images/tools/orbit.svg);
  212. }
  213. .tool_button.auto_orbit
  214. {
  215. background-image: url(images/tools/auto_orbit.svg);
  216. }
  217. .tool_button.fly
  218. {
  219. background-image: url(images/tools/fly.svg);
  220. }
  221. .tool_button.draw
  222. {
  223. background-image: url(images/tools/draw.svg);
  224. }
  225. .tool_button.select
  226. {
  227. background-image: url(images/tools/select.svg);
  228. }
  229. .tool_button.rotate
  230. {
  231. background-image: url(images/tools/rotate.svg);
  232. }
  233. .tool_button.move
  234. {
  235. background-image: url(images/tools/move.svg);
  236. }
  237. .tool_button.scale
  238. {
  239. background-image: url(images/tools/scale.svg);
  240. }
  241. .tool_button.place
  242. {
  243. background-image: url(images/tools/place.svg);
  244. }
  245. .tool_button.draw
  246. {
  247. background-image: url(images/tools/draw.svg);
  248. }
  249. .tool_button.options
  250. {
  251. background-image: url(images/tools/options.svg);
  252. }
  253. .tool_button.bim_inventory
  254. {
  255. background-image: url(images/tools/bim_inventory.svg);
  256. }
  257. .tool_button.rebuild
  258. {
  259. background-image: url(images/tools/rebuild.svg);
  260. }
  261. .tool_button.script
  262. {
  263. background-image: url(images/tools/script.svg);
  264. }
  265. .tool_button.measure_length
  266. {
  267. background-image: url(images/tools/measure_length.svg);
  268. }
  269. .tool_button.print
  270. {
  271. background-image: url(images/tools/print.svg);
  272. }
  273. .tool_button.svg_exporter
  274. {
  275. background-image: url(images/tools/svg_exporter.svg);
  276. }
  277. .tool_button.zoom_all
  278. {
  279. background-image: url(images/tools/zoom_all.svg);
  280. }
  281. .tool_button.show
  282. {
  283. background-image: url(images/tools/show.svg);
  284. }
  285. .tool_button.hide
  286. {
  287. background-image: url(images/tools/hide.svg);
  288. }
  289. .tool_button.paint
  290. {
  291. background-image: url(images/tools/paint.svg);
  292. }
  293. .tool_button.center_selection
  294. {
  295. background-image: url(images/tools/center_selection.svg);
  296. }
  297. .tool_button.focus_selection
  298. {
  299. background-image: url(images/tools/focus_selection.svg);
  300. }
  301. .tool_button.bim_layout
  302. {
  303. background-image: url(images/tools/bim_layout.svg);
  304. }
  305. .tool_button.new_scene
  306. {
  307. background-image: url(images/tools/new_scene.svg);
  308. }
  309. .tool_button.outliner
  310. {
  311. background-image: url(images/tools/outliner.svg);
  312. }
  313. .tool_button.inspector
  314. {
  315. background-image: url(images/tools/inspector.svg);
  316. }
  317. .tool_button.statistics
  318. {
  319. background-image: url(images/tools/statistics.svg);
  320. }
  321. .tool_button.section
  322. {
  323. background-image: url(images/tools/section.svg);
  324. }
  325. .tool_button.select_by_qrcode
  326. {
  327. background-image: url(images/tools/select_by_qrcode.svg);
  328. }
  329. div.row
  330. {
  331. margin-top:2px;
  332. margin-bottom:2px;
  333. padding: 3px;
  334. }
  335. div.row > label
  336. {
  337. margin-right: 2px;
  338. }
  339. div.option_block
  340. {
  341. margin-top:3px;
  342. margin-bottom:3px;
  343. border-bottom: 1px solid #d0d0d0;
  344. padding: 4px;
  345. }
  346. div.option_block label,
  347. div.option_block input[type=checkbox]
  348. {
  349. vertical-align: middle;
  350. }
  351. div.option_block.inline label
  352. {
  353. margin-right: 4px;
  354. }
  355. div.option_block.stack label
  356. {
  357. display: block;
  358. margin-bottom: 2px;
  359. }
  360. div.option_block input.back_color
  361. {
  362. vertical-align: middle;
  363. margin-left: 4px;
  364. padding: 0px;
  365. }
  366. div.option_block input[name=decimals]
  367. {
  368. width: 60px;
  369. }
  370. .panel_section > .body > div
  371. {
  372. margin-top: 6px;
  373. }
  374. .panel_section input[name=section_color]
  375. {
  376. margin-left: 4px;
  377. vertical-align: middle;
  378. }
  379. .panel_section input[name=section_offset]
  380. {
  381. margin-left: 4px;
  382. width: 80px;
  383. }
  384. .panel_move > .body > div
  385. {
  386. margin-top: 6px;
  387. }
  388. .panel_move input[name=move_offset]
  389. {
  390. margin-left: 4px;
  391. width: 150px;
  392. }
  393. .panel_rotate > .body > div
  394. {
  395. margin-top: 6px;
  396. }
  397. .panel_rotate input[name=rotate_angle]
  398. {
  399. margin-left: 4px;
  400. width: 80px;
  401. }
  402. .panel_scale > .body > div
  403. {
  404. margin-top: 6px;
  405. }
  406. .panel_scale input[name=scale_factor]
  407. {
  408. margin-left: 4px;
  409. width: 80px;
  410. }
  411. .panel_scale input[name=scale_length]
  412. {
  413. margin-left: 4px;
  414. width: 80px;
  415. }
  416. .panel_scale div > input[type=checkbox],
  417. .panel_scale div > label
  418. {
  419. vertical-align: middle;
  420. }
  421. .panel_place > .body > div
  422. {
  423. margin-top: 6px;
  424. }
  425. .panel_place select[name=place_mode]
  426. {
  427. margin-left: 4px;
  428. }
  429. .panel_extrude > .body > div
  430. {
  431. margin-top: 6px;
  432. }
  433. .panel_extrude input[name=extrude_depth]
  434. {
  435. margin-left: 4px;
  436. width: 100px;
  437. }
  438. .panel_revolve > .body > div
  439. {
  440. margin-top: 6px;
  441. }
  442. .panel_revolve input[name=revolve_angle]
  443. {
  444. margin-left: 4px;
  445. width: 100px;
  446. }
  447. .panel_draw > .body > div
  448. {
  449. margin-top: 6px;
  450. }
  451. .panel_draw input[name=draw_offset]
  452. {
  453. margin-left: 4px;
  454. width: 100px;
  455. }
  456. .script_box textarea
  457. {
  458. font-family: monospace;
  459. font-size: 14px;
  460. color: #404040;
  461. box-sizing:border-box;
  462. width: 100%;
  463. height: 300px;
  464. }
  465. .controller_list li
  466. {
  467. list-style-type: none;
  468. margin:6px 3px 6px 3px;
  469. }
  470. .controller_list li label
  471. {
  472. display: block;
  473. vertical-align: middle;
  474. }
  475. .controller_list li input
  476. {
  477. display: inline-block;
  478. vertical-align: text-bottom;
  479. }
  480. .controller_list li span
  481. {
  482. display: inline-block;
  483. vertical-align: middle;
  484. }
  485. .controller_list li span.type
  486. {
  487. color: #806060;
  488. margin-right: 4px;
  489. }
  490. .dialog .body div.script_name > label
  491. {
  492. display: inline-block;
  493. width: 80px;
  494. }
  495. .dialog .body div.script_name > input[type=text]
  496. {
  497. display: inline-block;
  498. width: calc(100% - 80px);
  499. }
  500. .dialog .footer button
  501. {
  502. min-width: 40px;
  503. }
  504. div.script_code
  505. {
  506. position: absolute;
  507. top: 30px;
  508. left: 4px;
  509. right: 4px;
  510. bottom: 4px;
  511. border: 1px solid gray;
  512. overflow: auto;
  513. font-size: 14px;
  514. }
  515. .fly_panel
  516. {
  517. display: flex;
  518. justify-content: center;
  519. align-items: center;
  520. }
  521. .fly_panel .keypad
  522. {
  523. position: relative;
  524. --button_size: 16px;
  525. --button_margin: 4px;
  526. --cell_size: calc(var(--button_size) + 2 * var(--button_margin));
  527. --side_margin: 10px;
  528. width: 100%;
  529. height: calc( 3 * var(--cell_size));
  530. }
  531. .fly_panel .keypad .leftWheel
  532. {
  533. position: absolute;
  534. left: var(--side_margin);
  535. top: 0;
  536. width: calc(3 * var(--cell_size));
  537. height: calc(3 * var(--cell_size));
  538. border: 1px solid black;
  539. border-radius: calc(3 * var(--cell_size));
  540. }
  541. .fly_panel .keypad .pitchPanel
  542. {
  543. left: calc(50% - var(--cell_size) / 2);
  544. top: var(--cell_size);
  545. position: absolute;
  546. width: calc(1 * var(--cell_size));
  547. height: calc(2 * var(--cell_size));
  548. border: 1px solid black;
  549. border-radius: calc(var(--cell_size));
  550. }
  551. .fly_panel .keypad .rightWheel
  552. {
  553. right: var(--side_margin);
  554. top: 0;
  555. position: absolute;
  556. width: calc(3 * var(--cell_size));
  557. height: calc(3 * var(--cell_size));
  558. border: 1px solid black;
  559. border-radius: calc(3 * var(--cell_size));
  560. }
  561. .fly_panel button
  562. {
  563. position: absolute;
  564. width: var(--button_size);
  565. height: var(--button_size);
  566. border: 1px solid #808080;
  567. border-radius: var(--button_size);
  568. font-size: 9px;
  569. background-color: white;
  570. color: black;
  571. margin:0;
  572. padding: 0;
  573. background-repeat: no-repeat;
  574. background-size: 80% 80%;
  575. background-position: center center;
  576. }
  577. .fly_panel .keypad .stick
  578. {
  579. --stick_size: 24px;
  580. width: var(--stick_size);
  581. height: var(--stick_size);
  582. border-radius: var(--stick_size);
  583. position: absolute;
  584. background-color: #e0e0e0;
  585. background-size: 80% 80%;
  586. background-position: center center;
  587. background-repeat: no-repeat;
  588. border : 1px solid transparent;
  589. box-sizing: border-box;
  590. touch-action: none;
  591. }
  592. .fly_panel .keypad .leftWheel .stick
  593. {
  594. top: calc(50% - 0.5 * var(--stick_size));
  595. left: calc(50% - 0.5 * var(--stick_size));
  596. background-image: url(images/tools/fly_drone_front.svg);
  597. touch-action: none;
  598. }
  599. .fly_panel .keypad .rightWheel .stick
  600. {
  601. top: calc(50% - 0.5 * var(--stick_size));
  602. left: calc(50% - 0.5 * var(--stick_size));
  603. background-image: url(images/tools/fly_drone_top.svg);
  604. touch-action: none;
  605. }
  606. .fly_panel.stick .leftWheel button,
  607. .fly_panel.stick .rightWheel button
  608. {
  609. display: none;
  610. }
  611. .fly_panel.stick .stick
  612. {
  613. border-color : #404040;
  614. }
  615. .fly_panel button:active,
  616. .fly_panel button.pressed
  617. {
  618. background-color: #FF8080;
  619. }
  620. .fly_panel button.forward
  621. {
  622. left: calc(1 * var(--cell_size) + var(--button_margin));
  623. top : calc(0 * var(--cell_size) + var(--button_margin));
  624. background-image: url(images/tools/fly_forward.svg);
  625. }
  626. .fly_panel button.backward
  627. {
  628. left: calc(1 * var(--cell_size) + var(--button_margin));
  629. top : calc(2 * var(--cell_size) + var(--button_margin));
  630. background-image: url(images/tools/fly_backward.svg);
  631. }
  632. .fly_panel button.rotateLeft
  633. {
  634. left: calc(0 * var(--cell_size) + var(--button_margin));
  635. top : calc(1 * var(--cell_size) + var(--button_margin));
  636. background-image: url(images/tools/fly_left.svg);
  637. }
  638. .fly_panel button.rotateRight
  639. {
  640. left: calc(2 * var(--cell_size) + var(--button_margin));
  641. top : calc(1 * var(--cell_size) + var(--button_margin));
  642. background-image: url(images/tools/fly_right.svg);
  643. }
  644. .fly_panel button.ascend
  645. {
  646. left: calc(1 * var(--cell_size) + var(--button_margin));
  647. top : calc(0 * var(--cell_size) + var(--button_margin));
  648. }
  649. .fly_panel button.descend
  650. {
  651. left: calc(1 * var(--cell_size) + var(--button_margin));
  652. top : calc(2 * var(--cell_size) + var(--button_margin));
  653. }
  654. .fly_panel button.moveLeft
  655. {
  656. left: calc(0 * var(--cell_size) + var(--button_margin));
  657. top : calc(1 * var(--cell_size) + var(--button_margin));
  658. }
  659. .fly_panel button.moveRight
  660. {
  661. left: calc(2 * var(--cell_size) + var(--button_margin));
  662. top : calc(1 * var(--cell_size) + var(--button_margin));
  663. }
  664. .fly_panel button.lookUp
  665. {
  666. left: calc(0 * var(--cell_size) + var(--button_margin));
  667. top : calc(0 * var(--cell_size) + var(--button_margin));
  668. }
  669. .fly_panel button.lookDown
  670. {
  671. left: calc(0 * var(--cell_size) + var(--button_margin));
  672. top : calc(1 * var(--cell_size) + var(--button_margin));
  673. }
  674. .fly_panel button.options
  675. {
  676. --options_button_size : 20px;
  677. left: calc(50% - var(--options_button_size) / 2 + 1px);
  678. top: 0;
  679. width: var(--options_button_size);
  680. height: var(--options_button_size);
  681. background-image: url(images/tools/fly_options.svg);
  682. border: none;
  683. }
  684. .fly_options input[name=ground]
  685. {
  686. margin-left: 4px;
  687. margin-right: 4px;
  688. width: 60px;
  689. }
  690. .inspect_geometry ul.tree .selected
  691. {
  692. background-color: #FFA0A0;
  693. color: black;
  694. }
  695. .inspect_geometry ul.tree li.face
  696. {
  697. background-image: url(images/geometry/loop.svg);
  698. }
  699. .inspect_geometry ul.tree li.face.holes
  700. {
  701. background-image: url(images/geometry/face.svg);
  702. }
  703. .inspect_geometry ul.tree li.loop
  704. {
  705. background-image: url(images/geometry/loop.svg);
  706. }
  707. .inspect_geometry ul.tree li.hole
  708. {
  709. background-image: url(images/geometry/hole.svg);
  710. }
  711. .inspect_geometry ul.tree li.vertex
  712. {
  713. background-image: url(images/geometry/vertex.svg);
  714. }
  715. .inspect_geometry ul.tree li.normal
  716. {
  717. background-image: url(images/geometry/normal.svg);
  718. }
  719. .inspect_geometry ul.summary
  720. {
  721. text-align: left;
  722. padding-left: 4px;
  723. margin-bottom: 0;
  724. }
  725. .inspect_geometry ul.summary li
  726. {
  727. text-align: left;
  728. list-style-type: none;
  729. }
  730. .inspect_geometry table.data a
  731. {
  732. text-decoration: none;
  733. padding: 0 5px 0 5px;
  734. border-radius: 2px;
  735. color: blue;
  736. }
  737. .inspect_geometry table.data a:hover
  738. {
  739. background-color: #e0e0e0;
  740. }
  741. .property_selector_scroll
  742. {
  743. height: 40%;
  744. overflow: auto;
  745. border: 1px solid #c0c0c0;
  746. border-radius: 2px;
  747. padding: 4px;
  748. }
  749. .property_selector_tree .selected
  750. {
  751. background-color: #F0A0A0;
  752. }
  753. .property_selector_tree li.property_set
  754. {
  755. background-image: url(images/collection.svg);
  756. }
  757. .property_selector_tree li.string
  758. {
  759. background-image: url(images/inspector/string.svg);
  760. color: blue;
  761. }
  762. .property_selector_tree li.boolean
  763. {
  764. background-image: url(images/inspector/boolean.svg);
  765. color: #008000;
  766. }
  767. .property_selector_tree li.number
  768. {
  769. background-image: url(images/inspector/number.svg);
  770. }
  771. .property_selector_tree li.string a
  772. {
  773. color: #0000ff;
  774. }
  775. .property_selector_tree li.boolean a
  776. {
  777. color: #008080;
  778. }
  779. .property_selector_tree li.number a
  780. {
  781. color: #404040;
  782. }
  783. .property_selector_toolbar
  784. {
  785. height: 30px;
  786. min-height: 30px;
  787. text-align: center;
  788. }
  789. .property_selector_toolbar button
  790. {
  791. min-width: 24px;
  792. }