mirror of
https://github.com/Mudlet/Mudlet
synced 2026-08-13 18:26:27 -04:00
#### Brief overview of PR changes/additions - the editor's info/intro banner had a hardcoded bright-yellow background; it now styles itself per theme (muted dark amber in dark mode, unchanged in light mode) and follows live theme switches - the banner's links used 'color: inherit', which Qt rich text renders as black; they now use an explicit theme-appropriate colour so they are readable in dark mode #### Motivation for adding to Mudlet The bright yellow banner was glaring against the dark editor, and its links were unreadable once the background went dark. #### Other info (issues closed, discussion etc) Fixes #8854. **Test case:** enable dark mode, open the script editor with nothing selected - the info banner is muted dark amber with readable light text and links; in light mode it looks exactly as before. https://github.com/user-attachments/assets/5368705f-9759-4ea6-87d5-55ee23eb54c8 --------- Signed-off-by: Vadim Peretokin <vadim.peretokin@mudlet.org>
67 lines
3.4 KiB
C++
67 lines
3.4 KiB
C++
/***************************************************************************
|
|
* Copyright (C) 2008-2009 by Heiko Koehn - KoehnHeiko@googlemail.com *
|
|
* Copyright (C) 2014 by Ahmed Charles - acharles@outlook.com *
|
|
* Copyright (C) 2020 by Stephen Lyons - slysven@virginmedia.com *
|
|
* *
|
|
* This program is free software; you can redistribute it and/or modify *
|
|
* it under the terms of the GNU General Public License as published by *
|
|
* the Free Software Foundation; either version 2 of the License, or *
|
|
* (at your option) any later version. *
|
|
* *
|
|
* This program is distributed in the hope that it will be useful, *
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
|
|
* GNU General Public License for more details. *
|
|
* *
|
|
* You should have received a copy of the GNU General Public License *
|
|
* along with this program; if not, write to the *
|
|
* Free Software Foundation, Inc., *
|
|
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
|
|
***************************************************************************/
|
|
|
|
|
|
#include "dlgSystemMessageArea.h"
|
|
|
|
#include "mudlet.h"
|
|
|
|
|
|
dlgSystemMessageArea::dlgSystemMessageArea(QWidget* pParentWidget)
|
|
: QWidget(pParentWidget)
|
|
{
|
|
// init generated dialog
|
|
setupUi(this);
|
|
|
|
QPixmap holdPixmap;
|
|
holdPixmap = notificationAreaIconLabelWarning->pixmap(Qt::ReturnByValue);
|
|
holdPixmap.setDevicePixelRatio(5.3);
|
|
notificationAreaIconLabelWarning->setPixmap(holdPixmap);
|
|
|
|
holdPixmap = notificationAreaIconLabelError->pixmap(Qt::ReturnByValue);
|
|
holdPixmap.setDevicePixelRatio(5.3);
|
|
notificationAreaIconLabelError->setPixmap(holdPixmap);
|
|
|
|
holdPixmap = notificationAreaIconLabelInformation->pixmap(Qt::ReturnByValue);
|
|
holdPixmap.setDevicePixelRatio(5.3);
|
|
notificationAreaIconLabelInformation->setPixmap(holdPixmap);
|
|
|
|
slot_applyAppearance();
|
|
connect(mudlet::self(), &mudlet::signal_appearanceChanged, this, &dlgSystemMessageArea::slot_applyAppearance);
|
|
}
|
|
|
|
void dlgSystemMessageArea::slot_applyAppearance()
|
|
{
|
|
const bool darkMode = mudlet::self()->inDarkMode();
|
|
const QString background = darkMode ? qsl("rgb(64, 60, 40)") : qsl("rgb(255, 254, 215)");
|
|
const QString textColor = darkMode ? qsl("rgb(230, 230, 230)") : qsl("black");
|
|
frame_notificationArea->setStyleSheet(qsl("QFrame#frame_notificationArea {\n"
|
|
" border: 3px solid;\n"
|
|
" border-radius: 6px;\n"
|
|
" background-color: %1;\n"
|
|
"}\n"
|
|
"\n"
|
|
"QLabel{\n"
|
|
"color: %2;\n"
|
|
"background-color: %1;\n"
|
|
"}")
|
|
.arg(background, textColor));
|
|
}
|