X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/e70b4f10951f806a7b6cf7e65317a21421e2f3a6..843b368a065941811fe57f5cf8ed054c667e59ff:/src/msw/stattext.cpp diff --git a/src/msw/stattext.cpp b/src/msw/stattext.cpp index a6d3d92786..dcc6433985 100644 --- a/src/msw/stattext.cpp +++ b/src/msw/stattext.cpp @@ -35,52 +35,52 @@ #if wxUSE_EXTENDED_RTTI WX_DEFINE_FLAGS( wxStaticTextStyle ) -WX_BEGIN_FLAGS( wxStaticTextStyle ) +wxBEGIN_FLAGS( wxStaticTextStyle ) // new style border flags, we put them first to // use them for streaming out - 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) - + wxFLAGS_MEMBER(wxBORDER_SIMPLE) + wxFLAGS_MEMBER(wxBORDER_SUNKEN) + wxFLAGS_MEMBER(wxBORDER_DOUBLE) + wxFLAGS_MEMBER(wxBORDER_RAISED) + wxFLAGS_MEMBER(wxBORDER_STATIC) + wxFLAGS_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) + wxFLAGS_MEMBER(wxSIMPLE_BORDER) + wxFLAGS_MEMBER(wxSUNKEN_BORDER) + wxFLAGS_MEMBER(wxDOUBLE_BORDER) + wxFLAGS_MEMBER(wxRAISED_BORDER) + wxFLAGS_MEMBER(wxSTATIC_BORDER) + wxFLAGS_MEMBER(wxBORDER) // standard window styles - WX_FLAGS_MEMBER(wxTAB_TRAVERSAL) - WX_FLAGS_MEMBER(wxCLIP_CHILDREN) - WX_FLAGS_MEMBER(wxTRANSPARENT_WINDOW) - WX_FLAGS_MEMBER(wxWANTS_CHARS) - WX_FLAGS_MEMBER(wxNO_FULL_REPAINT_ON_RESIZE) - WX_FLAGS_MEMBER(wxALWAYS_SHOW_SB ) - WX_FLAGS_MEMBER(wxVSCROLL) - WX_FLAGS_MEMBER(wxHSCROLL) - - WX_FLAGS_MEMBER(wxST_NO_AUTORESIZE) - WX_FLAGS_MEMBER(wxALIGN_LEFT) - WX_FLAGS_MEMBER(wxALIGN_RIGHT) - WX_FLAGS_MEMBER(wxALIGN_CENTRE) - -WX_END_FLAGS( wxStaticTextStyle ) + wxFLAGS_MEMBER(wxTAB_TRAVERSAL) + wxFLAGS_MEMBER(wxCLIP_CHILDREN) + wxFLAGS_MEMBER(wxTRANSPARENT_WINDOW) + wxFLAGS_MEMBER(wxWANTS_CHARS) + wxFLAGS_MEMBER(wxFULL_REPAINT_ON_RESIZE) + wxFLAGS_MEMBER(wxALWAYS_SHOW_SB ) + wxFLAGS_MEMBER(wxVSCROLL) + wxFLAGS_MEMBER(wxHSCROLL) + + wxFLAGS_MEMBER(wxST_NO_AUTORESIZE) + wxFLAGS_MEMBER(wxALIGN_LEFT) + wxFLAGS_MEMBER(wxALIGN_RIGHT) + wxFLAGS_MEMBER(wxALIGN_CENTRE) + +wxEND_FLAGS( wxStaticTextStyle ) IMPLEMENT_DYNAMIC_CLASS_XTI(wxStaticText, wxControl,"wx/stattext.h") -WX_BEGIN_PROPERTIES_TABLE(wxStaticText) - WX_PROPERTY( Label,wxString, SetLabel, GetLabel, wxString() , 0 /*flags*/ , wxT("Helpstring") , wxT("group")) - WX_PROPERTY_FLAGS( WindowStyle , wxStaticTextStyle , long , SetWindowStyleFlag , GetWindowStyleFlag , , 0 /*flags*/ , wxT("Helpstring") , wxT("group")) // style -WX_END_PROPERTIES_TABLE() +wxBEGIN_PROPERTIES_TABLE(wxStaticText) + wxPROPERTY( Label,wxString, SetLabel, GetLabel, wxString() , 0 /*flags*/ , wxT("Helpstring") , wxT("group")) + wxPROPERTY_FLAGS( WindowStyle , wxStaticTextStyle , long , SetWindowStyleFlag , GetWindowStyleFlag , EMPTY_MACROVALUE, 0 /*flags*/ , wxT("Helpstring") , wxT("group")) // style +wxEND_PROPERTIES_TABLE() -WX_BEGIN_HANDLERS_TABLE(wxStaticText) -WX_END_HANDLERS_TABLE() +wxBEGIN_HANDLERS_TABLE(wxStaticText) +wxEND_HANDLERS_TABLE() -WX_CONSTRUCTOR_6( wxStaticText , wxWindow* , Parent , wxWindowID , Id , wxString , Label , wxPoint , Position , wxSize , Size , long , WindowStyle ) +wxCONSTRUCTOR_6( wxStaticText , wxWindow* , Parent , wxWindowID , Id , wxString , Label , wxPoint , Position , wxSize , Size , long , WindowStyle ) #else IMPLEMENT_DYNAMIC_CLASS(wxStaticText, wxControl) #endif @@ -94,12 +94,12 @@ bool wxStaticText::Create(wxWindow *parent, const wxString& name) { if ( !CreateControl(parent, id, pos, size, style, wxDefaultValidator, name) ) - return FALSE; + return false; if ( !MSWCreateControl(wxT("STATIC"), label, pos, size) ) - return FALSE; + return false; - return TRUE; + return true; } wxBorder wxStaticText::GetDefaultBorder() const @@ -132,7 +132,7 @@ wxSize wxStaticText::DoGetBestSize() const int widthTextMax = 0, widthLine, heightTextTotal = 0, heightLineDefault = 0, heightLine = 0; - bool lastWasAmpersand = FALSE; + bool lastWasAmpersand = false; wxString curLine; for ( const wxChar *pc = text; ; pc++ ) @@ -179,20 +179,22 @@ wxSize wxStaticText::DoGetBestSize() const { if ( !lastWasAmpersand ) { - lastWasAmpersand = TRUE; + lastWasAmpersand = true; // skip the statement adding pc to curLine below continue; } // it is a literal ampersand - lastWasAmpersand = FALSE; + lastWasAmpersand = false; } curLine += *pc; } } - +#ifdef __WXWINCE__ + if(widthTextMax) widthTextMax += 2; +#endif return wxSize(widthTextMax, heightTextTotal); } @@ -213,7 +215,9 @@ void wxStaticText::SetLabel(const wxString& label) // disabled if ( !(GetWindowStyle() & wxST_NO_AUTORESIZE) ) { - DoSetSize(-1, -1, -1, -1, wxSIZE_AUTO_WIDTH | wxSIZE_AUTO_HEIGHT); + InvalidateBestSize(); + DoSetSize(wxDefaultCoord, wxDefaultCoord, wxDefaultCoord, wxDefaultCoord, + wxSIZE_AUTO_WIDTH | wxSIZE_AUTO_HEIGHT); } } @@ -226,7 +230,9 @@ bool wxStaticText::SetFont(const wxFont& font) // disabled if ( !(GetWindowStyle() & wxST_NO_AUTORESIZE) ) { - DoSetSize(-1, -1, -1, -1, wxSIZE_AUTO_WIDTH | wxSIZE_AUTO_HEIGHT); + InvalidateBestSize(); + DoSetSize(wxDefaultCoord, wxDefaultCoord, wxDefaultCoord, wxDefaultCoord, + wxSIZE_AUTO_WIDTH | wxSIZE_AUTO_HEIGHT); } return ret;