\membersection{wxDocChildFrame::OnActivate}
-\func{void}{OnActivate}{\param{bool}{ active}}
+\func{void}{OnActivate}{\param{wxActivateEvent}{ event}}
Sets the currently active view to be the frame's view. You may need
to override (but still call) this function in order to set the keyboard
focus for your subwindow.
-\membersection{wxDocChildFrame::OnClose}
+\membersection{wxDocChildFrame::OnCloseWindow}
-\func{virtual bool}{OnClose}{\void}
+\func{void}{OnCloseWindow}{\param{wxCloseEvent\&}{ event}}
Closes and deletes the current view and document.
\membersection{wxDocMDIChildFrame::OnActivate}
-\func{void}{OnActivate}{\param{bool}{ active}}
+\func{void}{OnActivate}{\param{wxActivateEvent}{ event}}
Sets the currently active view to be the frame's view. You may need
to override (but still call) this function in order to set the keyboard
focus for your subwindow.
-\membersection{wxDocMDIChildFrame::OnClose}
+\membersection{wxDocMDIChildFrame::OnCloseWindow}
-\func{virtual bool}{OnClose}{\void}
+\func{void}{OnCloseWindow}{\param{wxCloseEvent\&}{ event}}
Closes and deletes the current view and document.
\membersection{wxDocMDIParentFrame::wxDocMDIParentFrame}
-\func{}{wxDocMDIParentFrame}{\param{wxFrame *}{parent}, \param{wxWindowID}{ id},
- \param{const wxString\& }{title}, \param{int}{ x}, \param{int}{ y}, \param{int}{ width}, \param{int}{ height},
- \param{long}{ style}, \param{const wxString\& }{name}}
+\func{}{wxDocParentFrame}{\param{wxDocManager*}{ manager}, \param{wxFrame *}{parent}, \param{wxWindowID}{ id},
+ \param{const wxString\& }{title}, \param{const wxPoint\&}{ pos = wxDefaultPosition},
+ \param{const wxSize\&}{ size = wxDefaultSize},
+ \param{long}{ style = wxDEFAULT\_FRAME\_STYLE}, \param{const wxString\& }{name = "frame"}}
Constructor.
Destructor.
-\membersection{wxDocMDIParentFrame::OnClose}
+\membersection{wxDocMDIParentFrame::OnCloseWindow}
-\func{bool}{OnClose}{\void}
+\func{void}{OnCloseWindow}{\param{wxCloseEvent\&}{ event}}
Deletes all views and documents. If no user input cancelled the
-operation, the function returns TRUE and the application will exit.
+operation, the frame will be destroyed and the application will exit.
Since understanding how document/view clean-up takes place can be difficult,
the implementation of this function is shown below.
\begin{verbatim}
-bool wxDocMDIParentFrame::OnClose(void)
+void wxDocParentFrame::OnCloseWindow(wxCloseEvent& event)
{
- // Delete all views and documents
- wxNode *node = docManager->GetDocuments().First();
- while (node)
+ if (m_docManager->Clear(!event.CanVeto()))
{
- wxDocument *doc = (wxDocument *)node->Data();
- wxNode *next = node->Next();
-
- if (!doc->Close())
- return FALSE;
-
- // Implicitly deletes the document when the last
- // view is removed (deleted)
- doc->DeleteAllViews();
-
- // Check document is deleted
- if (docManager->GetDocuments().Member(doc))
- delete doc;
-
- // This assumes that documents are not connected in
- // any way, i.e. deleting one document does NOT
- // delete another.
- node = next;
+ this->Destroy();
}
- return TRUE;
+ else
+ event.Veto();
}
\end{verbatim}
-
\membersection{wxDocParentFrame::wxDocParentFrame}
-\func{}{wxDocParentFrame}{\param{wxFrame *}{parent}, \param{wxWindowID}{ id},
- \param{const wxString\& }{title}, \param{int}{ x}, \param{int}{ y}, \param{int}{ width}, \param{int}{ height},
- \param{long}{ style}, \param{const wxString\& }{name}}
+\func{}{wxDocParentFrame}{\param{wxDocManager*}{ manager}, \param{wxFrame *}{parent}, \param{wxWindowID}{ id},
+ \param{const wxString\& }{title}, \param{const wxPoint\&}{ pos = wxDefaultPosition},
+ \param{const wxSize\&}{ size = wxDefaultSize},
+ \param{long}{ style = wxDEFAULT\_FRAME\_STYLE}, \param{const wxString\& }{name = "frame"}}
Constructor.
Destructor.
-\membersection{wxDocParentFrame::OnClose}
+\membersection{wxDocParentFrame::OnCloseWindow}
-\func{bool}{OnClose}{\void}
+\func{void}{OnCloseWindow}{\param{wxCloseEvent\&}{ event}}
Deletes all views and documents. If no user input cancelled the
-operation, the function returns TRUE and the application will exit.
+operation, the frame will be destroyed and the application will exit.
Since understanding how document/view clean-up takes place can be difficult,
the implementation of this function is shown below.
\begin{verbatim}
-bool wxDocParentFrame::OnClose(void)
+void wxDocParentFrame::OnCloseWindow(wxCloseEvent& event)
{
- // Delete all views and documents
- wxNode *node = docManager->GetDocuments().First();
- while (node)
+ if (m_docManager->Clear(!event.CanVeto()))
{
- wxDocument *doc = (wxDocument *)node->Data();
- wxNode *next = node->Next();
-
- if (!doc->Close())
- return FALSE;
-
- // Implicitly deletes the document when the last
- // view is removed (deleted)
- doc->DeleteAllViews();
-
- // Check document is deleted
- if (docManager->GetDocuments().Member(doc))
- delete doc;
-
- // This assumes that documents are not connected in
- // any way, i.e. deleting one document does NOT
- // delete another.
- node = next;
+ this->Destroy();
}
- return TRUE;
+ else
+ event.Veto();
}
\end{verbatim}
-
Sets the internal document template flags (see the constructor description for more details).
-
The view class can be used to model the viewing and editing component of
an application's file-based data. It is part of the document/view framework supported by wxWindows,
-and cooperates with the \helpref{wxDocument}{wxdocument}, \helpref{wxDocTemplate}{wxdoctemplate}
+and cooperates with the \helpref{wxDocument}{wxdocument}, \helpref{wxDocTemplate}{wxdoctemplate}
and \helpref{wxDocManager}{wxdocmanager} classes.
\wxheading{Derived from}
m_hScrollBar = new wxScrollBar(this, wxGRID_HSCROLL, wxPoint(0, 0), wxSize(20, 100), wxHORIZONTAL);
m_vScrollBar = new wxScrollBar(this, wxGRID_VSCROLL, wxPoint(0, 0), wxSize(100, 20), wxVERTICAL);
+ SetSize(-1, -1, size.x, size.y);
+
return TRUE;
}
}
case wxSASH_LEFT:
{
- if ((x >= GetEdgeMargin(position)) && (x >= 0))
+ if ((x <= GetEdgeMargin(position)) && (x >= 0))
return wxSASH_LEFT;
break;
}
scrollBar->SetWindowStyleFlag(windowStyle);
// If the window style has changed, we swap the width and height parameters.
- int w, h;
- scrollBar->GetSize(&w, &h);
-
+// int w, h;
+// scrollBar->GetSize(&w, &h);
+ wxItemResource *item = wxResourceManager::GetCurrentResourceManager()->FindResourceForWindow(scrollBar);
+ if ( item ) {
+ item->SetSize(item->GetX(), item->GetY(), item->GetHeight(), item->GetWidth());
+ item->SetStyle(windowStyle);
+ } /* IF */
+
scrollBar = (wxScrollBar *)wxResourceManager::GetCurrentResourceManager()->RecreateWindowFromResource(scrollBar, this);
- scrollBar->SetSize(-1, -1, h, w);
-
+
return TRUE;
}
else if (name == "pageSize")