]>
git.saurik.com Git - wxWidgets.git/blob - contrib/samples/ogl/studio/symbols.h
1 /////////////////////////////////////////////////////////////////////////////
3 // Purpose: Symbol classes (symbol database)
4 // Author: Julian Smart
8 // Copyright: (c) Julian Smart
10 /////////////////////////////////////////////////////////////////////////////
12 #ifndef _STUDIO_SYMBOLS_H_
13 #define _STUDIO_SYMBOLS_H_
19 #include <wx/docview.h>
20 #include <wx/string.h>
21 #include <wx/wxexpr.h>
23 #include <wx/ogl/ogl.h>
27 * Represents information about a symbol.
30 class csSymbol
: public wxObject
33 csSymbol(const wxString
& name
, wxShape
* shape
);
36 inline void SetName(const wxString
& name
) { m_name
= name
; }
37 inline wxString
GetName() const { return m_name
; }
39 inline void SetShape(wxShape
* shape
) { m_shape
= shape
; }
40 inline wxShape
* GetShape() const { return m_shape
; }
42 inline void SetToolId(int id
) { m_toolId
= id
; }
43 inline int GetToolId() const { return m_toolId
; }
51 * A table of all possible shapes.
52 * We can use this to construct a palette, etc.
54 class csSymbolDatabase
: public wxObject
61 inline wxList
& GetSymbols() const { return (wxList
&) m_symbols
; }
64 void AddSymbol(csSymbol
* symbol
);
66 csSymbol
* FindSymbol(const wxString
& name
) const;
67 csSymbol
* FindSymbol(int toolId
) const;
68 wxBitmap
* CreateToolBitmap(csSymbol
* symbol
, const wxSize
& sz
);