diff options
author | Thorbjørn Lindeijer <bjorn@lindeijer.nl> | 2025-05-19 09:49:52 +0200 |
---|---|---|
committer | Thorbjørn Lindeijer <bjorn@lindeijer.nl> | 2025-07-15 09:11:43 +0200 |
commit | 32bcf41f01d4ed4a3a08030095611e75d6186d60 (patch) | |
tree | ff80e68d7d26853e8a103cc295804e0635f856e2 | |
parent | 52a17bd4034797214c8abefe90a798a40bb8e365 (diff) | |
download | mana-32bcf41f01d4ed4a3a08030095611e75d6186d60.tar.gz mana-32bcf41f01d4ed4a3a08030095611e75d6186d60.tar.bz2 mana-32bcf41f01d4ed4a3a08030095611e75d6186d60.tar.xz mana-32bcf41f01d4ed4a3a08030095611e75d6186d60.zip |
Theme: Introduced HIGHLIGHT_TEXT color
For customizing the text color used with HIGHLIGHT color as background.
-rw-r--r-- | data/graphics/gui/jewelry/theme.xml | 6 | ||||
-rw-r--r-- | data/graphics/gui/theme.xml | 1 | ||||
-rw-r--r-- | src/gui/questswindow.cpp | 12 | ||||
-rw-r--r-- | src/gui/serverdialog.cpp | 5 | ||||
-rw-r--r-- | src/gui/skilldialog.cpp | 6 | ||||
-rw-r--r-- | src/gui/widgets/avatarlistbox.cpp | 6 | ||||
-rw-r--r-- | src/gui/widgets/listbox.cpp | 6 | ||||
-rw-r--r-- | src/gui/widgets/shoplistbox.cpp | 3 | ||||
-rw-r--r-- | src/resources/theme.cpp | 1 | ||||
-rw-r--r-- | src/resources/theme.h | 1 |
10 files changed, 36 insertions, 11 deletions
diff --git a/data/graphics/gui/jewelry/theme.xml b/data/graphics/gui/jewelry/theme.xml index 07b94b0f..2b4911de 100644 --- a/data/graphics/gui/jewelry/theme.xml +++ b/data/graphics/gui/jewelry/theme.xml @@ -10,12 +10,12 @@ <color id="BORDER" color="#000000" /> <color id="DROPDOWN" color="#000000" /> <color id="LISTBOX" color="#000000" /> - <color id="LISTBOX_SELECTED" color="#000000" /> <color id="CHANNEL_CHAT_TAB" color="#efd7a7" outlineColor="#473005" /> <color id="BACKGROUND" color="#ffffff" /> <color id="BACKGROUND_GRAY" color="#404040" /> <color id="DROPDOWN_SHADOW" color="#c0c0c0" /> <color id="HIGHLIGHT" color="#ebc873" /> + <color id="HIGHLIGHT_TEXT" color="#000000" /> <color id="TAB_FLASH" color="#a7ff2a" outlineColor="#142200" effect="pulse" /> <color id="TAB_PLAYER_FLASH" color="#00ff00" effect="pulse" /> <color id="PARTY_TAB" color="#efd7a7" outlineColor="#473005" /> @@ -92,7 +92,6 @@ <color id="BORDER" color="#000000" /> <color id="DROPDOWN" color="#000000" /> <color id="LISTBOX" color="#000000" /> - <color id="LISTBOX_SELECTED" color="#000000" /> <color id="CHANNEL_CHAT_TAB" color="#efd7a7" outlineColor="#473005" /> <color id="TAB_FLASH" color="#a7ff2a" outlineColor="#142200" /> <color id="TAB_PLAYER_FLASH" color="#ff96f6" /> @@ -100,6 +99,7 @@ <color id="BACKGROUND_GRAY" color="#404040" /> <color id="DROPDOWN_SHADOW" color="#c0c0c0" /> <color id="HIGHLIGHT" color="#ebc873" /> + <color id="HIGHLIGHT_TEXT" color="#000000" /> <color id="SHOP_WARNING" color="#e07a7a" /> <color id="ITEM_EQUIPPED" color="#000091" /> <color id="BUBBLE_NAME" color="#cccccc" /> @@ -169,12 +169,12 @@ <color id="BORDER" color="#000000" /> <color id="DROPDOWN" color="#000000" /> <color id="LISTBOX" color="#000000" /> - <color id="LISTBOX_SELECTED" color="#000000" /> <color id="CHANNEL_CHAT_TAB" color="#efd7a7" outlineColor="#000000" /> <color id="BACKGROUND" color="#ffffff" /> <color id="BACKGROUND_GRAY" color="#404040" /> <color id="DROPDOWN_SHADOW" color="#c0c0c0" /> <color id="HIGHLIGHT" color="#ebc873" /> + <color id="HIGHLIGHT_TEXT" color="#000000" /> <color id="TAB_FLASH" color="#fec4ff" effect="pulse" /> <color id="TAB_PLAYER_FLASH" color="#00ff00" effect="pulse" /> <color id="SHOP_WARNING" color="#e07a7a" /> diff --git a/data/graphics/gui/theme.xml b/data/graphics/gui/theme.xml index c1a76875..fc1de9e3 100644 --- a/data/graphics/gui/theme.xml +++ b/data/graphics/gui/theme.xml @@ -17,6 +17,7 @@ <color id="WHISPER_TAB" color="#3b58a9" /> <color id="BACKGROUND" color="#ffffff" /> <color id="HIGHLIGHT" color="#c0c0c0" /> + <color id="HIGHLIGHT_TEXT" color="#000000" /> <color id="TAB_FLASH" color="#ff0000" effect="pulse" /> <color id="SHOP_WARNING" color="#910000" /> <color id="ITEM_EQUIPPED" color="#000091" /> diff --git a/src/gui/questswindow.cpp b/src/gui/questswindow.cpp index c05df1de..6769815e 100644 --- a/src/gui/questswindow.cpp +++ b/src/gui/questswindow.cpp @@ -113,9 +113,16 @@ void QuestsListBox::draw(gcn::Graphics *gcnGraphics) graphics->setColor(Theme::getThemeColor(Theme::TEXT)); const int fontHeight = getFont()->getHeight(); - int y = 0; - for (auto &quest : model->getQuests()) + + for (int i = 0, y = 0; i < model->getNumberOfElements(); + ++i, y += rowHeight) { + if (mSelected == i) + graphics->setColor(Theme::getThemeColor(Theme::HIGHLIGHT_TEXT)); + else + graphics->setColor(Theme::getThemeColor(Theme::TEXT)); + + auto &quest = model->getQuests()[i]; int x = 1; if (const Image *icon = quest.completed ? completeIcon : incompleteIcon) @@ -125,7 +132,6 @@ void QuestsListBox::draw(gcn::Graphics *gcnGraphics) } graphics->drawText(quest.name(), x, y + (rowHeight - fontHeight) / 2); - y += rowHeight; } } diff --git a/src/gui/serverdialog.cpp b/src/gui/serverdialog.cpp index 872ecb28..e41c0bbe 100644 --- a/src/gui/serverdialog.cpp +++ b/src/gui/serverdialog.cpp @@ -115,7 +115,10 @@ public: { const ServerInfo &info = model->getServer(i); - graphics->setColor(Theme::getThemeColor(Theme::TEXT)); + if (mSelected == i) + graphics->setColor(Theme::getThemeColor(Theme::HIGHLIGHT_TEXT)); + else + graphics->setColor(Theme::getThemeColor(Theme::TEXT)); if (!info.name.empty()) { diff --git a/src/gui/skilldialog.cpp b/src/gui/skilldialog.cpp index 3112446a..49552421 100644 --- a/src/gui/skilldialog.cpp +++ b/src/gui/skilldialog.cpp @@ -147,11 +147,15 @@ public: } // Draw the list elements - graphics->setColor(Theme::getThemeColor(Theme::TEXT)); for (int i = 0, y = 1; i < model->getNumberOfElements(); ++i, y += getRowHeight()) { + if (mSelected == i) + graphics->setColor(Theme::getThemeColor(Theme::HIGHLIGHT_TEXT)); + else + graphics->setColor(Theme::getThemeColor(Theme::TEXT)); + if (SkillInfo *e = model->getSkillAt(i)) e->draw(graphics, y, getWidth()); } diff --git a/src/gui/widgets/avatarlistbox.cpp b/src/gui/widgets/avatarlistbox.cpp index 4a806d04..a5109267 100644 --- a/src/gui/widgets/avatarlistbox.cpp +++ b/src/gui/widgets/avatarlistbox.cpp @@ -76,11 +76,15 @@ void AvatarListBox::draw(gcn::Graphics *gcnGraphics) auto offlineIcon = theme->getIcon("offline"); // Draw the list elements - graphics->setColor(Theme::getThemeColor(Theme::TEXT)); for (int i = 0, y = 0; i < model->getNumberOfElements(); ++i, y += rowHeight) { + if (mSelected == i) + graphics->setColor(Theme::getThemeColor(Theme::HIGHLIGHT_TEXT)); + else + graphics->setColor(Theme::getThemeColor(Theme::TEXT)); + Avatar *a = model->getAvatarAt(i); int x = 1; diff --git a/src/gui/widgets/listbox.cpp b/src/gui/widgets/listbox.cpp index 112de232..612e785f 100644 --- a/src/gui/widgets/listbox.cpp +++ b/src/gui/widgets/listbox.cpp @@ -56,10 +56,14 @@ void ListBox::draw(gcn::Graphics *graphics) } // Draw the list elements - graphics->setColor(Theme::getThemeColor(Theme::TEXT)); for (int i = 0, y = 0; i < mListModel->getNumberOfElements(); ++i, y += height) { + if (mSelected == i) + graphics->setColor(Theme::getThemeColor(Theme::HIGHLIGHT_TEXT)); + else + graphics->setColor(Theme::getThemeColor(Theme::TEXT)); + graphics->drawText(mListModel->getElementAt(i), 1, y); } } diff --git a/src/gui/widgets/shoplistbox.cpp b/src/gui/widgets/shoplistbox.cpp index e2313c85..d745d74d 100644 --- a/src/gui/widgets/shoplistbox.cpp +++ b/src/gui/widgets/shoplistbox.cpp @@ -75,6 +75,7 @@ void ShopListBox::draw(gcn::Graphics *gcnGraphics) auto backgroundColor = Theme::getThemeColor(Theme::BACKGROUND); auto warningColor = Theme::getThemeColor(Theme::SHOP_WARNING); auto textColor = Theme::getThemeColor(Theme::TEXT); + auto highlightTextColor = Theme::getThemeColor(Theme::HIGHLIGHT_TEXT); highlightColor.a = alpha; backgroundColor.a = alpha; warningColor.a = alpha; @@ -136,7 +137,7 @@ void ShopListBox::draw(gcn::Graphics *gcnGraphics) } } - graphics->setColor(textColor); + graphics->setColor(i == mSelected ? highlightTextColor : textColor); graphics->drawText(mListModel->getElementAt(i), ITEM_ICON_SIZE + 5, y + (ITEM_ICON_SIZE - fontHeight) / 2); diff --git a/src/resources/theme.cpp b/src/resources/theme.cpp index fa5f1a7d..4dcbb9a4 100644 --- a/src/resources/theme.cpp +++ b/src/resources/theme.cpp @@ -794,6 +794,7 @@ static int readColorId(const std::string &id) "WHISPER_TAB", "BACKGROUND", "HIGHLIGHT", + "HIGHLIGHT_TEXT", "TAB_FLASH", "SHOP_WARNING", "ITEM_EQUIPPED", diff --git a/src/resources/theme.h b/src/resources/theme.h index 85a720a2..fbcb263b 100644 --- a/src/resources/theme.h +++ b/src/resources/theme.h @@ -228,6 +228,7 @@ class Theme : public EventListener WHISPER_TAB, BACKGROUND, HIGHLIGHT, + HIGHLIGHT_TEXT, TAB_FLASH, SHOP_WARNING, ITEM_EQUIPPED, |