mirror of
https://github.com/qelectrotech/qelectrotech-source-mirror.git
synced 2026-09-30 14:54:13 +02:00
5d033bf1b2
Add a KColorButton next to the 'Utiliser les couleurs du système' checkbox in the Apparence settings tab: - When the checkbox is active (default), system colors are used and the color button is disabled - When the checkbox is inactive, the color button becomes active and lets the user pick any color for the entire application - useCustomPalette() builds a full QPalette from the chosen color with proper light/dark text contrast, button shading, and icon theme switching - The chosen color is persisted in QSettings as 'customapplicationcolor' and restored on next startup Files changed: - sources/ui/configpage/generalconfigurationpage.ui: HBoxLayout with checkbox + KColorButton, customwidget declaration - sources/ui/configpage/generalconfigurationpage.h: new slot - sources/ui/configpage/generalconfigurationpage.cpp: load/save custom color, enable/disable logic, toggled slot - sources/qetapp.h: useCustomPalette() declaration - sources/qetapp.cpp: useCustomPalette() implementation, startup restore of custom color
66 lines
2.1 KiB
C++
66 lines
2.1 KiB
C++
/*
|
|
Copyright 2006-2026 The QElectroTech Team
|
|
This file is part of QElectroTech.
|
|
|
|
QElectroTech 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.
|
|
|
|
QElectroTech 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 QElectroTech. If not, see <http://www.gnu.org/licenses/>.
|
|
*/
|
|
#ifndef GENERALCONFIGURATIONPAGE_H
|
|
#define GENERALCONFIGURATIONPAGE_H
|
|
|
|
#include "configpage.h"
|
|
|
|
#include <QWidget>
|
|
|
|
namespace Ui {
|
|
class GeneralConfigurationPage;
|
|
}
|
|
|
|
class GeneralConfigurationPage : public ConfigPage
|
|
{
|
|
Q_OBJECT
|
|
|
|
public:
|
|
explicit GeneralConfigurationPage(QWidget *parent = nullptr);
|
|
~GeneralConfigurationPage() override;
|
|
|
|
virtual void applyConf() override;
|
|
virtual QString title() const override;
|
|
virtual QIcon icon() const override;
|
|
|
|
private slots:
|
|
void on_m_font_pb_clicked();
|
|
void on_m_dyn_text_font_pb_clicked();
|
|
void on_m_common_elmt_path_cb_currentIndexChanged(int index);
|
|
void on_m_company_elmt_path_cb_currentIndexChanged(int index);
|
|
void on_m_custom_elmt_path_cb_currentIndexChanged(int index);
|
|
void on_m_company_tbt_path_cb_currentIndexChanged(int index);
|
|
void on_m_custom_tbt_path_cb_currentIndexChanged(int index);
|
|
void on_m_user_macros_path_cb_currentIndexChanged(int index);
|
|
void on_m_indi_text_font_pb_clicked();
|
|
void on_MaxPartsElementEditorList_sb_valueChanged(int value);
|
|
void on_DiagramEditor_Grid_PointSize_min_sb_valueChanged(int value);
|
|
void on_ElementEditor_Grid_PointSize_min_sb_valueChanged(int value);
|
|
|
|
void on_m_hdpi_round_cb_clicked(bool checked);
|
|
void on_m_use_system_color_cb_toggled(bool checked);
|
|
|
|
private:
|
|
void fillLang();
|
|
|
|
private:
|
|
Ui::GeneralConfigurationPage *ui;
|
|
};
|
|
|
|
#endif // GENERALCONFIGURATIONPAGE_H
|