1. fixed wxGTK notebook which was completely broken by the merge
2. added a new file for commno notebook code (nbkbase.cpp) 3. removed 'include "wx/wx.h"' from html files as I got tired of recompiling them git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10793 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -21,6 +21,9 @@
|
||||
|
||||
class wxGtkNotebookPage;
|
||||
|
||||
#include "wx/list.h"
|
||||
WX_DECLARE_LIST(wxGtkNotebookPage, wxGtkNotebookPagesList);
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// wxNotebook
|
||||
//-----------------------------------------------------------------------------
|
||||
@@ -45,7 +48,7 @@ public:
|
||||
long style = 0,
|
||||
const wxString& name = "notebook");
|
||||
// dtor
|
||||
~wxNotebook();
|
||||
virtual ~wxNotebook();
|
||||
|
||||
// accessors
|
||||
// ---------
|
||||
@@ -61,15 +64,6 @@ public:
|
||||
bool SetPageText(int nPage, const wxString& strText);
|
||||
wxString GetPageText(int nPage) const;
|
||||
|
||||
// image list stuff: each page may have an image associated with it. All
|
||||
// the images belong to an image list, so you have to
|
||||
// 1) create an image list
|
||||
// 2) associate it with the notebook
|
||||
// 3) set for each page it's image
|
||||
// associate image list with a control
|
||||
void SetImageList(wxImageList* imageList);
|
||||
void AssignImageList(wxImageList* imageList);
|
||||
|
||||
// sets/returns item's image index in the current image list
|
||||
int GetPageImage(int nPage) const;
|
||||
bool SetPageImage(int nPage, int nImage);
|
||||
@@ -91,10 +85,6 @@ public:
|
||||
|
||||
// adds a new page to the notebook (it will be deleted ny the notebook,
|
||||
// don't delete it yourself). If bSelect, this page becomes active.
|
||||
bool AddPage( wxNotebookPage *win,
|
||||
const wxString& strText,
|
||||
bool select = FALSE,
|
||||
int imageId = -1 );
|
||||
// the same as AddPage(), but adds it at the specified position
|
||||
bool InsertPage( int position,
|
||||
wxNotebookPage *win,
|
||||
@@ -125,12 +115,12 @@ public:
|
||||
// helper function
|
||||
wxGtkNotebookPage* GetNotebookPage(int page) const;
|
||||
|
||||
bool m_ownsImageList;
|
||||
wxList m_pages;
|
||||
// the additional page data (the pages themselves are in m_pages array)
|
||||
wxGtkNotebookPagesList m_pagesData;
|
||||
|
||||
// for reasons explained in gtk/notebook.cpp we store the current
|
||||
// selection internally instead of querying the notebook for it
|
||||
int m_selection;
|
||||
int m_selection;
|
||||
|
||||
protected:
|
||||
// remove one page from the notebook but do not destroy it
|
||||
|
@@ -21,6 +21,9 @@
|
||||
|
||||
class wxGtkNotebookPage;
|
||||
|
||||
#include "wx/list.h"
|
||||
WX_DECLARE_LIST(wxGtkNotebookPage, wxGtkNotebookPagesList);
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// wxNotebook
|
||||
//-----------------------------------------------------------------------------
|
||||
@@ -45,7 +48,7 @@ public:
|
||||
long style = 0,
|
||||
const wxString& name = "notebook");
|
||||
// dtor
|
||||
~wxNotebook();
|
||||
virtual ~wxNotebook();
|
||||
|
||||
// accessors
|
||||
// ---------
|
||||
@@ -61,15 +64,6 @@ public:
|
||||
bool SetPageText(int nPage, const wxString& strText);
|
||||
wxString GetPageText(int nPage) const;
|
||||
|
||||
// image list stuff: each page may have an image associated with it. All
|
||||
// the images belong to an image list, so you have to
|
||||
// 1) create an image list
|
||||
// 2) associate it with the notebook
|
||||
// 3) set for each page it's image
|
||||
// associate image list with a control
|
||||
void SetImageList(wxImageList* imageList);
|
||||
void AssignImageList(wxImageList* imageList);
|
||||
|
||||
// sets/returns item's image index in the current image list
|
||||
int GetPageImage(int nPage) const;
|
||||
bool SetPageImage(int nPage, int nImage);
|
||||
@@ -91,10 +85,6 @@ public:
|
||||
|
||||
// adds a new page to the notebook (it will be deleted ny the notebook,
|
||||
// don't delete it yourself). If bSelect, this page becomes active.
|
||||
bool AddPage( wxNotebookPage *win,
|
||||
const wxString& strText,
|
||||
bool select = FALSE,
|
||||
int imageId = -1 );
|
||||
// the same as AddPage(), but adds it at the specified position
|
||||
bool InsertPage( int position,
|
||||
wxNotebookPage *win,
|
||||
@@ -125,12 +115,12 @@ public:
|
||||
// helper function
|
||||
wxGtkNotebookPage* GetNotebookPage(int page) const;
|
||||
|
||||
bool m_ownsImageList;
|
||||
wxList m_pages;
|
||||
// the additional page data (the pages themselves are in m_pages array)
|
||||
wxGtkNotebookPagesList m_pagesData;
|
||||
|
||||
// for reasons explained in gtk/notebook.cpp we store the current
|
||||
// selection internally instead of querying the notebook for it
|
||||
int m_selection;
|
||||
int m_selection;
|
||||
|
||||
protected:
|
||||
// remove one page from the notebook but do not destroy it
|
||||
|
@@ -48,8 +48,6 @@ public:
|
||||
const wxSize& size = wxDefaultSize,
|
||||
long style = 0,
|
||||
const wxString& name = "notebook");
|
||||
// dtor
|
||||
~wxNotebook();
|
||||
|
||||
// accessors
|
||||
// ---------
|
||||
@@ -74,7 +72,6 @@ public:
|
||||
// 3) set for each page it's image
|
||||
// associate image list with a control
|
||||
void SetImageList(wxImageList* imageList);
|
||||
void AssignImageList(wxImageList* imageList);
|
||||
|
||||
// sets/returns item's image index in the current image list
|
||||
int GetPageImage(int nPage) const;
|
||||
@@ -136,8 +133,6 @@ protected:
|
||||
// helper functions
|
||||
void ChangePage(int nOldSel, int nSel); // change pages
|
||||
|
||||
bool m_bOwnsImageList;
|
||||
|
||||
int m_nSelection; // the current selection (-1 if none)
|
||||
|
||||
DECLARE_DYNAMIC_CLASS(wxNotebook)
|
||||
|
@@ -12,6 +12,10 @@
|
||||
#ifndef _WX_NOTEBOOK_H_BASE_
|
||||
#define _WX_NOTEBOOK_H_BASE_
|
||||
|
||||
#ifdef __GNUG__
|
||||
#pragma interface "notebookbase.h"
|
||||
#endif
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// headers
|
||||
// ----------------------------------------------------------------------------
|
||||
@@ -46,7 +50,7 @@ public:
|
||||
// ctor
|
||||
wxNotebookBase()
|
||||
{
|
||||
m_imageList = NULL;
|
||||
Init();
|
||||
}
|
||||
|
||||
// quasi ctor
|
||||
@@ -57,6 +61,9 @@ public:
|
||||
long style = 0,
|
||||
const wxString& name = wxNOTEBOOK_NAME);
|
||||
|
||||
// dtor
|
||||
virtual ~wxNotebookBase();
|
||||
|
||||
// accessors
|
||||
// ---------
|
||||
|
||||
@@ -75,10 +82,10 @@ public:
|
||||
|
||||
// image list stuff: each page may have an image associated with it (all
|
||||
// images belong to the same image list)
|
||||
virtual void SetImageList(wxImageList* imageList)
|
||||
{
|
||||
m_imageList = imageList;
|
||||
}
|
||||
virtual void SetImageList(wxImageList* imageList);
|
||||
|
||||
// as SetImageList() but we will delete the image list ourselves
|
||||
void AssignImageList(wxImageList* imageList);
|
||||
|
||||
// get pointer (may be NULL) to the associated image list
|
||||
wxImageList* GetImageList() const { return m_imageList; }
|
||||
@@ -101,33 +108,13 @@ public:
|
||||
virtual void SetTabSize(const wxSize& sz) = 0;
|
||||
|
||||
// calculate the size of the notebook from the size of its page
|
||||
virtual wxSize CalcSizeFromPage(const wxSize& sizePage)
|
||||
{
|
||||
// this was just taken from wxNotebookSizer::CalcMin() and is, of
|
||||
// course, totally bogus - just like the original code was
|
||||
wxSize sizeTotal = sizePage;
|
||||
if ( HasFlag(wxNB_LEFT) || HasFlag(wxNB_RIGHT) )
|
||||
sizeTotal.x += 90;
|
||||
else
|
||||
sizeTotal.y += 40;
|
||||
|
||||
return sizeTotal;
|
||||
}
|
||||
virtual wxSize CalcSizeFromPage(const wxSize& sizePage);
|
||||
|
||||
// operations
|
||||
// ----------
|
||||
|
||||
// remove one page from the notebook and delete it
|
||||
virtual bool DeletePage(int nPage)
|
||||
{
|
||||
wxNotebookPage *page = DoRemovePage(nPage);
|
||||
if ( !page )
|
||||
return FALSE;
|
||||
|
||||
delete page;
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
virtual bool DeletePage(int nPage);
|
||||
|
||||
// remove one page from the notebook, without deleting it
|
||||
virtual bool RemovePage(int nPage) { return DoRemovePage(nPage) != NULL; }
|
||||
@@ -170,32 +157,15 @@ protected:
|
||||
// remove the page and return a pointer to it
|
||||
virtual wxNotebookPage *DoRemovePage(int page) = 0;
|
||||
|
||||
// common part of all ctors
|
||||
void Init();
|
||||
|
||||
// get the next page wrapping if we reached the end
|
||||
int GetNextPage(bool forward) const
|
||||
{
|
||||
int nPage;
|
||||
int GetNextPage(bool forward) const;
|
||||
|
||||
int nMax = GetPageCount();
|
||||
if ( nMax-- ) // decrement it to get the last valid index
|
||||
{
|
||||
int nSel = GetSelection();
|
||||
|
||||
// change selection wrapping if it becomes invalid
|
||||
nPage = forward ? nSel == nMax ? 0
|
||||
: nSel + 1
|
||||
: nSel == 0 ? nMax
|
||||
: nSel - 1;
|
||||
}
|
||||
else // notebook is empty, no next page
|
||||
{
|
||||
nPage = -1;
|
||||
}
|
||||
|
||||
return nPage;
|
||||
}
|
||||
|
||||
wxImageList *m_imageList; // we can have an associated image list
|
||||
wxArrayPages m_pages; // array of pages
|
||||
wxArrayPages m_pages; // array of pages
|
||||
wxImageList *m_imageList; // we can have an associated image list
|
||||
bool m_ownsImageList; // true if we must delete m_imageList
|
||||
};
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
|
Reference in New Issue
Block a user