]> git.saurik.com Git - wxWidgets.git/commitdiff
Doc mods, sash window bug
authorJulian Smart <julian@anthemion.co.uk>
Fri, 29 Jan 1999 17:22:47 +0000 (17:22 +0000)
committerJulian Smart <julian@anthemion.co.uk>
Fri, 29 Jan 1999 17:22:47 +0000 (17:22 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@1514 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

docs/latex/wx/docchfrm.tex
docs/latex/wx/docmdich.tex
docs/latex/wx/docmdipr.tex
docs/latex/wx/docprfrm.tex
docs/latex/wx/doctempl.tex
docs/latex/wx/view.tex
src/generic/gridg.cpp
src/generic/sashwin.cpp
utils/dialoged/src/winprop.cpp

index 37479e12bf44072c5e3d12499d8d77179f7e0f89..1c03f019350bae49f9ccc9b14cd870c235be7b83 100644 (file)
@@ -61,15 +61,15 @@ Returns the view associated with this frame.
 
 \membersection{wxDocChildFrame::OnActivate}
 
 
 \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.
 
 
 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.
 
 
 Closes and deletes the current view and document.
 
index b9b16ac7402be8adb35af7725b6fc25cb7a93593..63c86d32f7de6402356ee349b961a212d2e0969d 100644 (file)
@@ -62,15 +62,15 @@ Returns the view associated with this frame.
 
 \membersection{wxDocMDIChildFrame::OnActivate}
 
 
 \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.
 
 
 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.
 
 
 Closes and deletes the current view and document.
 
index 5bb084dcfe5ce2bb4f4e5105150b77cab4809391..3730dc9d9ecced09e8235368d763a363773e4949 100644 (file)
@@ -24,9 +24,10 @@ See the example application in {\tt samples/docview}.
 
 \membersection{wxDocMDIParentFrame::wxDocMDIParentFrame}
 
 
 \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.
 
 
 Constructor.
 
@@ -36,44 +37,25 @@ Constructor.
 
 Destructor.
 
 
 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
 
 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}
 
 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}
 
 }
 \end{verbatim}
 
-
index f0eff917decf7a9ace5a8440a52fb5c33043ee0f..a39c6d55a212bc077543a50c9b460674c68f21cf 100644 (file)
@@ -23,9 +23,10 @@ See the example application in {\tt samples/docview}.
 
 \membersection{wxDocParentFrame::wxDocParentFrame}
 
 
 \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.
 
 
 Constructor.
 
@@ -35,44 +36,25 @@ Constructor.
 
 Destructor.
 
 
 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
 
 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}
 
 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}
 
 }
 \end{verbatim}
 
-
index daae6ace6188d19a970bf4fc3e510c3ed96fd743..e4bd82ef7d1bfb47ddee0b25ca6bf7e2fde59fde 100644 (file)
@@ -230,4 +230,3 @@ Sets the file filter.
 
 Sets the internal document template flags (see the constructor description for more details).
 
 
 Sets the internal document template flags (see the constructor description for more details).
 
-
index f8ec2b2ebcf01b71f20117fa1cd590d073670258..139269555d4d2bf0820666a3d281a828806df1d5 100644 (file)
@@ -2,7 +2,7 @@
 
 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,
 
 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}
 and \helpref{wxDocManager}{wxdocmanager} classes.
 
 \wxheading{Derived from}
index 0747e1917fbb960ba6bdc86f99359410f9636650..34da5b84a3fcbca84aed29c87136d838bac93be9 100644 (file)
@@ -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);
 
   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;
 }
 
   return TRUE;
 }
 
index 2553c9f70044d3224dd4d0d565983729c941e3e3..35dc510806908fef76d6dee9074cff4cd633e2d0 100644 (file)
@@ -324,7 +324,7 @@ wxSashEdgePosition wxSashWindow::SashHitTest(int x, int y, int WXUNUSED(toleranc
                 }
                 case wxSASH_LEFT:
                 {
                 }
                 case wxSASH_LEFT:
                 {
-                    if ((x >= GetEdgeMargin(position)) && (x >= 0))
+                    if ((x <= GetEdgeMargin(position)) && (x >= 0))
                         return wxSASH_LEFT;
                     break;
                 }
                         return wxSASH_LEFT;
                     break;
                 }
index 5985d0adc77246d50393699fa1b7e1018676eb99..4f3a64b6f5752348cfe0ad5c15cd59ae8d8028e4 100644 (file)
@@ -1829,12 +1829,16 @@ bool wxScrollBarPropertyInfo::SetProperty(wxString& name, wxProperty *property)
     scrollBar->SetWindowStyleFlag(windowStyle);
     
     // If the window style has changed, we swap the width and height parameters.
     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 = (wxScrollBar *)wxResourceManager::GetCurrentResourceManager()->RecreateWindowFromResource(scrollBar, this);
-    scrollBar->SetSize(-1, -1, h, w);
-    
+
     return TRUE;
   }
   else if (name == "pageSize")
     return TRUE;
   }
   else if (name == "pageSize")