1 /* 2 For general Scribus (>=1.3.2) copyright and licensing information please refer 3 to the COPYING file provided with the program. Following this notice may exist 4 a copyright and/or license notice that predates the release of Scribus 1.3.2 5 for which a new license (GPL+exception) is in place. 6 */ 7 8 #ifndef PREFS_DOCUMENTITEMATTRIBUTES_H 9 #define PREFS_DOCUMENTITEMATTRIBUTES_H 10 11 #include "ui_prefs_documentitemattributesbase.h" 12 #include "prefs_pane.h" 13 #include "scribusapi.h" 14 #include "scribusstructs.h" 15 16 class SCRIBUS_API Prefs_DocumentItemAttributes : public Prefs_Pane, Ui::Prefs_DocumentItemAttributes 17 { 18 Q_OBJECT 19 20 public: 21 Prefs_DocumentItemAttributes(QWidget* parent, ScribusDoc* doc=nullptr); 22 ~Prefs_DocumentItemAttributes(); 23 24 void restoreDefaults(struct ApplicationPrefs *prefsData) override; 25 void saveGuiToPrefs(struct ApplicationPrefs *prefsData) const override; 26 27 public slots: 28 void languageChange(); 29 virtual QStringList getDocAttributesNames(); 30 31 protected: 32 virtual void updateTable(); 33 protected slots: 34 virtual void tableItemChanged( int row, int col ); 35 virtual void addEntry(); 36 virtual void deleteEntry(); 37 virtual void clearEntries(); 38 virtual void copyEntry(); 39 private: 40 ObjAttrVector localAttributes; 41 QStringList relationships; 42 QStringList relationshipsData; 43 QStringList autoAddTo; 44 QStringList autoAddToData; 45 QStringList types; 46 QStringList typesData; 47 }; 48 49 #endif // PREFS_DOCUMENTITEMATTRIBUTES_H 50