wxImage *CreateSysBackground(int width, int height, int offset, wxColour colour) { #ifdef USE_AQUA_THEME return CreateAquaBackground(width, height, offset); #else return CreateBackground(width, height, colour); #endif }
/// This draws the background of a toolbar void ToolBar::DrawBackground(wxDC &dc, int width, int height) { #if defined(__WXMAC__) if (mBackgroundWidth < width) { if (mBackgroundBitmap) delete mBackgroundBitmap; wxImage *aquaImage = CreateAquaBackground(width, height, 0); mBackgroundBitmap = new wxBitmap(aquaImage); delete aquaImage; } wxMemoryDC memDC; memDC.SelectObject(*mBackgroundBitmap); dc.Blit(0, 0, width, height, &memDC, 0, 0, wxCOPY, FALSE); #if 0 height = mIdealSize.GetHeight(); dc.SetPen(*wxBLACK_PEN); dc.DrawLine(27, 0, 27, height - 1); dc.DrawLine(55, 0, 55, height - 1); dc.DrawLine(83, 0, 83, 27); dc.DrawLine(0, 27, 83, 27); #endif #else dc.SetBrush(mBackgroundBrush); dc.SetPen(mBackgroundPen); height = mIdealSize.GetHeight(); dc.DrawRectangle(0, 0, width, height); #if 0 // JKC: This code draws a grid of lines around the first few // buttons on the toolbar. // TODO: Do we want this at all? // If so this should be moved to ControlToolbar. // Having it here means that it is also drawn in EditToolBar, // which we probably don't want. (same for the Mac // version in other half of #ifdef). dc.SetPen(*wxBLACK_PEN); dc.DrawLine(27, 0, 27, height - 1); dc.DrawLine(55, 0, 55, height - 1); dc.DrawLine(83, 0, 83, height - 1); dc.DrawLine(0, 27, 83, 27); #endif #endif }
std::unique_ptr<wxImage> CreateSysBackground #ifdef USE_AQUA_THEME (int width, int height, int offset, wxColour colour) #else (int width, int height, int WXUNUSED(offset), wxColour colour) #endif { #ifdef USE_AQUA_THEME return CreateAquaBackground(width, height, offset); #else return CreateBackground(width, height, colour); #endif }