// Author: David Webster
// Modified by:
// Created: 06/30/02
-// RCS-ID: $Id$
// Copyright: (c) David Webster
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#endif
#include "wx/tooltip.h"
+#include "wx/os2/dcclient.h"
bool wxToolBar::m_bInitialized = false;
inline wxToolBarTool( wxToolBar* pTbar
,wxControl* pControl
+ ,const wxString& label
) : wxToolBarToolBase( pTbar
,pControl
+ ,label
)
{
}
wxToolBarToolBase *wxToolBar::CreateTool(
wxControl* pControl
+, const wxString& label
)
{
return new wxToolBarTool( this
,pControl
+ ,label
);
} // end of wxToolBarSimple::CreateTool
SetBackgroundColour(wxSystemSettings::GetColour(wxSYS_COLOUR_MENUBAR));
SetFont(*wxSMALL_FONT);
- if (GetWindowStyleFlag() & wxTB_VERTICAL)
+ if (GetWindowStyleFlag() & (wxTB_LEFT | wxTB_RIGHT))
{
m_vLastX = 7;
m_vLastY = 3;
int nWidth = rSize.x;
int nHeight = rSize.y;
- if (lStyle & wxTB_HORIZONTAL)
+ if (lStyle & (wxTB_TOP | wxTB_BOTTOM))
{
if (nWidth <= 0)
{
wxToolBar::~wxToolBar()
{
- if (m_pToolTip)
- {
- delete m_pToolTip;
- m_pToolTip = NULL;
- }
+ wxDELETE(m_pToolTip);
} // end of wxToolBar::~wxToolBar
bool wxToolBar::Realize()
if (pTool->IsSeparator())
{
- if (GetWindowStyleFlag() & wxTB_HORIZONTAL)
+ if (GetWindowStyleFlag() & (wxTB_TOP | wxTB_BOTTOM))
{
pTool->m_vX = m_vLastX + nSeparatorSize;
pTool->m_vHeight = m_defaultHeight + m_vTextY;
}
else if (pTool->IsButton())
{
- if (GetWindowStyleFlag() & wxTB_HORIZONTAL)
+ if (GetWindowStyleFlag() & (wxTB_TOP | wxTB_BOTTOM))
{
if (m_nCurrentRowsOrColumns >= m_maxCols)
{
m_vLastY = m_yMargin;
}
pTool->m_vX = m_vLastX + pTool->GetWidth();
- if (HasFlag(wxTB_TEXT) && !pTool->GetLabel().IsNull())
+ if ( HasFlag(wxTB_TEXT) && !pTool->GetLabel().empty() )
pTool->m_vY = m_vLastY + (nMaxToolHeight - m_vTextY) + m_toolPacking;
else
pTool->m_vY = m_vLastY + (nMaxToolHeight - (int)(pTool->GetHeight()/2));
node = node->GetNext();
}
- if ( GetWindowStyleFlag() & wxTB_HORIZONTAL )
+ if (GetWindowStyleFlag() & (wxTB_TOP | wxTB_BOTTOM))
m_maxWidth += nMaxToolWidth;
else
m_maxHeight += nMaxToolHeight;
return;
nCount++;
- ::WinFillRect(vDc.GetHPS(), &vDc.m_vRclPaint, GetBackgroundColour().GetPixel());
+ wxPMDCImpl *impl = (wxPMDCImpl*) vDc.GetImpl();
+ ::WinFillRect(impl->GetHPS(), &impl->m_vRclPaint, GetBackgroundColour().GetPixel());
for ( wxToolBarToolsList::compatibility_iterator node = m_tools.GetFirst();
node;
node = node->GetNext() )
vDc.SetPen(vDarkGreyPen);
if (HasFlag(wxTB_TEXT))
{
- if (HasFlag(wxTB_HORIZONTAL))
+ if (HasFlag(wxTB_TOP) || HasFlag(wxTB_BOTTOM))
{
nX = pTool->m_vX;
nY = pTool->m_vY - (m_vTextY - 6);
{
nX = pTool->m_vX;
nY = pTool->m_vY;
- if (HasFlag(wxTB_HORIZONTAL))
+ if (HasFlag(wxTB_TOP) || HasFlag(wxTB_BOTTOM))
nHeight = pTool->GetHeight() - 2;
else
{
PrepareDC(rDc);
- if (!vBitmap.Ok())
+ if (!vBitmap.IsOk())
return;
if ((pMask = vBitmap.GetMask()) != NULL)
if (pMask->GetMaskBitmap() != NULLHANDLE)
wxColour vColor(wxT("GREY"));
rDc.SetTextForeground(vColor);
- if (!pTool->GetDisabledBitmap().Ok())
+ if (!pTool->GetDisabledBitmap().IsOk())
pTool->SetDisabledBitmap(wxDisableBitmap( vBitmap
,(long)GetBackgroundColour().GetPixel()
));
{
RaiseTool(pTool);
}
- if (HasFlag(wxTB_TEXT) && !pTool->GetLabel().IsNull())
+ if ( HasFlag(wxTB_TEXT) && !pTool->GetLabel().empty() )
{
wxCoord vX;
wxCoord vY;
GetSize(&vX, &vY);
rDc.DrawText( pTool->GetLabel()
,vLeft
- ,vY - (m_vTextY - 2)
+ ,vY - m_vTextY - 1
);
}
else // normal tools
vLeft += (wxCoord)((m_vTextX - vX)/2);
rDc.DrawText( pTool->GetLabel()
,vLeft
- ,pTool->m_vY + m_vTextY + 4 // a bit of margin
+ ,pTool->m_vY + m_vTextY - 1 // a bit of margin
);
}
}
LowerTool(pTool);
rDc.SetTextForeground(vColor);
- if (!pTool->GetDisabledBitmap().Ok())
+ if (!pTool->GetDisabledBitmap().IsOk())
pTool->SetDisabledBitmap(wxDisableBitmap( vBitmap
,(long)GetBackgroundColour().GetPixel()
));
,pTool->m_vY
,bUseMask
);
- if (HasFlag(wxTB_TEXT) && !pTool->GetLabel().IsNull())
+ if ( HasFlag(wxTB_TEXT) && !pTool->GetLabel().empty() )
{
wxCoord vX;
wxCoord vY;
vLeft += (wxCoord)((m_vTextX - vX)/2);
rDc.DrawText( pTool->GetLabel()
,vLeft
- ,pTool->m_vY + m_vTextY + 4 // a bit of margin
+ ,pTool->m_vY + m_vTextY - 1 // a bit of margin
);
}
}
int nRows
)
{
- wxCHECK_RET( nRows != 0, _T("max number of rows must be > 0") );
+ wxCHECK_RET( nRows != 0, wxT("max number of rows must be > 0") );
m_maxCols = (GetToolsCount() + nRows - 1) / nRows;
Refresh();
{
wxToolBarTool* pTool = (wxToolBarTool *)node->GetData();
- if (HasFlag(wxTB_TEXT) && !pTool->GetLabel().IsNull())
+ if ( HasFlag(wxTB_TEXT) && !pTool->GetLabel().empty() )
{
if ((vX >= (pTool->m_vX - ((wxCoord)(pTool->GetWidth()/2) - 2))) &&
(vY >= (pTool->m_vY - 2)) &&
}
node = node->GetNext();
}
- return (wxToolBarToolBase *)NULL;
+ return NULL;
} // end of wxToolBar::FindToolForPosition
// ----------------------------------------------------------------------------
void wxToolBar::OnTimer ( wxTimerEvent& rEvent )
{
- if (rEvent.GetId() == m_vToolTimer.GetTimerId())
+ if (rEvent.GetId() == m_vToolTimer.GetId())
{
wxPoint vPos( m_vXMouse, m_vYMouse );
m_vToolTimer.Stop();
m_vToolExpTimer.Start(4000L, TRUE);
}
- else if (rEvent.GetId() == m_vToolExpTimer.GetTimerId())
+ else if (rEvent.GetId() == m_vToolExpTimer.GetId())
{
m_pToolTip->HideToolTipWindow();
GetParent()->Refresh();