kspread
kspread_style_manager.h00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef __kspread_style_manager__
00021 #define __kspread_style_manager__
00022
00023 #include <qmap.h>
00024
00025 #include <koffice_export.h>
00026
00027 class QDomElement;
00028 class QDomDocument;
00029 class QStringList;
00030
00031 class KoGenStyles;
00032 class KoOasisStyles;
00033
00034 namespace KSpread
00035 {
00036 class CustomStyle;
00037 class Sheet;
00038 class StyleDlg;
00039 class View;
00040
00041 class KSPREAD_EXPORT StyleManager
00042 {
00043 public:
00044 StyleManager();
00045 ~StyleManager();
00046
00047 QDomElement save( QDomDocument & doc );
00048 bool loadXML( QDomElement const & styles );
00049
00050 void saveOasis( KoGenStyles &mainStyles );
00051 void loadOasisStyleTemplate( KoOasisStyles& oasisStyles );
00052
00053 CustomStyle * defaultStyle() const { return m_defaultStyle; }
00054 CustomStyle * style( QString const & name ) const;
00055
00056 bool checkCircle( QString const & name, QString const & parent );
00057 bool validateStyleName( QString const & name, CustomStyle * style );
00058 void changeName( QString const & oldName, QString const & newName );
00059
00060 void takeStyle( CustomStyle * style );
00061 void createBuiltinStyles();
00062
00063 QStringList styleNames() const;
00064 int count() const { return m_styles.count(); }
00065
00066 private:
00067 friend class StyleDlg;
00068 friend class View;
00069 class Styles : public QMap<QString, CustomStyle *> {};
00070
00071 CustomStyle * m_defaultStyle;
00072 Styles m_styles;
00073 };
00074
00075 }
00076
00077 #endif
|