File indexing completed on 2023-05-30 10:45:27
0001 /* 0002 SPDX-FileCopyrightText: 2004-2009 Peter Hedlund <peter.hedlund@kdemail.net> 0003 SPDX-License-Identifier: GPL-2.0-or-later 0004 */ 0005 0006 #include "prefcardappearance.h" 0007 0008 #include <KLocalizedString> 0009 0010 PrefCardAppearance::PrefCardAppearance(QWidget *parent) : QWidget(parent) 0011 { 0012 setupUi(this); 0013 0014 connect(flipButton, &QAbstractButton::clicked, this, &PrefCardAppearance::slotFlipButtonClicked); 0015 connect(kcfg_FrontFont, &KFontRequester::fontSelected, this, &PrefCardAppearance::slotFontChanged); 0016 connect(kcfg_FrontTextColor, &KColorButton::changed, this, &PrefCardAppearance::slotTextColorChanged); 0017 connect(kcfg_FrontCardColor, &KColorButton::changed, this, &PrefCardAppearance::slotCardColorChanged); 0018 connect(kcfg_FrontFrameColor, &KColorButton::changed, this, &PrefCardAppearance::slotFrameColorChanged); 0019 connect(kcfg_BackFont, &KFontRequester::fontSelected, this, &PrefCardAppearance::slotFontChanged); 0020 connect(kcfg_BackTextColor, &KColorButton::changed, this, &PrefCardAppearance::slotTextColorChanged); 0021 connect(kcfg_BackCardColor, &KColorButton::changed, this, &PrefCardAppearance::slotCardColorChanged); 0022 connect(kcfg_BackFrameColor, &KColorButton::changed, this, &PrefCardAppearance::slotFrameColorChanged); 0023 connect(widgetStack, &QStackedWidget::currentChanged, this, &PrefCardAppearance::slotCurrentChanged); 0024 0025 widgetStack->setCurrentWidget(frontStackPage); 0026 // initialize the buddies, etc. 0027 slotCurrentChanged(widgetStack->indexOf(frontStackPage)); 0028 } 0029 0030 void PrefCardAppearance::slotFlipButtonClicked( ) 0031 { 0032 if (widgetStack->currentWidget() == frontStackPage) 0033 { 0034 widgetStack->setCurrentWidget(backStackPage); 0035 } 0036 else 0037 { 0038 widgetStack->setCurrentWidget(frontStackPage); 0039 } 0040 } 0041 0042 void PrefCardAppearance::slotFontChanged(const QFont & font) 0043 { 0044 flashcard->setTextFont(font); 0045 } 0046 0047 void PrefCardAppearance::slotTextColorChanged( const QColor & color) 0048 { 0049 flashcard->setTextColor(color); 0050 } 0051 0052 void PrefCardAppearance::slotCardColorChanged( const QColor & color) 0053 { 0054 flashcard->setCardColor(color); 0055 } 0056 0057 void PrefCardAppearance::slotFrameColorChanged( const QColor & color) 0058 { 0059 flashcard->setFrameColor(color); 0060 } 0061 0062 void PrefCardAppearance::slotCurrentChanged(int index) 0063 { 0064 if (index == widgetStack->indexOf(backStackPage)) 0065 { 0066 flashcard->setIdentifier(i18nc("Back of the flashcard", "Back")); 0067 flashcard->setText(i18n("Answer")); 0068 flashcard->setTextFont(kcfg_BackFont->font()); 0069 flashcard->setTextColor(kcfg_BackTextColor->color()); 0070 flashcard->setCardColor(kcfg_BackCardColor->color()); 0071 flashcard->setFrameColor(kcfg_BackFrameColor->color()); 0072 0073 fontLabel->setBuddy(kcfg_BackFont); 0074 textColorLabel->setBuddy(kcfg_BackTextColor); 0075 frameColorLabel->setBuddy(kcfg_BackFrameColor); 0076 cardColorLabel->setBuddy(kcfg_BackCardColor); 0077 } 0078 else 0079 { 0080 flashcard->setIdentifier(i18n("Front")); 0081 flashcard->setText(i18n("Question")); 0082 flashcard->setTextFont(kcfg_FrontFont->font()); 0083 flashcard->setTextColor(kcfg_FrontTextColor->color()); 0084 flashcard->setCardColor(kcfg_FrontCardColor->color()); 0085 flashcard->setFrameColor(kcfg_FrontFrameColor->color()); 0086 0087 fontLabel->setBuddy(kcfg_FrontFont); 0088 textColorLabel->setBuddy(kcfg_FrontTextColor); 0089 frameColorLabel->setBuddy(kcfg_FrontFrameColor); 0090 cardColorLabel->setBuddy(kcfg_FrontCardColor); 0091 } 0092 }