replace palette in clss VNote with VPalette

This commit is contained in:
Le Tan 2017-12-05 19:45:04 +08:00
parent 19323496d1
commit d14f4697b4
16 changed files with 35 additions and 249 deletions

View File

@ -41,16 +41,8 @@ editor-current-line
background: c5cae9
# [VNote] Vim insert mode cursor line background
vim-insert-background: c5cae9
# [VNote] Vim insert mode cursor block background
vim-insert-cursor-background: 4359e8
# [VNote] Vim insert mode cursor block foreground
vim-insert-cursor-foreground: eeeeee
# [VNote] Vim normal mode cursor line background
vim-normal-background: bcbcbc
# [VNote] Vim normal mode cursor block background
vim-normal-cursor-background: 3e3e3e
# [VNote] Vim normal mode cursor block foreground
vim-normal-cursor-foreground: eeeeee
# [VNote] Vim visual mode cursor line background
vim-visual-background: 90caf9
# [VNote] Vim replace mode cursor line background

View File

@ -45,9 +45,20 @@ selection_bg=#64b5f6
[soft_defined]
; VAvatar.
avatar_border_bg=@title_bg
avatar_fg=@base_bg
avatar_bg=@base_fg
; The border background color of the avatar when Captain mode is triggered.
avatar_captain_mode_border_bg=#6C6C6C
; Style of the label in Navigation mode.
navigation_label_fg=#4D4D4D
navigation_label_bg=#F4F4F4
; Style of the bubble of VButtonWithWidget.
bubble_fg=#FFFFFF
bubble_bg=#6C6C6C
[widgets]
; Widget color attributes.

View File

@ -5940,7 +5940,8 @@ void VVim::handleMousePressed(QMouseEvent *p_event)
{
Q_UNUSED(p_event);
QTextCursor cursor = m_editor->textCursorW();
if (checkMode(VimMode::Visual) || checkMode(VimMode::VisualLine)) {
if ((checkMode(VimMode::Visual) || checkMode(VimMode::VisualLine))
&& p_event->buttons() != Qt::RightButton) {
setMode(VimMode::Normal);
} else if (checkMode(VimMode::Normal)) {
if (cursor.hasSelection()) {

View File

@ -65,6 +65,9 @@ public:
// @p_num: -1 to hide the bubble.
void setBubbleNumber(int p_num);
// Set the foreground and background of the bubble.
void setBubbleColor(const QColor &p_fg, const QColor &p_bg);
signals:
// Emit when popup widget is about to show.
void popupWidgetAboutToShow(QWidget *p_widget);
@ -99,4 +102,9 @@ inline VButtonPopupWidget *VButtonWithWidget::getButtonPopupWidget() const
return dynamic_cast<VButtonPopupWidget *>(m_popupWidget);
}
inline void VButtonWithWidget::setBubbleColor(const QColor &p_fg, const QColor &p_bg)
{
m_bubbleFg = p_fg;
m_bubbleBg = p_bg;
}
#endif // VBUTTONWITHWIDGET_H

View File

@ -552,13 +552,7 @@ void VConfigManager::updateMarkdownEditStyle()
static const QString defaultCurrentLineBackground = "#C5CAE9";
static const QString defaultVimNormalBg = "#BCBCBC";
static const QString defaultVimNormalCursorBg = "#3E3E3E";
static const QString defaultVimNormalCursorFg = "#EEEEEE";
static const QString defaultVimInsertBg = "#C5CAE9";
static const QString defaultVimInsertCursorBg = "#4359E8";
static const QString defaultVimInsertCursorFg = "#EEEEEE";
static const QString defaultVimVisualBg = "#90CAF9";
static const QString defaultVimReplaceBg = "#F8BBD0";
@ -594,17 +588,11 @@ void VConfigManager::updateMarkdownEditStyle()
m_codeBlockStyles = parser.fetchCodeBlockStyles(mdEditFont);
m_editorCurrentLineBg = defaultCurrentLineBackground;
m_editorVimInsertBg = defaultVimInsertBg;
m_editorVimInsertCursorBg = defaultVimInsertCursorBg;
m_editorVimInsertCursorFg = defaultVimInsertCursorFg;
m_editorVimNormalBg = defaultVimNormalBg;
m_editorVimNormalCursorBg = defaultVimNormalCursorBg;
m_editorVimNormalCursorFg = defaultVimNormalCursorFg;
m_editorVimVisualBg = defaultVimVisualBg;
m_editorVimReplaceBg = defaultVimReplaceBg;
auto editorCurrentLineIt = styles.find("editor-current-line");
if (editorCurrentLineIt != styles.end()) {
auto backgroundIt = editorCurrentLineIt->find("background");
@ -618,31 +606,11 @@ void VConfigManager::updateMarkdownEditStyle()
m_editorVimInsertBg = "#" + *vimBgIt;
}
vimBgIt = editorCurrentLineIt->find("vim-insert-cursor-background");
if (vimBgIt != editorCurrentLineIt->end()) {
m_editorVimInsertCursorBg = "#" + *vimBgIt;
}
vimBgIt = editorCurrentLineIt->find("vim-insert-cursor-foreground");
if (vimBgIt != editorCurrentLineIt->end()) {
m_editorVimInsertCursorFg = "#" + *vimBgIt;
}
vimBgIt = editorCurrentLineIt->find("vim-normal-background");
if (vimBgIt != editorCurrentLineIt->end()) {
m_editorVimNormalBg = "#" + *vimBgIt;
}
vimBgIt = editorCurrentLineIt->find("vim-normal-cursor-background");
if (vimBgIt != editorCurrentLineIt->end()) {
m_editorVimNormalCursorBg = "#" + *vimBgIt;
}
vimBgIt = editorCurrentLineIt->find("vim-normal-cursor-foreground");
if (vimBgIt != editorCurrentLineIt->end()) {
m_editorVimNormalCursorFg = "#" + *vimBgIt;
}
vimBgIt = editorCurrentLineIt->find("vim-visual-background");
if (vimBgIt != editorCurrentLineIt->end()) {
m_editorVimVisualBg = "#" + *vimBgIt;

View File

@ -210,13 +210,7 @@ public:
const QString &getEditorIncrementalSearchedWordBg() const;
const QString &getEditorVimNormalBg() const;
const QString &getEditorVimNormalCursorBg() const;
const QString &getEditorVimNormalCursorFg() const;
const QString &getEditorVimInsertBg() const;
const QString &getEditorVimInsertCursorBg() const;
const QString &getEditorVimInsertCursorFg() const;
const QString &getEditorVimVisualBg() const;
const QString &getEditorVimReplaceBg() const;
@ -585,21 +579,9 @@ private:
// Current line background color in editor in Vim normal mode.
QString m_editorVimNormalBg;
// Cursour block background color in editor in Vim normal mode.
QString m_editorVimNormalCursorBg;
// Cursour block foreground color in editor in Vim normal mode.
QString m_editorVimNormalCursorFg;
// Current line background color in editor in Vim insert mode.
QString m_editorVimInsertBg;
// Cursour block background color in editor in Vim insert mode.
QString m_editorVimInsertCursorBg;
// Cursour block foreground color in editor in Vim insert mode.
QString m_editorVimInsertCursorFg;
// Current line background color in editor in Vim visual mode.
QString m_editorVimVisualBg;
@ -1303,31 +1285,11 @@ inline const QString &VConfigManager::getEditorVimNormalBg() const
return m_editorVimNormalBg;
}
inline const QString &VConfigManager::getEditorVimNormalCursorBg() const
{
return m_editorVimNormalCursorBg;
}
inline const QString &VConfigManager::getEditorVimNormalCursorFg() const
{
return m_editorVimNormalCursorFg;
}
inline const QString &VConfigManager::getEditorVimInsertBg() const
{
return m_editorVimInsertBg;
}
inline const QString &VConfigManager::getEditorVimInsertCursorBg() const
{
return m_editorVimInsertCursorBg;
}
inline const QString &VConfigManager::getEditorVimInsertCursorFg() const
{
return m_editorVimInsertCursorFg;
}
inline const QString &VConfigManager::getEditorVimVisualBg() const
{
return m_editorVimVisualBg;

View File

@ -146,9 +146,6 @@ public:
// @p_modified: if true, delete the whole content and insert the new content.
virtual void setContent(const QString &p_content, bool p_modified = false) = 0;
// Set the cursor block's background and foreground.
virtual void setCursorBlockColor(const QColor &p_bg, const QColor &p_fg) = 0;
// Wrapper functions for QPlainTextEdit/QTextEdit.
// Ends with W to distinguish it from the original interfaces.
public:

View File

@ -61,7 +61,6 @@ VMainWindow::VMainWindow(VSingleInstanceGuard *p_guard, QWidget *p_parent)
setWindowIcon(QIcon(":/resources/icons/vnote.ico"));
vnote = new VNote(this);
g_vnote = vnote;
vnote->initPalette(palette());
initPredefinedColorPixmaps();
if (g_config->getEnableCompactMode()) {
@ -560,6 +559,8 @@ void VMainWindow::initNoteToolBar(QSize p_iconSize)
"",
m_attachmentList,
this);
m_attachmentBtn->setBubbleColor(g_palette->color("bubble_fg"),
g_palette->color("bubble_bg"));
m_attachmentBtn->setToolTip(tr("Attachments (drag files here to add attachments)"));
m_attachmentBtn->setProperty("CornerBtn", true);
m_attachmentBtn->setFocusPolicy(Qt::NoFocus);
@ -1256,8 +1257,9 @@ void VMainWindow::initAvatar()
{
m_avatar = new VAvatar(this);
m_avatar->setAvatarPixmap(":/resources/icons/vnote.svg");
m_avatar->setColor(vnote->getColorFromPalette("base-color"), vnote->getColorFromPalette("Indigo4"),
vnote->getColorFromPalette("Teal4"));
m_avatar->setColor(g_palette->color("avatar_border_bg"),
g_palette->color("avatar_fg"),
g_palette->color("avatar_bg"));
m_avatar->hide();
}
@ -2179,11 +2181,6 @@ void VMainWindow::restoreStateAndGeometry()
}
}
const QVector<QPair<QString, QString> >& VMainWindow::getPalette() const
{
return vnote->getPalette();
}
void VMainWindow::handleCurrentDirectoryChanged(const VDirectory *p_dir)
{
newNoteAct->setEnabled(p_dir);

View File

@ -54,8 +54,6 @@ class VMainWindow : public QMainWindow
public:
VMainWindow(VSingleInstanceGuard *p_guard, QWidget *p_parent = 0);
const QVector<QPair<QString, QString> > &getPalette() const;
// Returns true if the location succeeds.
bool locateFile(VFile *p_file);

View File

@ -59,9 +59,6 @@ public:
void setContent(const QString &p_content, bool p_modified = false) Q_DECL_OVERRIDE;
// Set the cursor block's background and foreground.
void setCursorBlockColor(const QColor &p_bg, const QColor &p_fg) Q_DECL_OVERRIDE;
public slots:
bool jumpTitle(bool p_forward, int p_relativeLevel, int p_repeat) Q_DECL_OVERRIDE;
@ -221,9 +218,4 @@ private:
bool m_freshEdit;
};
inline void VMdEditor::setCursorBlockColor(const QColor &p_bg, const QColor &p_fg)
{
setCursorBlockBg(p_bg);
setCursorBlockFg(p_fg);
}
#endif // VMDEDITOR_H

View File

@ -13,13 +13,15 @@
#include "vmainwindow.h"
#include "vorphanfile.h"
#include "vnotefile.h"
#include "vpalette.h"
extern VConfigManager *g_config;
extern VPalette *g_palette;
// Meta word manager.
VMetaWordManager *g_mwMgr;
QString VNote::s_markdownTemplate;
QString VNote::s_markdownTemplatePDF;
@ -68,104 +70,6 @@ VNote::VNote(QObject *parent)
g_mwMgr = &m_metaWordMgr;
}
void VNote::initPalette(QPalette palette)
{
m_palette.clear();
m_palette.append(QPair<QString, QString>("base-background",
palette.background().color().name()));
m_palette.append(QPair<QString, QString>("base-foreground",
palette.background().color().name()));
m_palette.append(QPair<QString, QString>("hover-color", "#42A5F5"));
m_palette.append(QPair<QString, QString>("base-color", "#BDBDBD"));
m_palette.append(QPair<QString, QString>("focus-color", "#75C5B5"));
m_palette.append(QPair<QString, QString>("logo-base", "#F4F4F4"));
m_palette.append(QPair<QString, QString>("logo-max", "#4D4D4D"));
m_palette.append(QPair<QString, QString>("logo-min", "#C69C6D"));
// Material Design Colors
m_palette.append(QPair<QString, QString>("Teal0", "#E0F2F1"));
m_palette.append(QPair<QString, QString>("Teal1", "#B2DFDB"));
m_palette.append(QPair<QString, QString>("Teal2", "#80CBC4"));
m_palette.append(QPair<QString, QString>("Teal3", "#4DB6AC"));
m_palette.append(QPair<QString, QString>("Teal4", "#26A69A"));
m_palette.append(QPair<QString, QString>("Teal5", "#009688"));
m_palette.append(QPair<QString, QString>("Teal6", "#00897B"));
m_palette.append(QPair<QString, QString>("Teal7", "#00796B"));
m_palette.append(QPair<QString, QString>("Teal8", "#00695C"));
m_palette.append(QPair<QString, QString>("Teal9", "#004D40"));
m_palette.append(QPair<QString, QString>("Indigo0", "#E8EAF6"));
m_palette.append(QPair<QString, QString>("Indigo1", "#C5CAE9"));
m_palette.append(QPair<QString, QString>("Indigo2", "#9FA8DA"));
m_palette.append(QPair<QString, QString>("Indigo3", "#7986CB"));
m_palette.append(QPair<QString, QString>("Indigo4", "#5C6BC0"));
m_palette.append(QPair<QString, QString>("Grey0", "#FAFAFA"));
m_palette.append(QPair<QString, QString>("Grey1", "#F5F5F5"));
m_palette.append(QPair<QString, QString>("Grey2", "#EEEEEE"));
m_palette.append(QPair<QString, QString>("Grey3", "#E0E0E0"));
m_palette.append(QPair<QString, QString>("Grey4", "#BDBDBD"));
m_palette.append(QPair<QString, QString>("Grey5", "#9E9E9E"));
m_palette.append(QPair<QString, QString>("Grey6", "#757575"));
m_palette.append(QPair<QString, QString>("Grey7", "#616161"));
m_palette.append(QPair<QString, QString>("Grey8", "#424242"));
m_palette.append(QPair<QString, QString>("Green0", "#E8F5E9"));
m_palette.append(QPair<QString, QString>("Green1", "#C8E6C9"));
m_palette.append(QPair<QString, QString>("Green2", "#A5D6A7"));
m_palette.append(QPair<QString, QString>("Green3", "#81C784"));
m_palette.append(QPair<QString, QString>("Green4", "#66BB6A"));
m_palette.append(QPair<QString, QString>("Green5", "#4CAF50"));
m_palette.append(QPair<QString, QString>("Green6", "#43A047"));
m_palette.append(QPair<QString, QString>("Green7", "#388E3C"));
m_palette.append(QPair<QString, QString>("Green8", "#2E7D32"));
m_palette.append(QPair<QString, QString>("Green9", "#1B5E20"));
m_palette.append(QPair<QString, QString>("DeepPurple0", "#EDE7F6"));
m_palette.append(QPair<QString, QString>("DeepPurple1", "#D1C4E9"));
m_palette.append(QPair<QString, QString>("DeepPurple2", "#B39DDB"));
m_palette.append(QPair<QString, QString>("DeepPurple3", "#9575CD"));
m_palette.append(QPair<QString, QString>("DeepPurple4", "#7E57C2"));
m_palette.append(QPair<QString, QString>("DeepPurple5", "#673AB7"));
m_palette.append(QPair<QString, QString>("DeepPurple6", "#5E35B1"));
m_palette.append(QPair<QString, QString>("DeepPurple7", "#512DA8"));
m_palette.append(QPair<QString, QString>("DeepPurple8", "#4527A0"));
m_palette.append(QPair<QString, QString>("DeepPurple9", "#311B92"));
m_palette.append(QPair<QString, QString>("Purple0", "#F3E5F5"));
m_palette.append(QPair<QString, QString>("Purple1", "#E1BEE7"));
m_palette.append(QPair<QString, QString>("Purple2", "#CE93D8"));
m_palette.append(QPair<QString, QString>("Purple3", "#BA68C8"));
m_palette.append(QPair<QString, QString>("Purple4", "#AB47BC"));
m_palette.append(QPair<QString, QString>("Purple5", "#9C27B0"));
m_palette.append(QPair<QString, QString>("Purple6", "#8E24AA"));
m_palette.append(QPair<QString, QString>("Purple7", "#7B1FA2"));
m_palette.append(QPair<QString, QString>("Purple8", "#6A1B9A"));
m_palette.append(QPair<QString, QString>("Purple9", "#4A148C"));
m_palette.append(QPair<QString, QString>("Red0", "#FFEBEE"));
m_palette.append(QPair<QString, QString>("Red1", "#FFCDD2"));
m_palette.append(QPair<QString, QString>("Red2", "#EF9A9A"));
m_palette.append(QPair<QString, QString>("Red3", "#E57373"));
m_palette.append(QPair<QString, QString>("Red4", "#EF5350"));
m_palette.append(QPair<QString, QString>("Red5", "#F44336"));
m_palette.append(QPair<QString, QString>("Red6", "#E53935"));
m_palette.append(QPair<QString, QString>("Red7", "#D32F2F"));
m_palette.append(QPair<QString, QString>("Red8", "#C62828"));
m_palette.append(QPair<QString, QString>("Red9", "#B71C1C"));
}
QString VNote::getColorFromPalette(const QString &p_name) const
{
for (int i = 0; i < m_palette.size(); ++i) {
if (m_palette[i].first == p_name) {
return m_palette[i].second;
}
}
return "White";
}
void VNote::initTemplate()
{
if (s_markdownTemplate.isEmpty()) {
@ -242,7 +146,8 @@ QString VNote::getNavigationLabelStyle(const QString &p_str) const
{
static int lastLen = -1;
static int pxWidth = 24;
int fontPt = 15;
const int fontPt = 15;
QString fontFamily = getMonospacedFont();
if (p_str.size() != lastLen) {
@ -261,8 +166,8 @@ QString VNote::getNavigationLabelStyle(const QString &p_str) const
"border-radius: 3px;"
"min-width: %5px;"
"max-width: %5px;")
.arg(getColorFromPalette("logo-base"))
.arg(getColorFromPalette("logo-max"))
.arg(g_palette->color("navigation_label_bg"))
.arg(g_palette->color("navigation_label_fg"))
.arg(fontPt)
.arg(fontFamily)
.arg(pxWidth);

View File

@ -72,10 +72,7 @@ public:
static const QString c_markdownGuideDocFile_en;
static const QString c_markdownGuideDocFile_zh;
const QVector<QPair<QString, QString> > &getPalette() const;
void initPalette(QPalette palette);
QString getColorFromPalette(const QString &p_name) const;
// Get the label style in Navigation mode.
QString getNavigationLabelStyle(const QString &p_str) const;
// Given the path of a file, first try to open it as note file,
@ -105,7 +102,6 @@ private:
// Maintain all the notebooks. Other holder should use QPointer.
QVector<VNotebook *> m_notebooks;
QVector<QPair<QString, QString> > m_palette;
VMetaWordManager m_metaWordMgr;
@ -114,9 +110,4 @@ private:
QList<VOrphanFile *> m_externalFiles;
};
inline const QVector<QPair<QString, QString> >& VNote::getPalette() const
{
return m_palette;
}
#endif // VNOTE_H

View File

@ -34,8 +34,6 @@ VTextDocumentLayout::VTextDocumentLayout(QTextDocument *p_doc,
m_imageLineColor("#9575CD"),
m_cursorBlockMode(CursorBlock::None),
m_virtualCursorBlockWidth(8),
m_cursorBlockFg("#EEEEEE"),
m_cursorBlockBg("#222222"),
m_lastCursorBlockWidth(-1)
{
}

View File

@ -57,10 +57,6 @@ public:
void setCursorBlockMode(CursorBlock p_mode);
void setCursorBlockFg(const QColor &p_color);
void setCursorBlockBg(const QColor &p_color);
void setVirtualCursorBlockWidth(int p_width);
void clearLastCursorBlockWidth();
@ -290,12 +286,6 @@ private:
// Virtual cursor block: cursor block on no character.
int m_virtualCursorBlockWidth;
// Foreground of cursor block.
QColor m_cursorBlockFg;
// Background of cursor block.
QColor m_cursorBlockBg;
int m_lastCursorBlockWidth;
};
@ -321,16 +311,6 @@ inline void VTextDocumentLayout::setCursorBlockMode(CursorBlock p_mode)
m_cursorBlockMode = p_mode;
}
inline void VTextDocumentLayout::setCursorBlockFg(const QColor &p_color)
{
m_cursorBlockFg = p_color;
}
inline void VTextDocumentLayout::setCursorBlockBg(const QColor &p_color)
{
m_cursorBlockBg = p_color;
}
inline void VTextDocumentLayout::setVirtualCursorBlockWidth(int p_width)
{
m_virtualCursorBlockWidth = p_width;

View File

@ -356,13 +356,3 @@ void VTextEdit::setCursorBlockMode(CursorBlock p_mode)
: 1);
}
}
void VTextEdit::setCursorBlockFg(const QColor &p_color)
{
getLayout()->setCursorBlockFg(p_color);
}
void VTextEdit::setCursorBlockBg(const QColor &p_color)
{
getLayout()->setCursorBlockBg(p_color);
}

View File

@ -59,10 +59,6 @@ public:
void setCursorBlockMode(CursorBlock p_mode);
void setCursorBlockFg(const QColor &p_color);
void setCursorBlockBg(const QColor &p_color);
protected:
void resizeEvent(QResizeEvent *p_event) Q_DECL_OVERRIDE;