#pragma hdrstop
#endif
+#include "wx/univ/theme.h"
+
+#if wxUSE_THEME_WIN32
+
#ifndef WX_PRECOMP
#include "wx/timer.h"
#include "wx/intl.h"
#include "wx/window.h"
#include "wx/dcmemory.h"
+ #include "wx/dcclient.h"
#include "wx/button.h"
#include "wx/bmpbuttn.h"
#include "wx/univ/inpcons.h"
#include "wx/univ/inphand.h"
#include "wx/univ/colschem.h"
-#include "wx/univ/theme.h"
// ----------------------------------------------------------------------------
// constants
case TITLEBAR_ACTIVE_TEXT: return wxColour(GetSysColor(COLOR_CAPTIONTEXT));
case DESKTOP: return wxColour(0x808000);
+ case FRAME: return wxColour(GetSysColor(COLOR_APPWORKSPACE));
#else // !__WXMSW__
// use the standard Windows colours elsewhere
case WINDOW: return *wxWHITE;
case TITLEBAR_ACTIVE_TEXT:return *wxWHITE;
case DESKTOP: return wxColour(0x808000);
+ case FRAME: return wxColour(0x808080);
#endif // __WXMSW__
case GAUGE: return Get(HIGHLIGHT);
{
int xpoint = (rect.GetLeft() + rect.GetRight() + 1 - bitmap.GetWidth()) / 2;
int ypoint = (rect.GetTop() + rect.GetBottom() + 1 - bitmap.GetHeight()) / 2;
- dc.DrawBitmap(bitmap, xpoint, ypoint);
+ dc.DrawBitmap(bitmap, xpoint, ypoint, bitmap.GetMask() != NULL);
}
}
else if (style == wxTOOL_STYLE_SEPARATOR)
*/
if (flags & wxCONTROL_FOCUSED) {
- DrawFocusRect(dc, rectOrig);
+ DrawFocusRect(NULL, dc, rectOrig);
}
wxRect rect = GetSliderShaftRect(rectOrig, lenThumb, orient, style);
h = heightText;
wxCoord widthLabel;
- dc.GetTextExtent(item->GetLabel(), &widthLabel, NULL);
+ dc.GetTextExtent(item->GetItemLabelText(), &widthLabel, NULL);
if ( widthLabel > widthLabelMax )
{
widthLabelMax = widthLabel;
// clicking on the control gives it focus
if ( event.ButtonDown() )
{
- wxWindow *win = control->GetInputWindow();
+ wxWindow * const win = control->GetInputWindow();
- if ( (wxWindow::FindFocus() != control->GetInputWindow()) &&
- win->AcceptsFocus() )
+ if ( win->CanAcceptFocus() && wxWindow::FindFocus() != win )
{
win->SetFocus();
bool stop = false;
if ( action == wxACTION_SCROLL_PAGE_DOWN )
{
- stop = m_renderer->HitTestScrollbar(scrollbar, m_ptStartScrolling)
- != wxHT_SCROLLBAR_BAR_2;
+ stop = scrollbar->HitTestBar(m_ptStartScrolling) != wxHT_SCROLLBAR_BAR_2;
}
else if ( action == wxACTION_SCROLL_PAGE_UP )
{
- stop = m_renderer->HitTestScrollbar(scrollbar, m_ptStartScrolling)
- != wxHT_SCROLLBAR_BAR_1;
+ stop = scrollbar->HitTestBar(m_ptStartScrolling) != wxHT_SCROLLBAR_BAR_1;
}
if ( stop )
return false;
}
- ht = m_renderer->HitTestScrollbar(scrollbar, event.GetPosition());
+ ht = scrollbar->HitTestBar(event.GetPosition());
if ( ht == m_htLast )
{
// yes it did, resume scrolling
// Always let thumb jump back if we leave the scrollbar
if ( event.Moving() )
{
- ht = m_renderer->HitTestScrollbar(scrollbar, event.GetPosition());
+ ht = scrollbar->HitTestBar(event.GetPosition());
}
else // event.Leaving()
{
if (pos.y > -40 && pos.y < scrollbar->GetSize().y+40)
pos.y = 5;
}
- ht = m_renderer->HitTestScrollbar(scrollbar, pos );
+ ht = scrollbar->HitTestBar(pos);
#endif
// if we're dragging the thumb and the mouse stays in the scrollbar, it
return wxStdInputHandler::HandleActivation(consumer, activated);
}
+
+#endif // wxUSE_THEME_WIN32