X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/1c469f7f4e85bd5212bf0409be0384a7b89405df..8c82361c1d8087f81abcc5edac8e523cab5dc5a9:/src/mac/stattext.cpp diff --git a/src/mac/stattext.cpp b/src/mac/stattext.cpp index 88b0edf3f9..15e3076d71 100644 --- a/src/mac/stattext.cpp +++ b/src/mac/stattext.cpp @@ -20,6 +20,7 @@ #include "wx/dc.h" #include "wx/dcclient.h" #include "wx/utils.h" +#include "wx/settings.h" #include @@ -60,10 +61,10 @@ bool wxStaticText::Create(wxWindow *parent, wxWindowID id, const wxString punct = " ,.-;:!?"; -void wxStaticText::DrawParagraph(wxDC &dc, wxString paragraph) +void wxStaticText::DrawParagraph(wxDC &dc, wxString paragraph, int &y) { int x = 0 ; - int y = 0 ; + int i = 0 ; long width, height ; bool linedrawn = true; @@ -127,25 +128,44 @@ void wxStaticText::OnDraw( wxDC &dc ) { if (m_width <= 0 || m_height <= 0) return; - - if ( !IsWindowHilited( MacGetRootWindow() ) ) +/* + dc.Clear() ; + wxRect rect(0,0,m_width,m_height) ; + dc.SetFont(*wxSMALL_FONT) ; + + dc.DrawRectangle(rect) ; +*/ + if ( !IsWindowHilited( (WindowRef) MacGetRootWindow() ) && + ( GetBackgroundColour() == wxSystemSettings::GetColour(wxSYS_COLOUR_3DFACE ) + || GetBackgroundColour() == wxSystemSettings::GetColour(wxSYS_COLOUR_APPWORKSPACE) ) ) { dc.SetTextForeground( wxColour( 0x80 , 0x80 , 0x80 ) ) ; } + else + { + dc.SetTextForeground( GetForegroundColour() ) ; + } + wxString paragraph; int i = 0 ; wxString text = m_label; - while (i < text.Length()) - { - paragraph += text[i]; + int y = 0 ; + while (i < text.Length()) + { if (text[i] == 13 || text[i] == 10) - DrawParagraph(dc, paragraph); - + { + DrawParagraph(dc, paragraph,y); + paragraph = "" ; + } + else + { + paragraph += text[i]; + } ++i; } if (paragraph.Length() > 0) - DrawParagraph(dc, paragraph); + DrawParagraph(dc, paragraph,y); } void wxStaticText::OnPaint( wxPaintEvent &event ) @@ -156,7 +176,6 @@ void wxStaticText::OnPaint( wxPaintEvent &event ) wxSize wxStaticText::DoGetBestSize() const { - int x,y ; int widthTextMax = 0, widthLine, heightTextTotal = 0, heightLineDefault = 0, heightLine = 0;