wxMotif STL-ification.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@22822 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Mattia Barbon
2003-08-13 21:28:56 +00:00
parent 7bd54b688e
commit 4410d619c5
3 changed files with 74 additions and 65 deletions

View File

@@ -18,10 +18,11 @@
#define WXTAB_VERSION 1.1
#include "wx/hash.h"
#include "wx/hashmap.h"
#include "wx/string.h"
#include "wx/dialog.h"
#include "wx/panel.h"
#include "wx/list.h"
class WXDLLEXPORT wxTabView;
@@ -86,13 +87,14 @@ protected:
class WXDLLEXPORT wxTabLayer: public wxList
{
DECLARE_DYNAMIC_CLASS(wxTabLayer)
};
/*
* The wxTabView controls and draws the tabbed object
*/
WX_DECLARE_LIST(wxTabLayer, wxTabLayerList);
#define wxTAB_STYLE_DRAW_BOX 1 // Draws 3D boxes round tab layers
#define wxTAB_STYLE_COLOUR_INTERIOR 2 // Colours interior of tabs, otherwise draws outline
@@ -104,7 +106,7 @@ public:
~wxTabView();
inline int GetNumberOfLayers() const { return m_layers.GetCount(); }
inline wxList& GetLayers() { return m_layers; }
inline wxList& GetLayers() { return (wxList&)m_layers; }
inline void SetWindow(wxWindow* wnd) { m_window = wnd; }
inline wxWindow* GetWindow(void) const { return m_window; }
@@ -197,7 +199,7 @@ public:
inline wxFont *GetSelectedTabFont() const { return (wxFont*) & m_tabSelectedFont; }
inline void SetSelectedTabFont(const wxFont& f) { m_tabSelectedFont = f; }
// Find the node and the column at which this control is positioned.
wxNode *FindTabNodeAndColumn(wxTabControl *control, int *col) const ;
wxList::compatibility_iterator FindTabNodeAndColumn(wxTabControl *control, int *col) const ;
// Do the necessary to change to this tab
virtual bool ChangeTab(wxTabControl *control);
@@ -210,7 +212,7 @@ public:
protected:
// List of layers, from front to back.
wxList m_layers;
wxTabLayerList m_layers;
// Selected tab
int m_tabSelection;
@@ -321,6 +323,9 @@ protected:
DECLARE_EVENT_TABLE()
};
WX_DECLARE_HASH_MAP(int, wxWindow*, wxIntegerHash, wxIntegerEqual,
wxIntToWindowHashMap);
class WXDLLEXPORT wxPanelTabView: public wxTabView
{
DECLARE_DYNAMIC_CLASS(wxPanelTabView)
@@ -338,14 +343,14 @@ public:
inline wxWindow *GetCurrentWindow() const { return m_currentWindow; }
void ShowWindowForTab(int id);
inline wxList& GetWindows() const { return (wxList&) m_tabWindows; }
// inline wxList& GetWindows() const { return (wxList&) m_tabWindows; }
protected:
// List of panels, one for each tab. Indexed
// by tab ID.
wxList m_tabWindows;
wxWindow* m_currentWindow;
wxPanel* m_panel;
wxIntToWindowHashMap m_tabWindows;
wxWindow* m_currentWindow;
wxPanel* m_panel;
};
#endif