melage 0.0.65__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (501) hide show
  1. melage/__init__.py +16 -0
  2. melage/cli.py +4 -0
  3. melage/graphics/GLGraphicsItem.py +286 -0
  4. melage/graphics/GLViewWidget.py +595 -0
  5. melage/graphics/Transform3D.py +55 -0
  6. melage/graphics/__init__.py +8 -0
  7. melage/graphics/functions.py +101 -0
  8. melage/graphics/items/GLAxisItem.py +149 -0
  9. melage/graphics/items/GLGridItem.py +178 -0
  10. melage/graphics/items/GLPolygonItem.py +77 -0
  11. melage/graphics/items/GLScatterPlotItem.py +135 -0
  12. melage/graphics/items/GLVolumeItem.py +280 -0
  13. melage/graphics/items/GLVolumeItem_b.py +237 -0
  14. melage/graphics/items/__init__.py +0 -0
  15. melage/graphics/shaders.py +202 -0
  16. melage/main.py +270 -0
  17. melage/requirements22.txt +25 -0
  18. melage/requirements_old.txt +28 -0
  19. melage/resource/0circle.png +0 -0
  20. melage/resource/0circle_faded.png +0 -0
  21. melage/resource/3d.png +0 -0
  22. melage/resource/3d.psd +0 -0
  23. melage/resource/3dFaded.png +0 -0
  24. melage/resource/Eraser.png +0 -0
  25. melage/resource/EraserFaded.png +0 -0
  26. melage/resource/EraserX.png +0 -0
  27. melage/resource/EraserXFaded.png +0 -0
  28. melage/resource/Eraser_icon.svg +79 -0
  29. melage/resource/Hand.png +0 -0
  30. melage/resource/HandIcons_0.png +0 -0
  31. melage/resource/Hand_IX.png +0 -0
  32. melage/resource/Hand_IXFaded.png +0 -0
  33. melage/resource/Handsqueezed.png +0 -0
  34. melage/resource/Handwriting (copy).png +0 -0
  35. melage/resource/Handwriting.png +0 -0
  36. melage/resource/HandwritingMinus.png +0 -0
  37. melage/resource/HandwritingMinusX.png +0 -0
  38. melage/resource/HandwritingPlus.png +0 -0
  39. melage/resource/HandwritingPlusX.png +0 -0
  40. melage/resource/Move_icon.svg +8 -0
  41. melage/resource/PngItem_2422924.png +0 -0
  42. melage/resource/about.png +0 -0
  43. melage/resource/about_logo.png +0 -0
  44. melage/resource/about_logo0.png +0 -0
  45. melage/resource/action_check.png +0 -0
  46. melage/resource/action_check_OFF.png +0 -0
  47. melage/resource/arrow).png +0 -0
  48. melage/resource/arrow.png +0 -0
  49. melage/resource/arrowFaded.png +0 -0
  50. melage/resource/arrow_org.png +0 -0
  51. melage/resource/arrow_org.png.png +0 -0
  52. melage/resource/arrows.png +0 -0
  53. melage/resource/authors.mp4 +0 -0
  54. melage/resource/box.png +0 -0
  55. melage/resource/check-image-icon-0.jpg +0 -0
  56. melage/resource/circle.png +0 -0
  57. melage/resource/circle_faded.png +0 -0
  58. melage/resource/circle_or.png +0 -0
  59. melage/resource/close.png +0 -0
  60. melage/resource/close_bg.png +0 -0
  61. melage/resource/color/Simple.txt +18 -0
  62. melage/resource/color/Tissue.txt +24 -0
  63. melage/resource/color/Tissue12.txt +27 -0
  64. melage/resource/color/albert_LUT.txt +102 -0
  65. melage/resource/color/mcrib_LUT.txt +102 -0
  66. melage/resource/color/pediatric1.txt +29 -0
  67. melage/resource/color/pediatric1_old.txt +27 -0
  68. melage/resource/color/pediatric2.txt +87 -0
  69. melage/resource/color/pediatric3.txt +29 -0
  70. melage/resource/color/pediatrics (copy).csv +103 -0
  71. melage/resource/color/tissue_seg.txt +4 -0
  72. melage/resource/contour.png +0 -0
  73. melage/resource/contour.svg +2 -0
  74. melage/resource/contourFaded.png +0 -0
  75. melage/resource/contourX.png +0 -0
  76. melage/resource/contourXFaded.png +0 -0
  77. melage/resource/dti.png +0 -0
  78. melage/resource/dti0.png +0 -0
  79. melage/resource/dti222.png +0 -0
  80. melage/resource/dti_or.png +0 -0
  81. melage/resource/eco.png +0 -0
  82. melage/resource/eco22.png +0 -0
  83. melage/resource/eco_old.png +0 -0
  84. melage/resource/eco_or.png +0 -0
  85. melage/resource/eco_or2.png +0 -0
  86. melage/resource/eco_seg.png +0 -0
  87. melage/resource/eco_seg_old.png +0 -0
  88. melage/resource/export.png +0 -0
  89. melage/resource/hand-grab-icon-10.jpg +0 -0
  90. melage/resource/hand-grab-icon-25.jpg +0 -0
  91. melage/resource/info.png +0 -0
  92. melage/resource/line.png +0 -0
  93. melage/resource/linefaded.png +0 -0
  94. melage/resource/load.png +0 -0
  95. melage/resource/main.ico +0 -0
  96. melage/resource/manual_images/3D_rightc.png +0 -0
  97. melage/resource/manual_images/3D_rightc_goto.png +0 -0
  98. melage/resource/manual_images/3D_rightc_paint.png +0 -0
  99. melage/resource/manual_images/3D_rightc_paint_draw1.png +0 -0
  100. melage/resource/manual_images/3D_rightc_paint_draw2.png +0 -0
  101. melage/resource/manual_images/3D_rightc_paint_render.png +0 -0
  102. melage/resource/manual_images/3D_rightc_paint_render2.png +0 -0
  103. melage/resource/manual_images/3D_rightc_paint_render3.png +0 -0
  104. melage/resource/manual_images/3D_rightc_paint_render4.png +0 -0
  105. melage/resource/manual_images/3D_rightc_paint_render5.png +0 -0
  106. melage/resource/manual_images/3D_rightc_paint_render6.png +0 -0
  107. melage/resource/manual_images/3D_rightc_seg.png +0 -0
  108. melage/resource/manual_images/exit_toolbar.png +0 -0
  109. melage/resource/manual_images/load_image_file.png +0 -0
  110. melage/resource/manual_images/load_image_file_openp.png +0 -0
  111. melage/resource/manual_images/main_page.png +0 -0
  112. melage/resource/manual_images/menu_file.png +0 -0
  113. melage/resource/manual_images/menu_file_export.png +0 -0
  114. melage/resource/manual_images/menu_file_import.png +0 -0
  115. melage/resource/manual_images/menu_file_settings.png +0 -0
  116. melage/resource/manual_images/menu_file_ss.png +0 -0
  117. melage/resource/manual_images/open_save_load.png +0 -0
  118. melage/resource/manual_images/panning_toolbar.png +0 -0
  119. melage/resource/manual_images/segmentation_toolbar.png +0 -0
  120. melage/resource/manual_images/tab_mri.png +0 -0
  121. melage/resource/manual_images/tab_us.png +0 -0
  122. melage/resource/manual_images/tabs.png +0 -0
  123. melage/resource/manual_images/toolbar_tools.png +0 -0
  124. melage/resource/manual_images/tools_basic.png +0 -0
  125. melage/resource/manual_images/tools_bet.png +0 -0
  126. melage/resource/manual_images/tools_cs.png +0 -0
  127. melage/resource/manual_images/tools_deepbet.png +0 -0
  128. melage/resource/manual_images/tools_imageinfo.png +0 -0
  129. melage/resource/manual_images/tools_maskO.png +0 -0
  130. melage/resource/manual_images/tools_masking.png +0 -0
  131. melage/resource/manual_images/tools_n4b.png +0 -0
  132. melage/resource/manual_images/tools_resize.png +0 -0
  133. melage/resource/manual_images/tools_ruler.png +0 -0
  134. melage/resource/manual_images/tools_seg.png +0 -0
  135. melage/resource/manual_images/tools_threshold.png +0 -0
  136. melage/resource/manual_images/tools_tools.png +0 -0
  137. melage/resource/manual_images/widget_color.png +0 -0
  138. melage/resource/manual_images/widget_color_add.png +0 -0
  139. melage/resource/manual_images/widget_color_add2.png +0 -0
  140. melage/resource/manual_images/widget_color_additional.png +0 -0
  141. melage/resource/manual_images/widget_images.png +0 -0
  142. melage/resource/manual_images/widget_images2.png +0 -0
  143. melage/resource/manual_images/widget_images3.png +0 -0
  144. melage/resource/manual_images/widget_marker.png +0 -0
  145. melage/resource/manual_images/widget_mri.png +0 -0
  146. melage/resource/manual_images/widget_mri2.png +0 -0
  147. melage/resource/manual_images/widget_segintensity.png +0 -0
  148. melage/resource/manual_images/widget_tab_mutualview.png +0 -0
  149. melage/resource/manual_images/widget_tab_mutualview2.png +0 -0
  150. melage/resource/manual_images/widget_table.png +0 -0
  151. melage/resource/manual_images/widget_table2.png +0 -0
  152. melage/resource/manual_images/widget_us.png +0 -0
  153. melage/resource/melage_top.ico +0 -0
  154. melage/resource/melage_top.png +0 -0
  155. melage/resource/melage_top0.png +0 -0
  156. melage/resource/melage_top1.png +0 -0
  157. melage/resource/melage_top4.png +0 -0
  158. melage/resource/mri (copy).png +0 -0
  159. melage/resource/mri.png +0 -0
  160. melage/resource/mri0.png +0 -0
  161. melage/resource/mri000.png +0 -0
  162. melage/resource/mri22.png +0 -0
  163. melage/resource/mri_big.png +0 -0
  164. melage/resource/mri_old.png +0 -0
  165. melage/resource/mri_seg.png +0 -0
  166. melage/resource/mri_seg_old.png +0 -0
  167. melage/resource/new.png +0 -0
  168. melage/resource/open.png +0 -0
  169. melage/resource/open2.png +0 -0
  170. melage/resource/pan.png +0 -0
  171. melage/resource/pencil.png +0 -0
  172. melage/resource/pencilFaded.png +0 -0
  173. melage/resource/points.png +0 -0
  174. melage/resource/pointsFaded.png +0 -0
  175. melage/resource/rotate.png +0 -0
  176. melage/resource/ruler.png +0 -0
  177. melage/resource/rulerFaded.png +0 -0
  178. melage/resource/s.png +0 -0
  179. melage/resource/s.psd +0 -0
  180. melage/resource/save.png +0 -0
  181. melage/resource/saveas.png +0 -0
  182. melage/resource/seg_mri.png +0 -0
  183. melage/resource/seg_mri2.png +0 -0
  184. melage/resource/settings.png +0 -0
  185. melage/resource/synch.png +0 -0
  186. melage/resource/synchFaded.png +0 -0
  187. melage/resource/theme/rc/.keep +1 -0
  188. melage/resource/theme/rc/arrow_down.png +0 -0
  189. melage/resource/theme/rc/arrow_down@2x.png +0 -0
  190. melage/resource/theme/rc/arrow_down_disabled.png +0 -0
  191. melage/resource/theme/rc/arrow_down_disabled@2x.png +0 -0
  192. melage/resource/theme/rc/arrow_down_focus.png +0 -0
  193. melage/resource/theme/rc/arrow_down_focus@2x.png +0 -0
  194. melage/resource/theme/rc/arrow_down_pressed.png +0 -0
  195. melage/resource/theme/rc/arrow_down_pressed@2x.png +0 -0
  196. melage/resource/theme/rc/arrow_left.png +0 -0
  197. melage/resource/theme/rc/arrow_left@2x.png +0 -0
  198. melage/resource/theme/rc/arrow_left_disabled.png +0 -0
  199. melage/resource/theme/rc/arrow_left_disabled@2x.png +0 -0
  200. melage/resource/theme/rc/arrow_left_focus.png +0 -0
  201. melage/resource/theme/rc/arrow_left_focus@2x.png +0 -0
  202. melage/resource/theme/rc/arrow_left_pressed.png +0 -0
  203. melage/resource/theme/rc/arrow_left_pressed@2x.png +0 -0
  204. melage/resource/theme/rc/arrow_right.png +0 -0
  205. melage/resource/theme/rc/arrow_right@2x.png +0 -0
  206. melage/resource/theme/rc/arrow_right_disabled.png +0 -0
  207. melage/resource/theme/rc/arrow_right_disabled@2x.png +0 -0
  208. melage/resource/theme/rc/arrow_right_focus.png +0 -0
  209. melage/resource/theme/rc/arrow_right_focus@2x.png +0 -0
  210. melage/resource/theme/rc/arrow_right_pressed.png +0 -0
  211. melage/resource/theme/rc/arrow_right_pressed@2x.png +0 -0
  212. melage/resource/theme/rc/arrow_up.png +0 -0
  213. melage/resource/theme/rc/arrow_up@2x.png +0 -0
  214. melage/resource/theme/rc/arrow_up_disabled.png +0 -0
  215. melage/resource/theme/rc/arrow_up_disabled@2x.png +0 -0
  216. melage/resource/theme/rc/arrow_up_focus.png +0 -0
  217. melage/resource/theme/rc/arrow_up_focus@2x.png +0 -0
  218. melage/resource/theme/rc/arrow_up_pressed.png +0 -0
  219. melage/resource/theme/rc/arrow_up_pressed@2x.png +0 -0
  220. melage/resource/theme/rc/base_icon.png +0 -0
  221. melage/resource/theme/rc/base_icon@2x.png +0 -0
  222. melage/resource/theme/rc/base_icon_disabled.png +0 -0
  223. melage/resource/theme/rc/base_icon_disabled@2x.png +0 -0
  224. melage/resource/theme/rc/base_icon_focus.png +0 -0
  225. melage/resource/theme/rc/base_icon_focus@2x.png +0 -0
  226. melage/resource/theme/rc/base_icon_pressed.png +0 -0
  227. melage/resource/theme/rc/base_icon_pressed@2x.png +0 -0
  228. melage/resource/theme/rc/branch_closed.png +0 -0
  229. melage/resource/theme/rc/branch_closed@2x.png +0 -0
  230. melage/resource/theme/rc/branch_closed_disabled.png +0 -0
  231. melage/resource/theme/rc/branch_closed_disabled@2x.png +0 -0
  232. melage/resource/theme/rc/branch_closed_focus.png +0 -0
  233. melage/resource/theme/rc/branch_closed_focus@2x.png +0 -0
  234. melage/resource/theme/rc/branch_closed_pressed.png +0 -0
  235. melage/resource/theme/rc/branch_closed_pressed@2x.png +0 -0
  236. melage/resource/theme/rc/branch_end.png +0 -0
  237. melage/resource/theme/rc/branch_end@2x.png +0 -0
  238. melage/resource/theme/rc/branch_end_disabled.png +0 -0
  239. melage/resource/theme/rc/branch_end_disabled@2x.png +0 -0
  240. melage/resource/theme/rc/branch_end_focus.png +0 -0
  241. melage/resource/theme/rc/branch_end_focus@2x.png +0 -0
  242. melage/resource/theme/rc/branch_end_pressed.png +0 -0
  243. melage/resource/theme/rc/branch_end_pressed@2x.png +0 -0
  244. melage/resource/theme/rc/branch_line.png +0 -0
  245. melage/resource/theme/rc/branch_line@2x.png +0 -0
  246. melage/resource/theme/rc/branch_line_disabled.png +0 -0
  247. melage/resource/theme/rc/branch_line_disabled@2x.png +0 -0
  248. melage/resource/theme/rc/branch_line_focus.png +0 -0
  249. melage/resource/theme/rc/branch_line_focus@2x.png +0 -0
  250. melage/resource/theme/rc/branch_line_pressed.png +0 -0
  251. melage/resource/theme/rc/branch_line_pressed@2x.png +0 -0
  252. melage/resource/theme/rc/branch_more.png +0 -0
  253. melage/resource/theme/rc/branch_more@2x.png +0 -0
  254. melage/resource/theme/rc/branch_more_disabled.png +0 -0
  255. melage/resource/theme/rc/branch_more_disabled@2x.png +0 -0
  256. melage/resource/theme/rc/branch_more_focus.png +0 -0
  257. melage/resource/theme/rc/branch_more_focus@2x.png +0 -0
  258. melage/resource/theme/rc/branch_more_pressed.png +0 -0
  259. melage/resource/theme/rc/branch_more_pressed@2x.png +0 -0
  260. melage/resource/theme/rc/branch_open.png +0 -0
  261. melage/resource/theme/rc/branch_open@2x.png +0 -0
  262. melage/resource/theme/rc/branch_open_disabled.png +0 -0
  263. melage/resource/theme/rc/branch_open_disabled@2x.png +0 -0
  264. melage/resource/theme/rc/branch_open_focus.png +0 -0
  265. melage/resource/theme/rc/branch_open_focus@2x.png +0 -0
  266. melage/resource/theme/rc/branch_open_pressed.png +0 -0
  267. melage/resource/theme/rc/branch_open_pressed@2x.png +0 -0
  268. melage/resource/theme/rc/checkbox_checked.png +0 -0
  269. melage/resource/theme/rc/checkbox_checked0.png +0 -0
  270. melage/resource/theme/rc/checkbox_checked@2x.png +0 -0
  271. melage/resource/theme/rc/checkbox_checked@2x0.png +0 -0
  272. melage/resource/theme/rc/checkbox_checked@2x000.png.png +0 -0
  273. melage/resource/theme/rc/checkbox_checked_disabled.png +0 -0
  274. melage/resource/theme/rc/checkbox_checked_disabled0.png +0 -0
  275. melage/resource/theme/rc/checkbox_checked_disabled@2x.png +0 -0
  276. melage/resource/theme/rc/checkbox_checked_disabled@2x0.png +0 -0
  277. melage/resource/theme/rc/checkbox_checked_focus.png +0 -0
  278. melage/resource/theme/rc/checkbox_checked_focus0.png +0 -0
  279. melage/resource/theme/rc/checkbox_checked_focus@2x.png +0 -0
  280. melage/resource/theme/rc/checkbox_checked_focus@2x0.png +0 -0
  281. melage/resource/theme/rc/checkbox_checked_pressed.png +0 -0
  282. melage/resource/theme/rc/checkbox_checked_pressed0.png +0 -0
  283. melage/resource/theme/rc/checkbox_checked_pressed@2x.png +0 -0
  284. melage/resource/theme/rc/checkbox_checked_pressed@2x0.png +0 -0
  285. melage/resource/theme/rc/checkbox_indeterminate.png +0 -0
  286. melage/resource/theme/rc/checkbox_indeterminate@2x.png +0 -0
  287. melage/resource/theme/rc/checkbox_indeterminate_disabled.png +0 -0
  288. melage/resource/theme/rc/checkbox_indeterminate_disabled@2x.png +0 -0
  289. melage/resource/theme/rc/checkbox_indeterminate_focus.png +0 -0
  290. melage/resource/theme/rc/checkbox_indeterminate_focus@2x.png +0 -0
  291. melage/resource/theme/rc/checkbox_indeterminate_pressed.png +0 -0
  292. melage/resource/theme/rc/checkbox_indeterminate_pressed@2x.png +0 -0
  293. melage/resource/theme/rc/checkbox_unchecked.png +0 -0
  294. melage/resource/theme/rc/checkbox_unchecked0.png +0 -0
  295. melage/resource/theme/rc/checkbox_unchecked00.png +0 -0
  296. melage/resource/theme/rc/checkbox_unchecked@2x.png +0 -0
  297. melage/resource/theme/rc/checkbox_unchecked@2x0.png +0 -0
  298. melage/resource/theme/rc/checkbox_unchecked@2x00.png +0 -0
  299. melage/resource/theme/rc/checkbox_unchecked_disabled.png +0 -0
  300. melage/resource/theme/rc/checkbox_unchecked_disabled0.png +0 -0
  301. melage/resource/theme/rc/checkbox_unchecked_disabled00.png +0 -0
  302. melage/resource/theme/rc/checkbox_unchecked_disabled@2x.png +0 -0
  303. melage/resource/theme/rc/checkbox_unchecked_disabled@2x0.png +0 -0
  304. melage/resource/theme/rc/checkbox_unchecked_disabled@2x00.png +0 -0
  305. melage/resource/theme/rc/checkbox_unchecked_focus.png +0 -0
  306. melage/resource/theme/rc/checkbox_unchecked_focus0.png +0 -0
  307. melage/resource/theme/rc/checkbox_unchecked_focus00.png +0 -0
  308. melage/resource/theme/rc/checkbox_unchecked_focus@2x.png +0 -0
  309. melage/resource/theme/rc/checkbox_unchecked_focus@2x0.png +0 -0
  310. melage/resource/theme/rc/checkbox_unchecked_focus@2x00.png +0 -0
  311. melage/resource/theme/rc/checkbox_unchecked_pressed.png +0 -0
  312. melage/resource/theme/rc/checkbox_unchecked_pressed0.png +0 -0
  313. melage/resource/theme/rc/checkbox_unchecked_pressed00.png +0 -0
  314. melage/resource/theme/rc/checkbox_unchecked_pressed@2x.png +0 -0
  315. melage/resource/theme/rc/checkbox_unchecked_pressed@2x0.png +0 -0
  316. melage/resource/theme/rc/checkbox_unchecked_pressed@2x00.png +0 -0
  317. melage/resource/theme/rc/line_horizontal.png +0 -0
  318. melage/resource/theme/rc/line_horizontal@2x.png +0 -0
  319. melage/resource/theme/rc/line_horizontal_disabled.png +0 -0
  320. melage/resource/theme/rc/line_horizontal_disabled@2x.png +0 -0
  321. melage/resource/theme/rc/line_horizontal_focus.png +0 -0
  322. melage/resource/theme/rc/line_horizontal_focus@2x.png +0 -0
  323. melage/resource/theme/rc/line_horizontal_pressed.png +0 -0
  324. melage/resource/theme/rc/line_horizontal_pressed@2x.png +0 -0
  325. melage/resource/theme/rc/line_vertical.png +0 -0
  326. melage/resource/theme/rc/line_vertical@2x.png +0 -0
  327. melage/resource/theme/rc/line_vertical_disabled.png +0 -0
  328. melage/resource/theme/rc/line_vertical_disabled@2x.png +0 -0
  329. melage/resource/theme/rc/line_vertical_focus.png +0 -0
  330. melage/resource/theme/rc/line_vertical_focus@2x.png +0 -0
  331. melage/resource/theme/rc/line_vertical_pressed.png +0 -0
  332. melage/resource/theme/rc/line_vertical_pressed@2x.png +0 -0
  333. melage/resource/theme/rc/radio_checked.png +0 -0
  334. melage/resource/theme/rc/radio_checked@2x.png +0 -0
  335. melage/resource/theme/rc/radio_checked_disabled.png +0 -0
  336. melage/resource/theme/rc/radio_checked_disabled@2x.png +0 -0
  337. melage/resource/theme/rc/radio_checked_focus.png +0 -0
  338. melage/resource/theme/rc/radio_checked_focus@2x.png +0 -0
  339. melage/resource/theme/rc/radio_checked_pressed.png +0 -0
  340. melage/resource/theme/rc/radio_checked_pressed@2x.png +0 -0
  341. melage/resource/theme/rc/radio_unchecked.png +0 -0
  342. melage/resource/theme/rc/radio_unchecked@2x.png +0 -0
  343. melage/resource/theme/rc/radio_unchecked_disabled.png +0 -0
  344. melage/resource/theme/rc/radio_unchecked_disabled@2x.png +0 -0
  345. melage/resource/theme/rc/radio_unchecked_focus.png +0 -0
  346. melage/resource/theme/rc/radio_unchecked_focus@2x.png +0 -0
  347. melage/resource/theme/rc/radio_unchecked_pressed.png +0 -0
  348. melage/resource/theme/rc/radio_unchecked_pressed@2x.png +0 -0
  349. melage/resource/theme/rc/toolbar_move_horizontal.png +0 -0
  350. melage/resource/theme/rc/toolbar_move_horizontal@2x.png +0 -0
  351. melage/resource/theme/rc/toolbar_move_horizontal_disabled.png +0 -0
  352. melage/resource/theme/rc/toolbar_move_horizontal_disabled@2x.png +0 -0
  353. melage/resource/theme/rc/toolbar_move_horizontal_focus.png +0 -0
  354. melage/resource/theme/rc/toolbar_move_horizontal_focus@2x.png +0 -0
  355. melage/resource/theme/rc/toolbar_move_horizontal_pressed.png +0 -0
  356. melage/resource/theme/rc/toolbar_move_horizontal_pressed@2x.png +0 -0
  357. melage/resource/theme/rc/toolbar_move_vertical.png +0 -0
  358. melage/resource/theme/rc/toolbar_move_vertical@2x.png +0 -0
  359. melage/resource/theme/rc/toolbar_move_vertical_disabled.png +0 -0
  360. melage/resource/theme/rc/toolbar_move_vertical_disabled@2x.png +0 -0
  361. melage/resource/theme/rc/toolbar_move_vertical_focus.png +0 -0
  362. melage/resource/theme/rc/toolbar_move_vertical_focus@2x.png +0 -0
  363. melage/resource/theme/rc/toolbar_move_vertical_pressed.png +0 -0
  364. melage/resource/theme/rc/toolbar_move_vertical_pressed@2x.png +0 -0
  365. melage/resource/theme/rc/toolbar_separator_horizontal.png +0 -0
  366. melage/resource/theme/rc/toolbar_separator_horizontal@2x.png +0 -0
  367. melage/resource/theme/rc/toolbar_separator_horizontal_disabled.png +0 -0
  368. melage/resource/theme/rc/toolbar_separator_horizontal_disabled@2x.png +0 -0
  369. melage/resource/theme/rc/toolbar_separator_horizontal_focus.png +0 -0
  370. melage/resource/theme/rc/toolbar_separator_horizontal_focus@2x.png +0 -0
  371. melage/resource/theme/rc/toolbar_separator_horizontal_pressed.png +0 -0
  372. melage/resource/theme/rc/toolbar_separator_horizontal_pressed@2x.png +0 -0
  373. melage/resource/theme/rc/toolbar_separator_vertical.png +0 -0
  374. melage/resource/theme/rc/toolbar_separator_vertical@2x.png +0 -0
  375. melage/resource/theme/rc/toolbar_separator_vertical_disabled.png +0 -0
  376. melage/resource/theme/rc/toolbar_separator_vertical_disabled@2x.png +0 -0
  377. melage/resource/theme/rc/toolbar_separator_vertical_focus.png +0 -0
  378. melage/resource/theme/rc/toolbar_separator_vertical_focus@2x.png +0 -0
  379. melage/resource/theme/rc/toolbar_separator_vertical_pressed.png +0 -0
  380. melage/resource/theme/rc/toolbar_separator_vertical_pressed@2x.png +0 -0
  381. melage/resource/theme/rc/transparent.png +0 -0
  382. melage/resource/theme/rc/transparent@2x.png +0 -0
  383. melage/resource/theme/rc/transparent_disabled.png +0 -0
  384. melage/resource/theme/rc/transparent_disabled@2x.png +0 -0
  385. melage/resource/theme/rc/transparent_focus.png +0 -0
  386. melage/resource/theme/rc/transparent_focus@2x.png +0 -0
  387. melage/resource/theme/rc/transparent_pressed.png +0 -0
  388. melage/resource/theme/rc/transparent_pressed@2x.png +0 -0
  389. melage/resource/theme/rc/window_close.png +0 -0
  390. melage/resource/theme/rc/window_close@2x.png +0 -0
  391. melage/resource/theme/rc/window_close_disabled.png +0 -0
  392. melage/resource/theme/rc/window_close_disabled@2x.png +0 -0
  393. melage/resource/theme/rc/window_close_focus.png +0 -0
  394. melage/resource/theme/rc/window_close_focus@2x.png +0 -0
  395. melage/resource/theme/rc/window_close_pressed.png +0 -0
  396. melage/resource/theme/rc/window_close_pressed@2x.png +0 -0
  397. melage/resource/theme/rc/window_grip.png +0 -0
  398. melage/resource/theme/rc/window_grip@2x.png +0 -0
  399. melage/resource/theme/rc/window_grip_disabled.png +0 -0
  400. melage/resource/theme/rc/window_grip_disabled@2x.png +0 -0
  401. melage/resource/theme/rc/window_grip_focus.png +0 -0
  402. melage/resource/theme/rc/window_grip_focus@2x.png +0 -0
  403. melage/resource/theme/rc/window_grip_pressed.png +0 -0
  404. melage/resource/theme/rc/window_grip_pressed@2x.png +0 -0
  405. melage/resource/theme/rc/window_minimize.png +0 -0
  406. melage/resource/theme/rc/window_minimize@2x.png +0 -0
  407. melage/resource/theme/rc/window_minimize_disabled.png +0 -0
  408. melage/resource/theme/rc/window_minimize_disabled@2x.png +0 -0
  409. melage/resource/theme/rc/window_minimize_focus.png +0 -0
  410. melage/resource/theme/rc/window_minimize_focus@2x.png +0 -0
  411. melage/resource/theme/rc/window_minimize_pressed.png +0 -0
  412. melage/resource/theme/rc/window_minimize_pressed@2x.png +0 -0
  413. melage/resource/theme/rc/window_undock.png +0 -0
  414. melage/resource/theme/rc/window_undock@2x.png +0 -0
  415. melage/resource/theme/rc/window_undock_disabled.png +0 -0
  416. melage/resource/theme/rc/window_undock_disabled@2x.png +0 -0
  417. melage/resource/theme/rc/window_undock_focus.png +0 -0
  418. melage/resource/theme/rc/window_undock_focus@2x.png +0 -0
  419. melage/resource/theme/rc/window_undock_pressed.png +0 -0
  420. melage/resource/theme/rc/window_undock_pressed@2x.png +0 -0
  421. melage/resource/theme/style.qss +2223 -0
  422. melage/resource/tract.png +0 -0
  423. melage/resource/view1.png +0 -0
  424. melage/resource/view1_eco.png +0 -0
  425. melage/resource/view1_mri.png +0 -0
  426. melage/resource/view1_seg.png +0 -0
  427. melage/resource/view2.png +0 -0
  428. melage/resource/view2_seg.png +0 -0
  429. melage/resource/w.png +0 -0
  430. melage/resource/zoom_in.png +0 -0
  431. melage/resource/zoom_inFaded.png +0 -0
  432. melage/resource/zoom_out.png +0 -0
  433. melage/resource/zoom_outFaded.png +0 -0
  434. melage/some_notes.txt +3 -0
  435. melage/utils/DispalyIm.py +2788 -0
  436. melage/utils/GMM.py +720 -0
  437. melage/utils/Shaders_120.py +257 -0
  438. melage/utils/Shaders_330.py +314 -0
  439. melage/utils/Shaders_bu.py +314 -0
  440. melage/utils/__init__0.py +7 -0
  441. melage/utils/brain_extraction_helper.py +234 -0
  442. melage/utils/custom_QScrollBar.py +61 -0
  443. melage/utils/glScientific.py +1554 -0
  444. melage/utils/glScientific_bc.py +1585 -0
  445. melage/utils/readData.py +1061 -0
  446. melage/utils/registration.py +512 -0
  447. melage/utils/source_folder.py +18 -0
  448. melage/utils/utils.py +3808 -0
  449. melage/version.txt +1 -0
  450. melage/widgets/ApplyMask.py +212 -0
  451. melage/widgets/ChangeSystem.py +152 -0
  452. melage/widgets/DeepLModels/InfantSegment/Unet.py +464 -0
  453. melage/widgets/DeepLModels/NPP/dataset/mri_dataset_affine.py +149 -0
  454. melage/widgets/DeepLModels/NPP/models/checkpoints/npp_v1.pth.py +0 -0
  455. melage/widgets/DeepLModels/NPP/models/losses.py +146 -0
  456. melage/widgets/DeepLModels/NPP/models/model.py +272 -0
  457. melage/widgets/DeepLModels/NPP/models/utils.py +303 -0
  458. melage/widgets/DeepLModels/NPP/npp.py +116 -0
  459. melage/widgets/DeepLModels/NPP/requirements.txt +8 -0
  460. melage/widgets/DeepLModels/NPP/train/train.py +116 -0
  461. melage/widgets/DeepLModels/Unet3DAtt.py +657 -0
  462. melage/widgets/DeepLModels/Unet3D_basic.py +648 -0
  463. melage/widgets/DeepLModels/new_unet.py +652 -0
  464. melage/widgets/DeepLModels/new_unet_old.py +639 -0
  465. melage/widgets/DeepLModels/new_unet_old2.py +658 -0
  466. melage/widgets/HistImage.py +153 -0
  467. melage/widgets/ImageThresholding.py +222 -0
  468. melage/widgets/MaskOperations.py +147 -0
  469. melage/widgets/N4Dialog.py +241 -0
  470. melage/widgets/Segmentation/FCM.py +1553 -0
  471. melage/widgets/Segmentation/__init__.py +588 -0
  472. melage/widgets/Segmentation/utils.py +417 -0
  473. melage/widgets/SemiAutoSeg.py +666 -0
  474. melage/widgets/Synthstrip.py +141 -0
  475. melage/widgets/__init__0.py +5 -0
  476. melage/widgets/about.py +246 -0
  477. melage/widgets/activation.py +437 -0
  478. melage/widgets/activator.py +147 -0
  479. melage/widgets/be_dl.py +409 -0
  480. melage/widgets/be_dl_unet3d.py +441 -0
  481. melage/widgets/brain_extraction.py +855 -0
  482. melage/widgets/brain_extraction_dl.py +887 -0
  483. melage/widgets/brain_extraction_dl_bu.py +869 -0
  484. melage/widgets/colorwidget.py +100 -0
  485. melage/widgets/dockWidgets.py +2005 -0
  486. melage/widgets/enhanceImWidget.py +109 -0
  487. melage/widgets/fileDialog_widget.py +275 -0
  488. melage/widgets/iminfo.py +346 -0
  489. melage/widgets/mainwindow_widget.py +6775 -0
  490. melage/widgets/melageAbout.py +123 -0
  491. melage/widgets/openglWidgets.py +556 -0
  492. melage/widgets/registrationWidget.py +342 -0
  493. melage/widgets/repeat_widget.py +74 -0
  494. melage/widgets/screenshot_widget.py +138 -0
  495. melage/widgets/settings_widget.py +77 -0
  496. melage/widgets/tranformationWidget.py +275 -0
  497. melage-0.0.65.dist-info/METADATA +742 -0
  498. melage-0.0.65.dist-info/RECORD +501 -0
  499. melage-0.0.65.dist-info/WHEEL +5 -0
  500. melage-0.0.65.dist-info/entry_points.txt +2 -0
  501. melage-0.0.65.dist-info/top_level.txt +1 -0
@@ -0,0 +1,2223 @@
1
+ /* ---------------------------------------------------------------------------
2
+
3
+ WARNING! File created programmatically. All changes made in this file will be lost!
4
+
5
+ Created by the qtsass compiler v0.3.0
6
+
7
+ The definitions are in the "qdarkstyle.qss._styles.scss" module
8
+ Taken from https://github.com/ColinDuquesnoy/QDarkStyleSheet/blob/master/qdarkstyle/utils/scss.py
9
+ --------------------------------------------------------------------------- */
10
+ /* Light Style - QDarkStyleSheet ------------------------------------------ */
11
+ /*
12
+
13
+ See Qt documentation:
14
+
15
+ - https://doc.qt.io/qt-5/stylesheet.html
16
+ - https://doc.qt.io/qt-5/stylesheet-reference.html
17
+ - https://doc.qt.io/qt-5/stylesheet-examples.html
18
+ https://github.com/ColinDuquesnoy/QDarkStyleSheet
19
+
20
+ --------------------------------------------------------------------------- */
21
+ /* Reset elements ------------------------------------------------------------
22
+
23
+ Resetting everything helps to unify styles across different operating systems
24
+
25
+ --------------------------------------------------------------------------- */
26
+ * {
27
+ padding: 0px;
28
+ margin: 0px;
29
+ border: 0px;
30
+ border-style: none;
31
+ border-image: none;
32
+ outline: 0;
33
+ }
34
+
35
+ /* specific reset for elements inside QToolBar */
36
+ QToolBar * {
37
+ margin: 0px;
38
+ padding: 0px;
39
+ }
40
+
41
+ /* QWidget ----------------------------------------------------------------
42
+
43
+ --------------------------------------------------------------------------- */
44
+ QWidget {
45
+ background-color: #19232D;
46
+ border: 0px solid #455364;
47
+ padding: 0px;
48
+ color: #E0E1E3;
49
+ selection-background-color: #346792;
50
+ selection-color: #E0E1E3;
51
+ }
52
+
53
+ QWidget:disabled {
54
+ background-color: #19232D;
55
+ color: #9DA9B5;
56
+ selection-background-color: #26486B;
57
+ selection-color: #9DA9B5;
58
+ }
59
+
60
+ QWidget::item:selected {
61
+ background-color: #346792;
62
+ }
63
+
64
+ QWidget::item:hover:!selected {
65
+ background-color: #1A72BB;
66
+ }
67
+
68
+ /* QMainWindow ------------------------------------------------------------
69
+
70
+ This adjusts the splitter in the dock widget, not qsplitter
71
+ https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmainwindow
72
+
73
+ --------------------------------------------------------------------------- */
74
+ QMainWindow::separator {
75
+ background-color: #455364;
76
+ border: 0px solid #19232D;
77
+ spacing: 0px;
78
+ padding: 2px;
79
+ }
80
+
81
+ QMainWindow::separator:hover {
82
+ background-color: #60798B;
83
+ border: 0px solid #1A72BB;
84
+ }
85
+
86
+ QMainWindow::separator:horizontal {
87
+ width: 5px;
88
+ margin-top: 2px;
89
+ margin-bottom: 2px;
90
+ image: url("rc:toolbar_separator_vertical.png");
91
+ }
92
+
93
+ QMainWindow::separator:vertical {
94
+ height: 5px;
95
+ margin-left: 2px;
96
+ margin-right: 2px;
97
+ image: url("rc:toolbar_separator_horizontal.png");
98
+ }
99
+
100
+ /* QToolTip ---------------------------------------------------------------
101
+
102
+ https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtooltip
103
+
104
+ --------------------------------------------------------------------------- */
105
+ QToolTip {
106
+ background-color: #346792;
107
+ color: #E0E1E3;
108
+ /* If you remove the border property, background stops working on Windows */
109
+ border: none;
110
+ /* Remove padding, for fix combo box tooltip */
111
+ padding: 0px;
112
+ /* Remove opacity, fix #174 - may need to use RGBA */
113
+ }
114
+
115
+ /* QStatusBar -------------------------------------------------------------
116
+
117
+ https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qstatusbar
118
+
119
+ --------------------------------------------------------------------------- */
120
+ QStatusBar {
121
+ border: 1px solid #455364;
122
+ /* Fixes Spyder #9120, #9121 */
123
+ background: #455364;
124
+ /* Fixes #205, white vertical borders separating items */
125
+ }
126
+
127
+ QStatusBar::item {
128
+ border: none;
129
+ }
130
+
131
+ QStatusBar QToolTip {
132
+ background-color: #1A72BB;
133
+ border: 1px solid #19232D;
134
+ color: #19232D;
135
+ /* Remove padding, for fix combo box tooltip */
136
+ padding: 0px;
137
+ /* Reducing transparency to read better */
138
+ opacity: 230;
139
+ }
140
+
141
+ QStatusBar QLabel {
142
+ /* Fixes Spyder #9120, #9121 */
143
+ background: transparent;
144
+ }
145
+
146
+ /* QCheckBox --------------------------------------------------------------
147
+
148
+ https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcheckbox
149
+
150
+ --------------------------------------------------------------------------- */
151
+ QCheckBox {
152
+ background-color: #19232D;
153
+ color: #E0E1E3;
154
+ spacing: 4px;
155
+ outline: none;
156
+ padding-top: 4px;
157
+ padding-bottom: 4px;
158
+ }
159
+
160
+ QCheckBox:focus {
161
+ border: none;
162
+ }
163
+
164
+ QCheckBox QWidget:disabled {
165
+ background-color: #19232D;
166
+ color: #9DA9B5;
167
+ }
168
+
169
+ QCheckBox::indicator {
170
+ margin-left: 2px;
171
+ height: 14px;
172
+ width: 14px;
173
+ }
174
+
175
+ QCheckBox::indicator:unchecked {
176
+ image: url("rc:checkbox_unchecked.png");
177
+ }
178
+
179
+ QCheckBox::indicator:unchecked:hover, QCheckBox::indicator:unchecked:focus, QCheckBox::indicator:unchecked:pressed {
180
+ border: none;
181
+ image: url("rc:checkbox_unchecked_focus.png");
182
+ }
183
+
184
+ QCheckBox::indicator:unchecked:disabled {
185
+ image: url("rc:checkbox_unchecked_disabled.png");
186
+ }
187
+
188
+ QCheckBox::indicator:checked {
189
+ image: url("rc:checkbox_checked.png");
190
+ }
191
+
192
+ QCheckBox::indicator:checked:hover, QCheckBox::indicator:checked:focus, QCheckBox::indicator:checked:pressed {
193
+ border: none;
194
+ image: url("rc:checkbox_checked_focus.png");
195
+ }
196
+
197
+ QCheckBox::indicator:checked:disabled {
198
+ image: url("rc:checkbox_checked_disabled.png");
199
+ }
200
+
201
+ QCheckBox::indicator:indeterminate {
202
+ image: url("rc:checkbox_indeterminate.png");
203
+ }
204
+
205
+ QCheckBox::indicator:indeterminate:disabled {
206
+ image: url("rc:checkbox_indeterminate_disabled.png");
207
+ }
208
+
209
+ QCheckBox::indicator:indeterminate:focus, QCheckBox::indicator:indeterminate:hover, QCheckBox::indicator:indeterminate:pressed {
210
+ image: url("rc:checkbox_indeterminate_focus.png");
211
+ }
212
+
213
+ /* QGroupBox --------------------------------------------------------------
214
+
215
+ https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qgroupbox
216
+
217
+ --------------------------------------------------------------------------- */
218
+ QGroupBox {
219
+ font-weight: bold;
220
+ border: 1px solid #455364;
221
+ border-radius: 4px;
222
+ padding: 2px;
223
+ margin-top: 6px;
224
+ margin-bottom: 4px;
225
+ }
226
+
227
+ QGroupBox::title {
228
+ subcontrol-origin: margin;
229
+ subcontrol-position: top left;
230
+ left: 4px;
231
+ padding-left: 2px;
232
+ padding-right: 4px;
233
+ padding-top: -4px;
234
+ }
235
+
236
+ QGroupBox::indicator {
237
+ margin-left: 2px;
238
+ margin-top: 2px;
239
+ padding: 0;
240
+ height: 14px;
241
+ width: 14px;
242
+ }
243
+
244
+ QGroupBox::indicator:unchecked {
245
+ border: none;
246
+ image: url("rc:checkbox_unchecked.png");
247
+ }
248
+
249
+ QGroupBox::indicator:unchecked:hover, QGroupBox::indicator:unchecked:focus, QGroupBox::indicator:unchecked:pressed {
250
+ border: none;
251
+ image: url("rc:checkbox_unchecked_focus.png");
252
+ }
253
+
254
+ QGroupBox::indicator:unchecked:disabled {
255
+ image: url("rc:checkbox_unchecked_disabled.png");
256
+ }
257
+
258
+ QGroupBox::indicator:checked {
259
+ border: none;
260
+ image: url("rc:checkbox_checked.png");
261
+ }
262
+
263
+ QGroupBox::indicator:checked:hover, QGroupBox::indicator:checked:focus, QGroupBox::indicator:checked:pressed {
264
+ border: none;
265
+ image: url("rc:checkbox_checked_focus.png");
266
+ }
267
+
268
+ QGroupBox::indicator:checked:disabled {
269
+ image: url("rc:checkbox_checked_disabled.png");
270
+ }
271
+
272
+ /* QRadioButton -----------------------------------------------------------
273
+
274
+ https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qradiobutton
275
+
276
+ --------------------------------------------------------------------------- */
277
+ QRadioButton {
278
+ background-color: #19232D;
279
+ color: #E0E1E3;
280
+ spacing: 4px;
281
+ padding-top: 4px;
282
+ padding-bottom: 4px;
283
+ border: none;
284
+ outline: none;
285
+ }
286
+
287
+ QRadioButton:focus {
288
+ border: none;
289
+ }
290
+
291
+ QRadioButton:disabled {
292
+ background-color: #19232D;
293
+ color: #9DA9B5;
294
+ border: none;
295
+ outline: none;
296
+ }
297
+
298
+ QRadioButton QWidget {
299
+ background-color: #19232D;
300
+ color: #E0E1E3;
301
+ spacing: 0px;
302
+ padding: 0px;
303
+ outline: none;
304
+ border: none;
305
+ }
306
+
307
+ QRadioButton::indicator {
308
+ border: none;
309
+ outline: none;
310
+ margin-left: 2px;
311
+ height: 14px;
312
+ width: 14px;
313
+ }
314
+
315
+ QRadioButton::indicator:unchecked {
316
+ image: url("rc:radio_unchecked.png");
317
+ }
318
+
319
+ QRadioButton::indicator:unchecked:hover, QRadioButton::indicator:unchecked:focus, QRadioButton::indicator:unchecked:pressed {
320
+ border: none;
321
+ outline: none;
322
+ image: url("rc:radio_unchecked_focus.png");
323
+ }
324
+
325
+ QRadioButton::indicator:unchecked:disabled {
326
+ image: url("rc:radio_unchecked_disabled.png");
327
+ }
328
+
329
+ QRadioButton::indicator:checked {
330
+ border: none;
331
+ outline: none;
332
+ image: url("rc:radio_checked.png");
333
+ }
334
+
335
+ QRadioButton::indicator:checked:hover, QRadioButton::indicator:checked:focus, QRadioButton::indicator:checked:pressed {
336
+ border: none;
337
+ outline: none;
338
+ image: url("rc:radio_checked_focus.png");
339
+ }
340
+
341
+ QRadioButton::indicator:checked:disabled {
342
+ outline: none;
343
+ image: url("rc:radio_checked_disabled.png");
344
+ }
345
+
346
+ /* QMenuBar ---------------------------------------------------------------
347
+
348
+ https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmenubar
349
+
350
+ --------------------------------------------------------------------------- */
351
+ QMenuBar {
352
+ background-color: #455364;
353
+ padding: 2px;
354
+ border: 1px solid #19232D;
355
+ color: #E0E1E3;
356
+ selection-background-color: #1A72BB;
357
+ }
358
+
359
+ QMenuBar:focus {
360
+ border: 1px solid #346792;
361
+ }
362
+
363
+ QMenuBar::item {
364
+ background: transparent;
365
+ padding: 4px;
366
+ }
367
+
368
+ QMenuBar::item:selected {
369
+ padding: 4px;
370
+ background: transparent;
371
+ border: 0px solid #455364;
372
+ background-color: #1A72BB;
373
+ }
374
+
375
+ QMenuBar::item:pressed {
376
+ padding: 4px;
377
+ border: 0px solid #455364;
378
+ background-color: #1A72BB;
379
+ color: #E0E1E3;
380
+ margin-bottom: 0px;
381
+ padding-bottom: 0px;
382
+ }
383
+
384
+ /* QMenu ------------------------------------------------------------------
385
+
386
+ https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmenu
387
+
388
+ --------------------------------------------------------------------------- */
389
+ QMenu {
390
+ border: 0px solid #455364;
391
+ color: #E0E1E3;
392
+ margin: 0px;
393
+ background-color: #37414F;
394
+ selection-background-color: #1A72BB;
395
+ }
396
+
397
+ QMenu::separator {
398
+ height: 1px;
399
+ background-color: #60798B;
400
+ color: #E0E1E3;
401
+ }
402
+
403
+ QMenu::item {
404
+ background-color: #37414F;
405
+ padding: 4px 24px 4px 28px;
406
+ /* Reserve space for selection border */
407
+ border: 1px transparent #455364;
408
+ }
409
+
410
+ QMenu::item:selected {
411
+ color: #E0E1E3;
412
+ background-color: #1A72BB;
413
+ }
414
+
415
+ QMenu::item:pressed {
416
+ background-color: #1A72BB;
417
+ }
418
+
419
+ QMenu::icon {
420
+ padding-left: 10px;
421
+ width: 14px;
422
+ height: 14px;
423
+ }
424
+
425
+ QMenu::indicator {
426
+ padding-left: 8px;
427
+ width: 12px;
428
+ height: 12px;
429
+ /* non-exclusive indicator = check box style indicator (see QActionGroup::setExclusive) */
430
+ /* exclusive indicator = radio button style indicator (see QActionGroup::setExclusive) */
431
+ }
432
+
433
+ QMenu::indicator:non-exclusive:unchecked {
434
+ image: url("rc:checkbox_unchecked.png");
435
+ }
436
+
437
+ QMenu::indicator:non-exclusive:unchecked:hover, QMenu::indicator:non-exclusive:unchecked:focus, QMenu::indicator:non-exclusive:unchecked:pressed {
438
+ border: none;
439
+ image: url("rc:checkbox_unchecked_focus.png");
440
+ }
441
+
442
+ QMenu::indicator:non-exclusive:unchecked:disabled {
443
+ image: url("rc:checkbox_unchecked_disabled.png");
444
+ }
445
+
446
+ QMenu::indicator:non-exclusive:checked {
447
+ image: url("rc:checkbox_checked.png");
448
+ }
449
+
450
+ QMenu::indicator:non-exclusive:checked:hover, QMenu::indicator:non-exclusive:checked:focus, QMenu::indicator:non-exclusive:checked:pressed {
451
+ border: none;
452
+ image: url("rc:checkbox_checked_focus.png");
453
+ }
454
+
455
+ QMenu::indicator:non-exclusive:checked:disabled {
456
+ image: url("rc:checkbox_checked_disabled.png");
457
+ }
458
+
459
+ QMenu::indicator:non-exclusive:indeterminate {
460
+ image: url("rc:checkbox_indeterminate.png");
461
+ }
462
+
463
+ QMenu::indicator:non-exclusive:indeterminate:disabled {
464
+ image: url("rc:checkbox_indeterminate_disabled.png");
465
+ }
466
+
467
+ QMenu::indicator:non-exclusive:indeterminate:focus, QMenu::indicator:non-exclusive:indeterminate:hover, QMenu::indicator:non-exclusive:indeterminate:pressed {
468
+ image: url("rc:checkbox_indeterminate_focus.png");
469
+ }
470
+
471
+ QMenu::indicator:exclusive:unchecked {
472
+ image: url("rc:radio_unchecked.png");
473
+ }
474
+
475
+ QMenu::indicator:exclusive:unchecked:hover, QMenu::indicator:exclusive:unchecked:focus, QMenu::indicator:exclusive:unchecked:pressed {
476
+ border: none;
477
+ outline: none;
478
+ image: url("rc:radio_unchecked_focus.png");
479
+ }
480
+
481
+ QMenu::indicator:exclusive:unchecked:disabled {
482
+ image: url("rc:radio_unchecked_disabled.png");
483
+ }
484
+
485
+ QMenu::indicator:exclusive:checked {
486
+ border: none;
487
+ outline: none;
488
+ image: url("rc:radio_checked.png");
489
+ }
490
+
491
+ QMenu::indicator:exclusive:checked:hover, QMenu::indicator:exclusive:checked:focus, QMenu::indicator:exclusive:checked:pressed {
492
+ border: none;
493
+ outline: none;
494
+ image: url("rc:radio_checked_focus.png");
495
+ }
496
+
497
+ QMenu::indicator:exclusive:checked:disabled {
498
+ outline: none;
499
+ image: url("rc:radio_checked_disabled.png");
500
+ }
501
+
502
+ QMenu::right-arrow {
503
+ margin: 5px;
504
+ padding-left: 12px;
505
+ image: url("rc:arrow_right.png");
506
+ height: 12px;
507
+ width: 12px;
508
+ }
509
+
510
+ /* QAbstractItemView ------------------------------------------------------
511
+
512
+ https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcombobox
513
+
514
+ --------------------------------------------------------------------------- */
515
+ QAbstractItemView {
516
+ alternate-background-color: #19232D;
517
+ color: #E0E1E3;
518
+ border: 1px solid #455364;
519
+ border-radius: 4px;
520
+ }
521
+
522
+ QAbstractItemView QLineEdit {
523
+ padding: 2px;
524
+ }
525
+
526
+ /* QAbstractScrollArea ----------------------------------------------------
527
+
528
+ https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qabstractscrollarea
529
+
530
+ --------------------------------------------------------------------------- */
531
+ QAbstractScrollArea {
532
+ background-color: #19232D;
533
+ border: 1px solid #455364;
534
+ border-radius: 4px;
535
+ /* fix #159 */
536
+ padding: 2px;
537
+ /* remove min-height to fix #244 */
538
+ color: #E0E1E3;
539
+ }
540
+
541
+ QAbstractScrollArea:disabled {
542
+ color: #9DA9B5;
543
+ }
544
+
545
+ /* QScrollArea ------------------------------------------------------------
546
+
547
+ --------------------------------------------------------------------------- */
548
+ QScrollArea QWidget QWidget:disabled {
549
+ background-color: #19232D;
550
+ }
551
+
552
+ /* QScrollBar -------------------------------------------------------------
553
+
554
+ https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qscrollbar
555
+
556
+ --------------------------------------------------------------------------- */
557
+ QScrollBar:horizontal {
558
+ height: 32px;
559
+ margin: 4px 32px 4px 32px;
560
+ border: 2px solid #455364;
561
+ border-radius: 8px;
562
+ background-color: #19232D;
563
+ }
564
+
565
+ QScrollBar:vertical {
566
+ background-color: #19232D;
567
+ width: 16px;
568
+ margin: 16px 2px 16px 2px;
569
+ border: 1px solid #455364;
570
+ border-radius: 4px;
571
+ }
572
+
573
+ QScrollBar::handle:horizontal {
574
+ background-color: #60798B;
575
+ border: 1px solid #455364;
576
+ border-radius: 8px;
577
+ min-width: 16px;
578
+ }
579
+
580
+ QScrollBar::handle:horizontal:hover {
581
+ background-color: #346792;
582
+ border: #346792;
583
+ border-radius: 8px;
584
+ min-width: 16px;
585
+ }
586
+
587
+ QScrollBar::handle:horizontal:focus {
588
+ border: 2px solid #1A72BB;
589
+ }
590
+
591
+ QScrollBar::handle:vertical {
592
+ background-color: #60798B;
593
+ border: 1px solid #455364;
594
+ min-height: 8px;
595
+ border-radius: 4px;
596
+ }
597
+
598
+ QScrollBar::handle:vertical:hover {
599
+ background-color: #346792;
600
+ border: #346792;
601
+ border-radius: 4px;
602
+ min-height: 8px;
603
+ }
604
+
605
+ QScrollBar::handle:vertical:focus {
606
+ border: 1px solid #1A72BB;
607
+ }
608
+
609
+ QScrollBar::add-line:horizontal {
610
+ margin: 0px 0px 0px 0px;
611
+ border-image: url("rc:arrow_right_disabled.png");
612
+ height: 24px;
613
+ width: 24px;
614
+ subcontrol-position: right;
615
+ subcontrol-origin: margin;
616
+ }
617
+
618
+ QScrollBar::add-line:horizontal:hover, QScrollBar::add-line:horizontal:on {
619
+ border-image: url("rc:arrow_right.png");
620
+ height: 24px;
621
+ width: 24px;
622
+ subcontrol-position: right;
623
+ subcontrol-origin: margin;
624
+ }
625
+
626
+ QScrollBar::add-line:vertical {
627
+ margin: 3px 0px 3px 0px;
628
+ border-image: url("rc:arrow_down_disabled.png");
629
+ height: 24px;
630
+ width: 24px;
631
+ subcontrol-position: bottom;
632
+ subcontrol-origin: margin;
633
+ }
634
+
635
+ QScrollBar::add-line:vertical:hover, QScrollBar::add-line:vertical:on {
636
+ border-image: url("rc:arrow_down.png");
637
+ height: 24px;
638
+ width: 24px;
639
+ subcontrol-position: bottom;
640
+ subcontrol-origin: margin;
641
+ }
642
+
643
+ QScrollBar::sub-line:horizontal {
644
+ margin: 0px 3px 0px 3px;
645
+ border-image: url("rc:arrow_left_disabled.png");
646
+ height: 24px;
647
+ width: 24px;
648
+ subcontrol-position: left;
649
+ subcontrol-origin: margin;
650
+ }
651
+
652
+ QScrollBar::sub-line:horizontal:hover, QScrollBar::sub-line:horizontal:on {
653
+ border-image: url("rc:arrow_left.png");
654
+ height: 24px;
655
+ width: 24px;
656
+ subcontrol-position: left;
657
+ subcontrol-origin: margin;
658
+ }
659
+
660
+ QScrollBar::sub-line:vertical {
661
+ margin: 3px 0px 3px 0px;
662
+ border-image: url("rc:arrow_up_disabled.png");
663
+ height: 24px;
664
+ width: 24px;
665
+ subcontrol-position: top;
666
+ subcontrol-origin: margin;
667
+ }
668
+
669
+ QScrollBar::sub-line:vertical:hover, QScrollBar::sub-line:vertical:on {
670
+ border-image: url("rc:arrow_up.png");
671
+ height: 24px;
672
+ width: 24px;
673
+ subcontrol-position: top;
674
+ subcontrol-origin: margin;
675
+ }
676
+
677
+ QScrollBar::up-arrow:horizontal, QScrollBar::down-arrow:horizontal {
678
+ background: none;
679
+ }
680
+
681
+ QScrollBar::up-arrow:vertical, QScrollBar::down-arrow:vertical {
682
+ background: none;
683
+ }
684
+
685
+ QScrollBar::add-page:horizontal, QScrollBar::sub-page:horizontal {
686
+ background: none;
687
+ }
688
+
689
+ QScrollBar::add-page:vertical, QScrollBar::sub-page:vertical {
690
+ background: none;
691
+ }
692
+
693
+ /* QTextEdit --------------------------------------------------------------
694
+
695
+ https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-specific-widgets
696
+
697
+ --------------------------------------------------------------------------- */
698
+ QTextEdit {
699
+ background-color: #19232D;
700
+ color: #E0E1E3;
701
+ border-radius: 4px;
702
+ border: 1px solid #455364;
703
+ }
704
+
705
+ QTextEdit:focus {
706
+ border: 1px solid #1A72BB;
707
+ }
708
+
709
+ QTextEdit:selected {
710
+ background: #346792;
711
+ color: #455364;
712
+ }
713
+
714
+ /* QPlainTextEdit ---------------------------------------------------------
715
+
716
+ --------------------------------------------------------------------------- */
717
+ QPlainTextEdit {
718
+ background-color: #19232D;
719
+ color: #E0E1E3;
720
+ border-radius: 4px;
721
+ border: 1px solid #455364;
722
+ }
723
+
724
+ QPlainTextEdit:focus {
725
+ border: 1px solid #1A72BB;
726
+ }
727
+
728
+ QPlainTextEdit:selected {
729
+ background: #346792;
730
+ color: #455364;
731
+ }
732
+
733
+ /* QSizeGrip --------------------------------------------------------------
734
+
735
+ https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qsizegrip
736
+
737
+ --------------------------------------------------------------------------- */
738
+ QSizeGrip {
739
+ background: transparent;
740
+ width: 12px;
741
+ height: 12px;
742
+ image: url("rc:window_grip.png");
743
+ }
744
+
745
+ /* QStackedWidget ---------------------------------------------------------
746
+
747
+ --------------------------------------------------------------------------- */
748
+ QStackedWidget {
749
+ padding: 2px;
750
+ border: 1px solid #455364;
751
+ border: 1px solid #19232D;
752
+ }
753
+
754
+ /* QToolBar ---------------------------------------------------------------
755
+
756
+ https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbar
757
+
758
+ --------------------------------------------------------------------------- */
759
+ QToolBar {
760
+ background-color: #455364;
761
+ border-bottom: 1px solid #19232D;
762
+ padding: 1px;
763
+ font-weight: bold;
764
+ spacing: 2px;
765
+ }
766
+
767
+ QToolBar:disabled {
768
+ /* Fixes #272 */
769
+ background-color: #455364;
770
+ }
771
+
772
+ QToolBar::handle:horizontal {
773
+ width: 16px;
774
+ image: url("rc:toolbar_move_horizontal.png");
775
+ }
776
+
777
+ QToolBar::handle:vertical {
778
+ height: 16px;
779
+ image: url("rc:toolbar_move_vertical.png");
780
+ }
781
+
782
+ QToolBar::separator:horizontal {
783
+ width: 16px;
784
+ image: url("rc:toolbar_separator_horizontal.png");
785
+ }
786
+
787
+ QToolBar::separator:vertical {
788
+ height: 16px;
789
+ image: url("rc:toolbar_separator_vertical.png");
790
+ }
791
+
792
+ QToolButton#qt_toolbar_ext_button {
793
+ background: #455364;
794
+ border: 0px;
795
+ color: #E0E1E3;
796
+ image: url("rc:arrow_right.png");
797
+ }
798
+
799
+ /* QAbstractSpinBox -------------------------------------------------------
800
+
801
+ --------------------------------------------------------------------------- */
802
+ QAbstractSpinBox {
803
+ background-color: #19232D;
804
+ border: 1px solid #455364;
805
+ color: #E0E1E3;
806
+ /* This fixes 103, 111 */
807
+ padding-top: 2px;
808
+ /* This fixes 103, 111 */
809
+ padding-bottom: 2px;
810
+ padding-left: 4px;
811
+ padding-right: 4px;
812
+ border-radius: 4px;
813
+ /* min-width: 5px; removed to fix 109 */
814
+ }
815
+
816
+ QAbstractSpinBox:up-button {
817
+ background-color: transparent #19232D;
818
+ subcontrol-origin: border;
819
+ subcontrol-position: top right;
820
+ border-left: 1px solid #455364;
821
+ border-bottom: 1px solid #455364;
822
+ border-top-left-radius: 0;
823
+ border-bottom-left-radius: 0;
824
+ margin: 1px;
825
+ width: 12px;
826
+ margin-bottom: -1px;
827
+ }
828
+
829
+ QAbstractSpinBox::up-arrow, QAbstractSpinBox::up-arrow:disabled, QAbstractSpinBox::up-arrow:off {
830
+ image: url("rc:arrow_up_disabled.png");
831
+ height: 8px;
832
+ width: 8px;
833
+ }
834
+
835
+ QAbstractSpinBox::up-arrow:hover {
836
+ image: url("rc:arrow_up.png");
837
+ }
838
+
839
+ QAbstractSpinBox:down-button {
840
+ background-color: transparent #19232D;
841
+ subcontrol-origin: border;
842
+ subcontrol-position: bottom right;
843
+ border-left: 1px solid #455364;
844
+ border-top: 1px solid #455364;
845
+ border-top-left-radius: 0;
846
+ border-bottom-left-radius: 0;
847
+ margin: 1px;
848
+ width: 12px;
849
+ margin-top: -1px;
850
+ }
851
+
852
+ QAbstractSpinBox::down-arrow, QAbstractSpinBox::down-arrow:disabled, QAbstractSpinBox::down-arrow:off {
853
+ image: url("rc:arrow_down_disabled.png");
854
+ height: 8px;
855
+ width: 8px;
856
+ }
857
+
858
+ QAbstractSpinBox::down-arrow:hover {
859
+ image: url("rc:arrow_down.png");
860
+ }
861
+
862
+ QAbstractSpinBox:hover {
863
+ border: 1px solid #346792;
864
+ color: #E0E1E3;
865
+ }
866
+
867
+ QAbstractSpinBox:focus {
868
+ border: 1px solid #1A72BB;
869
+ }
870
+
871
+ QAbstractSpinBox:selected {
872
+ background: #346792;
873
+ color: #455364;
874
+ }
875
+
876
+ /* ------------------------------------------------------------------------ */
877
+ /* DISPLAYS --------------------------------------------------------------- */
878
+ /* ------------------------------------------------------------------------ */
879
+ /* QLabel -----------------------------------------------------------------
880
+
881
+ https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qframe
882
+
883
+ --------------------------------------------------------------------------- */
884
+ QLabel {
885
+ background-color: #19232D;
886
+ border: 0px solid #455364;
887
+ padding: 2px;
888
+ margin: 0px;
889
+ color: #E0E1E3;
890
+ }
891
+
892
+ QLabel:disabled {
893
+ background-color: #19232D;
894
+ border: 0px solid #455364;
895
+ color: #9DA9B5;
896
+ }
897
+
898
+ /* QTextBrowser -----------------------------------------------------------
899
+
900
+ https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qabstractscrollarea
901
+
902
+ --------------------------------------------------------------------------- */
903
+ QTextBrowser {
904
+ background-color: #19232D;
905
+ border: 1px solid #455364;
906
+ color: #E0E1E3;
907
+ border-radius: 4px;
908
+ }
909
+
910
+ QTextBrowser:disabled {
911
+ background-color: #19232D;
912
+ border: 1px solid #455364;
913
+ color: #9DA9B5;
914
+ border-radius: 4px;
915
+ }
916
+
917
+ QTextBrowser:hover, QTextBrowser:!hover, QTextBrowser:selected, QTextBrowser:pressed {
918
+ border: 1px solid #455364;
919
+ }
920
+
921
+ /* QGraphicsView ----------------------------------------------------------
922
+
923
+ --------------------------------------------------------------------------- */
924
+ QGraphicsView {
925
+ background-color: #19232D;
926
+ border: 1px solid #455364;
927
+ color: #E0E1E3;
928
+ border-radius: 4px;
929
+ }
930
+
931
+ QGraphicsView:disabled {
932
+ background-color: #19232D;
933
+ border: 1px solid #455364;
934
+ color: #9DA9B5;
935
+ border-radius: 4px;
936
+ }
937
+
938
+ QGraphicsView:hover, QGraphicsView:!hover, QGraphicsView:selected, QGraphicsView:pressed {
939
+ border: 1px solid #455364;
940
+ }
941
+
942
+ /* QCalendarWidget --------------------------------------------------------
943
+
944
+ --------------------------------------------------------------------------- */
945
+ QCalendarWidget {
946
+ border: 1px solid #455364;
947
+ border-radius: 4px;
948
+ }
949
+
950
+ QCalendarWidget:disabled {
951
+ background-color: #19232D;
952
+ color: #9DA9B5;
953
+ }
954
+
955
+ /* QLCDNumber -------------------------------------------------------------
956
+
957
+ --------------------------------------------------------------------------- */
958
+ QLCDNumber {
959
+ background-color: #19232D;
960
+ color: #E0E1E3;
961
+ }
962
+
963
+ QLCDNumber:disabled {
964
+ background-color: #19232D;
965
+ color: #9DA9B5;
966
+ }
967
+
968
+ /* QProgressBar -----------------------------------------------------------
969
+
970
+ https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qprogressbar
971
+
972
+ --------------------------------------------------------------------------- */
973
+ QProgressBar {
974
+ background-color: #19232D;
975
+ border: 1px solid #455364;
976
+ color: #E0E1E3;
977
+ border-radius: 4px;
978
+ text-align: center;
979
+ }
980
+
981
+ QProgressBar:disabled {
982
+ background-color: #19232D;
983
+ border: 1px solid #455364;
984
+ color: #9DA9B5;
985
+ border-radius: 4px;
986
+ text-align: center;
987
+ }
988
+
989
+ QProgressBar::chunk {
990
+ background-color: #346792;
991
+ color: #19232D;
992
+ border-radius: 4px;
993
+ }
994
+
995
+ QProgressBar::chunk:disabled {
996
+ background-color: #26486B;
997
+ color: #9DA9B5;
998
+ border-radius: 4px;
999
+ }
1000
+
1001
+ /* ------------------------------------------------------------------------ */
1002
+ /* BUTTONS ---------------------------------------------------------------- */
1003
+ /* ------------------------------------------------------------------------ */
1004
+ /* QPushButton ------------------------------------------------------------
1005
+
1006
+ https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qpushbutton
1007
+
1008
+ --------------------------------------------------------------------------- */
1009
+ QPushButton {
1010
+ background-color: #455364;
1011
+ color: #E0E1E3;
1012
+ border-radius: 4px;
1013
+ padding: 2px;
1014
+ outline: none;
1015
+ border: none;
1016
+ }
1017
+
1018
+ QPushButton:disabled {
1019
+ background-color: #455364;
1020
+ color: #9DA9B5;
1021
+ border-radius: 4px;
1022
+ padding: 2px;
1023
+ }
1024
+
1025
+ QPushButton:checked {
1026
+ background-color: #60798B;
1027
+ border-radius: 4px;
1028
+ padding: 2px;
1029
+ outline: none;
1030
+ }
1031
+
1032
+ QPushButton:checked:disabled {
1033
+ background-color: #60798B;
1034
+ color: #9DA9B5;
1035
+ border-radius: 4px;
1036
+ padding: 2px;
1037
+ outline: none;
1038
+ }
1039
+
1040
+ QPushButton:checked:selected {
1041
+ background: #60798B;
1042
+ }
1043
+
1044
+ QPushButton:hover {
1045
+ background-color: #54687A;
1046
+ color: #E0E1E3;
1047
+ }
1048
+
1049
+ QPushButton:pressed {
1050
+ background-color: #60798B;
1051
+ }
1052
+
1053
+ QPushButton:selected {
1054
+ background: #60798B;
1055
+ color: #E0E1E3;
1056
+ }
1057
+
1058
+ QPushButton::menu-indicator {
1059
+ subcontrol-origin: padding;
1060
+ subcontrol-position: bottom right;
1061
+ bottom: 4px;
1062
+ }
1063
+
1064
+ QDialogButtonBox QPushButton {
1065
+ /* Issue #194 #248 - Special case of QPushButton inside dialogs, for better UI */
1066
+ min-width: 80px;
1067
+ }
1068
+
1069
+ /* QToolButton ------------------------------------------------------------
1070
+
1071
+ https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbutton
1072
+
1073
+ --------------------------------------------------------------------------- */
1074
+ QToolButton {
1075
+ background-color: #455364;
1076
+ color: #E0E1E3;
1077
+ border-radius: 4px;
1078
+ padding: 2px;
1079
+ outline: none;
1080
+ border: none;
1081
+ /* The subcontrols below are used only in the DelayedPopup mode */
1082
+ /* The subcontrols below are used only in the MenuButtonPopup mode */
1083
+ /* The subcontrol below is used only in the InstantPopup or DelayedPopup mode */
1084
+ }
1085
+
1086
+ QToolButton:disabled {
1087
+ background-color: #455364;
1088
+ color: #9DA9B5;
1089
+ border-radius: 4px;
1090
+ padding: 2px;
1091
+ }
1092
+
1093
+ QToolButton:checked {
1094
+ background-color: #60798B;
1095
+ border-radius: 4px;
1096
+ padding: 2px;
1097
+ outline: none;
1098
+ }
1099
+
1100
+ QToolButton:checked:disabled {
1101
+ background-color: #60798B;
1102
+ color: #9DA9B5;
1103
+ border-radius: 4px;
1104
+ padding: 2px;
1105
+ outline: none;
1106
+ }
1107
+
1108
+ QToolButton:checked:hover {
1109
+ background-color: #54687A;
1110
+ color: #E0E1E3;
1111
+ }
1112
+
1113
+ QToolButton:checked:pressed {
1114
+ background-color: #60798B;
1115
+ }
1116
+
1117
+ QToolButton:checked:selected {
1118
+ background: #60798B;
1119
+ color: #E0E1E3;
1120
+ }
1121
+
1122
+ QToolButton:hover {
1123
+ background-color: #54687A;
1124
+ color: #E0E1E3;
1125
+ }
1126
+
1127
+ QToolButton:pressed {
1128
+ background-color: #60798B;
1129
+ }
1130
+
1131
+ QToolButton:selected {
1132
+ background: #60798B;
1133
+ color: #E0E1E3;
1134
+ }
1135
+
1136
+ QToolButton[popupMode="0"] {
1137
+ /* Only for DelayedPopup */
1138
+ padding-right: 2px;
1139
+ }
1140
+
1141
+ QToolButton[popupMode="1"] {
1142
+ /* Only for MenuButtonPopup */
1143
+ padding-right: 20px;
1144
+ }
1145
+
1146
+ QToolButton[popupMode="1"]::menu-button {
1147
+ border: none;
1148
+ }
1149
+
1150
+ QToolButton[popupMode="1"]::menu-button:hover {
1151
+ border: none;
1152
+ border-left: 1px solid #455364;
1153
+ border-radius: 0;
1154
+ }
1155
+
1156
+ QToolButton[popupMode="2"] {
1157
+ /* Only for InstantPopup */
1158
+ padding-right: 2px;
1159
+ }
1160
+
1161
+ QToolButton::menu-button {
1162
+ padding: 2px;
1163
+ border-radius: 4px;
1164
+ width: 12px;
1165
+ border: none;
1166
+ outline: none;
1167
+ }
1168
+
1169
+ QToolButton::menu-button:hover {
1170
+ border: 1px solid #346792;
1171
+ }
1172
+
1173
+ QToolButton::menu-button:checked:hover {
1174
+ border: 1px solid #346792;
1175
+ }
1176
+
1177
+ QToolButton::menu-indicator {
1178
+ image: url("rc:arrow_down.png");
1179
+ height: 8px;
1180
+ width: 8px;
1181
+ top: 0;
1182
+ /* Exclude a shift for better image */
1183
+ left: -2px;
1184
+ /* Shift it a bit */
1185
+ }
1186
+
1187
+ QToolButton::menu-arrow {
1188
+ image: url("rc:arrow_down.png");
1189
+ height: 8px;
1190
+ width: 8px;
1191
+ }
1192
+
1193
+ QToolButton::menu-arrow:hover {
1194
+ image: url("rc:arrow_down_focus.png");
1195
+ }
1196
+
1197
+ /* QCommandLinkButton -----------------------------------------------------
1198
+
1199
+ --------------------------------------------------------------------------- */
1200
+ QCommandLinkButton {
1201
+ background-color: transparent;
1202
+ border: 1px solid #455364;
1203
+ color: #E0E1E3;
1204
+ border-radius: 4px;
1205
+ padding: 0px;
1206
+ margin: 0px;
1207
+ }
1208
+
1209
+ QCommandLinkButton:disabled {
1210
+ background-color: transparent;
1211
+ color: #9DA9B5;
1212
+ }
1213
+
1214
+ /* ------------------------------------------------------------------------ */
1215
+ /* INPUTS - NO FIELDS ----------------------------------------------------- */
1216
+ /* ------------------------------------------------------------------------ */
1217
+ /* QComboBox --------------------------------------------------------------
1218
+
1219
+ https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcombobox
1220
+
1221
+ --------------------------------------------------------------------------- */
1222
+ QComboBox {
1223
+ border: 1px solid #455364;
1224
+ border-radius: 4px;
1225
+ selection-background-color: #346792;
1226
+ padding-left: 4px;
1227
+ padding-right: 4px;
1228
+ /* padding-right = 36; 4 + 16*2 See scrollbar size */
1229
+ /* changed to 4px to fix #239 */
1230
+ /* Fixes #103, #111 */
1231
+ min-height: 1.5em;
1232
+ /* padding-top: 2px; removed to fix #132 */
1233
+ /* padding-bottom: 2px; removed to fix #132 */
1234
+ /* min-width: 75px; removed to fix #109 */
1235
+ /* Needed to remove indicator - fix #132 */
1236
+ }
1237
+
1238
+ QComboBox QAbstractItemView {
1239
+ border: 1px solid #455364;
1240
+ border-radius: 0;
1241
+ background-color: #19232D;
1242
+ selection-background-color: #346792;
1243
+ }
1244
+
1245
+ QComboBox QAbstractItemView:hover {
1246
+ background-color: #19232D;
1247
+ color: #E0E1E3;
1248
+ }
1249
+
1250
+ QComboBox QAbstractItemView:selected {
1251
+ background: #346792;
1252
+ color: #455364;
1253
+ }
1254
+
1255
+ QComboBox QAbstractItemView:alternate {
1256
+ background: #19232D;
1257
+ }
1258
+
1259
+ QComboBox:disabled {
1260
+ background-color: #19232D;
1261
+ color: #9DA9B5;
1262
+ }
1263
+
1264
+ QComboBox:hover {
1265
+ border: 1px solid #346792;
1266
+ }
1267
+
1268
+ QComboBox:focus {
1269
+ border: 1px solid #1A72BB;
1270
+ }
1271
+
1272
+ QComboBox:on {
1273
+ selection-background-color: #346792;
1274
+ }
1275
+
1276
+ QComboBox::indicator {
1277
+ border: none;
1278
+ border-radius: 0;
1279
+ background-color: transparent;
1280
+ selection-background-color: transparent;
1281
+ color: transparent;
1282
+ selection-color: transparent;
1283
+ /* Needed to remove indicator - fix #132 */
1284
+ }
1285
+
1286
+ QComboBox::indicator:alternate {
1287
+ background: #19232D;
1288
+ }
1289
+
1290
+ QComboBox::item {
1291
+ /* Remove to fix #282, #285 and MR #288*/
1292
+ /*&:checked {
1293
+ font-weight: bold;
1294
+ }
1295
+
1296
+ &:selected {
1297
+ border: 0px solid transparent;
1298
+ }
1299
+ */
1300
+ }
1301
+
1302
+ QComboBox::item:alternate {
1303
+ background: #19232D;
1304
+ }
1305
+
1306
+ QComboBox::drop-down {
1307
+ subcontrol-origin: padding;
1308
+ subcontrol-position: top right;
1309
+ width: 12px;
1310
+ border-left: 1px solid #455364;
1311
+ }
1312
+
1313
+ QComboBox::down-arrow {
1314
+ image: url("rc:arrow_down_disabled.png");
1315
+ height: 8px;
1316
+ width: 8px;
1317
+ }
1318
+
1319
+ QComboBox::down-arrow:on, QComboBox::down-arrow:hover, QComboBox::down-arrow:focus {
1320
+ image: url("rc:arrow_down.png");
1321
+ }
1322
+
1323
+ /* QSlider ----------------------------------------------------------------
1324
+
1325
+ https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qslider
1326
+
1327
+ --------------------------------------------------------------------------- */
1328
+ QSlider:disabled {
1329
+ background: #19232D;
1330
+ }
1331
+
1332
+ QSlider:focus {
1333
+ border: none;
1334
+ }
1335
+
1336
+ QSlider::groove:horizontal {
1337
+ background: #455364;
1338
+ border: 1px solid #455364;
1339
+ height: 4px;
1340
+ margin: 0px;
1341
+ border-radius: 4px;
1342
+ }
1343
+
1344
+ QSlider::groove:vertical {
1345
+ background: #455364;
1346
+ border: 1px solid #455364;
1347
+ width: 4px;
1348
+ margin: 0px;
1349
+ border-radius: 4px;
1350
+ }
1351
+
1352
+ QSlider::add-page:vertical {
1353
+ background: #346792;
1354
+ border: 1px solid #455364;
1355
+ width: 4px;
1356
+ margin: 0px;
1357
+ border-radius: 4px;
1358
+ }
1359
+
1360
+ QSlider::add-page:vertical :disabled {
1361
+ background: #26486B;
1362
+ }
1363
+
1364
+ QSlider::sub-page:horizontal {
1365
+ background: #346792;
1366
+ border: 1px solid #455364;
1367
+ height: 4px;
1368
+ margin: 0px;
1369
+ border-radius: 4px;
1370
+ }
1371
+
1372
+ QSlider::sub-page:horizontal:disabled {
1373
+ background: #26486B;
1374
+ }
1375
+
1376
+ QSlider::handle:horizontal {
1377
+ background: #9DA9B5;
1378
+ border: 1px solid #455364;
1379
+ width: 8px;
1380
+ height: 8px;
1381
+ margin: -8px 0px;
1382
+ border-radius: 4px;
1383
+ }
1384
+
1385
+ QSlider::handle:horizontal:hover {
1386
+ background: #346792;
1387
+ border: 1px solid #346792;
1388
+ }
1389
+
1390
+ QSlider::handle:horizontal:focus {
1391
+ border: 1px solid #1A72BB;
1392
+ }
1393
+
1394
+ QSlider::handle:vertical {
1395
+ background: #9DA9B5;
1396
+ border: 1px solid #455364;
1397
+ width: 8px;
1398
+ height: 8px;
1399
+ margin: 0 -8px;
1400
+ border-radius: 4px;
1401
+ }
1402
+
1403
+ QSlider::handle:vertical:hover {
1404
+ background: #346792;
1405
+ border: 1px solid #346792;
1406
+ }
1407
+
1408
+ QSlider::handle:vertical:focus {
1409
+ border: 1px solid #1A72BB;
1410
+ }
1411
+
1412
+ /* QLineEdit --------------------------------------------------------------
1413
+
1414
+ https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qlineedit
1415
+
1416
+ --------------------------------------------------------------------------- */
1417
+ QLineEdit {
1418
+ background-color: #19232D;
1419
+ padding-top: 2px;
1420
+ /* This QLineEdit fix 103, 111 */
1421
+ padding-bottom: 2px;
1422
+ /* This QLineEdit fix 103, 111 */
1423
+ padding-left: 4px;
1424
+ padding-right: 4px;
1425
+ border-style: solid;
1426
+ border: 1px solid #455364;
1427
+ border-radius: 4px;
1428
+ color: #E0E1E3;
1429
+ }
1430
+
1431
+ QLineEdit:disabled {
1432
+ background-color: #19232D;
1433
+ color: #9DA9B5;
1434
+ }
1435
+
1436
+ QLineEdit:hover {
1437
+ border: 1px solid #346792;
1438
+ color: #E0E1E3;
1439
+ }
1440
+
1441
+ QLineEdit:focus {
1442
+ border: 1px solid #1A72BB;
1443
+ }
1444
+
1445
+ QLineEdit:selected {
1446
+ background-color: #346792;
1447
+ color: #455364;
1448
+ }
1449
+
1450
+ /* QTabWiget --------------------------------------------------------------
1451
+
1452
+ https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtabwidget-and-qtabbar
1453
+
1454
+ --------------------------------------------------------------------------- */
1455
+ QTabWidget {
1456
+ padding: 2px;
1457
+ selection-background-color: #455364;
1458
+ }
1459
+
1460
+ QTabWidget QWidget {
1461
+ /* Fixes #189 */
1462
+ border-radius: 4px;
1463
+ }
1464
+
1465
+
1466
+
1467
+ QTabWidget::pane {
1468
+ border: 1px solid #455364;
1469
+ border-radius: 4px;
1470
+ margin: 0px;
1471
+ /* Fixes double border inside pane with pyqt5 */
1472
+ padding: 0px;
1473
+ }
1474
+
1475
+ QTabWidget::pane:selected {
1476
+ background-color: #455364;
1477
+ border: 1px solid #346792;
1478
+ }
1479
+
1480
+ /* QTabBar ----------------------------------------------------------------
1481
+
1482
+ https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtabwidget-and-qtabbar
1483
+
1484
+ --------------------------------------------------------------------------- */
1485
+ QTabBar, QDockWidget QTabBar {
1486
+ qproperty-drawBase: 0;
1487
+ border-radius: 4px;
1488
+ margin: 0px;
1489
+ padding: 2px;
1490
+ border: 0;
1491
+ /* left: 5px; move to the right by 5px - removed for fix */
1492
+ }
1493
+
1494
+ QTabBar::close-button, QDockWidget QTabBar::close-button {
1495
+ border: 0;
1496
+ margin: 0;
1497
+ padding: 4px;
1498
+ image: url("rc:window_close.png");
1499
+ }
1500
+
1501
+ QTabBar::close-button:hover, QDockWidget QTabBar::close-button:hover {
1502
+ image: url("rc:window_close_focus.png");
1503
+ }
1504
+
1505
+ QTabBar::close-button:pressed, QDockWidget QTabBar::close-button:pressed {
1506
+ image: url("rc:window_close_pressed.png");
1507
+ }
1508
+
1509
+ QTabBar::tab, QDockWidget QTabBar::tab {
1510
+ /* !selected and disabled ----------------------------------------- */
1511
+ /* selected ------------------------------------------------------- */
1512
+ }
1513
+
1514
+
1515
+ QTabBar::tab::disabled {width: 0; height: 0; margin: 0; padding: 0; border: none;}
1516
+
1517
+ QTabBar::tab:top:selected:disabled, QDockWidget QTabBar::tab:top:selected:disabled {
1518
+ border-bottom: 3px solid #26486B;
1519
+ color: #9DA9B5;
1520
+ background-color: #455364;
1521
+ }
1522
+
1523
+ QTabBar::tab:bottom:selected:disabled, QDockWidget QTabBar::tab:bottom:selected:disabled {
1524
+ border-top: 3px solid #26486B;
1525
+ color: #9DA9B5;
1526
+ background-color: #455364;
1527
+ }
1528
+
1529
+ QTabBar::tab:left:selected:disabled, QDockWidget QTabBar::tab:left:selected:disabled {
1530
+ border-right: 3px solid #26486B;
1531
+ color: #9DA9B5;
1532
+ background-color: #455364;
1533
+ }
1534
+
1535
+ QTabBar::tab:right:selected:disabled, QDockWidget QTabBar::tab:right:selected:disabled {
1536
+ border-left: 3px solid #26486B;
1537
+ color: #9DA9B5;
1538
+ background-color: #455364;
1539
+ }
1540
+
1541
+ QTabBar::tab:top:!selected:disabled, QDockWidget QTabBar::tab:top:!selected:disabled {
1542
+ border-bottom: 3px solid #19232D;
1543
+ color: #9DA9B5;
1544
+ background-color: #19232D;
1545
+ }
1546
+
1547
+ QTabBar::tab:bottom:!selected:disabled, QDockWidget QTabBar::tab:bottom:!selected:disabled {
1548
+ border-top: 3px solid #19232D;
1549
+ color: #9DA9B5;
1550
+ background-color: #19232D;
1551
+ }
1552
+
1553
+ QTabBar::tab:left:!selected:disabled, QDockWidget QTabBar::tab:left:!selected:disabled {
1554
+ border-right: 3px solid #19232D;
1555
+ color: #9DA9B5;
1556
+ background-color: #19232D;
1557
+ }
1558
+
1559
+ QTabBar::tab:right:!selected:disabled, QDockWidget QTabBar::tab:right:!selected:disabled {
1560
+ border-left: 3px solid #19232D;
1561
+ color: #9DA9B5;
1562
+ background-color: #19232D;
1563
+ }
1564
+
1565
+ QTabBar::tab:top:!selected, QDockWidget QTabBar::tab:top:!selected {
1566
+ border-bottom: 2px solid #19232D;
1567
+ margin-top: 2px;
1568
+ }
1569
+
1570
+ QTabBar::tab:bottom:!selected, QDockWidget QTabBar::tab:bottom:!selected {
1571
+ border-top: 2px solid #19232D;
1572
+ margin-bottom: 2px;
1573
+ }
1574
+
1575
+ QTabBar::tab:left:!selected, QDockWidget QTabBar::tab:left:!selected {
1576
+ border-left: 2px solid #19232D;
1577
+ margin-right: 2px;
1578
+ }
1579
+
1580
+ QTabBar::tab:right:!selected, QDockWidget QTabBar::tab:right:!selected {
1581
+ border-right: 2px solid #19232D;
1582
+ margin-left: 2px;
1583
+ }
1584
+
1585
+ QTabBar::tab:top, QDockWidget QTabBar::tab:top {
1586
+ background-color: #455364;
1587
+ margin-left: 2px;
1588
+ padding-left: 4px;
1589
+ padding-right: 4px;
1590
+ padding-top: 2px;
1591
+ padding-bottom: 2px;
1592
+ min-width: 5px;
1593
+ border-bottom: 3px solid #455364;
1594
+ border-top-left-radius: 4px;
1595
+ border-top-right-radius: 4px;
1596
+ }
1597
+
1598
+ QTabBar::tab:top:selected, QDockWidget QTabBar::tab:top:selected {
1599
+ background-color: #1a7048;
1600
+ border-bottom: 3px solid #259AE9;
1601
+ border-top-left-radius: 4px;
1602
+ border-top-right-radius: 4px;
1603
+ }
1604
+
1605
+ QTabBar::tab:top:!selected:hover, QDockWidget QTabBar::tab:top:!selected:hover {
1606
+ border: 1px solid #1A72BB;
1607
+ border-bottom: 3px solid #1A72BB;
1608
+ /* Fixes spyder-ide/spyder#9766 and #243 */
1609
+ padding-left: 3px;
1610
+ padding-right: 3px;
1611
+ }
1612
+
1613
+ QTabBar::tab:bottom, QDockWidget QTabBar::tab:bottom {
1614
+ border-top: 3px solid #455364;
1615
+ background-color: #455364;
1616
+ margin-left: 2px;
1617
+ padding-left: 4px;
1618
+ padding-right: 4px;
1619
+ padding-top: 2px;
1620
+ padding-bottom: 2px;
1621
+ border-bottom-left-radius: 4px;
1622
+ border-bottom-right-radius: 4px;
1623
+ min-width: 5px;
1624
+ }
1625
+
1626
+ QTabBar::tab:bottom:selected, QDockWidget QTabBar::tab:bottom:selected {
1627
+ background-color: #54687A;
1628
+ border-top: 3px solid #259AE9;
1629
+ border-bottom-left-radius: 4px;
1630
+ border-bottom-right-radius: 4px;
1631
+ }
1632
+
1633
+ QTabBar::tab:bottom:!selected:hover, QDockWidget QTabBar::tab:bottom:!selected:hover {
1634
+ border: 1px solid #1A72BB;
1635
+ border-top: 3px solid #1A72BB;
1636
+ /* Fixes spyder-ide/spyder#9766 and #243 */
1637
+ padding-left: 3px;
1638
+ padding-right: 3px;
1639
+ }
1640
+
1641
+ QTabBar::tab:left, QDockWidget QTabBar::tab:left {
1642
+ background-color: #455364;
1643
+ margin-top: 2px;
1644
+ padding-left: 2px;
1645
+ padding-right: 2px;
1646
+ padding-top: 4px;
1647
+ padding-bottom: 4px;
1648
+ border-top-left-radius: 4px;
1649
+ border-bottom-left-radius: 4px;
1650
+ min-height: 5px;
1651
+ }
1652
+
1653
+ QTabBar::tab:left:selected, QDockWidget QTabBar::tab:left:selected {
1654
+ background-color: #54687A;
1655
+ border-right: 3px solid #259AE9;
1656
+ }
1657
+
1658
+ QTabBar::tab:left:!selected:hover, QDockWidget QTabBar::tab:left:!selected:hover {
1659
+ border: 1px solid #1A72BB;
1660
+ border-right: 3px solid #1A72BB;
1661
+ /* Fixes different behavior #271 */
1662
+ margin-right: 0px;
1663
+ padding-right: -1px;
1664
+ }
1665
+
1666
+ QTabBar::tab:right, QDockWidget QTabBar::tab:right {
1667
+ background-color: #455364;
1668
+ margin-top: 2px;
1669
+ padding-left: 2px;
1670
+ padding-right: 2px;
1671
+ padding-top: 4px;
1672
+ padding-bottom: 4px;
1673
+ border-top-right-radius: 4px;
1674
+ border-bottom-right-radius: 4px;
1675
+ min-height: 5px;
1676
+ }
1677
+
1678
+ QTabBar::tab:right:selected, QDockWidget QTabBar::tab:right:selected {
1679
+ background-color: #54687A;
1680
+ border-left: 3px solid #259AE9;
1681
+ }
1682
+
1683
+ QTabBar::tab:right:!selected:hover, QDockWidget QTabBar::tab:right:!selected:hover {
1684
+ border: 1px solid #1A72BB;
1685
+ border-left: 3px solid #1A72BB;
1686
+ /* Fixes different behavior #271 */
1687
+ margin-left: 0px;
1688
+ padding-left: 0px;
1689
+ }
1690
+
1691
+ QTabBar QToolButton, QDockWidget QTabBar QToolButton {
1692
+ /* Fixes #136 */
1693
+ background-color: #455364;
1694
+ height: 12px;
1695
+ width: 12px;
1696
+ }
1697
+
1698
+ QTabBar QToolButton:pressed, QDockWidget QTabBar QToolButton:pressed {
1699
+ background-color: #455364;
1700
+ }
1701
+
1702
+ QTabBar QToolButton:pressed:hover, QDockWidget QTabBar QToolButton:pressed:hover {
1703
+ border: 1px solid #346792;
1704
+ }
1705
+
1706
+ QTabBar QToolButton::left-arrow:enabled, QDockWidget QTabBar QToolButton::left-arrow:enabled {
1707
+ image: url("rc:arrow_left.png");
1708
+ }
1709
+
1710
+ QTabBar QToolButton::left-arrow:disabled, QDockWidget QTabBar QToolButton::left-arrow:disabled {
1711
+ image: url("rc:arrow_left_disabled.png");
1712
+ }
1713
+
1714
+ QTabBar QToolButton::right-arrow:enabled, QDockWidget QTabBar QToolButton::right-arrow:enabled {
1715
+ image: url("rc:arrow_right.png");
1716
+ }
1717
+
1718
+ QTabBar QToolButton::right-arrow:disabled, QDockWidget QTabBar QToolButton::right-arrow:disabled {
1719
+ image: url("rc:arrow_right_disabled.png");
1720
+ }
1721
+
1722
+ /* QDockWiget -------------------------------------------------------------
1723
+
1724
+ --------------------------------------------------------------------------- */
1725
+ QDockWidget {
1726
+ outline: 1px solid #455364;
1727
+ background-color: #19232D;
1728
+ border: 1px solid #455364;
1729
+ border-radius: 4px;
1730
+ titlebar-close-icon: url("rc:transparent.png");
1731
+ titlebar-normal-icon: url("rc:transparent.png");
1732
+ }
1733
+
1734
+ QDockWidget::title {
1735
+ /* Better size for title bar */
1736
+ padding: 3px;
1737
+ spacing: 4px;
1738
+ border: none;
1739
+ background-color: #455364;
1740
+ }
1741
+
1742
+ QDockWidget::close-button {
1743
+ icon-size: 12px;
1744
+ border: none;
1745
+ background: transparent;
1746
+ background-image: transparent;
1747
+ border: 0;
1748
+ margin: 0;
1749
+ padding: 0;
1750
+ image: url("rc:window_close.png");
1751
+ }
1752
+
1753
+ QDockWidget::close-button:hover {
1754
+ image: url("rc:window_close_focus.png");
1755
+ }
1756
+
1757
+ QDockWidget::close-button:pressed {
1758
+ image: url("rc:window_close_pressed.png");
1759
+ }
1760
+
1761
+ QDockWidget::float-button {
1762
+ icon-size: 12px;
1763
+ border: none;
1764
+ background: transparent;
1765
+ background-image: transparent;
1766
+ border: 0;
1767
+ margin: 0;
1768
+ padding: 0;
1769
+ image: url("rc:window_undock.png");
1770
+ }
1771
+
1772
+ QDockWidget::float-button:hover {
1773
+ image: url("rc:window_undock_focus.png");
1774
+ }
1775
+
1776
+ QDockWidget::float-button:pressed {
1777
+ image: url("rc:window_undock_pressed.png");
1778
+ }
1779
+
1780
+ /* QTreeView QListView QTableView -----------------------------------------
1781
+
1782
+ https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtreeview
1783
+ https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qlistview
1784
+ https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtableview
1785
+
1786
+ --------------------------------------------------------------------------- */
1787
+ QTreeView:branch:selected, QTreeView:branch:hover {
1788
+ background: url("rc:transparent.png");
1789
+ }
1790
+
1791
+ QTreeView:branch:has-siblings:!adjoins-item {
1792
+ border-image: url("rc:branch_line.png") 0;
1793
+ }
1794
+
1795
+ QTreeView:branch:has-siblings:adjoins-item {
1796
+ border-image: url("rc:branch_more.png") 0;
1797
+ }
1798
+
1799
+ QTreeView:branch:!has-children:!has-siblings:adjoins-item {
1800
+ border-image: url("rc:branch_end.png") 0;
1801
+ }
1802
+
1803
+ QTreeView:branch:has-children:!has-siblings:closed, QTreeView:branch:closed:has-children:has-siblings {
1804
+ border-image: none;
1805
+ image: url("rc:branch_closed.png");
1806
+ }
1807
+
1808
+ QTreeView:branch:open:has-children:!has-siblings, QTreeView:branch:open:has-children:has-siblings {
1809
+ border-image: none;
1810
+ image: url("rc:branch_open.png");
1811
+ }
1812
+
1813
+ QTreeView:branch:has-children:!has-siblings:closed:hover, QTreeView:branch:closed:has-children:has-siblings:hover {
1814
+ image: url("rc:branch_closed_focus.png");
1815
+ }
1816
+
1817
+ QTreeView:branch:open:has-children:!has-siblings:hover, QTreeView:branch:open:has-children:has-siblings:hover {
1818
+ image: url("rc:branch_open_focus.png");
1819
+ }
1820
+
1821
+ QTreeView::indicator:checked,
1822
+ QListView::indicator:checked,
1823
+ QTableView::indicator:checked,
1824
+ QColumnView::indicator:checked {
1825
+ image: url("rc:checkbox_checked.png");
1826
+ }
1827
+
1828
+ QTreeView::indicator:checked:hover, QTreeView::indicator:checked:focus, QTreeView::indicator:checked:pressed,
1829
+ QListView::indicator:checked:hover,
1830
+ QListView::indicator:checked:focus,
1831
+ QListView::indicator:checked:pressed,
1832
+ QTableView::indicator:checked:hover,
1833
+ QTableView::indicator:checked:focus,
1834
+ QTableView::indicator:checked:pressed,
1835
+ QColumnView::indicator:checked:hover,
1836
+ QColumnView::indicator:checked:focus,
1837
+ QColumnView::indicator:checked:pressed {
1838
+ image: url("rc:checkbox_checked_pressed.png");
1839
+ }
1840
+
1841
+ QTreeView::indicator:unchecked,
1842
+ QListView::indicator:unchecked,
1843
+ QTableView::indicator:unchecked,
1844
+ QColumnView::indicator:unchecked {
1845
+ image: url("rc:checkbox_unchecked.png");
1846
+ }
1847
+
1848
+ QTreeView::indicator:unchecked:hover, QTreeView::indicator:unchecked:focus, QTreeView::indicator:unchecked:pressed,
1849
+ QListView::indicator:unchecked:hover,
1850
+ QListView::indicator:unchecked:focus,
1851
+ QListView::indicator:unchecked:pressed,
1852
+ QTableView::indicator:unchecked:hover,
1853
+ QTableView::indicator:unchecked:focus,
1854
+ QTableView::indicator:unchecked:pressed,
1855
+ QColumnView::indicator:unchecked:hover,
1856
+ QColumnView::indicator:unchecked:focus,
1857
+ QColumnView::indicator:unchecked:pressed {
1858
+ image: url("rc:checkbox_unchecked_focus.png");
1859
+ }
1860
+
1861
+ QTreeView::indicator:indeterminate,
1862
+ QListView::indicator:indeterminate,
1863
+ QTableView::indicator:indeterminate,
1864
+ QColumnView::indicator:indeterminate {
1865
+ image: url("rc:checkbox_indeterminate.png");
1866
+ }
1867
+
1868
+ QTreeView::indicator:indeterminate:hover, QTreeView::indicator:indeterminate:focus, QTreeView::indicator:indeterminate:pressed,
1869
+ QListView::indicator:indeterminate:hover,
1870
+ QListView::indicator:indeterminate:focus,
1871
+ QListView::indicator:indeterminate:pressed,
1872
+ QTableView::indicator:indeterminate:hover,
1873
+ QTableView::indicator:indeterminate:focus,
1874
+ QTableView::indicator:indeterminate:pressed,
1875
+ QColumnView::indicator:indeterminate:hover,
1876
+ QColumnView::indicator:indeterminate:focus,
1877
+ QColumnView::indicator:indeterminate:pressed {
1878
+ image: url("rc:checkbox_indeterminate_focus.png");
1879
+ }
1880
+
1881
+ QTreeView,
1882
+ QListView,
1883
+ QTableView,
1884
+ QColumnView {
1885
+ background-color: #19232D;
1886
+ border: 1px solid #455364;
1887
+ color: #E0E1E3;
1888
+ gridline-color: #455364;
1889
+ border-radius: 4px;
1890
+ }
1891
+
1892
+ QTreeView:disabled,
1893
+ QListView:disabled,
1894
+ QTableView:disabled,
1895
+ QColumnView:disabled {
1896
+ background-color: #19232D;
1897
+ color: #9DA9B5;
1898
+ }
1899
+
1900
+ QTreeView:selected,
1901
+ QListView:selected,
1902
+ QTableView:selected,
1903
+ QColumnView:selected {
1904
+ background-color: #346792;
1905
+ color: #455364;
1906
+ }
1907
+
1908
+ QTreeView:focus,
1909
+ QListView:focus,
1910
+ QTableView:focus,
1911
+ QColumnView:focus {
1912
+ border: 1px solid #1A72BB;
1913
+ }
1914
+
1915
+ QTreeView::item:pressed,
1916
+ QListView::item:pressed,
1917
+ QTableView::item:pressed,
1918
+ QColumnView::item:pressed {
1919
+ background-color: #346792;
1920
+ }
1921
+
1922
+ QTreeView::item:selected:active,
1923
+ QListView::item:selected:active,
1924
+ QTableView::item:selected:active,
1925
+ QColumnView::item:selected:active {
1926
+ background-color: #346792;
1927
+ }
1928
+
1929
+ QTreeView::item:selected:!active,
1930
+ QListView::item:selected:!active,
1931
+ QTableView::item:selected:!active,
1932
+ QColumnView::item:selected:!active {
1933
+ color: #E0E1E3;
1934
+ background-color: #37414F;
1935
+ }
1936
+
1937
+ QTreeView::item:!selected:hover,
1938
+ QListView::item:!selected:hover,
1939
+ QTableView::item:!selected:hover,
1940
+ QColumnView::item:!selected:hover {
1941
+ outline: 0;
1942
+ color: #E0E1E3;
1943
+ background-color: #37414F;
1944
+ }
1945
+
1946
+ QTableCornerButton::section {
1947
+ background-color: #19232D;
1948
+ border: 1px transparent #455364;
1949
+ border-radius: 0px;
1950
+ }
1951
+
1952
+ /* QHeaderView ------------------------------------------------------------
1953
+
1954
+ https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qheaderview
1955
+
1956
+ --------------------------------------------------------------------------- */
1957
+ QHeaderView {
1958
+ background-color: #455364;
1959
+ border: 0px transparent #455364;
1960
+ padding: 0;
1961
+ margin: 0;
1962
+ border-radius: 0;
1963
+ }
1964
+
1965
+ QHeaderView:disabled {
1966
+ background-color: #455364;
1967
+ border: 1px transparent #455364;
1968
+ }
1969
+
1970
+ QHeaderView::section {
1971
+ background-color: #455364;
1972
+ color: #E0E1E3;
1973
+ border-radius: 0;
1974
+ text-align: left;
1975
+ font-size: 13px;
1976
+ }
1977
+
1978
+ QHeaderView::section::horizontal {
1979
+ padding-top: 0;
1980
+ padding-bottom: 0;
1981
+ padding-left: 4px;
1982
+ padding-right: 4px;
1983
+ border-left: 1px solid #19232D;
1984
+ }
1985
+
1986
+ QHeaderView::section::horizontal::first, QHeaderView::section::horizontal::only-one {
1987
+ border-left: 1px solid #455364;
1988
+ }
1989
+
1990
+ QHeaderView::section::horizontal:disabled {
1991
+ color: #9DA9B5;
1992
+ }
1993
+
1994
+ QHeaderView::section::vertical {
1995
+ padding-top: 0;
1996
+ padding-bottom: 0;
1997
+ padding-left: 4px;
1998
+ padding-right: 4px;
1999
+ border-top: 1px solid #19232D;
2000
+ }
2001
+
2002
+ QHeaderView::section::vertical::first, QHeaderView::section::vertical::only-one {
2003
+ border-top: 1px solid #455364;
2004
+ }
2005
+
2006
+ QHeaderView::section::vertical:disabled {
2007
+ color: #9DA9B5;
2008
+ }
2009
+
2010
+ QHeaderView::down-arrow {
2011
+ /* Those settings (border/width/height/background-color) solve bug */
2012
+ /* transparent arrow background and size */
2013
+ background-color: #455364;
2014
+ border: none;
2015
+ height: 12px;
2016
+ width: 12px;
2017
+ padding-left: 2px;
2018
+ padding-right: 2px;
2019
+ image: url("rc:arrow_down.png");
2020
+ }
2021
+
2022
+ QHeaderView::up-arrow {
2023
+ background-color: #455364;
2024
+ border: none;
2025
+ height: 12px;
2026
+ width: 12px;
2027
+ padding-left: 2px;
2028
+ padding-right: 2px;
2029
+ image: url("rc:arrow_up.png");
2030
+ }
2031
+
2032
+ /* QToolBox --------------------------------------------------------------
2033
+
2034
+ https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbox
2035
+
2036
+ --------------------------------------------------------------------------- */
2037
+ QToolBox {
2038
+ padding: 0px;
2039
+ border: 0px;
2040
+ border: 1px solid #455364;
2041
+ }
2042
+
2043
+ QToolBox:selected {
2044
+ padding: 0px;
2045
+ border: 2px solid #346792;
2046
+ }
2047
+
2048
+ QToolBox::tab {
2049
+ background-color: #19232D;
2050
+ border: 1px solid #455364;
2051
+ color: #E0E1E3;
2052
+ border-top-left-radius: 4px;
2053
+ border-top-right-radius: 4px;
2054
+ }
2055
+
2056
+ QToolBox::tab:disabled {
2057
+ color: #9DA9B5;
2058
+ }
2059
+
2060
+ QToolBox::tab:selected {
2061
+ background-color: #1a7048;
2062
+ border-bottom: 2px solid #1a7048;
2063
+ }
2064
+
2065
+ QToolBox::tab:selected:disabled {
2066
+ background-color: #455364;
2067
+ border-bottom: 2px solid #26486B;
2068
+ }
2069
+
2070
+ QToolBox::tab:!selected {
2071
+ background-color: #455364;
2072
+ border-bottom: 2px solid #455364;
2073
+ }
2074
+
2075
+ QToolBox::tab:!selected:disabled {
2076
+ background-color: #19232D;
2077
+ }
2078
+
2079
+ QToolBox::tab:hover {
2080
+ border-color: #1A72BB;
2081
+ border-bottom: 2px solid #1A72BB;
2082
+ }
2083
+
2084
+ QToolBox QScrollArea QWidget QWidget {
2085
+ padding: 0px;
2086
+ border: 0px;
2087
+ background-color: #19232D;
2088
+ }
2089
+
2090
+ /* QFrame -----------------------------------------------------------------
2091
+
2092
+ https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qframe
2093
+ https://doc.qt.io/qt-5/qframe.html#-prop
2094
+ https://github.com/ColinDuquesnoy/QDarkStyleSheet
2095
+ https://doc.qt.io/qt-5/qframe.html#details
2096
+ https://stackoverflow.com/questions/14581498/qt-stylesheet-for-hline-vline-color
2097
+
2098
+ --------------------------------------------------------------------------- */
2099
+ /* (dot) .QFrame fix #141, #126, #123 */
2100
+ .QFrame {
2101
+ border-radius: 4px;
2102
+ border: 1px solid #455364;
2103
+ /* No frame */
2104
+ /* HLine */
2105
+ /* HLine */
2106
+ }
2107
+
2108
+ .QFrame[frameShape="0"] {
2109
+ border-radius: 4px;
2110
+ border: 1px transparent #455364;
2111
+ }
2112
+
2113
+ .QFrame[frameShape="4"] {
2114
+ max-height: 2px;
2115
+ border: none;
2116
+ background-color: #455364;
2117
+ }
2118
+
2119
+ .QFrame[frameShape="5"] {
2120
+ max-width: 2px;
2121
+ border: none;
2122
+ background-color: #455364;
2123
+ }
2124
+
2125
+ /* QSplitter --------------------------------------------------------------
2126
+
2127
+ https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qsplitter
2128
+
2129
+ --------------------------------------------------------------------------- */
2130
+ QSplitter {
2131
+ background-color: #19232D;
2132
+ spacing: 0px;
2133
+ padding: 0px;
2134
+ margin: 0px;
2135
+ }
2136
+
2137
+ QSplitter::handle {
2138
+ background-color: #19232D;
2139
+ border: 0px solid #19232D;
2140
+ spacing: 0px;
2141
+ padding: 1px;
2142
+ margin: 0px;
2143
+ }
2144
+
2145
+ QSplitter::handle:hover {
2146
+ background-color: #19232D;
2147
+ }
2148
+
2149
+ QSplitter::handle:horizontal {
2150
+ width: 1px;
2151
+ image: url("rc:line_vertical.png");
2152
+ }
2153
+
2154
+ QSplitter::handle:vertical {
2155
+ height: 1px;
2156
+ image: url("rc:line_horizontal.png");
2157
+ }
2158
+
2159
+ /* QDateEdit, QDateTimeEdit -----------------------------------------------
2160
+
2161
+ --------------------------------------------------------------------------- */
2162
+ QDateEdit, QDateTimeEdit {
2163
+ selection-background-color: #346792;
2164
+ border-style: solid;
2165
+ border: 1px solid #455364;
2166
+ border-radius: 4px;
2167
+ /* This fixes 103, 111 */
2168
+ padding-top: 2px;
2169
+ /* This fixes 103, 111 */
2170
+ padding-bottom: 2px;
2171
+ padding-left: 4px;
2172
+ padding-right: 4px;
2173
+ min-width: 10px;
2174
+ }
2175
+
2176
+ QDateEdit:on, QDateTimeEdit:on {
2177
+ selection-background-color: #346792;
2178
+ }
2179
+
2180
+ QDateEdit::drop-down, QDateTimeEdit::drop-down {
2181
+ subcontrol-origin: padding;
2182
+ subcontrol-position: top right;
2183
+ width: 12px;
2184
+ border-left: 1px solid #455364;
2185
+ }
2186
+
2187
+ QDateEdit::down-arrow, QDateTimeEdit::down-arrow {
2188
+ image: url("rc:arrow_down_disabled.png");
2189
+ height: 8px;
2190
+ width: 8px;
2191
+ }
2192
+
2193
+ QDateEdit::down-arrow:on, QDateEdit::down-arrow:hover, QDateEdit::down-arrow:focus, QDateTimeEdit::down-arrow:on, QDateTimeEdit::down-arrow:hover, QDateTimeEdit::down-arrow:focus {
2194
+ image: url("rc:arrow_down.png");
2195
+ }
2196
+
2197
+ QDateEdit QAbstractItemView, QDateTimeEdit QAbstractItemView {
2198
+ background-color: #19232D;
2199
+ border-radius: 4px;
2200
+ border: 1px solid #455364;
2201
+ selection-background-color: #346792;
2202
+ }
2203
+
2204
+ /* QAbstractView ----------------------------------------------------------
2205
+
2206
+ --------------------------------------------------------------------------- */
2207
+ QAbstractView:hover {
2208
+ border: 1px solid #346792;
2209
+ color: #E0E1E3;
2210
+ }
2211
+
2212
+ QAbstractView:selected {
2213
+ background: #346792;
2214
+ color: #455364;
2215
+ }
2216
+
2217
+ /* PlotWidget -------------------------------------------------------------
2218
+
2219
+ --------------------------------------------------------------------------- */
2220
+ PlotWidget {
2221
+ /* Fix cut labels in plots #134 */
2222
+ padding: 0px;
2223
+ }