Krita Source Code Documentation
Loading...
Searching...
No Matches
DlgResourceTypeForFile Class Reference

#include <DlgResourceTypeForFile.h>

+ Inheritance diagram for DlgResourceTypeForFile:

Public Member Functions

 DlgResourceTypeForFile (QWidget *parent, QMap< QString, QStringList > resourceTypesForMimetype)
 
QString getResourceTypeForMimetype (QString mimetype)
 
- Public Member Functions inherited from KoDialog
QPushButton * button (ButtonCode id) const
 
QIcon buttonIcon (ButtonCode id) const
 
QString buttonText (ButtonCode id) const
 
QString buttonToolTip (ButtonCode id) const
 
QString buttonWhatsThis (ButtonCode id) const
 
ButtonCode defaultButton () const
 
QString helpLinkText () const
 
void incrementInitialSize (const QSize &size)
 
bool isButtonEnabled (ButtonCode id) const
 
 KoDialog (QWidget *parent=0, Qt::WindowFlags f=Qt::WindowFlags())
 
QWidget * mainWidget ()
 
QSize minimumSizeHint () const override
 
void setButtonFocus (ButtonCode id)
 
void setButtonGuiItem (ButtonCode id, const KGuiItem &item)
 
void setButtonIcon (ButtonCode id, const QIcon &icon)
 
void setButtons (ButtonCodes buttonMask)
 
void setButtonsOrientation (Qt::Orientation orientation)
 
void setButtonText (ButtonCode id, const QString &text)
 
void setButtonToolTip (ButtonCode id, const QString &text)
 
void setButtonWhatsThis (ButtonCode id, const QString &text)
 
void setDefaultButton (ButtonCode id)
 
void setEscapeButton (ButtonCode id)
 
void setInitialSize (const QSize &size)
 
void setMainWidget (QWidget *widget)
 
void showButton (ButtonCode id, bool state)
 
void showButtonSeparator (bool state)
 
QSize sizeHint () const override
 
 ~KoDialog () override
 

Private Attributes

QMap< QString, QButtonGroup * > m_buttonGroupForMimetype
 
const QString m_propertyName {"resourceType"}
 

Additional Inherited Members

- Public Types inherited from KoDialog
enum  ButtonCode {
  None = 0x00000000 , Help = 0x00000001 , Default = 0x00000002 , Ok = 0x00000004 ,
  Apply = 0x00000008 , Try = 0x00000010 , Cancel = 0x00000020 , Close = 0x00000040 ,
  No = 0x00000080 , Yes = 0x00000100 , Reset = 0x00000200 , Details = 0x00000400 ,
  User1 = 0x00001000 , User2 = 0x00002000 , User3 = 0x00004000 , NoDefault = 0x00008000
}
 
enum  ButtonPopupMode { InstantPopup = 0 , DelayedPopup = 1 }
 
enum  CaptionFlag { NoCaptionFlags = 0 , AppNameCaption = 1 , ModifiedCaption = 2 , HIGCompliantCaption = AppNameCaption }
 
- Public Slots inherited from KoDialog
void delayedDestruct ()
 
void enableButton (ButtonCode id, bool state)
 
void enableButtonApply (bool state)
 
void enableButtonCancel (bool state)
 
void enableButtonOk (bool state)
 
void enableLinkedHelp (bool state)
 
bool isDetailsWidgetVisible () const
 
virtual void setCaption (const QString &caption)
 
virtual void setCaption (const QString &caption, bool modified)
 
void setDetailsWidget (QWidget *detailsWidget)
 
void setDetailsWidgetVisible (bool visible)
 
void setHelp (const QString &anchor, const QString &appname=QString())
 
void setHelpLinkText (const QString &text)
 
virtual void setPlainCaption (const QString &caption)
 
- Signals inherited from KoDialog
void aboutToShowDetails ()
 
void applyClicked ()
 
void buttonClicked (KoDialog::ButtonCode button)
 
void cancelClicked ()
 
void closeClicked ()
 
void defaultClicked ()
 
void finished ()
 
void helpClicked ()
 
void hidden ()
 
void layoutHintChanged ()
 
void noClicked ()
 
void okClicked ()
 
void resetClicked ()
 
void tryClicked ()
 
void user1Clicked ()
 
void user2Clicked ()
 
void user3Clicked ()
 
void yesClicked ()
 
- Static Public Member Functions inherited from KoDialog
static int groupSpacingHint ()
 
static QString makeStandardCaption (const QString &userCaption, QWidget *window=0, CaptionFlags flags=HIGCompliantCaption)
 
static int marginHint ()
 
static void resizeLayout (QLayout *lay, int margin, int spacing)
 
static void resizeLayout (QWidget *widget, int margin, int spacing)
 
static int spacingHint ()
 
- Protected Slots inherited from KoDialog
virtual void slotButtonClicked (int button)
 
- Protected Member Functions inherited from KoDialog
void closeEvent (QCloseEvent *e) override
 
void hideEvent (QHideEvent *) override
 
void keyPressEvent (QKeyEvent *) override
 
void showEvent (QShowEvent *e) override
 

Detailed Description

Definition at line 22 of file DlgResourceTypeForFile.h.

Constructor & Destructor Documentation

◆ DlgResourceTypeForFile()

DlgResourceTypeForFile::DlgResourceTypeForFile ( QWidget * parent,
QMap< QString, QStringList > resourceTypesForMimetype )

Definition at line 18 of file DlgResourceTypeForFile.cpp.

19 : KoDialog(parent)
20{
21 setCaption(i18n("Set the resource type for files"));
22
23 QVBoxLayout* layout = new QVBoxLayout(parent);
24
26
27 QStringList keys = resourceTypesForMimetype.keys();
28
29 for (int i = 0; i < keys.size(); i++) {
30 QLabel* label;
31 label = new QLabel(parent);
32 if (keys[i] == "image/png") {
33 label->setText(i18nc("Question in a dialog so the user can choose which resource type the PNG files belong to: brush tips or patterns",
34 "What resource do you want to import these PNG files as?"));
35 } else if (keys[i] == "image/svg+xml") {
36 label->setText(i18nc("Question in a dialog so the user can choose which resource type the SVG files belong to: brush tips or patterns or symbols",
37 "What resource do you want to import these SVG files as?"));
38 } else {
39 label->setText(i18nc("Question in a dialog so the user can choose which resource type the files of type %1 belongs to; % will be rather untranslatable noun (a mimetype)",
40 "What resource do you want to import these %1 files as?", keys[i]));
41 }
42 layout->addWidget(label);
43
44 QButtonGroup* buttonGroup = new QButtonGroup(parent);
45 m_buttonGroupForMimetype.insert(keys[i], buttonGroup);
46
47 QStringList resourceTypes = resourceTypesForMimetype[keys[i]];
48 for (int j = 0; j < resourceTypes.size(); j++)
49 {
50 QString resourceName = ResourceName::resourceTypeToName(resourceTypes[j]);
51 QRadioButton* button = new QRadioButton(resourceName, parent);
52 button->setProperty("resourceType", resourceTypes[j]);
53 buttonGroup->addButton(button);
54 layout->addWidget(button);
55 }
56 }
57
58
59 QWidget* widget = new QWidget(parent);
60 widget->setLayout(layout);
61 this->setMainWidget(widget);
62
63
64}
QMap< QString, QButtonGroup * > m_buttonGroupForMimetype
QPushButton * button(ButtonCode id) const
Definition KoDialog.cpp:591
void setMainWidget(QWidget *widget)
Definition KoDialog.cpp:354
virtual void setCaption(const QString &caption)
Definition KoDialog.cpp:498
KoDialog(QWidget *parent=0, Qt::WindowFlags f=Qt::WindowFlags())
Definition KoDialog.cpp:176
KRITARESOURCES_EXPORT QString resourceTypeToName(const QString &resourceType)

References KoDialog::button(), m_buttonGroupForMimetype, ResourceName::resourceTypeToName(), KoDialog::setCaption(), and KoDialog::setMainWidget().

Member Function Documentation

◆ getResourceTypeForMimetype()

QString DlgResourceTypeForFile::getResourceTypeForMimetype ( QString mimetype)

Definition at line 66 of file DlgResourceTypeForFile.cpp.

67{
69
70 QButtonGroup* group = m_buttonGroupForMimetype[mimetype];
71
73
74 QList<QAbstractButton*> buttons = group->buttons();
75 for (int i = 0; i < buttons.size(); i++) {
76 if (buttons[i]->isChecked()) {
77 QString resourceType = buttons[i]->property(m_propertyName.toStdString().c_str()).toString();
78 return resourceType;
79 }
80 }
82 return "";
83}
#define KIS_SAFE_ASSERT_RECOVER_RETURN_VALUE(cond, val)
Definition kis_assert.h:129
QString buttons(const T &ev)

References buttons(), KIS_SAFE_ASSERT_RECOVER_RETURN_VALUE, m_buttonGroupForMimetype, and m_propertyName.

Member Data Documentation

◆ m_buttonGroupForMimetype

QMap<QString, QButtonGroup*> DlgResourceTypeForFile::m_buttonGroupForMimetype
private

Definition at line 34 of file DlgResourceTypeForFile.h.

◆ m_propertyName

const QString DlgResourceTypeForFile::m_propertyName {"resourceType"}
private

Definition at line 35 of file DlgResourceTypeForFile.h.

35{"resourceType"};

The documentation for this class was generated from the following files: