window flags extensions, streaming callback
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@23148 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -48,65 +48,46 @@
|
|||||||
|
|
||||||
#if wxUSE_EXTENDED_RTTI
|
#if wxUSE_EXTENDED_RTTI
|
||||||
|
|
||||||
enum wxButtonStyleBits
|
WX_DEFINE_FLAGS( wxButtonStyle )
|
||||||
{
|
|
||||||
wxButtonExactFitBit = 0 ,
|
|
||||||
wxButtonLeftBit = 6 ,
|
|
||||||
wxButtonTopBit = 7 ,
|
|
||||||
wxButtonRightBit = 8 ,
|
|
||||||
wxButtonBottomBit = 9 ,
|
|
||||||
|
|
||||||
// wxNoFullRepaintOnResizeBit = 16 ,
|
WX_BEGIN_FLAGS( wxButtonStyle )
|
||||||
// wxPopUpWindowBit = 17 ,
|
// new style border flags, we put them first to
|
||||||
wxWantCharsBit = 18 ,
|
// use them for streaming out
|
||||||
// wxTabTraversalBit = 19 ,
|
WX_FLAGS_MEMBER(wxBORDER_SIMPLE)
|
||||||
|
WX_FLAGS_MEMBER(wxBORDER_SUNKEN)
|
||||||
|
WX_FLAGS_MEMBER(wxBORDER_DOUBLE)
|
||||||
|
WX_FLAGS_MEMBER(wxBORDER_RAISED)
|
||||||
|
WX_FLAGS_MEMBER(wxBORDER_STATIC)
|
||||||
|
WX_FLAGS_MEMBER(wxBORDER_NONE)
|
||||||
|
|
||||||
|
// old style border flags
|
||||||
|
WX_FLAGS_MEMBER(wxSIMPLE_BORDER)
|
||||||
|
WX_FLAGS_MEMBER(wxSUNKEN_BORDER)
|
||||||
|
WX_FLAGS_MEMBER(wxDOUBLE_BORDER)
|
||||||
|
WX_FLAGS_MEMBER(wxRAISED_BORDER)
|
||||||
|
WX_FLAGS_MEMBER(wxSTATIC_BORDER)
|
||||||
|
WX_FLAGS_MEMBER(wxNO_BORDER)
|
||||||
|
|
||||||
wxTransparentWindowBit = 20 ,
|
WX_FLAGS_MEMBER(wxTRANSPARENT_WINDOW)
|
||||||
wxBorderNoneBit = 21 ,
|
WX_FLAGS_MEMBER(wxWANTS_CHARS)
|
||||||
// wxClipChildrenBit = 22 ,
|
WX_FLAGS_MEMBER(wxNO_FULL_REPAINT_ON_RESIZE)
|
||||||
// wxAlwaysShowScrollBarsBit = 23 ,
|
|
||||||
|
|
||||||
wxBorderStaticBit = 24 ,
|
WX_FLAGS_MEMBER(wxBU_LEFT)
|
||||||
wxBorderSimpleBit = 25 ,
|
WX_FLAGS_MEMBER(wxBU_RIGHT)
|
||||||
wxBorderRaisedBit = 26 ,
|
WX_FLAGS_MEMBER(wxBU_TOP)
|
||||||
wxBorderSunkenBit = 27 ,
|
WX_FLAGS_MEMBER(wxBU_BOTTOM)
|
||||||
|
WX_FLAGS_MEMBER(wxBU_EXACTFIT)
|
||||||
wxBorderDoubleBit = 28 ,
|
WX_END_FLAGS( wxButtonStyle )
|
||||||
// wxCaptionBit = 29 ,
|
|
||||||
// wxClipSiblingsBit = 29 , // caption not used for non toplevel
|
|
||||||
// wxHScrolBit = 30 ,
|
|
||||||
// wxVScrollBit = 31 ,
|
|
||||||
} ;
|
|
||||||
|
|
||||||
typedef wxFlags<wxButtonStyleBits> wxButtonStyleFlags ;
|
|
||||||
|
|
||||||
WX_BEGIN_ENUM( wxButtonStyleBits)
|
|
||||||
WX_ENUM_MEMBER( wxButtonExactFitBit)
|
|
||||||
WX_ENUM_MEMBER( wxButtonLeftBit)
|
|
||||||
WX_ENUM_MEMBER( wxButtonTopBit)
|
|
||||||
WX_ENUM_MEMBER( wxButtonRightBit)
|
|
||||||
WX_ENUM_MEMBER( wxButtonBottomBit)
|
|
||||||
WX_ENUM_MEMBER( wxWantCharsBit)
|
|
||||||
WX_ENUM_MEMBER( wxTransparentWindowBit)
|
|
||||||
WX_ENUM_MEMBER( wxBorderNoneBit)
|
|
||||||
WX_ENUM_MEMBER( wxBorderStaticBit)
|
|
||||||
WX_ENUM_MEMBER( wxBorderSimpleBit)
|
|
||||||
WX_ENUM_MEMBER( wxBorderRaisedBit)
|
|
||||||
WX_ENUM_MEMBER( wxBorderSunkenBit)
|
|
||||||
WX_ENUM_MEMBER( wxBorderDoubleBit)
|
|
||||||
WX_END_ENUM( wxButtonStyleBits)
|
|
||||||
|
|
||||||
WX_IMPLEMENT_SET_STREAMING( wxButtonStyleFlags , wxButtonStyleBits)
|
|
||||||
|
|
||||||
IMPLEMENT_DYNAMIC_CLASS_XTI(wxButton, wxControl,"wx/button.h")
|
IMPLEMENT_DYNAMIC_CLASS_XTI(wxButton, wxControl,"wx/button.h")
|
||||||
|
|
||||||
WX_BEGIN_PROPERTIES_TABLE(wxButton)
|
WX_BEGIN_PROPERTIES_TABLE(wxButton)
|
||||||
WX_DELEGATE( OnClick , wxEVT_COMMAND_BUTTON_CLICKED , wxCommandEvent , 0 /*flags*/ , wxT("Helpstring") , wxT("group"))
|
WX_DELEGATE( OnClick , wxEVT_COMMAND_BUTTON_CLICKED , wxCommandEvent)
|
||||||
|
|
||||||
WX_PROPERTY( Font , wxFont , SetFont , GetFont , , 0 /*flags*/ , wxT("Helpstring") , wxT("group"))
|
WX_PROPERTY( Font , wxFont , SetFont , GetFont , , 0 /*flags*/ , wxT("Helpstring") , wxT("group"))
|
||||||
WX_PROPERTY( Label, wxString , SetLabel, GetLabel, wxEmptyString, 0 /*flags*/ , wxT("Helpstring") , wxT("group") )
|
WX_PROPERTY( Label, wxString , SetLabel, GetLabel, wxEmptyString, 0 /*flags*/ , wxT("Helpstring") , wxT("group") )
|
||||||
|
|
||||||
WX_PROPERTY_FLAGS( WindowStyle , wxButtonStyleFlags , long , SetWindowStyleFlag , GetWindowStyleFlag , , 0 /*flags*/ , wxT("Helpstring") , wxT("group")) // style
|
WX_PROPERTY_FLAGS( WindowStyle , wxButtonStyle , long , SetWindowStyleFlag , GetWindowStyleFlag , , 0 /*flags*/ , wxT("Helpstring") , wxT("group")) // style
|
||||||
|
|
||||||
WX_END_PROPERTIES_TABLE()
|
WX_END_PROPERTIES_TABLE()
|
||||||
|
|
||||||
|
@@ -231,7 +231,19 @@ static inline void wxBringWindowToTop(HWND hwnd)
|
|||||||
#else // __WXMSW__
|
#else // __WXMSW__
|
||||||
#if wxUSE_EXTENDED_RTTI
|
#if wxUSE_EXTENDED_RTTI
|
||||||
|
|
||||||
IMPLEMENT_DYNAMIC_CLASS_XTI(wxWindow, wxWindowBase,"wx/window.h")
|
// windows that are created from a parent window during its Create method, eg. spin controls in a calendar controls
|
||||||
|
// must never been streamed out separately otherwise chaos occurs. Right now easiest is to test for negative ids, as
|
||||||
|
// windows with negative ids never can be recreated anyway
|
||||||
|
|
||||||
|
bool wxWindowStreamingCallback( const wxObject *object, wxWriter * , wxPersister * , wxxVariantArray & )
|
||||||
|
{
|
||||||
|
const wxWindow * win = dynamic_cast<const wxWindow*>(object) ;
|
||||||
|
if ( win && win->GetId() < 0 )
|
||||||
|
return false ;
|
||||||
|
return true ;
|
||||||
|
}
|
||||||
|
|
||||||
|
IMPLEMENT_DYNAMIC_CLASS_XTI_CALLBACK(wxWindow, wxWindowBase,"wx/window.h", wxWindowStreamingCallback)
|
||||||
|
|
||||||
// make wxWindowList known before the property is used
|
// make wxWindowList known before the property is used
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user