#endif
#ifndef WX_PRECOMP
-#include "wx/wx.h"
+#include "wx/settings.h"
+#include "wx/window.h"
+#include "wx/dcclient.h"
+#include "wx/dcmemory.h"
#endif
-#if USE_TOOLBAR
+#if wxUSE_TOOLBAR
#include "wx/tbarsmpl.h"
// Set it to grey (or other 3D face colour)
wxSystemSettings settings;
SetBackgroundColour(settings.GetSystemColour(wxSYS_COLOUR_3DFACE));
- SetDefaultBackgroundColour(settings.GetSystemColour(wxSYS_COLOUR_3DFACE));
if ( GetWindowStyleFlag() & wxTB_VERTICAL )
{ m_lastX = 7; m_lastY = 3; }
m_yMargin = 0;
m_toolPacking = 1;
m_toolSeparation = 5;
+ SetCursor(*wxSTANDARD_CURSOR);
return TRUE;
}
{
}
-void wxToolBarSimple::OnPaint (wxPaintEvent& event)
+void wxToolBarSimple::OnPaint (wxPaintEvent& WXUNUSED(event))
{
wxPaintDC dc(this);
PrepareDC(dc);
wxToolBarBase::OnSize(event);
}
-void wxToolBarSimple::OnKillFocus (wxFocusEvent& event)
+void wxToolBarSimple::OnKillFocus (wxFocusEvent& WXUNUSED(event))
{
OnMouseEnter(m_pressedTool = m_currentTool = -1);
}
void wxToolBarSimple::OnMouseEvent ( wxMouseEvent & event )
{
- long x, y;
- event.Position(&x, &y);
+ wxCoord x, y;
+ event.GetPosition(&x, &y);
wxToolBarTool *tool = FindToolForPosition(x, y);
if (event.LeftDown())
if (bitmap && bitmap->Ok())
{
+#ifndef __WXGTK__
if (bitmap->GetPalette())
memDC.SetPalette(*bitmap->GetPalette());
+#endif
int ax = (int)tool->m_x,
ay = (int)tool->m_y,
{
dc.SetClippingRegion(ax, ay, (bx-ax+1), (by-ay+1));
dc.Blit((ax+1), (ay+1), (bx-ax-2), (by-ay-2), &memDC, 0, 0);
- wxPen * old_pen = dc.GetPen();
+ wxPen * old_pen = & dc.GetPen();
dc.SetPen( white_pen );
dc.DrawLine(ax,(by-1),ax,ay);
dc.DrawLine(ax,ay,(bx-1),ay);
&memDC, 0, 0);
}
memDC.SelectObject(wxNullBitmap);
+#ifndef __WXGTK__
memDC.SetPalette(wxNullPalette);
+#endif
}
// No second bitmap, so draw a thick line around bitmap, or invert if mono
else if (tool->m_toggleState)
{
bool drawBorder = FALSE;
- #ifdef __X__ // X doesn't invert properly on colour
+#ifdef __X__ // X doesn't invert properly on colour
drawBorder = wxColourDisplay();
- #else // Inversion works fine under Windows
+#else // Inversion works fine under Windows
drawBorder = FALSE;
- #endif
+#endif
if (!drawBorder)
{
memDC.SelectObject(tool->m_bitmap1);
dc.SetClippingRegion(ax, ay, (bx-ax+1), (by-ay+1));
dc.Blit((ax+2), (ay+2), (bx-ax-2), (by-ay-2), &memDC, 0, 0);
- wxPen * old_pen = dc.GetPen();
+ wxPen * old_pen = & dc.GetPen();
dc.SetPen( black_pen );
dc.DrawLine(ax,(by-1),ax,ay);
dc.DrawLine(ax,ay,(bx-1),ay);
void wxToolBarSimple::ToggleTool(int index, bool toggle)
{
- wxNode *node = m_tools.Find((long)index);
+ wxNode *node = (wxNode*) NULL;
+ node = m_tools.Find((long)index);
if (node)
{
wxToolBarTool *tool = (wxToolBarTool *)node->Data();
//
void wxToolBarSimple::SpringUpButton(int index)
{
- wxNode *node=m_tools.Find((long)index);
+ wxNode *node = (wxNode*) NULL;
+ node=m_tools.Find((long)index);
if (node) {
wxToolBarTool *tool = (wxToolBarTool *)node->Data();
if (tool && !tool->m_isToggle && tool->m_toggleState){
}
}
-void wxToolBarSimple::Layout(void)
+void wxToolBarSimple::LayoutTools(void)
{
m_currentRowsOrColumns = 0;
m_lastX = m_xMargin;