diff --git a/src/resources/themes/v_simple/arrow_dropdown.svg b/src/resources/themes/v_simple/arrow_dropdown.svg
new file mode 100644
index 00000000..8b465de9
--- /dev/null
+++ b/src/resources/themes/v_simple/arrow_dropdown.svg
@@ -0,0 +1,9 @@
+
+
+
+
diff --git a/src/resources/themes/v_simple/arrow_dropdown_disabled.svg b/src/resources/themes/v_simple/arrow_dropdown_disabled.svg
new file mode 100644
index 00000000..7add5e54
--- /dev/null
+++ b/src/resources/themes/v_simple/arrow_dropdown_disabled.svg
@@ -0,0 +1,9 @@
+
+
+
+
diff --git a/src/resources/themes/v_simple/branch_closed.svg b/src/resources/themes/v_simple/branch_closed.svg
new file mode 100644
index 00000000..c524ab79
--- /dev/null
+++ b/src/resources/themes/v_simple/branch_closed.svg
@@ -0,0 +1,8 @@
+
diff --git a/src/resources/themes/v_simple/branch_end.svg b/src/resources/themes/v_simple/branch_end.svg
new file mode 100644
index 00000000..baa0c23f
--- /dev/null
+++ b/src/resources/themes/v_simple/branch_end.svg
@@ -0,0 +1,7 @@
+
diff --git a/src/resources/themes/v_simple/branch_more.svg b/src/resources/themes/v_simple/branch_more.svg
new file mode 100644
index 00000000..cb0fecad
--- /dev/null
+++ b/src/resources/themes/v_simple/branch_more.svg
@@ -0,0 +1,7 @@
+
diff --git a/src/resources/themes/v_simple/branch_open.svg b/src/resources/themes/v_simple/branch_open.svg
new file mode 100644
index 00000000..c1e8e141
--- /dev/null
+++ b/src/resources/themes/v_simple/branch_open.svg
@@ -0,0 +1,8 @@
+
diff --git a/src/resources/themes/v_simple/checkbox_checked.svg b/src/resources/themes/v_simple/checkbox_checked.svg
new file mode 100644
index 00000000..f017b5b4
--- /dev/null
+++ b/src/resources/themes/v_simple/checkbox_checked.svg
@@ -0,0 +1,7 @@
+
diff --git a/src/resources/themes/v_simple/checkbox_checked_disabled.svg b/src/resources/themes/v_simple/checkbox_checked_disabled.svg
new file mode 100644
index 00000000..39c47873
--- /dev/null
+++ b/src/resources/themes/v_simple/checkbox_checked_disabled.svg
@@ -0,0 +1,7 @@
+
diff --git a/src/resources/themes/v_simple/checkbox_unchecked.svg b/src/resources/themes/v_simple/checkbox_unchecked.svg
new file mode 100644
index 00000000..5167523e
--- /dev/null
+++ b/src/resources/themes/v_simple/checkbox_unchecked.svg
@@ -0,0 +1,6 @@
+
diff --git a/src/resources/themes/v_simple/checkbox_unchecked_disabled.svg b/src/resources/themes/v_simple/checkbox_unchecked_disabled.svg
new file mode 100644
index 00000000..35788230
--- /dev/null
+++ b/src/resources/themes/v_simple/checkbox_unchecked_disabled.svg
@@ -0,0 +1,6 @@
+
diff --git a/src/resources/themes/v_simple/close.svg b/src/resources/themes/v_simple/close.svg
new file mode 100644
index 00000000..26cbf713
--- /dev/null
+++ b/src/resources/themes/v_simple/close.svg
@@ -0,0 +1,10 @@
+
+
+
+
diff --git a/src/resources/themes/v_simple/close_grey.svg b/src/resources/themes/v_simple/close_grey.svg
new file mode 100644
index 00000000..24bddd4e
--- /dev/null
+++ b/src/resources/themes/v_simple/close_grey.svg
@@ -0,0 +1,10 @@
+
+
+
+
diff --git a/src/resources/themes/v_simple/down.svg b/src/resources/themes/v_simple/down.svg
new file mode 100644
index 00000000..386ac7f8
--- /dev/null
+++ b/src/resources/themes/v_simple/down.svg
@@ -0,0 +1,8 @@
+
diff --git a/src/resources/themes/v_simple/down_disabled.svg b/src/resources/themes/v_simple/down_disabled.svg
new file mode 100644
index 00000000..2a53e0f0
--- /dev/null
+++ b/src/resources/themes/v_simple/down_disabled.svg
@@ -0,0 +1,8 @@
+
diff --git a/src/resources/themes/v_simple/float.svg b/src/resources/themes/v_simple/float.svg
new file mode 100644
index 00000000..e4a198f3
--- /dev/null
+++ b/src/resources/themes/v_simple/float.svg
@@ -0,0 +1,12 @@
+
+
+
+
diff --git a/src/resources/themes/v_simple/left.svg b/src/resources/themes/v_simple/left.svg
new file mode 100644
index 00000000..aee69f4a
--- /dev/null
+++ b/src/resources/themes/v_simple/left.svg
@@ -0,0 +1,8 @@
+
diff --git a/src/resources/themes/v_simple/left_disabled.svg b/src/resources/themes/v_simple/left_disabled.svg
new file mode 100644
index 00000000..3cabd4b5
--- /dev/null
+++ b/src/resources/themes/v_simple/left_disabled.svg
@@ -0,0 +1,8 @@
+
diff --git a/src/resources/themes/v_simple/line.svg b/src/resources/themes/v_simple/line.svg
new file mode 100644
index 00000000..8c981419
--- /dev/null
+++ b/src/resources/themes/v_simple/line.svg
@@ -0,0 +1,6 @@
+
diff --git a/src/resources/themes/v_simple/menu_checkbox.svg b/src/resources/themes/v_simple/menu_checkbox.svg
new file mode 100644
index 00000000..0aeb35a1
--- /dev/null
+++ b/src/resources/themes/v_simple/menu_checkbox.svg
@@ -0,0 +1,6 @@
+
diff --git a/src/resources/themes/v_simple/menu_radiobutton.svg b/src/resources/themes/v_simple/menu_radiobutton.svg
new file mode 100644
index 00000000..aafaa309
--- /dev/null
+++ b/src/resources/themes/v_simple/menu_radiobutton.svg
@@ -0,0 +1,6 @@
+
diff --git a/src/resources/themes/v_simple/radiobutton_checked.svg b/src/resources/themes/v_simple/radiobutton_checked.svg
new file mode 100644
index 00000000..c9834cc5
--- /dev/null
+++ b/src/resources/themes/v_simple/radiobutton_checked.svg
@@ -0,0 +1,7 @@
+
diff --git a/src/resources/themes/v_simple/radiobutton_checked_disabled.svg b/src/resources/themes/v_simple/radiobutton_checked_disabled.svg
new file mode 100644
index 00000000..b67faef0
--- /dev/null
+++ b/src/resources/themes/v_simple/radiobutton_checked_disabled.svg
@@ -0,0 +1,7 @@
+
diff --git a/src/resources/themes/v_simple/radiobutton_unchecked.svg b/src/resources/themes/v_simple/radiobutton_unchecked.svg
new file mode 100644
index 00000000..7cd0863a
--- /dev/null
+++ b/src/resources/themes/v_simple/radiobutton_unchecked.svg
@@ -0,0 +1,6 @@
+
diff --git a/src/resources/themes/v_simple/radiobutton_unchecked_disabled.svg b/src/resources/themes/v_simple/radiobutton_unchecked_disabled.svg
new file mode 100644
index 00000000..8308f78b
--- /dev/null
+++ b/src/resources/themes/v_simple/radiobutton_unchecked_disabled.svg
@@ -0,0 +1,6 @@
+
diff --git a/src/resources/themes/v_simple/right.svg b/src/resources/themes/v_simple/right.svg
new file mode 100644
index 00000000..c524ab79
--- /dev/null
+++ b/src/resources/themes/v_simple/right.svg
@@ -0,0 +1,8 @@
+
diff --git a/src/resources/themes/v_simple/right_disabled.svg b/src/resources/themes/v_simple/right_disabled.svg
new file mode 100644
index 00000000..c0c83ba8
--- /dev/null
+++ b/src/resources/themes/v_simple/right_disabled.svg
@@ -0,0 +1,8 @@
+
diff --git a/src/resources/themes/v_simple/up.svg b/src/resources/themes/v_simple/up.svg
new file mode 100644
index 00000000..52be26da
--- /dev/null
+++ b/src/resources/themes/v_simple/up.svg
@@ -0,0 +1,8 @@
+
diff --git a/src/resources/themes/v_simple/up_disabled.svg b/src/resources/themes/v_simple/up_disabled.svg
new file mode 100644
index 00000000..36e54158
--- /dev/null
+++ b/src/resources/themes/v_simple/up_disabled.svg
@@ -0,0 +1,8 @@
+
diff --git a/src/resources/themes/v_simple/v_simple.css b/src/resources/themes/v_simple/v_simple.css
new file mode 100644
index 00000000..975f6963
--- /dev/null
+++ b/src/resources/themes/v_simple/v_simple.css
@@ -0,0 +1,430 @@
+body {
+ margin: 0 auto;
+ font-family: ".萍方-简", "Lantinghei SC", "Microsoft Yahei", "Hiragino Sans GB", "Microsoft Sans Serif", "WenQuanYi Micro Hei", sans;
+ color: #222222;
+ line-height: 1.5;
+ padding: 15px;
+ background: #FFF;
+ font-size: 16px;
+ width: 80%;
+}
+
+kbd {
+ padding: 0 .29412em;
+ border-radius: .3rem;
+ border: .1rem solid #c9c9c9;
+ border-bottom-color: #bcbcbc;
+ background-color: #fcfcfc;
+ color: #555;
+ font-size: 85%;
+ box-shadow: 0 0.1rem 0 #b0b0b0;
+ word-break: break-word;
+}
+
+.MathJax span {
+ display: inline;
+ position: static;
+ border: 0;
+ padding: 0;
+ margin: 0;
+ vertical-align: 0;
+ line-height: normal;
+ text-decoration: none;
+ font-size: 18px;
+}
+
+h1, h2, h3, h4, h5, h6 {
+ font-family: ".萍方-简", "Lantinghei SC", "Microsoft Yahei", "Hiragino Sans GB", "Microsoft Sans Serif", "WenQuanYi Micro Hei", sans;
+ -webkit-font-smoothing: initial;
+ font-weight: 100;
+ color: var(--text-color);
+ line-height: 1.35;
+ font-variant-numeric: lining-nums;
+ font-weight: bold;
+ padding: 0;
+ margin-top: 1.2em;
+ margin-bottom: 0.6em;
+ line-height: 1.35;
+ color: #000;
+}
+
+p {
+ font-family: ".萍方-简", "Lantinghei SC", "Microsoft Yahei", "Hiragino Sans GB", "Microsoft Sans Serif", "WenQuanYi Micro Hei", sans;
+ padding: 0;
+ margin-top: 16px;
+ margin-bottom: 16px;
+}
+
+h1 {
+ text-align: center;
+ font-size: 2.4em;
+ padding-bottom: 1em;
+ border-bottom: 3px double #eee;
+}
+h1::after {
+ border-bottom: 2px solid #232323;
+ content: "";
+ width: 100px;
+ display: block;
+ margin: 0px auto;
+ height: 1px;
+ position: relative;
+ right: 16px;
+}
+
+h2 {
+ text-align: center;
+ font-size: 1.8em;
+}
+
+h2::after {
+ border-bottom: 1px solid #232323;
+ content: "";
+ width: 80px;
+ display: block;
+ margin: 0px auto;
+ height: 1px;
+ position: relative;
+ right: 10px;
+}
+
+h3 {
+ font-size: 1.6em;
+}
+
+h4 {
+ font-size: 1.4em;
+}
+
+h5 {
+ font-size: 1.2em;
+}
+
+h6 {
+ font-size: 1.2em;
+}
+
+a {
+ color: #40ccab;
+ margin: 0;
+ padding: 0;
+ vertical-align: baseline;
+ text-decoration: none;
+ word-break: break-all;
+}
+
+a:hover {
+ color: #66ccff;
+}
+
+a:visited {
+ color: purple;
+}
+
+ul, ol {
+ padding: 0;
+ padding-left: 24px;
+}
+
+li {
+ font-family: ".萍方-简", "Lantinghei SC", "Microsoft Yahei", "Hiragino Sans GB", "Microsoft Sans Serif", "WenQuanYi Micro Hei", sans;
+ line-height: 24px;
+}
+
+li ul, li ol {
+ margin-left: 16px;
+}
+
+p, ul, ol {
+ font-family: ".萍方-简", "Lantinghei SC", "Microsoft Yahei", "Hiragino Sans GB", "Microsoft Sans Serif", "WenQuanYi Micro Hei", sans;
+ font-size: 16px;
+ line-height: 30px;
+}
+
+pre {
+ display: block;
+ overflow-y: hidden;
+ overflow-x: auto;
+ -moz-tab-size: 4;
+ -o-tab-size: 4;
+ tab-size: 4;
+}
+
+code {
+ font-family: Courier, 'Courier New', monospace;
+ word-break: break-all;
+ color: #314659;
+ line-height: 1;
+ vertical-align: middle;
+ margin: 0 3px;
+ background: #f2f4f5;
+ font-size: 14px!important;
+ padding: .2em .3em!important;
+ border-radius: 3px!important;
+ border: 1px solid #eee!important;
+}
+
+pre code {
+ display: block;
+ overflow-x: auto;
+ padding: 0.5em;
+ color: #222222;
+ background-color: #FFFFFF;
+ line-height: 1.5;
+ font-family: Monaco, Monospace;
+ white-space: pre;
+ -moz-tab-size: 4;
+ -o-tab-size: 4;
+ tab-size: 4;
+}
+
+pre code.markdown-metadata {
+ border-left: .5em solid #80CBC4;
+}
+
+aside {
+ display: block;
+ float: right;
+ width: 390px;
+}
+
+blockquote {
+ color: #666;
+ border-left: .5em solid #7a7a7a;
+ padding: 0 1em;
+ margin-left: 0;
+}
+
+blockquote p {
+ color: #666;
+}
+
+hr {
+ display: block;
+ text-align: left;
+ margin: 1em 0;
+ border: none;
+ height: 1px;
+ background: #999;
+}
+
+table {
+ padding: 0;
+ margin: 1rem 0.5rem;
+ border-collapse: collapse;
+}
+
+table tr {
+ border-top: 1px solid #ddd;
+ background-color: white;
+ margin: 0;
+ padding: 0;
+}
+
+table tr:nth-child(2n) {
+ background-color: #FFF;
+}
+
+table tr th {
+ font-weight: 100!important;
+ background-color: #F1F1F1;
+ border: 1px solid #ddd;
+ margin: 0;
+ padding: 6px 13px;
+}
+
+table tr td {
+ border: 1px solid #ddd;
+ margin: 0;
+ padding: 6px 13px;
+}
+
+table tr th :first-child, table tr td :first-child {
+ margin-top: 0;
+}
+
+table tr th :last-child, table tr td :last-child {
+ margin-bottom: 0;
+}
+
+div.mermaid-diagram {
+ margin: 16px 0px 16px 0px;
+ overflow-y: hidden;
+}
+
+div.flowchart-diagram {
+ padding: 0px 5px 0px 5px;
+ margin: 16px 0px 16px 0px;
+ width: fit-content;
+ overflow: hidden;
+}
+
+div.wavedrom-diagram {
+ padding: 0px 5px 0px 5px;
+ margin: 16px 0px 16px 0px;
+ width: fit-content;
+ overflow: hidden;
+}
+
+div.plantuml-diagram {
+ padding: 5px 5px 0px 5px;
+ margin: 16px 0px 16px 0px;
+ width: fit-content;
+ overflow: hidden;
+}
+
+.img-package {
+ text-align: center;
+}
+
+img.img-center {
+ display: block;
+ margin-left: auto;
+ margin-right: auto;
+}
+
+span.img-caption {
+ min-width: 20%;
+ max-width: 80%;
+ display: inline-block;
+ padding: 10px;
+ margin: 0 auto;
+ border-bottom: 1px solid #c0c0c0;
+ color: #6c6c6c;
+ text-align: center;
+ line-height: 1.5;
+}
+
+.emoji_zero,.emoji_one,.emoji_two,.emoji_three,.emoji_four,.emoji_five,.emoji_six,.emoji_seven,.emoji_eight,.emoji_nine {
+ margin-left: 5px;
+ margin-right: 8px;
+}
+
+div.preview-hint {
+ opacity: 0.5;
+ margin-top: 30%;
+ margin-bottom: 30%;
+ align-items: center;
+ display: flex;
+ flex-direction: column;
+ justify-content: center;
+}
+
+/* For Highlight.js Line Number */
+table.hljs-ln tr {
+ border: none;
+ background-color: transparent;
+}
+
+table.hljs-ln tr td {
+ border: none;
+ background-color: transparent;
+}
+
+table.hljs-ln tr td.hljs-ln-numbers {
+ -webkit-touch-callout: none;
+ -webkit-user-select: none;
+ -khtml-user-select: none;
+ -moz-user-select: none;
+ -ms-user-select: none;
+ user-select: none;
+
+ text-align: center;
+ color: #AAA;
+ border-right: 1px solid #DDD;
+ vertical-align: top;
+ padding-right: 5px;
+ white-space: nowrap;
+}
+
+table.hljs-ln tr td.hljs-ln-code {
+ padding-left: 10px;
+}
+
+::-webkit-scrollbar {
+ background-color: #EAEAEA;
+ width: 14px;
+ height: 14px;
+ border: none;
+}
+
+::-webkit-scrollbar-corner {
+ background-color: #EAEAEA;
+}
+
+::-webkit-scrollbar-button {
+ /* This selector affects the styling of both the up & down and left & right buttons of a scrollbar */
+ height: 14px;
+ width: 14px;
+ background-color: #EAEAEA;
+}
+
+::-webkit-scrollbar-button:hover {
+ background-color: #D0D0D0;
+}
+
+::-webkit-scrollbar-button:active {
+ background-color: #B2B2B2;
+}
+
+::-webkit-scrollbar-track {
+ /* This selector affects the styling of the area in the scrollbar between the two buttons */
+ background-color: #EAEAEA;
+}
+
+::-webkit-scrollbar-thumb {
+ /* This selector affects the styling of draggable element of the scollbar */
+ border: none;
+ background-color: #DADADA;
+}
+
+::-webkit-scrollbar-thumb:hover {
+ background-color: #D0D0D0;
+}
+
+::-webkit-scrollbar-thumb:active {
+ background-color: #B2B2B2;
+}
+
+::-webkit-scrollbar-button:horizontal:increment {
+ background-image: url(right.svg);
+ background-repeat: no-repeat;
+ background-size: contain;
+}
+
+::-webkit-scrollbar-button:horizontal:decrement {
+ background-image: url(left.svg);
+ background-repeat: no-repeat;
+ background-size: contain;
+}
+
+::-webkit-scrollbar-button:vertical:increment {
+ background-image: url(down.svg);
+ background-repeat: no-repeat;
+ background-size: contain;
+}
+
+::-webkit-scrollbar-button:vertical:decrement {
+ background-image: url(up.svg);
+ background-repeat: no-repeat;
+ background-size: contain;
+}
+
+::selection {
+ background: #1976D2;
+ color: #EEEEEE;
+}
+
+.modal-box {
+ background-color: rgb(234, 234, 234);
+ background-color: rgba(234, 234, 234, 0.95);
+}
+
+span.modal-close {
+ color: #666666;
+}
+
+span.modal-close:hover,
+span.modal-close:focus {
+ color: #222222;
+}
diff --git a/src/resources/themes/v_simple/v_simple.mdhl b/src/resources/themes/v_simple/v_simple.mdhl
new file mode 100644
index 00000000..baa8bcb1
--- /dev/null
+++ b/src/resources/themes/v_simple/v_simple.mdhl
@@ -0,0 +1,197 @@
+# This is the default markdown styles used for Peg-Markdown-Highlight
+# created by Le Tan(tamlokveer@gmail.com).
+# For a complete description of the syntax, please refer to the original
+# documentation of the style parser
+# [The Syntax of PEG Markdown Highlight Stylesheets](http://hasseg.org/peg-markdown-highlight/docs/stylesheet_syntax.html).
+# VNote adds some styles in the syntax which will be marked [VNote] in the comment.
+#
+# Note: Empty lines within a section is NOT allowed.
+# Note: Do NOT modify this file directly. Copy it and tune your own style!
+
+editor
+# QTextEdit just choose the first available font, so specify the Chinese fonts first
+# Do not use "" to quote the name
+font-family: .萍方-简, Hiragino Sans GB, 冬青黑体, Microsoft YaHei, 微软雅黑, Microsoft YaHei UI, WenQuanYi Micro Hei, 文泉驿雅黑, Dengxian, 等线体, STXihei, 华文细黑, Liberation Sans, Droid Sans, NSimSun, 新宋体, SimSun, 宋体, Verdana, Helvetica, sans-serif, Tahoma, Arial, Geneva, Georgia, Times New Roman
+font-size: 12
+foreground: 222222
+background: ffffff
+# [VNote] Style for trailing space
+trailing-space: a8a8a8
+# [VNote] Style for line number
+line-number-background: ffffff
+line-number-foreground: 666666
+# [VNote] Style for selected word highlight
+selected-word-foreground: 222222
+selected-word-background: b4addf
+# [VNote] Style for searched word highlight
+searched-word-foreground: 222222
+searched-word-background: 4db6ac
+# [VNote] Style for searched word under cursor highlight
+searched-word-cursor-foreground: 222222
+searched-word-cursor-background: abecae
+# [VNote] Style for incremental searched word highlight
+incremental-searched-word-foreground: 222222
+incremental-searched-word-background: ce93d8
+# [VNote] Style for color column in fenced code block
+color-column-background: dd0000
+color-column-foreground: ffff00
+# [VNote] Style for preview image line
+preview-image-line-foreground: 9575cd
+
+editor-selection
+foreground: eeeeee
+background: 6d6d6d
+
+editor-current-line
+background: c5cae9
+# [VNote] Vim insert mode cursor line background
+vim-insert-background: c5cae9
+# [VNote] Vim normal mode cursor line background
+vim-normal-background: e0e0e0
+# [VNote] Vim visual mode cursor line background
+vim-visual-background: ffffff
+# [VNote] Vim replace mode cursor line background
+vim-replace-background: f8bbd0
+
+H1
+foreground: 222222
+
+H2
+foreground: 222222
+
+H3
+foreground: 222222
+
+H4
+foreground: 222222
+
+H5
+foreground: 222222
+
+H6
+foreground: 222222
+
+HRULE
+foreground: 222222
+background: dac7c9
+
+LIST_BULLET
+foreground: d33682
+font-style: bold
+font-size: +2
+
+LIST_ENUMERATOR
+foreground: 0000ff
+
+LINK
+foreground: 40ccab
+
+AUTO_LINK_URL
+foreground: 40ccab
+
+AUTO_LINK_EMAIL
+foreground: 40ccab
+
+IMAGE
+foreground: 40ccab
+
+REFERENCE
+foreground: 826200
+
+CODE
+foreground: 8e24aa
+font-family: Monaco, Monospace, Courier New
+
+EMPH
+font-style: italic
+
+STRONG
+font-style: bold
+
+HTML_ENTITY
+foreground: 8900b5
+
+HTML
+foreground: 8900b5
+
+HTMLBLOCK
+foreground: 8900b5
+
+COMMENT
+foreground: 93a1a1
+
+VERBATIM
+foreground: 673ab7
+font-family: YaHei Consolas Hybrid, Consolas, Monaco, Andale Mono, Monospace, Courier New
+
+FENCEDCODEBLOCK
+foreground: 673ab7
+font-family: YaHei Consolas Hybrid, Consolas, Monaco, Andale Mono, Monospace, Courier New
+# [VNote] Codeblock sylte from HighlightJS (bold, italic, underlined, strikeout, color)
+# The last occurence of the same attribute takes effect
+# Could specify multiple attribute in one line
+hljs-comment: 6c6c6c
+hljs-keyword: 0000ee
+hljs-attribute: 0000ee
+hljs-selector-tag: 0000ee
+hljs-meta-keyword: 0000ee
+hljs-doctag: 0000ee
+hljs-name: 0000ee
+hljs-type: 880000
+hljs-string: 880000
+hljs-number: 880000
+hljs-selector-id: 880000
+hljs-selector-class: 880000
+hljs-quote: 880000
+hljs-template-tag: 880000
+hljs-deletion: 880000
+hljs-title: bold, 880000
+hljs-section: bold, 880000
+hljs-regexp: bc6060
+hljs-symbol: bc6060
+hljs-variable: bc6060
+hljs-template-variable: bc6060
+hljs-link: bc6060
+hljs-selector-attr: bc6060
+hljs-selector-pseudo: bc6060
+hljs-literal: af00d7
+hljs-built_in: 008700
+hljs-bullet: 008700
+hljs-code: 008700
+hljs-addition: 008700
+hljs-meta: 1f7199
+hljs-meta-string: 4d99bf
+hljs-emphasis: italic
+hljs-strong: bold
+
+BLOCKQUOTE
+foreground: 00af00
+
+NOTE
+foreground: black
+
+STRIKE
+foreground: b71c1c
+font-style: strikeout
+
+FRONTMATTER
+foreground: 6c6c6c
+
+INLINEEQUATION
+foreground: 00897b
+font-family: YaHei Consolas Hybrid, Consolas, Monaco, Andale Mono, Monospace, Courier New
+
+DISPLAYFORMULA
+foreground: 00897b
+font-family: YaHei Consolas Hybrid, Consolas, Monaco, Andale Mono, Monospace, Courier New
+
+MARK
+foreground: 222222
+background: ffff76
+
+TABLE
+font-family: YaHei Consolas Hybrid, Consolas, Monaco, Andale Mono, Monospace, Courier New
+
+TABLEBORDER
+foreground: d33682
+background: e0e0e0
diff --git a/src/resources/themes/v_simple/v_simple.palette b/src/resources/themes/v_simple/v_simple.palette
new file mode 100644
index 00000000..3d3f7050
--- /dev/null
+++ b/src/resources/themes/v_simple/v_simple.palette
@@ -0,0 +1,385 @@
+; File path could be absolute path or relative path (related to this file).
+; Use @color_tag to reference a style.
+
+[metadata]
+qss_file=v_simple.qss
+mdhl_file=v_simple.mdhl
+css_file=v_simple.css
+codeblock_css_file=v_simple_codeblock.css
+mermaid_css_file=v_simple_mermaid.css
+version=26
+
+[phony]
+; Abstract color attributes.
+master_fg=#000
+master_bg=#D0D0D0
+master_light_bg=#FFFFFF
+master_dark_bg=#000
+master_focus_bg=#FFFFFF
+master_hover_bg=#D0D0D0
+master_pressed_bg=#FFFFFF
+
+base_fg=#000
+base_bg=#FFF
+
+main_fg=@base_fg
+main_bg=@base_bg
+
+title_fg=@base_fg
+title_bg=@base_bg
+
+disabled_fg=#9E9E9E
+
+content_fg=@base_fg
+content_bg=@base_bg
+
+border_bg=#D3D3D3
+
+separator_bg=#D3D3D3
+
+hover_fg=@base_fg
+hover_bg=#EEE
+
+selected_fg=@base_fg
+selected_bg=#D0D0D0
+
+active_fg=@selected_fg
+active_bg=@selected_bg
+
+inactive_fg=@selected_fg
+inactive_bg=#EEE
+
+focus_fg=@base_fg
+focus_bg=#BDBDBD
+
+pressed_fg=@base_fg
+pressed_bg=#B2B2B2
+
+edit_fg=#222222
+edit_bg=#FFFFFF
+edit_focus_bg=#FFFFFF
+edit_focus_border=@master_bg
+edit_hover_bg=#FFF
+edit_hover_border=@master_bg
+edit_selection_fg=@edit_fg
+edit_selection_bg=@master_light_bg
+
+icon_fg=#000
+icon_disabled_fg=@disabled_fg
+
+danger_fg=#000
+danger_bg=#C9302C
+danger_focus_bg=#D9534F
+danger_hover_bg=#DE6764
+danger_pressed_bg=#AC2925
+
+[soft_defined]
+; VAvatar.
+; The foreground color of the avatar when Captain mode is triggered.
+avatar_captain_mode_fg=@master_fg
+; The background color of the avatar when Captain mode is triggered.
+avatar_captain_mode_bg=@master_bg
+
+; Style of the label in Navigation mode.
+navigation_label_fg=@master_fg
+navigation_label_bg=@master_bg
+
+; Style of the bubble of VButtonWithWidget.
+bubble_fg=@master_fg
+bubble_bg=@master_bg
+
+; Icons' foreground.
+danger_icon_fg=@danger_bg
+item_icon_fg=@icon_fg
+title_icon_fg=@icon_fg
+
+; VVimIndicator.
+vim_indicator_key_label_fg=@base_fg
+vim_indicator_mode_label_fg=@base_fg
+vim_indicator_cmd_edit_pending_bg=@selected_bg
+
+; VTabIndicator.
+tab_indicator_label_fg=@base_fg
+tab_indicator_tag_label_fg=#222222
+tab_indicator_tag_label_bg=#ce93db
+
+; Html template.
+template_title_flash_light_fg=@master_light_bg
+template_title_flash_dark_fg=@master_bg
+
+; Search hit items in list or tree view.
+search_hit_item_fg=@selected_fg
+search_hit_item_bg=#D0D0D0
+
+; Universal Entry CMD Edit border color
+ue_cmd_busy_border=#3F51B5
+ue_cmd_fail_border=@danger_bg
+
+; VListWidget/VTreeWidget separator.
+item_separator_fg=@master_dark_bg
+item_separator_bg=@separator_bg
+
+[widgets]
+; Widget color attributes.
+
+; QWidget.
+widget_fg=@base_fg
+
+; Separator of dock widgets.
+dock_separator_bg=@separator_bg
+dock_separator_hover_bg=@hover_bg
+dock_separator_pressed_bg=@pressed_bg
+
+; Menubar.
+menubar_bg=@main_bg
+menubar_fg=@main_fg
+menubar_item_selected_bg=@selected_bg
+
+; Menu.
+menu_bg=@base_bg
+menu_fg=@base_fg
+menu_border_bg=@border_bg
+menu_item_disabled_fg=@disabled_fg
+menu_item_selected_fg=@selected_fg
+menu_item_selected_bg=@selected_bg
+menu_separator_bg=@separator_bg
+menu_icon_fg=@icon_fg
+menu_icon_danger_fg=@danger_icon_fg
+
+; Tooltip.
+tooltip_bg=@master_bg
+tooltip_fg=@master_fg
+
+; Toolbar.
+toolbar_bg=@main_bg
+toolbar_separator_bg=@separator_bg
+toolbutton_hover_bg=@hover_bg
+toolbutton_pressed_bg=@pressed_bg
+toolbutton_checked_bg=@selected_bg
+toolbutton_icon_fg=@icon_fg
+toolbutton_icon_danger_fg=@danger_icon_fg
+
+; Toolbox.
+toolbox_icon_fg=@master_bg
+toolbox_icon_active_fg=@master_fg
+toolbox_title_border=@master_bg
+
+; Dockwidget.
+dockwidget_bg=@base_bg
+dockwidget_title_fg=@title_fg
+dockwidget_title_bg=@title_bg
+dockwidget_button_hover_bg=@hover_bg
+
+; PushButton.
+pushbutton_fg=@base_fg
+pushbutton_bg=transparent
+pushbutton_border=@border_bg
+pushbutton_pressed_bg=@pressed_bg
+pushbutton_focus_bg=@focus_bg
+pushbutton_checked_bg=@selected_bg
+pushbutton_hover_bg=@hover_bg
+pushbutton_default_border=@master_bg
+pushbutton_disabled_fg=@disabled_fg
+pushbutton_disabled_bg=@pushbutton_bg
+
+pushbutton_specialbtn_fg=@master_fg
+pushbutton_specialbtn_bg=@master_bg
+pushbutton_specialbtn_focus_bg=@master_focus_bg
+pushbutton_specialbtn_hover_bg=@master_hover_bg
+pushbutton_specialbtn_checked_bg=#3F51B5
+pushbutton_specialbtn_pressed_bg=@master_pressed_bg
+
+pushbutton_titlebtn_bg=@title_bg
+
+pushbutton_dangerbtn_fg=@danger_fg
+pushbutton_dangerbtn_bg=@danger_bg
+pushbutton_dangerbtn_hover_bg=@danger_hover_bg
+pushbutton_dangerbtn_focus_bg=@danger_focus_bg
+pushbutton_dangerbtn_pressed_bg=@danger_pressed_bg
+
+pushbutton_toolboxbtn_active_fg=@master_fg
+pushbutton_toolboxbtn_active_bg=@master_bg
+pushbutton_toolboxbtn_active_focus_bg=@master_focus_bg
+pushbutton_toolboxbtn_active_hover_bg=@master_hover_bg
+pushbutton_toolboxbtn_active_pressed_bg=@master_pressed_bg
+
+button_icon_fg=@icon_fg
+button_icon_danger_fg=@danger_icon_fg
+
+buttonmenuitem_decoration_text_fg=@master_dark_bg
+
+; ComboBox.
+combobox_border=@border_bg
+combobox_fg=@content_fg
+combobox_bg=@content_bg
+combobox_disabled_fg=@disabled_fg
+combobox_view_border=@border_bg
+combobox_view_selected_bg=@selected_bg
+combobox_view_selected_fg=@selected_fg
+combobox_view_item_hover_fg=@hover_fg
+combobox_view_item_hover_bg=@hover_bg
+combobox_focus_bg=@edit_focus_bg
+combobox_focus_border=@edit_focus_border
+combobox_hover_bg=@edit_hover_bg
+combobox_hover_border=@edit_hover_border
+combobox_item_icon_fg=@item_icon_fg
+
+combobox_notebookselector_fg=@master_dark_bg
+combobox_notebookselector_bg=@combobox_bg
+combobox_notebookselector_border=@master_bg
+combobox_notebookselector_hover_fg=@master_bg
+combobox_notebookselector_hover_bg=@hover_bg
+combobox_notebookselector_focus_fg=@master_bg
+combobox_notebookselector_focus_bg=@focus_bg
+
+; Label.
+label_fg=@base_fg
+label_titlelabel_fg=@title_fg
+label_titlelabel_bg=@title_bg
+
+; LineEdit.
+lineedit_border=@border_bg
+lineedit_fg=@edit_fg
+lineedit_bg=@edit_bg
+lineedit_disabled_fg=@disabled_fg
+lineedit_focus_bg=@edit_focus_bg
+lineedit_focus_border=@edit_focus_border
+lineedit_hover_bg=@edit_hover_bg
+lineedit_hover_border=@edit_hover_border
+lineedit_selection_fg=@edit_selection_fg
+lineedit_selection_bg=@edit_selection_bg
+
+; TabWidget.
+tabwidget_pane_border=@selected_bg
+
+; TabBar.
+tabbar_fg=@base_fg
+tabbar_bg=@base_bg
+tabbar_border=@border_bg
+
+tabbar_selected_fg=@edit_fg
+tabbar_selected_bg=@edit_bg
+tabbar_selected_border=@border_bg
+
+tabbar_hover_fg=@hover_fg
+tabbar_hover_bg=@hover_bg
+
+tabbar_icon_fg=@icon_fg
+tabbar_icon_special_fg=@danger_bg
+
+; SelectorItem.
+selectoritem_border=@master_bg
+selectoritem_fg=@base_fg
+selectoritem_bg=@base_bg
+
+; InsertSelector.
+insertselector_bg=@base_bg
+
+; TreeView.
+treeview_fg=@content_fg
+treeview_bg=@content_bg
+treeview_item_border_bg=@border_bg
+treeview_item_hover_fg=@hover_fg
+treeview_item_hover_bg=@hover_bg
+treeview_item_selected_fg=@selected_fg
+treeview_item_selected_bg=@selected_bg
+treeview_item_selected_avtive_fg=@active_fg
+treeview_item_selected_avtive_bg=@active_bg
+treeview_item_selected_inactive_fg=@inactive_fg
+treeview_item_selected_inactive_bg=@inactive_bg
+treeview_item_icon_fg=@item_icon_fg
+
+; ListView.
+listview_fg=@content_fg
+listview_bg=@content_bg
+listview_item_hover_fg=@hover_fg
+listview_item_hover_bg=@hover_bg
+listview_item_selected_fg=@selected_fg
+listview_item_selected_bg=@selected_bg
+listview_item_selected_avtive_fg=@active_fg
+listview_item_selected_avtive_bg=@active_bg
+listview_item_selected_inactive_fg=@inactive_fg
+listview_item_selected_inactive_bg=@inactive_bg
+
+; QAbstractItemView for TextEdit Completer.
+abstractitemview_textedit_fg=@content_fg
+abstractitemview_textedit_bg=#DADADA
+abstractitemview_textedit_item_hover_fg=@abstractitemview_textedit_fg
+abstractitemview_textedit_item_hover_bg=@master_hover_bg
+abstractitemview_textedit_item_selected_fg=@abstractitemview_textedit_fg
+abstractitemview_textedit_item_selected_bg=@master_light_bg
+abstractitemview_textedit_item_selected_avtive_fg=@abstractitemview_textedit_fg
+abstractitemview_textedit_item_selected_avtive_bg=@master_focus_bg
+abstractitemview_textedit_item_selected_inactive_fg=@inactive_fg
+abstractitemview_textedit_item_selected_inactive_bg=@inactive_bg
+
+; Splitter.
+splitter_handle_bg=@border_bg
+splitter_handle_pressed_bg=@pressed_bg
+
+; StatusBar.
+statusbar_fg=@main_fg
+statusbar_bg=@main_bg
+
+; ScrollBar.
+scrollbar_bg=@base_bg
+scrollbar_page_bg=transparent
+scrollbar_handle_bg=#DADADA
+scrollbar_handle_hover_bg=@hover_bg
+scrollbar_handle_pressed_bg=@pressed_bg
+
+; VEditWindow.
+editwindow_corner_icon_fg=@master_bg
+editwindow_corner_icon_inactive_fg=#D3D3D3
+
+; CheckBox.
+checkbox_disabled_fg=@disabled_fg
+checkbox_indicator_focus_bg=@focus_bg
+checkbox_indicator_hover_bg=@hover_bg
+checkbox_indicator_pressed_bg=@pressed_bg
+
+; RadioButton.
+radiobutton_disabled_fg=@disabled_fg
+radiobutton_indicator_focus_bg=@focus_bg
+radiobutton_indicator_hover_bg=@hover_bg
+radiobutton_indicator_pressed_bg=@pressed_bg
+
+; SpinBox.
+spinbox_fg=@edit_fg
+spinbox_bg=@edit_bg
+spinbox_border=@border_bg
+spinbox_selection_fg=@edit_selection_fg
+spinbox_selection_bg=@edit_selection_bg
+spinbox_focus_border=@edit_focus_border
+spinbox_focus_bg=@edit_focus_bg
+spinbox_hover_border=@edit_hover_border
+spinbox_hover_bg=@edit_hover_bg
+spinbox_button_hover_bg=@hover_bg
+spinbox_button_pressed_bg=@pressed_bg
+
+; HeaderView.
+headerview_bg=#E0E0E0
+headerview_fg=@base_fg
+headerview_border=@border_bg
+headerview_checked_fg=@selected_fg
+headerview_checked_bg=@selected_bg
+
+; ProgressBar.
+progressbar_bg=@edit_bg
+progressbar_border_bg=@border_bg
+progressbar_chunk_bg=@master_light_bg
+
+universalentry_bg=@base_bg
+universalentry_border_bg=@border_bg
+
+doublerowitem_second_row_label_fg=#6C6C6C
+
+; GroupBox.
+groupbox_border=@border_bg
+groupbox_title_fg=@base_fg
+
+; Slider.
+slider_border_bg=@border_bg
+slider_groove_bg=@edit_bg
+slider_handle_bg=@master_bg
+slider_subpage_bg=@master_light_bg
diff --git a/src/resources/themes/v_simple/v_simple.qss b/src/resources/themes/v_simple/v_simple.qss
new file mode 100644
index 00000000..50ba455d
--- /dev/null
+++ b/src/resources/themes/v_simple/v_simple.qss
@@ -0,0 +1,1464 @@
+QToolTip
+{
+ border: none;
+ background: @tooltip_bg;
+ color: @tooltip_fg;
+}
+
+/* QMainWindow */
+QMainWindow {
+ color: @base_fg;
+ background: @base_bg;
+}
+
+QMainWindow::separator {
+ background: @dock_separator_bg;
+ width: $2px;
+ height: $2px;
+}
+
+QMainWindow::separator:hover {
+ background: @dock_separator_hover_bg;
+}
+
+QMainWindow::separator:pressed {
+ background: @dock_separator_pressed_bg;
+}
+/* End QMainWindow */
+
+QMenuBar {
+ border: none;
+ background: @menubar_bg;
+ color: @menubar_fg;
+}
+
+QMenuBar::item:selected {
+ background: @menubar_item_selected_bg;
+}
+
+/* QMenu */
+QMenu {
+ background: @menu_bg;
+ color: @menu_fg;
+ border: $2px solid @menu_border_bg;
+}
+
+QMenu::icon {
+ margin: $5px;
+}
+
+QMenu::item {
+ padding: $5px $30px $5px $30px;
+ border: $1px solid transparent;
+}
+
+QMenu::item:selected {
+ color: @menu_item_selected_fg;
+ background: @menu_item_selected_bg;
+}
+
+QMenu::item:disabled {
+ color: @menu_item_disabled_fg;
+}
+
+QMenu::icon:checked { /* appearance of a 'checked' icon */
+ border: $2px solid @menu_fg;
+}
+
+QMenu::separator {
+ height: $2px;
+ background: @menu_separator_bg;
+ margin-left: $10px;
+ margin-right: $5px;
+}
+
+QMenu::indicator {
+ width: $20px;
+ height: $20px;
+}
+
+QMenu::indicator:non-exclusive:unchecked {
+ image: none;
+}
+
+QMenu::indicator:non-exclusive:checked {
+ image: url(menu_checkbox.svg);
+}
+
+QMenu::indicator:exclusive:unchecked {
+ image: none;
+}
+
+QMenu::indicator:exclusive:checked {
+ image: url(menu_radiobutton.svg);
+}
+/* End QMenu */
+
+QToolBar {
+ border: none;
+ background: @toolbar_bg;
+}
+
+QToolBar::separator {
+ width: 1px;
+ height: 1px;
+ border: none;
+ background: @toolbar_separator_bg;
+}
+
+/* QToolButton */
+QToolButton[popupMode="1"] { /* only for MenuButtonPopup */
+ padding-right: $16px; /* make way for the popup button */
+}
+
+QToolButton[popupMode="2"] { /* only for InstantPopup */
+ padding-right: $10px; /* make way for the popup button */
+}
+
+QToolButton {
+ border: none;
+ background: transparent;
+ margin: 1px 3px 1px 3px;
+ padding: 0px;
+}
+
+QToolButton:checked {
+ background: @toolbutton_checked_bg;
+}
+
+QToolButton:hover {
+ border:none;
+ background: @toolbutton_hover_bg;
+}
+
+QToolButton:pressed {
+ background: @toolbutton_pressed_bg;
+}
+
+/* the subcontrols below are used only in the MenuButtonPopup mode */
+QToolButton::menu-button {
+ border: none;
+ width: $16px;
+}
+
+QToolButton::menu-arrow {
+ image: url(arrow_dropdown.svg);
+ width: $16px;
+ height: $16px;
+}
+/* End QToolButton*/
+
+/* DockWidget */
+QDockWidget {
+ color: @dockwidget_title_fg;
+ background: @dockwidget_bg;
+ titlebar-close-icon: url(close.svg);
+ titlebar-normal-icon: url(float.svg);
+}
+
+QDockWidget::Title {
+ background: @dockwidget_title_bg;
+ text-align: center left;
+}
+
+QDockWidget::close-button, QDockWidget::float-button {
+ border: none;
+ icon-size: $16px;
+ width: $16px;
+}
+
+QDockWidget::close-button:hover, QDockWidget::float-button:hover {
+ background: @dockwidget_button_hover_bg;
+}
+
+QDockWidget::close-button {
+ subcontrol-position: top right;
+ subcontrol-origin: margin;
+ position: absolute;
+ top: 0px; right: 0px; bottom: 0px;
+}
+
+QDockWidget::float-button {
+ subcontrol-position: top right;
+ subcontrol-origin: margin;
+ position: absolute;
+ top: 0px; right: $18px; bottom: 0px;
+}
+/* End DockWidget */
+
+/* QPushButton */
+QPushButton[SpecialBtn="true"] {
+ color: @pushbutton_specialbtn_fg;
+ background: @pushbutton_specialbtn_bg;
+}
+
+QPushButton[SpecialBtn="true"]:default {
+ border: 1px solid @pushbutton_default_border;
+ background-color: @pushbutton_specialbtn_bg;
+}
+
+QPushButton[SpecialBtn="true"]:focus {
+ background-color: @pushbutton_specialbtn_focus_bg;
+}
+
+QPushButton[SpecialBtn="true"]:checked {
+ background-color: @pushbutton_specialbtn_checked_bg;
+}
+
+QPushButton[SpecialBtn="true"]:hover {
+ background-color: @pushbutton_specialbtn_hover_bg;
+}
+
+QPushButton[SpecialBtn="true"]:pressed {
+ background-color: @pushbutton_specialbtn_pressed_bg;
+}
+
+QPushButton[CornerBtn="true"] {
+ padding: 4px -2px 4px -2px;
+ margin: 0px;
+ border: none;
+ background-color: transparent;
+ min-width: -1;
+}
+
+QPushButton[CornerBtn="true"]::menu-indicator {
+ image: none;
+}
+
+QPushButton[StatusBtn="true"] {
+ font: bold;
+ padding: 0px 2px 0px 2px;
+ margin: 0px;
+ border: none;
+ background-color: transparent;
+ min-width: -1;
+}
+
+QPushButton[FlatBtn="true"] {
+ padding: 4px;
+ margin: 0px;
+ border: none;
+ background-color: transparent;
+ min-width: -1;
+}
+
+QPushButton[SelectionBtn="true"] {
+ padding: 4px 10px 4px 10px;
+ border: none;
+ background-color: transparent;
+ font-size: 15pt;
+ text-align: left;
+ min-width: -1;
+}
+
+QPushButton[TitleBtn="true"] {
+ padding: 4px;
+ margin: 0px;
+ border: none;
+ background-color: @pushbutton_titlebtn_bg;
+ min-width: -1;
+}
+
+QPushButton[DangerBtn="true"] {
+ color: @pushbutton_dangerbtn_fg;
+ border: none;
+ background-color: @pushbutton_dangerbtn_bg;
+ min-width: -1;
+}
+
+QPushButton[DangerBtn="true"]:default {
+ border: 1px solid @pushbutton_default_border;
+ background-color: @pushbutton_dangerbtn_bg;
+}
+
+QPushButton[DangerBtn="true"]:focus {
+ background-color: @pushbutton_dangerbtn_focus_bg;
+}
+
+QPushButton[DangerBtn="true"]:checked {
+ background-color: @pushbutton_dangerbtn_pressed_bg;
+}
+
+QPushButton[DangerBtn="true"]:hover {
+ background-color: @pushbutton_dangerbtn_hover_bg;
+}
+
+QPushButton[DangerBtn="true"]:pressed {
+ background-color: @pushbutton_dangerbtn_pressed_bg;
+}
+
+QPushButton[ToolBoxActiveBtn="true"] {
+ padding: 4px 10px 4px 4px;
+ margin: 0px;
+ border: none;
+ font-weight: bold;
+ color: @pushbutton_toolboxbtn_active_fg;
+ background-color: @pushbutton_toolboxbtn_active_bg;
+ min-width: -1;
+}
+
+QPushButton[ToolBoxActiveBtn="true"]:default {
+ border: 1px solid @pushbutton_default_border;
+ background-color: @pushbutton_toolboxbtn_active_bg;
+}
+
+QPushButton[ToolBoxActiveBtn="true"]:focus {
+ background-color: @pushbutton_toolboxbtn_active_focus_bg;
+}
+
+QPushButton[ToolBoxActiveBtn="true"]:hover {
+ background-color: @pushbutton_toolboxbtn_active_hover_bg;
+}
+
+QPushButton[ToolBoxActiveBtn="true"]:pressed {
+ background-color: @pushbutton_toolboxbtn_active_pressed_bg;
+}
+
+QPushButton[ToolBoxActiveBtn="true"]:disabled {
+ color: @pushbutton_disabled_fg;
+ background-color: @pushbutton_disabled_bg;
+}
+
+QPushButton[AvatarBtn="true"] {
+ padding: 2px 4px 2px 4px;
+ margin: 0px;
+ border: none;
+ background-color: transparent;
+ min-width: -1;
+}
+
+QPushButton {
+ color: @pushbutton_fg;
+ background: @pushbutton_bg;
+ border: 1px solid @pushbutton_border;
+ padding: 3px;
+ min-width: 80px;
+}
+
+QPushButton:focus {
+ background-color: @pushbutton_focus_bg;
+}
+
+QPushButton:checked {
+ background-color: @pushbutton_checked_bg;
+}
+
+QPushButton:flat {
+ border: none;
+}
+
+QPushButton:default {
+ border: 1px solid @pushbutton_default_border;
+}
+
+QPushButton:hover {
+ background-color: @pushbutton_hover_bg;
+}
+
+QPushButton:pressed {
+ background-color: @pushbutton_pressed_bg;
+}
+
+QPushButton:disabled {
+ color: @pushbutton_disabled_fg;
+ background-color: @pushbutton_disabled_bg;
+}
+
+QPushButton::menu-indicator {
+ image: url(arrow_dropdown.svg);
+ width: 16px;
+ height: 16px;
+}
+
+VButtonMenuItem {
+ padding: 5px;
+ padding-right: 30px;
+ border: 1px solid transparent;
+ background-color: transparent;
+ min-width: -1;
+ text-align: left;
+}
+
+VButtonMenuItem[Heading1="true"] {
+ font-size: 22pt;
+}
+
+VButtonMenuItem[Heading2="true"] {
+ font-size: 20pt;
+}
+
+VButtonMenuItem[Heading3="true"] {
+ font-size: 18pt;
+}
+
+VButtonMenuItem[Heading4="true"] {
+ font-size: 16pt;
+}
+
+VButtonMenuItem[Heading5="true"] {
+ font-size: 14pt;
+}
+
+VButtonMenuItem[Heading6="true"] {
+ font-size: 14pt;
+}
+
+VButtonMenuItem:focus {
+ background-color: @menubar_item_selected_bg;
+}
+
+VButtonMenuItem:hover {
+ background-color: @menubar_item_selected_bg;
+}
+
+VButtonMenuItem:disabled {
+ color: @pushbutton_disabled_fg;
+ background-color: @pushbutton_disabled_bg;
+}
+/* End QPushButton*/
+
+/* QComboBox */
+QComboBox#NotebookSelector {
+ border: none;
+ font-size: 12pt;
+ padding-top: 5px;
+ padding-bottom: 5px;
+ icon-size: $24px;
+ font-weight: bold;
+ color: @combobox_notebookselector_fg;
+ background: @combobox_notebookselector_bg;
+}
+
+QComboBox#NotebookSelector:focus, QComboBox#NotebookSelector:on {
+ color: @combobox_notebookselector_focus_fg;
+ background: @combobox_notebookselector_focus_bg;
+}
+
+QComboBox#NotebookSelector:hover {
+ color: @combobox_notebookselector_hover_fg;
+ background: @combobox_notebookselector_hover_bg;
+}
+
+QComboBox#NotebookSelector QListWidget {
+ border: 1px solid @combobox_view_border;
+ background-color: @combobox_bg;
+ font-size: 12pt;
+ font-weight: normal;
+ icon-size: $24px;
+}
+
+QComboBox#NotebookSelector QListWidget::item {
+ padding-top: $5px;
+ padding-bottom: $5px;
+}
+
+QComboBox#NotebookSelector QListWidget::item:hover {
+ color: @combobox_view_item_hover_fg;
+ background-color: @combobox_view_item_hover_bg;
+}
+
+QComboBox {
+ padding: 3px;
+ color: @combobox_fg;
+ background: @combobox_bg;
+ border: 1px solid @combobox_border;
+}
+
+QComboBox:focus, QComboBox:on {
+ background-color: @combobox_focus_bg;
+ border: 2px solid @combobox_focus_border;
+}
+
+QComboBox:hover {
+ background-color: @combobox_hover_bg;
+ border: 2px solid @combobox_hover_border;
+}
+
+QComboBox:disabled {
+ color: @combobox_disabled_fg;
+}
+
+QComboBox::drop-down {
+ subcontrol-origin: padding;
+ subcontrol-position: top right;
+ width: $20px;
+ border: none;
+ background: transparent;
+}
+
+QComboBox::down-arrow {
+ image: url(arrow_dropdown.svg);
+ width: $20px;
+ height: $20px;
+}
+
+QComboBox::down-arrow:disabled {
+ image: url(arrow_dropdown_disabled.svg);
+ width: $20px;
+ height: $20px;
+}
+
+QComboBox QAbstractItemView {
+ padding: 2px;
+ border: 1px solid @combobox_view_border;
+ background: @combobox_bg;
+ selection-color: @combobox_view_selected_fg;
+ selection-background-color: @combobox_view_selected_bg;
+}
+
+QComboBox QAbstractItemView::item {
+ background: transparent;
+ padding: 3px;
+}
+
+QComboBox QAbstractItemView::item:hover {
+ color: @combobox_view_item_hover_fg;
+ background: @combobox_view_item_hover_bg;
+}
+/* End QComboBox */
+
+/* QLabel */
+QLabel[TitleLabel="true"] {
+ padding-top: 5px;
+ padding-bottom: 5px;
+ color: @label_titlelabel_fg;
+ background-color: @label_titlelabel_bg;
+}
+
+QLabel[ColorRedLabel="true"] {
+ padding-left: 5px;
+ padding-right: 5px;
+ font: bold;
+ color: white;
+ border-radius: 2px;
+ background-color: #D32F2F;
+}
+
+QLabel[ColorGreenLabel="true"] {
+ padding-left: 5px;
+ padding-right: 5px;
+ font: bold;
+ color: white;
+ border-radius: 2px;
+ background-color: #388E3C;
+}
+
+QLabel[ColorGreyLabel="true"] {
+ padding-left: 5px;
+ padding-right: 5px;
+ font: bold;
+ color: white;
+ border-radius: 2px;
+ background-color: #616161;
+}
+
+QLabel[ColorTealLabel="true"] {
+ padding-left: 5px;
+ padding-right: 5px;
+ font: bold;
+ color: white;
+ border-radius: 2px;
+ background-color: #808080;
+}
+
+QLabel[MenuSeparator="true"] {
+ padding-top: 5px;
+ padding-bottom: 5px;
+ margin-top: 3px;
+ font: italic;
+ border-top: 1px solid @menu_separator_bg
+}
+
+QLabel[TagLabel="true"] {
+ padding-left: $5px;
+ padding-right: $5px;
+ color: @tab_indicator_tag_label_fg;
+ background-color: @tab_indicator_tag_label_bg;
+}
+
+VVimIndicator QLabel[VimIndicatorKeyLabel="true"] {
+ font: bold;
+ color: @vim_indicator_key_label_fg;
+ background: transparent;
+}
+
+VVimIndicator QLabel[VimIndicatorModeLabel="true"] {
+ padding: 0px 2px 0px 2px;
+ font: bold;
+ color: @vim_indicator_mode_label_fg;
+ /* background color will be controlled by the code. */
+}
+
+VTabIndicator QLabel[TabIndicatorLabel="true"] {
+ color: @tab_indicator_label_fg;
+ background: transparent;
+}
+
+VSelectorItemWidget QLabel[SelectorItemShortcutLabel="true"] {
+ font: bold;
+ border: $2px solid @selectoritem_border;
+ padding: 3px;
+ border-radius: 5px;
+ background-color: @selectoritem_bg;
+ color: @selectoritem_fg;
+}
+
+VDoubleRowItemWidget QLabel[FirstRowLabel="true"] {
+ border: none;
+ font-size: 10pt;
+}
+
+VDoubleRowItemWidget QLabel[SecondRowLabel="true"] {
+ border: none;
+ font-size: 9pt;
+ color: @doublerowitem_second_row_label_fg;
+}
+
+QLabel {
+ border: none;
+ color: @label_fg;
+ background: transparent;
+}
+/* End QLabel */
+
+/* QLineEdit */
+QLineEdit[VimCommandLine="true"] {
+ padding: 0px;
+ margin: 0px;
+ border: none;
+ color: @lineedit_fg;
+ background: @lineedit_bg;
+}
+
+QLineEdit[VimCommandLine="true"]:focus {
+ background: @lineedit_focus_bg;
+ border: none;
+}
+
+QLineEdit[VimCommandLine="true"]:hover {
+ background: @lineedit_hover_bg;
+ border: none;
+}
+
+QLineEdit[EmbeddedEdit="true"] {
+ padding: 0px;
+ margin: 0px;
+ border: none;
+ color: @lineedit_fg;
+ background: transparent;
+}
+
+QLineEdit[EmbeddedEdit="true"]:focus {
+ background: @lineedit_focus_bg;
+ border: none;
+}
+
+QLineEdit[EmbeddedEdit="true"]:hover {
+ background: @lineedit_hover_bg;
+ border: none;
+}
+
+QLineEdit {
+ border: 1px solid @lineedit_border;
+ padding: 3px;
+ color: @lineedit_fg;
+ background: @lineedit_bg;
+ selection-color: @lineedit_selection_fg;
+ selection-background-color: @lineedit_selection_bg;
+}
+
+QLineEdit:focus {
+ border: 2px solid @lineedit_focus_border;
+ background: @lineedit_focus_bg;
+}
+
+QLineEdit:hover {
+ border: 2px solid @lineedit_hover_border;
+ background: @lineedit_hover_bg;
+}
+
+QLineEdit:disabled {
+ color: @lineedit_disabled_fg;
+}
+/* End QLineEdit */
+
+/* QPlainTextEdit QTextEdit */
+QPlainTextEdit[LineEdit="true"], QTextEdit[LineEdit="true"] {
+ border: 1px solid @lineedit_border;
+ padding: 3px;
+ color: @lineedit_fg;
+ background: @lineedit_bg;
+ selection-color: @lineedit_selection_fg;
+ selection-background-color: @lineedit_selection_bg;
+}
+
+QPlainTextEdit[LineEdit="true"]:focus, QTextEdit[LineEdit="true"]:focus {
+ border: 2px solid @lineedit_focus_border;
+ background: @lineedit_focus_bg;
+}
+
+QPlainTextEdit[LineEdit="true"]:hover, QTextEdit[LineEdit="true"]:hover {
+ border: 2px solid @lineedit_hover_border;
+ background: @lineedit_hover_bg;
+}
+/* End QPlainTextEdit QTextEdit */
+
+/* QTabWidget */
+QTabWidget {
+ border: none;
+}
+
+QTabWidget::pane {
+ border: none;
+}
+
+QTabWidget::tab-bar {
+ alignment: left;
+}
+/* End QTabWidget */
+
+/* QTabBar */
+QTabBar::tab {
+ color: @tabbar_fg;
+ background: @tabbar_bg;
+ border: none;
+}
+
+QTabBar::tab:top, QTabBar::tab:bottom {
+ border-top: $2px solid transparent;
+ border-right: $1px solid @tabbar_border;
+ /* MUST leave right and left padding 0px. */
+ padding: $2px 0px $2px 0px;
+ height: $20px;
+}
+
+QTabBar::tab:right {
+ border-left: $3px solid transparent;
+ border-bottom: $1px solid @tabbar_border;
+ padding: $5px $2px $5px $2px;
+ min-width: $20px;
+}
+
+QTabBar::tab:left {
+ border-right: $3px solid transparent;
+ border-bottom: $1px solid @tabbar_border;
+ padding: $5px $2px $5px $2px;
+ min-width: $20px;
+}
+
+QTabBar::tab:hover {
+ color: @tabbar_hover_fg;
+ background: @tabbar_hover_bg;
+}
+
+QTabBar::tab:selected {
+ color: @tabbar_selected_fg;
+ background: @tabbar_selected_bg;
+}
+
+QTabBar::tab:top:selected, QTabBar::tab:bottom:selected {
+ border-top: $2px solid @master_bg;
+}
+
+QTabBar::tab:right:selected {
+ border-left: $3px solid @master_bg;
+}
+
+QTabBar::tab:left:selected {
+ border-right: $3px solid @master_bg;
+}
+
+QTabBar::close-button {
+ image: url(close_grey.svg);
+}
+
+QTabBar::close-button:focus {
+ image: url(close.svg);
+}
+
+QTabBar::close-button:hover {
+ image: url(close.svg);
+}
+
+QTabBar::scroller {
+ width: $20px;
+}
+
+QTabBar QToolButton {
+ border: none;
+}
+
+QTabBar QToolButton::right-arrow:enabled {
+ image: url(right.svg);
+}
+
+QTabBar QToolButton::left-arrow:enabled {
+ image: url(left.svg);
+}
+
+QTabBar QToolButton::right-arrow:disabled {
+ image: url(right_disabled.svg);
+}
+
+QTabBar QToolButton::left-arrow:disabled {
+ image: url(left_disabled.svg);
+}
+/* End QTabBar */
+
+/* QTreeView */
+QTreeView[ItemBorder="true"]::item {
+ padding-top: 5px;
+ padding-bottom: 5px;
+ border-bottom: $1px solid @treeview_item_border_bg;
+}
+
+QTreeView[PlainTree="true"]::branch:has-siblings:!adjoins-item {
+ border-image: none;
+}
+
+QTreeView[PlainTree="true"]::branch:has-siblings:adjoins-item {
+ border-image: none;
+}
+
+QTreeView[PlainTree="true"]::branch:!has-children:!has-siblings:adjoins-item {
+ border-image: none;
+}
+
+QTreeView[PlainTree="true"]::branch:has-children:!has-siblings:closed,
+QTreeView[PlainTree="true"]::branch:closed:has-children:has-siblings {
+ border-image: none;
+ image: none;
+}
+
+QTreeView[PlainTree="true"]::branch:open:has-children:!has-siblings,
+QTreeView[PlainTree="true"]::branch:open:has-children:has-siblings {
+ border-image: none;
+ image: none;
+}
+
+QTreeView {
+ color: @treeview_fg;
+ background: @treeview_bg;
+ show-decoration-selected: 0;
+ border: none;
+ selection-background-color: transparent;
+ outline: none;
+}
+
+QTreeView::item {
+ padding-top: 5px;
+ padding-bottom: 5px;
+}
+
+QTreeView::item:hover {
+ color: @treeview_item_hover_fg;
+ background: @treeview_item_hover_bg;
+}
+
+QTreeView::item:selected {
+ color: @treeview_item_selected_fg;
+ background: @treeview_item_selected_bg;
+}
+
+QTreeView::item:selected:active {
+ color: @treeview_item_selected_active_fg;
+ background: @treeview_item_selected_active_bg;
+}
+
+QTreeView::item:selected:!active {
+ color: @treeview_item_selected_inactive_fg;
+ background: @treeview_item_selected_inactive_bg;
+}
+
+QTreeView::branch:has-siblings:!adjoins-item {
+ border-image: url(line.svg) 0;
+}
+
+QTreeView::branch:has-siblings:adjoins-item {
+ border-image: url(branch_more.svg) 0;
+}
+
+QTreeView::branch:!has-children:!has-siblings:adjoins-item {
+ border-image: url(branch_end.svg) 0;
+}
+
+QTreeView::branch:has-children:!has-siblings:closed,
+QTreeView::branch:closed:has-children:has-siblings {
+ border-image: none;
+ image: url(branch_closed.svg);
+}
+
+QTreeView::branch:open:has-children:!has-siblings,
+QTreeView::branch:open:has-children:has-siblings {
+ border-image: none;
+ image: url(branch_open.svg);
+}
+/* End QTreeView */
+
+/* QListView */
+QListView {
+ color: @listview_fg;
+ background: @listview_bg;
+ show-decoration-selected: 0;
+ border: none;
+ selection-background-color: transparent;
+ outline: none;
+}
+
+QListView::item {
+ padding-top: 5px;
+ padding-bottom: 5px;
+}
+
+QListView::item:hover {
+ color: @listview_item_hover_fg;
+ background: @listview_item_hover_bg;
+}
+
+QListView::item:selected {
+ color: @listview_item_selected_fg;
+ background: @listview_item_selected_bg;
+}
+
+QListView::item:selected:active {
+ color: @listview_item_selected_active_fg;
+ background: @listview_item_selected_active_bg;
+}
+
+QListView::item:selected:!active {
+ color: @listview_item_selected_inactive_fg;
+ background: @listview_item_selected_inactive_bg;
+}
+
+QListView::item:disabled {
+ background: transparent;
+}
+/* End QListView */
+
+/* QAbstractItemView for TextEdit Completer popup*/
+QAbstractItemView[TextEdit="true"] {
+ color: @abstractitemview_textedit_fg;
+ background: @abstractitemview_textedit_bg;
+ show-decoration-selected: 0;
+ border: none;
+ selection-background-color: transparent;
+ outline: none;
+}
+
+QAbstractItemView[TextEdit="true"]::item {
+ padding-top: 5px;
+ padding-bottom: 5px;
+}
+
+QAbstractItemView[TextEdit="true"]::item:hover {
+ color: @abstractitemview_textedit_item_hover_fg;
+ background: @abstractitemview_textedit_item_hover_bg;
+}
+
+QAbstractItemView[TextEdit="true"]::item:selected {
+ color: @abstractitemview_textedit_item_selected_fg;
+ background: @abstractitemview_textedit_item_selected_bg;
+}
+
+QAbstractItemView[TextEdit="true"]::item:selected:active {
+ color: @abstractitemview_textedit_item_selected_active_fg;
+ background: @abstractitemview_textedit_item_selected_active_bg;
+}
+
+QAbstractItemView[TextEdit="true"]::item:selected:!active {
+ color: @abstractitemview_textedit_item_selected_inactive_fg;
+ background: @abstractitemview_textedit_item_selected_inactive_bg;
+}
+
+QAbstractItemView[TextEdit="true"]::item:disabled {
+ background: transparent;
+}
+/* End QAbstractItemView */
+
+/* QSplitter */
+QSplitter#MainSplitter {
+ border: none;
+ margin-left: $3px;
+}
+
+QSplitter {
+ border: none;
+}
+
+QSplitter::handle {
+ background-color: @splitter_handle_bg;
+}
+
+QSplitter::handle:pressed {
+ background-color: @splitter_handle_pressed_bg;
+}
+
+QSplitter::handle:vertical {
+ height: $2px;
+}
+
+QSplitter::handle:horizontal {
+ width: $2px;
+}
+/* End QSplitter */
+
+/* QStatusBar */
+QStatusBar {
+ color: @statusbar_fg;
+ background: @statusbar_bg;
+}
+/* End QStatusBar */
+
+QDialog {
+ color: @base_fg;
+ background: @base_bg;
+}
+
+/* QScrollBar */
+QScrollBar::add-page, QScrollBar::sub-page {
+ background: @scrollbar_page_bg;
+}
+
+QScrollBar:vertical {
+ background: @scrollbar_bg;
+ width: $16px;
+ margin: $16px 0px $16px 0px;
+ padding: 0px $2px 0px $2px;
+ border: none;
+}
+
+QScrollBar::handle:vertical {
+ background: @scrollbar_handle_bg;
+ min-height: $16px;
+}
+
+QScrollBar::handle:vertical:hover {
+ background: @scrollbar_handle_hover_bg;
+}
+
+QScrollBar::handle:vertical:pressed {
+ background: @scrollbar_handle_pressed_bg;
+}
+
+QScrollBar::add-line:vertical {
+ border: none;
+ background: @scrollbar_bg;
+ width: $16px;
+ height: $16px;
+ subcontrol-position: bottom;
+ subcontrol-origin: margin;
+}
+
+QScrollBar::add-line:vertical:hover {
+ background: @scrollbar_handle_hover_bg;
+}
+
+QScrollBar::add-line:vertical:pressed {
+ background: @scrollbar_handle_pressed_bg;
+}
+
+QScrollBar::sub-line:vertical {
+ border: none;
+ background: @scrollbar_bg;
+ width: $16px;
+ height: $16px;
+ subcontrol-position: top;
+ subcontrol-origin: margin;
+}
+
+QScrollBar::sub-line:vertical:hover {
+ background: @scrollbar_handle_hover_bg;
+}
+
+QScrollBar::sub-line:vertical:pressed {
+ background: @scrollbar_handle_pressed_bg;
+}
+
+QScrollBar::down-arrow:vertical {
+ image: url(down.svg);
+ width: $16px;
+ height: $16px;
+}
+
+QScrollBar::up-arrow:vertical {
+ image: url(up.svg);
+ width: $16px;
+ height: $16px;
+}
+
+QScrollBar:horizontal {
+ background: @scrollbar_bg;
+ height: $16px;
+ margin: 0px $16px 0px $16px;
+ padding: $2px 0px $2px 0px;
+ border: none;
+}
+
+QScrollBar::handle:horizontal {
+ background: @scrollbar_handle_bg;
+ min-width: $16px;
+}
+
+QScrollBar::handle:horizontal:hover {
+ background: @scrollbar_handle_hover_bg;
+}
+
+QScrollBar::handle:horizontal:pressed {
+ background: @scrollbar_handle_pressed_bg;
+}
+
+QScrollBar::add-line:horizontal {
+ border: none;
+ background: @scrollbar_bg;
+ width: $16px;
+ height: $16px;
+ subcontrol-position: right;
+ subcontrol-origin: margin;
+}
+
+QScrollBar::add-line:horizontal:hover {
+ background: @scrollbar_handle_hover_bg;
+}
+
+QScrollBar::add-line:horizontal:pressed {
+ background: @scrollbar_handle_pressed_bg;
+}
+
+QScrollBar::sub-line:horizontal {
+ border: none;
+ background: @scrollbar_bg;
+ width: $16px;
+ height: $16px;
+ subcontrol-position: left;
+ subcontrol-origin: margin;
+}
+
+QScrollBar::sub-line:horizontal:hover {
+ background: @scrollbar_handle_hover_bg;
+}
+
+QScrollBar::sub-line:horizontal:pressed {
+ background: @scrollbar_handle_pressed_bg;
+}
+
+QScrollBar::right-arrow:horizontal {
+ image: url(right.svg);
+ width: $16px;
+ height: $16px;
+}
+
+QScrollBar::left-arrow:horizontal {
+ image: url(left.svg);
+ width: $16px;
+ height: $16px;
+}
+/* End QScrollBar */
+
+/* QCheckBox */
+QCheckBox {
+ spacing: $5px;
+}
+
+QCheckBox:disabled {
+ color: @checkbox_disabled_fg;
+}
+
+QCheckBox::indicator:unchecked {
+ image: url(checkbox_unchecked.svg);
+}
+
+QCheckBox::indicator:unchecked:disabled {
+ image: url(checkbox_unchecked_disabled.svg);
+}
+
+QCheckBox::indicator:checked {
+ image: url(checkbox_checked.svg);
+}
+
+QCheckBox::indicator:checked:disabled {
+ image: url(checkbox_checked_disabled.svg);
+}
+
+QCheckBox::indicator {
+ width: $20px;
+ height: $20px;
+}
+
+QCheckBox::indicator:focus {
+ background: @checkbox_indicator_focus_bg;
+}
+
+QCheckBox::indicator:hover {
+ background: @checkbox_indicator_hover_bg;
+}
+
+QCheckBox::indicator:pressed {
+ background: @checkbox_indicator_pressed_bg;
+}
+/* End QCheckBox */
+
+/* QRadioButton */
+QRadioButton {
+ spacing: $5px;
+}
+
+QRadioButton:disabled {
+ color: @radiobutton_disabled_fg;
+}
+
+QRadioButton::indicator:unchecked {
+ image: url(radiobutton_unchecked.svg);
+}
+
+QRadioButton::indicator:unchecked:disabled {
+ image: url(radiobutton_unchecked_disabled.svg);
+}
+
+QRadioButton::indicator:checked {
+ image: url(radiobutton_checked.svg);
+}
+
+QRadioButton::indicator:checked:disabled {
+ image: url(radiobutton_checked_disabled.svg);
+}
+
+QRadioButton::indicator {
+ width: $20px;
+ height: $20px;
+}
+
+QRadioButton::indicator:focus {
+ background: @radiobutton_indicator_focus_bg;
+}
+
+QRadioButton::indicator:hover {
+ background: @radiobutton_indicator_hover_bg;
+}
+
+QRadioButton::indicator:pressed {
+ background: @radiobutton_indicator_pressed_bg;
+}
+/* End QRadioButton */
+
+/* QSpinBox */
+QSpinBox, QDoubleSpinBox {
+ border: 1px solid @spinbox_border;
+ color: @spinbox_fg;
+ background: @spinbox_bg;
+ padding-right: $25px;
+ min-height: $25px;
+ selection-color: @spinbox_selection_fg;
+ selection-background-color: @spinbox_selection_bg;
+}
+
+QSpinBox:focus, QDoubleSpinBox::focus {
+ border: 2px solid @spinbox_focus_border;
+ background: @spinbox_focus_bg;
+}
+
+QSpinBox:hover, QDoubleSpinBox::hover {
+ border: 2px solid @spinbox_hover_border;
+ background: @spinbox_hover_bg;
+}
+
+QSpinBox::up-button, QDoubleSpinBox::up-button {
+ subcontrol-origin: border;
+ subcontrol-position: top right; /* position at the top right corner */
+ width: $25px;
+ border: none;
+ background: transparent;
+}
+
+QSpinBox::up-button:hover, QDoubleSpinBox::up-button:hover {
+ background: @spinbox_button_hover_bg;
+}
+
+QSpinBox::up-button:pressed, QDoubleSpinBox::up-button:pressed {
+ background: @spinbox_button_pressed_bg;
+}
+
+QSpinBox::up-arrow, QDoubleSpinBox::up-arrow {
+ image: url(up.svg);
+ width: $12px;
+ height: $12px;
+}
+
+QSpinBox::up-arrow:disabled, QSpinBox::up-arrow:off, QDoubleSpinBox::up-arrow:disabled, QDoubleSpinBox::up-arrow:off {
+ image: url(up_disabled.svg);
+}
+
+QSpinBox::down-button, QDoubleSpinBox::down-button {
+ subcontrol-origin: border;
+ subcontrol-position: bottom right; /* position at the top right corner */
+ width: $25px;
+ border: none;
+ background: transparent;
+}
+
+QSpinBox::down-button:hover, QDoubleSpinBox::down-button:hover {
+ background: @spinbox_button_hover_bg;
+}
+
+QSpinBox::down-button:pressed, QDoubleSpinBox::down-button:pressed {
+ background: @spinbox_button_pressed_bg;
+}
+
+QSpinBox::down-arrow, QDoubleSpinBox::down-arrow {
+ image: url(down.svg);
+ width: $12px;
+ height: $12px;
+}
+
+QSpinBox::down-arrow:disabled, QSpinBox::down-arrow:off, QDoubleSpinBox::down-arrow:disabled, QDoubleSpinBox::down-arrow:off {
+ image: url(down_disabled.svg);
+}
+/* End QSpinBox */
+
+/* QHeaderView */
+QHeaderView::section {
+ background: @headerview_bg;
+ color: @headerview_fg;
+ padding-left: 4px;
+ border: none;
+ border-left: 1px solid @headerview_border;
+ border-bottom: 1px solid @headerview_border;
+}
+
+QHeaderView::section:checked
+{
+ color: @headerview_checked_fg;
+ background: @headerview_checked_bg;
+}
+
+/* style the sort indicator */
+QHeaderView::down-arrow {
+ image: url(down.svg);
+ width: $12px;
+ height: $12px;
+}
+
+QHeaderView::up-arrow {
+ image: url(up.svg);
+ width: $12px;
+ height: $12px;
+}
+/* End QHeaderView */
+
+QAbstractScrollArea::corner {
+ background: @scrollbar_bg;
+ border: none;
+}
+
+/* QProgressBar */
+QProgressBar {
+ background: @progressbar_bg;
+ border: $1px solid @progressbar_border_bg;
+ text-align: center;
+}
+
+QProgressBar::chunk {
+ background-color: @progressbar_chunk_bg;
+ width: $20px;
+}
+/* End QProgressBar */
+
+/* QGroupBox */
+QGroupBox {
+ border: 2px solid @groupbox_border;
+ border-radius: 5px;
+ margin-top: 2ex;
+}
+
+QGroupBox::title {
+ color: @groupbox_title_fg;
+ subcontrol-origin: margin;
+ subcontrol-position: top left;
+ position: absolute;
+ padding: 0 $3px;
+ top: 0px; left: $10px; bottom: 0px;
+}
+/* End QGroupBox */
+
+/* QSlider */
+QSlider::groove:horizontal {
+ border: $1px solid @slider_border_bg;
+ height: $8px;
+ background: @slider_groove_bg;
+ margin: $2px 0;
+}
+
+QSlider::handle:horizontal {
+ border: $1px solid @slider_border_bg;
+ background: @slider_handle_bg;
+ width: $18px;
+ margin: $-2px 0;
+}
+
+QSlider::add-page:horizontal {
+ background: transparent;
+}
+
+QSlider::sub-page:horizontal {
+ border: $1px solid @slider_border_bg;
+ background: @slider_subpage_bg;
+ margin: $2px 0;
+}
+
+QSlider::groove:vertical {
+ border: $1px solid @slider_border_bg;
+ width: $8px;
+ background: @slider_groove_bg;
+ margin: 0 $2px;
+}
+
+QSlider::handle:vertical {
+ border: $1px solid @slider_border_bg;
+ background: @slider_handle_bg;
+ height: $18px;
+ margin: 0 $-2px;
+}
+
+QSlider::add-page:vertical {
+ background: transparent;
+}
+
+QSlider::sub-page:vertical {
+ border: $1px solid @slider_border_bg;
+ background: @slider_subpage_bg;
+ margin: 0 $2px;
+}
+/* End QSlider */
+
+/* QWidget */
+QWidget#FindReplaceTitleWidget {
+ background: @title_bg;
+}
+
+QWidget[ToolBoxTitle="true"] {
+ border-bottom: $2px solid @toolbox_title_border;
+}
+
+QWidget[ToolBoxTitle="true"] QPushButton[ToolBoxTitleBtn="true"] {
+ height: $20px;
+}
+
+QWidget[MainEditor="true"] {
+ border: none;
+}
+
+QWidget
+{
+ color: @widget_fg;
+ font-family: "Hiragino Sans GB", "冬青黑体", "Microsoft YaHei", "微软雅黑", "Microsoft YaHei UI", "WenQuanYi Micro Hei", "文泉驿雅黑", "Dengxian", "等线体", "STXihei", "华文细黑", "Liberation Sans", "Droid Sans", "NSimSun", "新宋体", "SimSun", "宋体", "Helvetica", "sans-serif", "Tahoma", "Arial", "Verdana", "Geneva", "Georgia", "Times New Roman";
+}
+
+VInsertSelector {
+ border: none;
+ background: @insertselector_bg;
+}
+
+VUniversalEntry {
+ background: @universalentry_bg;
+ border: 1px solid @universalentry_border_bg;
+}
+/* End QWidget */
diff --git a/src/resources/themes/v_simple/v_simple_codeblock.css b/src/resources/themes/v_simple/v_simple_codeblock.css
new file mode 100644
index 00000000..0152d5d5
--- /dev/null
+++ b/src/resources/themes/v_simple/v_simple_codeblock.css
@@ -0,0 +1,62 @@
+/*Original highlight.js style (c) Ivan Sagalaev */
+.hljs
+{
+ background: #23241f;
+ font-family:Monospace!important;
+ border-radius: 5px!important;
+ display:block;
+ overflow-x:auto;
+ padding:0.5em;
+ background:#23241feb !important;
+ color:#FFF;
+ white-space:pre;
+ word-break:normal;
+}
+.hljs,.hljs-tag,.hljs-subst
+{
+ color:#f8f8f2;
+}
+.hljs-strong,.hljs-emphasis
+{
+ color:#a8a8a2;
+}
+.hljs-bullet,.hljs-quote,.hljs-number,.hljs-regexp,.hljs-literal,.hljs-link
+{
+ color:#ae81ff;
+}
+.hljs-code,.hljs-title,.hljs-section,.hljs-selector-class
+{
+ color:#a6e22e;
+}
+.hljs-strong
+{
+ font-weight:bold;
+}
+.hljs-emphasis
+{
+ font-style:italic;
+}
+.hljs-keyword,.hljs-selector-tag,.hljs-name,.hljs-attr
+{
+ color:#f92672;
+}
+.hljs-symbol,.hljs-attribute
+{
+ color:#66d9ef;
+}
+.hljs-params,.hljs-class .hljs-title
+{
+ color:#f8f8f2;
+}
+.hljs-string,.hljs-type,.hljs-built_in,.hljs-builtin-name,.hljs-selector-id,.hljs-selector-attr,.hljs-selector-pseudo,.hljs-addition,.hljs-variable,.hljs-template-variable
+{
+ color:#e6db74;
+}
+.hljs-comment,.hljs-deletion,.hljs-meta
+{
+ color:#948a5c;
+}
+.cnblogs-markdown .hljs
+{
+ font-size:14px!important;
+}
diff --git a/src/resources/themes/v_simple/v_simple_mermaid.css b/src/resources/themes/v_simple/v_simple_mermaid.css
new file mode 100644
index 00000000..3d808780
--- /dev/null
+++ b/src/resources/themes/v_simple/v_simple_mermaid.css
@@ -0,0 +1,320 @@
+/* Flowchart variables */
+/* Sequence Diagram variables */
+/* Gantt chart variables */
+.mermaid-diagram .mermaid .label {
+ color: #333;
+}
+
+.mermaid-diagram .node rect,
+.mermaid-diagram .node circle,
+.mermaid-diagram .node ellipse,
+.mermaid-diagram .node polygon {
+ fill: #ECECFF;
+ stroke: #CCCCFF;
+ stroke-width: 1px;
+}
+
+.mermaid-diagram .edgePath .path {
+ stroke: #333333;
+}
+
+.mermaid-diagram .edgeLabel {
+ background-color: #e8e8e8;
+}
+
+.mermaid-diagram .cluster rect {
+ fill: #ffffde !important;
+ rx: 4 !important;
+ stroke: #aaaa33 !important;
+ stroke-width: 1px !important;
+}
+
+.mermaid-diagram .cluster text {
+ fill: #333;
+}
+
+.mermaid-diagram .actor {
+ stroke: #CCCCFF;
+ fill: #ECECFF;
+}
+
+.mermaid-diagram text.actor {
+ fill: black;
+ stroke: none;
+}
+
+.mermaid-diagram .actor-line {
+ stroke: grey;
+}
+
+.mermaid-diagram .messageLine0 {
+ stroke-width: 1.5;
+ stroke-dasharray: "2 2";
+ marker-end: "url(#arrowhead)";
+ stroke: #333;
+}
+
+.mermaid-diagram .messageLine1 {
+ stroke-width: 1.5;
+ stroke-dasharray: "2 2";
+ stroke: #333;
+}
+
+.mermaid-diagram #arrowhead {
+ fill: #333;
+}
+
+.mermaid-diagram #crosshead path {
+ fill: #333 !important;
+ stroke: #333 !important;
+}
+
+.mermaid-diagram .messageText {
+ fill: #333;
+ stroke: none;
+}
+
+.mermaid-diagram .labelBox {
+ stroke: #CCCCFF;
+ fill: #ECECFF;
+}
+
+.mermaid-diagram .labelText {
+ fill: black;
+ stroke: none;
+}
+
+.mermaid-diagram .loopText {
+ fill: black;
+ stroke: none;
+}
+
+.mermaid-diagram .loopLine {
+ stroke-width: 2;
+ stroke-dasharray: "2 2";
+ marker-end: "url(#arrowhead)";
+ stroke: #CCCCFF;
+}
+
+.mermaid-diagram .note {
+ stroke: #aaaa33;
+ fill: #fff5ad;
+}
+
+.mermaid-diagram .noteText {
+ fill: black;
+ stroke: none;
+ font-family: 'trebuchet ms', verdana, arial;
+ font-size: 14px;
+}
+
+/** Section styling */
+.mermaid-diagram .section {
+ stroke: none;
+ opacity: 0.2;
+}
+
+.mermaid-diagram .section0 {
+ fill: rgba(102, 102, 255, 0.49);
+}
+
+.mermaid-diagram .section2 {
+ fill: #fff400;
+}
+
+.mermaid-diagram .section1,
+.mermaid-diagram .section3 {
+ fill: white;
+ opacity: 0.2;
+}
+
+.mermaid-diagram .sectionTitle0 {
+ fill: #333;
+}
+
+.mermaid-diagram .sectionTitle1 {
+ fill: #333;
+}
+
+.mermaid-diagram .sectionTitle2 {
+ fill: #333;
+}
+
+.mermaid-diagram .sectionTitle3 {
+ fill: #333;
+}
+
+.mermaid-diagram .sectionTitle {
+ text-anchor: start;
+ font-size: 11px;
+ text-height: 14px;
+}
+
+/* Grid and axis */
+.mermaid-diagram .grid .tick {
+ stroke: lightgrey;
+ opacity: 0.3;
+ shape-rendering: crispEdges;
+}
+
+.mermaid-diagram .grid path {
+ stroke-width: 0;
+}
+
+/* Today line */
+.mermaid-diagram .today {
+ fill: none;
+ stroke: red;
+ stroke-width: 2px;
+}
+
+/* Task styling */
+/* Default task */
+.mermaid-diagram .task {
+ stroke-width: 2;
+}
+
+.mermaid-diagram .taskText {
+ text-anchor: middle;
+ font-size: 11px;
+}
+
+.mermaid-diagram .taskTextOutsideRight {
+ fill: black;
+ text-anchor: start;
+ font-size: 11px;
+}
+
+.mermaid-diagram .taskTextOutsideLeft {
+ fill: black;
+ text-anchor: end;
+ font-size: 11px;
+}
+
+/* Specific task settings for the sections*/
+.mermaid-diagram .taskText0,
+.mermaid-diagram .taskText1,
+.mermaid-diagram .taskText2,
+.mermaid-diagram .taskText3 {
+ fill: white;
+}
+
+.mermaid-diagram .task0,
+.mermaid-diagram .task1,
+.mermaid-diagram .task2,
+.mermaid-diagram .task3 {
+ fill: #8a90dd;
+ stroke: #534fbc;
+}
+
+.mermaid-diagram .taskTextOutside0,
+.mermaid-diagram .taskTextOutside2 {
+ fill: black;
+}
+
+.mermaid-diagram .taskTextOutside1,
+.mermaid-diagram .taskTextOutside3 {
+ fill: black;
+}
+
+/* Active task */
+.mermaid-diagram .active0,
+.mermaid-diagram .active1,
+.mermaid-diagram .active2,
+.mermaid-diagram .active3 {
+ fill: #bfc7ff;
+ stroke: #534fbc;
+}
+
+.mermaid-diagram .activeText0,
+.mermaid-diagram .activeText1,
+.mermaid-diagram .activeText2,
+.mermaid-diagram .activeText3 {
+ fill: black !important;
+}
+
+/* Completed task */
+.mermaid-diagram .done0,
+.mermaid-diagram .done1,
+.mermaid-diagram .done2,
+.mermaid-diagram .done3 {
+ stroke: grey;
+ fill: lightgrey;
+ stroke-width: 2;
+}
+
+.mermaid-diagram .doneText0,
+.mermaid-diagram .doneText1,
+.mermaid-diagram .doneText2,
+.mermaid-diagram .doneText3 {
+ fill: black !important;
+}
+
+/* Tasks on the critical line */
+.mermaid-diagram .crit0,
+.mermaid-diagram .crit1,
+.mermaid-diagram .crit2,
+.mermaid-diagram .crit3 {
+ stroke: #ff8888;
+ fill: red;
+ stroke-width: 2;
+}
+
+.mermaid-diagram .activeCrit0,
+.mermaid-diagram .activeCrit1,
+.mermaid-diagram .activeCrit2,
+.mermaid-diagram .activeCrit3 {
+ stroke: #ff8888;
+ fill: #bfc7ff;
+ stroke-width: 2;
+}
+
+.mermaid-diagram .doneCrit0,
+.mermaid-diagram .doneCrit1,
+.mermaid-diagram .doneCrit2,
+.mermaid-diagram .doneCrit3 {
+ stroke: #ff8888;
+ fill: lightgrey;
+ stroke-width: 2;
+ cursor: pointer;
+ shape-rendering: crispEdges;
+}
+
+.mermaid-diagram .doneCritText0,
+.mermaid-diagram .doneCritText1,
+.mermaid-diagram .doneCritText2,
+.mermaid-diagram .doneCritText3 {
+ fill: black !important;
+}
+
+.mermaid-diagram .activeCritText0,
+.mermaid-diagram .activeCritText1,
+.mermaid-diagram .activeCritText2,
+.mermaid-diagram .activeCritText3 {
+ fill: black !important;
+}
+
+.mermaid-diagram .titleText {
+ text-anchor: middle;
+ font-size: 18px;
+ fill: black;
+}
+
+.mermaid-diagram .node text {
+ font-family: 'trebuchet ms', verdana, arial;
+ font-size: 14px;
+}
+
+.mermaid-diagram div.mermaidTooltip {
+ position: absolute;
+ text-align: center;
+ max-width: 200px;
+ padding: 2px;
+ font-family: 'trebuchet ms', verdana, arial;
+ font-size: 12px;
+ background: #ffffde;
+ border: 1px solid #aaaa33;
+ border-radius: 2px;
+ pointer-events: none;
+ z-index: 100;
+}
diff --git a/src/vconfigmanager.cpp b/src/vconfigmanager.cpp
index 8f2d1c8d..1238d782 100644
--- a/src/vconfigmanager.cpp
+++ b/src/vconfigmanager.cpp
@@ -1502,6 +1502,8 @@ void VConfigManager::initThemes()
m_themes.insert(VPalette::themeName(file), file);
file = ":/resources/themes/v_detorte/v_detorte.palette";
m_themes.insert(VPalette::themeName(file), file);
+ file = ":/resources/themes/v_simple/v_simple.palette";
+ m_themes.insert(VPalette::themeName(file), file);
outputBuiltInThemes();
diff --git a/src/vnote.qrc b/src/vnote.qrc
index d7f492af..3566af0d 100644
--- a/src/vnote.qrc
+++ b/src/vnote.qrc
@@ -288,5 +288,39 @@
utils/wavedrom/wavedrom.min.js
utils/wavedrom/wavedrom-theme.js
utils/clipboard.js/clipboard.min.js
+ resources/themes/v_simple/arrow_dropdown.svg
+ resources/themes/v_simple/arrow_dropdown_disabled.svg
+ resources/themes/v_simple/branch_closed.svg
+ resources/themes/v_simple/branch_end.svg
+ resources/themes/v_simple/branch_more.svg
+ resources/themes/v_simple/branch_open.svg
+ resources/themes/v_simple/checkbox_checked.svg
+ resources/themes/v_simple/checkbox_checked_disabled.svg
+ resources/themes/v_simple/checkbox_unchecked.svg
+ resources/themes/v_simple/checkbox_unchecked_disabled.svg
+ resources/themes/v_simple/close.svg
+ resources/themes/v_simple/close_grey.svg
+ resources/themes/v_simple/down.svg
+ resources/themes/v_simple/down_disabled.svg
+ resources/themes/v_simple/float.svg
+ resources/themes/v_simple/left.svg
+ resources/themes/v_simple/left_disabled.svg
+ resources/themes/v_simple/line.svg
+ resources/themes/v_simple/menu_checkbox.svg
+ resources/themes/v_simple/menu_radiobutton.svg
+ resources/themes/v_simple/radiobutton_checked.svg
+ resources/themes/v_simple/radiobutton_checked_disabled.svg
+ resources/themes/v_simple/radiobutton_unchecked.svg
+ resources/themes/v_simple/radiobutton_unchecked_disabled.svg
+ resources/themes/v_simple/right.svg
+ resources/themes/v_simple/right_disabled.svg
+ resources/themes/v_simple/up.svg
+ resources/themes/v_simple/up_disabled.svg
+ resources/themes/v_simple/v_simple.css
+ resources/themes/v_simple/v_simple.mdhl
+ resources/themes/v_simple/v_simple.palette
+ resources/themes/v_simple/v_simple.qss
+ resources/themes/v_simple/v_simple_codeblock.css
+ resources/themes/v_simple/v_simple_mermaid.css