X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/33d28952b29818b6931d91984a7b612a072d843d..9c4cb6116779e9fc7bcb7009ef0aa6047d2f8874:/include/wx/paper.h diff --git a/include/wx/paper.h b/include/wx/paper.h index 1d9a7bb750..5b42a80bed 100644 --- a/include/wx/paper.h +++ b/include/wx/paper.h @@ -6,23 +6,21 @@ // Created: 01/02/97 // RCS-ID: $Id$ // Copyright: (c) Julian Smart -// Licence: wxWindows licence +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// #ifndef _WX_PAPERH__ #define _WX_PAPERH__ -#ifdef __GNUG__ -#pragma interface "paper.h" -#endif - #include "wx/defs.h" #include "wx/event.h" #include "wx/cmndata.h" +#include "wx/intl.h" +#include "wx/hashmap.h" /* * Paper type: see defs.h for wxPaperSize enum. - * A wxPrintePaperType can have an id and a name, or just a name and wxPAPER_NONE, + * A wxPrintPaperType can have an id and a name, or just a name and wxPAPER_NONE, * so you can add further paper types without needing new ids. */ @@ -32,7 +30,7 @@ #define WXADDPAPER(paperId, platformId, name, w, h) AddPaperType(paperId, 0, name, w, h) #endif -class WXDLLEXPORT wxPrintPaperType: public wxObject +class WXDLLIMPEXP_CORE wxPrintPaperType: public wxObject { public: wxPrintPaperType(); @@ -40,7 +38,7 @@ public: // platformId is a platform-specific id, such as in Windows, DMPAPER_... wxPrintPaperType(wxPaperSize paperId, int platformId, const wxString& name, int w, int h); - inline const wxString& GetName() const { return m_paperName; } + inline wxString GetName() const { return wxGetTranslation(m_paperName); } inline wxPaperSize GetId() const { return m_paperId; } inline int GetPlatformId() const { return m_platformId; } @@ -68,10 +66,15 @@ private: DECLARE_DYNAMIC_CLASS(wxPrintPaperType) }; -class WXDLLEXPORT wxPrintPaperDatabase: public wxList +WX_DECLARE_STRING_HASH_MAP(wxPrintPaperType*, wxStringToPrintPaperTypeHashMap); + +class WXDLLIMPEXP_FWD_CORE wxPrintPaperTypeList; + +class WXDLLIMPEXP_CORE wxPrintPaperDatabase { public: wxPrintPaperDatabase(); + ~wxPrintPaperDatabase(); void CreateDatabase(); void ClearDatabase(); @@ -103,11 +106,16 @@ public: // Get the paper size wxPaperSize GetSize(const wxSize& size); + // + wxPrintPaperType* Item(size_t index) const; + size_t GetCount() const; private: - DECLARE_DYNAMIC_CLASS(wxPrintPaperDatabase) + wxStringToPrintPaperTypeHashMap* m_map; + wxPrintPaperTypeList* m_list; + // DECLARE_DYNAMIC_CLASS(wxPrintPaperDatabase) }; -WXDLLEXPORT_DATA(extern wxPrintPaperDatabase*) wxThePrintPaperDatabase; +extern WXDLLIMPEXP_DATA_CORE(wxPrintPaperDatabase*) wxThePrintPaperDatabase; #endif