Doc mods, sash window bug
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@1514 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -61,15 +61,15 @@ Returns the view associated with this frame.
|
||||
|
||||
\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.
|
||||
|
||||
|
@@ -62,15 +62,15 @@ Returns the view associated with this frame.
|
||||
|
||||
\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.
|
||||
|
||||
|
@@ -24,9 +24,10 @@ See the example application in {\tt samples/docview}.
|
||||
|
||||
\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.
|
||||
|
||||
@@ -36,44 +37,25 @@ 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}
|
||||
|
||||
|
||||
|
@@ -23,9 +23,10 @@ See the example application in {\tt samples/docview}.
|
||||
|
||||
\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.
|
||||
|
||||
@@ -35,44 +36,25 @@ 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}
|
||||
|
||||
|
||||
|
@@ -230,4 +230,3 @@ Sets the file filter.
|
||||
|
||||
Sets the internal document template flags (see the constructor description for more details).
|
||||
|
||||
|
||||
|
@@ -222,6 +222,8 @@ bool wxGenericGrid::Create(wxWindow *parent, wxWindowID id, const wxPoint& pos,
|
||||
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;
|
||||
}
|
||||
|
||||
|
@@ -324,7 +324,7 @@ wxSashEdgePosition wxSashWindow::SashHitTest(int x, int y, int WXUNUSED(toleranc
|
||||
}
|
||||
case wxSASH_LEFT:
|
||||
{
|
||||
if ((x >= GetEdgeMargin(position)) && (x >= 0))
|
||||
if ((x <= GetEdgeMargin(position)) && (x >= 0))
|
||||
return wxSASH_LEFT;
|
||||
break;
|
||||
}
|
||||
|
@@ -1829,11 +1829,15 @@ bool wxScrollBarPropertyInfo::SetProperty(wxString& name, wxProperty *property)
|
||||
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;
|
||||
}
|
||||
|
Reference in New Issue
Block a user