]> git.saurik.com Git - wxWidgets.git/blame_incremental - src/mac/classic/gdiobj.cpp
Include wx/textctrl.h according to precompiled headers of wx/wx.h (with other minor...
[wxWidgets.git] / src / mac / classic / gdiobj.cpp
... / ...
CommitLineData
1/////////////////////////////////////////////////////////////////////////////
2// Name: gdiobj.cpp
3// Purpose: wxGDIObject class
4// Author: Stefan Csomor
5// Modified by:
6// Created: 1998-01-01
7// RCS-ID: $Id$
8// Copyright: (c) Stefan Csomor
9// Licence: wxWindows licence
10/////////////////////////////////////////////////////////////////////////////
11
12#include "wx/gdiobj.h"
13#include "wx/gdicmn.h"
14#include "wx/mac/private.h"
15
16IMPLEMENT_DYNAMIC_CLASS(wxGDIObject, wxObject)
17
18class wxStockGDIMac: public wxStockGDI
19{
20public:
21 wxStockGDIMac();
22
23 virtual const wxFont* GetFont(Item item);
24
25private:
26 typedef wxStockGDI super;
27};
28
29static wxStockGDIMac gs_wxStockGDIMac_instance;
30
31wxStockGDIMac::wxStockGDIMac()
32{
33 // Override default instance
34 ms_instance = this;
35}
36
37const wxFont* wxStockGDIMac::GetFont(Item item)
38{
39 wxFont* font = wx_static_cast(wxFont*, ms_stockObject[item]);
40 if (font == NULL)
41 {
42 Str255 fontName;
43 SInt16 fontSize;
44 Style fontStyle;
45 switch (item)
46 {
47 case FONT_NORMAL:
48 GetThemeFont(kThemeSystemFont, GetApplicationScript(), fontName, &fontSize, &fontStyle);
49 font = new wxFont(fontSize, wxMODERN, wxNORMAL, wxNORMAL, false, wxMacMakeStringFromPascal(fontName));
50 break;
51 case FONT_SMALL:
52 GetThemeFont(kThemeSmallSystemFont, GetApplicationScript(), fontName, &fontSize, &fontStyle);
53 font = new wxFont(fontSize, wxSWISS, wxNORMAL, wxNORMAL, false, wxMacMakeStringFromPascal(fontName));
54 break;
55 default:
56 font = wx_const_cast(wxFont*, super::GetFont(item));
57 break;
58 }
59 ms_stockObject[item] = font;
60 }
61 return font;
62}