wxFLAGS_MEMBER(wxBORDER_RAISED)
wxFLAGS_MEMBER(wxBORDER_STATIC)
wxFLAGS_MEMBER(wxBORDER_NONE)
-
+
// old style border flags
wxFLAGS_MEMBER(wxSIMPLE_BORDER)
wxFLAGS_MEMBER(wxSUNKEN_BORDER)
IMPLEMENT_DYNAMIC_CLASS_XTI(wxPanel, wxWindow,"wx/panel.h")
wxBEGIN_PROPERTIES_TABLE(wxPanel)
- wxPROPERTY_FLAGS( WindowStyle , wxPanelStyle , long , SetWindowStyleFlag , GetWindowStyleFlag , , 0 /*flags*/ , wxT("Helpstring") , wxT("group")) // style
+ wxPROPERTY_FLAGS( WindowStyle , wxPanelStyle , long , SetWindowStyleFlag , GetWindowStyleFlag , EMPTY_MACROVALUE, 0 /*flags*/ , wxT("Helpstring") , wxT("group")) // style
// style wxTAB_TRAVERSAL
wxEND_PROPERTIES_TABLE()
wxBEGIN_HANDLERS_TABLE(wxPanel)
wxEND_HANDLERS_TABLE()
-wxCONSTRUCTOR_5( wxPanel , wxWindow* , Parent , wxWindowID , Id , wxPoint , Position , wxSize , Size , long , WindowStyle )
+wxCONSTRUCTOR_5( wxPanel , wxWindow* , Parent , wxWindowID , Id , wxPoint , Position , wxSize , Size , long , WindowStyle )
#else
IMPLEMENT_DYNAMIC_CLASS(wxPanel, wxWindow)
#endif
BEGIN_EVENT_TABLE(wxPanel, wxWindow)
- EVT_SYS_COLOUR_CHANGED(wxPanel::OnSysColourChanged)
-
EVT_SIZE(wxPanel::OnSize)
WX_EVENT_TABLE_CONTROL_CONTAINER(wxPanel)
long style,
const wxString& name)
{
- return wxWindow::Create(parent, id, pos, size, style, name);
+ if ( !wxWindow::Create(parent, id, pos, size, style, name) )
+ return false;
+
+ // so that non-solid background renders correctly under GTK+:
+ SetThemeEnabled(true);
+
+#ifdef __WXWINCE__
+ // Required to get solid control backgrounds under WinCE
+ SetBackgroundColour(wxSystemSettings::GetColour(wxSYS_COLOUR_WINDOW));
+#endif
+
+ return true;
}
wxPanel::~wxPanel()
// event handlers
// ----------------------------------------------------------------------------
-// Responds to colour changes, and passes event on to children.
-void wxPanel::OnSysColourChanged(wxSysColourChangedEvent& event)
-{
- SetBackgroundColour(wxSystemSettings::GetColour(wxSYS_COLOUR_3DFACE));
- Refresh();
-
- // Propagate the event to the non-top-level children
- wxWindow::OnSysColourChanged(event);
-}
-
void wxPanel::OnSize(wxSizeEvent& event)
{
if (GetAutoLayout())
// Uninitialized
::WinQueryWindowPos(GetHWND(), pWinSwp);
- }
- else
+ }
+ else
{
SWP vSwp;
int nYDiff;