summaryrefslogtreecommitdiffstats
path: root/kcontrol/filetypes/filetypedetails.h
diff options
context:
space:
mode:
Diffstat (limited to 'kcontrol/filetypes/filetypedetails.h')
-rw-r--r--kcontrol/filetypes/filetypedetails.h64
1 files changed, 64 insertions, 0 deletions
diff --git a/kcontrol/filetypes/filetypedetails.h b/kcontrol/filetypes/filetypedetails.h
new file mode 100644
index 000000000..6f9a0a548
--- /dev/null
+++ b/kcontrol/filetypes/filetypedetails.h
@@ -0,0 +1,64 @@
+#ifndef _FILETYPEDETAILS_H
+#define _FILETYPEDETAILS_H
+
+#include <qtabwidget.h>
+class TypesListItem;
+class KIconButton;
+class QLineEdit;
+class QListBox;
+class QButtonGroup;
+class QCheckBox;
+class QRadioButton;
+class QPushButton;
+class KServiceListWidget;
+
+/**
+ * This widget contains the right part of the file type configuration
+ * dialog, that shows the details for a file type.
+ * It is implemented as a separate class so that it can be used by
+ * the keditfiletype program to show the details of a single mimetype.
+ */
+class FileTypeDetails : public QTabWidget
+{
+ Q_OBJECT
+public:
+ FileTypeDetails(QWidget *parent = 0, const char *name = 0);
+
+ void setTypeItem( TypesListItem * item );
+
+protected:
+ void updateRemoveButton();
+ void updateAskSave();
+
+signals:
+ void embedMajor(const QString &major, bool &embed); // To adjust whether major type is being embedded
+ void changed(bool);
+
+protected slots:
+ void updateIcon(QString icon);
+ void updateDescription(const QString &desc);
+ void addExtension();
+ void removeExtension();
+ void enableExtButtons(int index);
+ void slotAutoEmbedClicked(int button);
+ void slotAskSaveToggled(bool);
+
+private:
+ TypesListItem * m_item;
+
+ // First tab - General
+ KIconButton *iconButton;
+ QListBox *extensionLB;
+ QPushButton *addExtButton, *removeExtButton;
+ QLineEdit *description;
+ KServiceListWidget *serviceListWidget;
+
+ // Second tab - Embedding
+ QButtonGroup *m_autoEmbed;
+ KServiceListWidget *embedServiceListWidget;
+ QRadioButton *m_rbOpenSeparate;
+ QCheckBox *m_chkAskSave;
+ QRadioButton *m_rbGroupSettings;
+};
+
+#endif