]> git.saurik.com Git - wxWidgets.git/blobdiff - src/common/tbarbase.cpp
CanRead() now restores the stream to its previous state (potential
[wxWidgets.git] / src / common / tbarbase.cpp
index 77034f80a42b2f67c67577b7818e4750f988903b..318a701601765b1459f2d33c9a5fa35af08c26cf 100644 (file)
@@ -55,7 +55,7 @@ wxToolBarTool::wxToolBarTool(wxToolBar *owner, int theIndex,
                     const wxBitmap& theBitmap1, const  wxBitmap& theBitmap2,
             bool toggle, wxObject *clientData,
                  const wxString& helpS1, const wxString& helpS2,
-                    GtkWidget *item  )
+                    GtkWidget *pixmap  )
 #else
 wxToolBarTool::wxToolBarTool(int theIndex,
                     const wxBitmap& theBitmap1, const wxBitmap& theBitmap2, bool toggle,
@@ -65,7 +65,8 @@ wxToolBarTool::wxToolBarTool(int theIndex,
   m_toolStyle = wxTOOL_STYLE_BUTTON;
 #ifdef __WXGTK__
   m_owner = owner;
-  m_item = item;
+  m_pixmap = pixmap;
+  m_item = (GtkWidget*) NULL;
   m_clientData = clientData;
   m_x = 0;
   m_y = 0;
@@ -149,28 +150,6 @@ bool wxToolBarBase::OnLeftClick(int toolIndex, bool toggleDown)
     event.SetEventObject(this);
     event.SetExtraLong((long) toggleDown);
 
-    // First try sending the command to a window that has the focus, within a frame that
-    // also contains this toolbar.
-    wxFrame* frame = (wxFrame*) NULL;
-    wxWindow* win = this;
-    wxWindow* focusWin = (wxWindow*) NULL;
-
-    while (win)
-    {
-        if (win->IsKindOf(CLASSINFO(wxFrame)))
-        {
-            frame = (wxFrame*) win;
-            break;
-        }
-        else
-            win = win->GetParent();
-    }
-    if (frame)
-        focusWin = wxFindFocusDescendant(frame);
-
-    if (focusWin && focusWin->GetEventHandler()->ProcessEvent(event))
-        return TRUE;
-
     // Send events to this toolbar instead (and thence up the window hierarchy)
     GetEventHandler()->ProcessEvent(event);
 
@@ -242,6 +221,7 @@ wxToolBarTool *wxToolBarBase::AddTool(int index, const wxBitmap& bitmap, const w
 void wxToolBarBase::AddSeparator ()
 {
   wxToolBarTool *tool = new wxToolBarTool;
+  tool->m_index = -1;
   tool->m_toolStyle = wxTOOL_STYLE_SEPARATOR;
   m_tools.Append(-1, tool);
 }
@@ -419,7 +399,7 @@ void wxToolBarBase::Command(wxCommandEvent& WXUNUSED(event))
 {
 }
 
-void wxToolBarBase::Layout()
+void wxToolBarBase::LayoutTools()
 {
 }
 
@@ -745,7 +725,13 @@ void wxToolBarBase::ViewStart (int *x, int *y) const
   *y = m_yScrollPosition;
 }
 
-void wxToolBarBase::OnIdle(wxIdleEvent& event)
+void wxToolBarBase::OnIdle(wxIdleEvent&
+#ifdef __WXGTK__
+                            WXUNUSED(event)
+#else
+                            event
+#endif
+                          )
 {
 #ifndef __WXGTK__
     wxWindow::OnIdle(event);
@@ -757,27 +743,7 @@ void wxToolBarBase::OnIdle(wxIdleEvent& event)
 // Do the toolbar button updates (check for EVT_UPDATE_UI handlers)
 void wxToolBarBase::DoToolbarUpdates()
 {
-    // First try sending the command to a window that has the focus, within a frame that
-    // also contains this toolbar.
-    wxFrame* frame = (wxFrame*) NULL;
-    wxWindow* win = this;
-    wxWindow* focusWin = (wxWindow*) NULL;
-
-    while (win)
-    {
-        if (win->IsKindOf(CLASSINFO(wxFrame)))
-        {
-            frame = (wxFrame*) win;
-            break;
-        }
-        else
-            win = win->GetParent();
-    }
-    if (frame)
-        focusWin = wxFindFocusDescendant(frame);
-
-
-    wxEvtHandler* evtHandler = focusWin ? focusWin->GetEventHandler() : GetEventHandler() ;
+    wxEvtHandler* evtHandler = GetEventHandler() ;
 
     wxNode* node = GetTools().First();
     while (node)
@@ -803,12 +769,4 @@ void wxToolBarBase::DoToolbarUpdates()
     }
 }
 
-#ifdef __WXMSW__
-// Circumvent wxControl::MSWOnMouseMove which doesn't set the cursor.
-void wxToolBarBase::MSWOnMouseMove(int x, int y, WXUINT flags)
-{
-    wxWindow::MSWOnMouseMove(x, y, flags);
-}
-#endif
-
 #endif