mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2024-11-15 05:47:56 -07:00
d14efe561b
long become wxWidgets 2.9.2, which in turn is expected to be the last 2.9 release before the 3.0 stable release. Since the full wxWidgets distribution is rather large, I have imported only the parts that we use, on a subdirectory basis: art include/wx/*.* include/wx/aui include/wx/cocoa include/wx/generic include/wx/gtk include/wx/meta include/wx/msw include/wx/osx include/wx/persist include/wx/private include/wx/protocol include/wx/unix src/aui src/common src/generic src/gtk src/msw src/osx src/unix git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7380 8ced0084-cf51-0410-be5f-012b33b47a6e
123 lines
3.6 KiB
C++
123 lines
3.6 KiB
C++
/////////////////////////////////////////////////////////////////////////////
|
|
// Name: wx/paper.h
|
|
// Purpose: Paper database types and classes
|
|
// Author: Julian Smart
|
|
// Modified by:
|
|
// Created: 01/02/97
|
|
// RCS-ID: $Id: paper.h 67254 2011-03-20 00:14:35Z DS $
|
|
// Copyright: (c) Julian Smart
|
|
// Licence: wxWindows licence
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
|
|
#ifndef _WX_PAPERH__
|
|
#define _WX_PAPERH__
|
|
|
|
#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 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.
|
|
*/
|
|
|
|
#ifdef __WXMSW__
|
|
#define WXADDPAPER(paperId, platformId, name, w, h) AddPaperType(paperId, platformId, name, w, h)
|
|
#else
|
|
#define WXADDPAPER(paperId, platformId, name, w, h) AddPaperType(paperId, 0, name, w, h)
|
|
#endif
|
|
|
|
class WXDLLIMPEXP_CORE wxPrintPaperType: public wxObject
|
|
{
|
|
public:
|
|
wxPrintPaperType();
|
|
|
|
// platformId is a platform-specific id, such as in Windows, DMPAPER_...
|
|
wxPrintPaperType(wxPaperSize paperId, int platformId, const wxString& name, int w, int h);
|
|
|
|
inline wxString GetName() const { return wxGetTranslation(m_paperName); }
|
|
inline wxPaperSize GetId() const { return m_paperId; }
|
|
inline int GetPlatformId() const { return m_platformId; }
|
|
|
|
// Get width and height in tenths of a millimetre
|
|
inline int GetWidth() const { return m_width; }
|
|
inline int GetHeight() const { return m_height; }
|
|
|
|
// Get size in tenths of a millimetre
|
|
inline wxSize GetSize() const { return wxSize(m_width, m_height); }
|
|
|
|
// Get size in a millimetres
|
|
inline wxSize GetSizeMM() const { return wxSize(m_width/10, m_height/10); }
|
|
|
|
// Get width and height in device units (1/72th of an inch)
|
|
wxSize GetSizeDeviceUnits() const ;
|
|
|
|
public:
|
|
wxPaperSize m_paperId;
|
|
int m_platformId;
|
|
int m_width; // In tenths of a millimetre
|
|
int m_height; // In tenths of a millimetre
|
|
wxString m_paperName;
|
|
|
|
private:
|
|
DECLARE_DYNAMIC_CLASS(wxPrintPaperType)
|
|
};
|
|
|
|
WX_DECLARE_STRING_HASH_MAP(wxPrintPaperType*, wxStringToPrintPaperTypeHashMap);
|
|
|
|
class WXDLLIMPEXP_FWD_CORE wxPrintPaperTypeList;
|
|
|
|
class WXDLLIMPEXP_CORE wxPrintPaperDatabase
|
|
{
|
|
public:
|
|
wxPrintPaperDatabase();
|
|
~wxPrintPaperDatabase();
|
|
|
|
void CreateDatabase();
|
|
void ClearDatabase();
|
|
|
|
void AddPaperType(wxPaperSize paperId, const wxString& name, int w, int h);
|
|
void AddPaperType(wxPaperSize paperId, int platformId, const wxString& name, int w, int h);
|
|
|
|
// Find by name
|
|
wxPrintPaperType *FindPaperType(const wxString& name);
|
|
|
|
// Find by size id
|
|
wxPrintPaperType *FindPaperType(wxPaperSize id);
|
|
|
|
// Find by platform id
|
|
wxPrintPaperType *FindPaperTypeByPlatformId(int id);
|
|
|
|
// Find by size
|
|
wxPrintPaperType *FindPaperType(const wxSize& size);
|
|
|
|
// Convert name to size id
|
|
wxPaperSize ConvertNameToId(const wxString& name);
|
|
|
|
// Convert size id to name
|
|
wxString ConvertIdToName(wxPaperSize paperId);
|
|
|
|
// Get the paper size
|
|
wxSize GetSize(wxPaperSize paperId);
|
|
|
|
// Get the paper size
|
|
wxPaperSize GetSize(const wxSize& size);
|
|
|
|
//
|
|
wxPrintPaperType* Item(size_t index) const;
|
|
size_t GetCount() const;
|
|
private:
|
|
wxStringToPrintPaperTypeHashMap* m_map;
|
|
wxPrintPaperTypeList* m_list;
|
|
// DECLARE_DYNAMIC_CLASS(wxPrintPaperDatabase)
|
|
};
|
|
|
|
extern WXDLLIMPEXP_DATA_CORE(wxPrintPaperDatabase*) wxThePrintPaperDatabase;
|
|
|
|
|
|
#endif
|
|
// _WX_PAPERH__
|