dc.GradientFillLinear(rect, startColour, endColour, wxSOUTH);
}
+void wxAuiDefaultToolBarArt::DrawPlainBackground(wxDC& dc,
+ wxWindow* WXUNUSED(wnd),
+ const wxRect& _rect)
+{
+ wxRect rect = _rect;
+ rect.height++;
+
+ dc.SetBrush(wxSystemSettings::GetColour(wxSYS_COLOUR_3DFACE));
+
+ dc.DrawRectangle(rect.GetX() - 1, rect.GetY() - 1,
+ rect.GetWidth() + 2, rect.GetHeight() + 1);
+}
+
void wxAuiDefaultToolBarArt::DrawLabel(
wxDC& dc,
wxWindow* WXUNUSED(wnd),
}
else if (item.GetState() & wxAUI_BUTTON_STATE_CHECKED)
{
- // it's important to put this code in an else statment after the
+ // it's important to put this code in an else statement after the
// hover, otherwise hovers won't draw properly for checked items
dc.SetPen(wxPen(m_highlightColour));
dc.SetBrush(wxBrush(m_highlightColour.ChangeLightness(170)));
if (!item)
return;
- item->m_dropDown = dropdown;
+ item->SetHasDropDown(dropdown);
}
bool wxAuiToolBar::GetToolDropDown(int tool_id) const
{
wxAuiToolBarItem* item = FindTool(tool_id);
if (!item)
- return 0;
+ return false;
- return item->m_dropDown;
+ return item->HasDropDown();
}
void wxAuiToolBar::SetToolSticky(int tool_id, bool sticky)
bool horizontal = m_orientation == wxHORIZONTAL;
-
- m_art->DrawBackground(dc, this, cli_rect);
+ if (m_windowStyle & wxAUI_TB_PLAIN_BACKGROUND)
+ m_art->DrawPlainBackground(dc, this, cli_rect);
+ else
+ m_art->DrawBackground(dc, this, cli_rect);
int gripperSize = m_art->GetElementSize(wxAUI_TBART_GRIPPER_SIZE);
int dropdown_size = m_art->GetElementSize(wxAUI_TBART_OVERFLOW_SIZE);
break;
}
- if (item.m_kind == wxITEM_SEPARATOR)
- {
- // draw a separator
- m_art->DrawSeparator(dc, this, item_rect);
- }
- else if (item.m_kind == wxITEM_LABEL)
- {
- // draw a text label only
- m_art->DrawLabel(dc, this, item, item_rect);
- }
- else if (item.m_kind == wxITEM_NORMAL)
+ switch ( item.m_kind )
{
- // draw a regular button or dropdown button
- if (!item.m_dropDown)
- m_art->DrawButton(dc, this, item, item_rect);
- else
- m_art->DrawDropDownButton(dc, this, item, item_rect);
- }
- else if (item.m_kind == wxITEM_CHECK)
- {
- // draw either a regular or dropdown toggle button
- if (!item.m_dropDown)
+ case wxITEM_NORMAL:
+ // draw a regular or dropdown button
+ if (!item.m_dropDown)
+ m_art->DrawButton(dc, this, item, item_rect);
+ else
+ m_art->DrawDropDownButton(dc, this, item, item_rect);
+ break;
+
+ case wxITEM_CHECK:
+ case wxITEM_RADIO:
+ // draw a toggle button
m_art->DrawButton(dc, this, item, item_rect);
- else
- m_art->DrawDropDownButton(dc, this, item, item_rect);
- }
- else if (item.m_kind == wxITEM_RADIO)
- {
- // draw a toggle button
- m_art->DrawButton(dc, this, item, item_rect);
- }
- else if (item.m_kind == wxITEM_CONTROL)
- {
- // draw the control's label
- m_art->DrawControlLabel(dc, this, item, item_rect);
+ break;
+
+ case wxITEM_SEPARATOR:
+ // draw a separator
+ m_art->DrawSeparator(dc, this, item_rect);
+ break;
+
+ case wxITEM_LABEL:
+ // draw a text label only
+ m_art->DrawLabel(dc, this, item, item_rect);
+ break;
+
+ case wxITEM_CONTROL:
+ // draw the control's label
+ m_art->DrawControlLabel(dc, this, item, item_rect);
+ break;
}
// fire a signal to see if the item wants to be custom-rendered