X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/b07664068bc48173d08e3146ca05dceac275aa6a..cb73e6001f891ae46b12a1e4ca39b93649cb6099:/src/msw/statline.cpp diff --git a/src/msw/statline.cpp b/src/msw/statline.cpp index 2bf14042af..ea49fcdcbb 100644 --- a/src/msw/statline.cpp +++ b/src/msw/statline.cpp @@ -16,7 +16,7 @@ // headers // ---------------------------------------------------------------------------- -#ifdef __GNUG__ +#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) #pragma implementation "statline.h" #endif @@ -47,53 +47,45 @@ // ============================================================================ IMPLEMENT_DYNAMIC_CLASS(wxStaticLine, wxControl) +/* + TODO PROPERTIES : + style (wxLI_HORIZONTAL) +*/ // ---------------------------------------------------------------------------- // wxStaticLine // ---------------------------------------------------------------------------- -bool wxStaticLine::Create( wxWindow *parent, - wxWindowID id, - const wxPoint &pos, - const wxSize &size, - long style, - const wxString &name) +bool wxStaticLine::Create(wxWindow *parent, + wxWindowID id, + const wxPoint& pos, + const wxSize& sizeOrig, + long style, + const wxString &name) { - if ( !CreateBase(parent, id, pos, size, style, wxDefaultValidator, name) ) - return FALSE; - - parent->AddChild(this); - - wxSize sizeReal = AdjustSize(size); - - DWORD wstyle = WS_CHILD | WS_VISIBLE | SS_GRAYRECT | SS_SUNKEN | SS_NOTIFY; - - if ( style & wxCLIP_SIBLINGS ) - wstyle |= WS_CLIPSIBLINGS; + wxSize size = AdjustSize(sizeOrig); + if ( !CreateControl(parent, id, pos, size, style, wxDefaultValidator, name) ) + return FALSE; - m_hWnd = (WXHWND)::CreateWindow - ( - wxT("STATIC"), - wxT(""), - wstyle, - pos.x, pos.y, sizeReal.x, sizeReal.y, - GetWinHwnd(parent), - (HMENU)m_windowId, - wxGetInstance(), - NULL - ); + return MSWCreateControl(_T("STATIC"), wxEmptyString, pos, size); +} - if ( !m_hWnd ) - { - wxLogDebug(wxT("Failed to create static control")); +WXDWORD wxStaticLine::MSWGetStyle(long style, WXDWORD *exstyle) const +{ + // we never have border + style &= ~wxBORDER_MASK; + style |= wxBORDER_NONE; - return FALSE; - } + WXDWORD msStyle = wxControl::MSWGetStyle(style, exstyle); - SubclassWin(m_hWnd); + // add our default styles + msStyle |= SS_SUNKEN | SS_NOTIFY | WS_CLIPSIBLINGS; +#ifndef __WXWINCE__ + msStyle |= SS_GRAYRECT ; +#endif - return TRUE; + return msStyle ; } #endif // wxUSE_STATLINE