/////////////////////////////////////////////////////////////////////////////
-// Name: msw/statline.cpp
+// Name: src/os2/statline.cpp
// Purpose: OS2 version of wxStaticLine class
// Author: David Webster
// Created: 10/23/99
// headers
// ----------------------------------------------------------------------------
-#ifdef __GNUG__
- #pragma implementation "statline.h"
-#endif
-
// For compilers that support precompilation, includes "wx.h".
#include "wx/wxprec.h"
+#if wxUSE_STATLINE
+
#include "wx/statline.h"
-#if wxUSE_STATLINE
+#ifndef WX_PRECOMP
+ #include "wx/log.h"
+#endif
#include "wx/os2/private.h"
-#include "wx/log.h"
// ============================================================================
// implementation
// ============================================================================
-IMPLEMENT_DYNAMIC_CLASS(wxStaticLine, wxControl)
-
// ----------------------------------------------------------------------------
// wxStaticLine
// ----------------------------------------------------------------------------
-bool wxStaticLine::Create( wxWindow *parent,
- wxWindowID id,
- const wxPoint &pos,
- const wxSize &size,
- long style,
- const wxString &name)
+bool wxStaticLine::Create(
+ wxWindow* pParent
+, wxWindowID vId
+, const wxPoint& rPos
+, const wxSize& rSize
+, long lStyle
+, const wxString& rsName
+)
{
- if ( !CreateBase(parent, id, pos, size, style, wxDefaultValidator, name) )
+ wxSize vSize = AdjustSize(rSize);
+
+ if ( !CreateControl( pParent
+ ,vId
+ ,rPos
+ ,vSize
+ ,lStyle
+ ,wxDefaultValidator
+ ,rsName
+ ))
return FALSE;
-
- parent->AddChild(this);
-
- wxSize sizeReal = AdjustSize(size);
-
-// TODO:
-/*
- m_hWnd = (WXHWND)::CreateWindow
- (
- wxT("STATIC"),
- wxT(""),
- WS_VISIBLE | WS_CHILD |
- SS_GRAYRECT | SS_SUNKEN, // | SS_ETCHEDFRAME,
- pos.x, pos.y, sizeReal.x, sizeReal.y,
- GetWinHwnd(parent),
- (HMENU)m_windowId,
- wxGetInstance(),
- NULL
- );
-
- if ( !m_hWnd )
- {
-#ifdef __WXDEBUG__
- wxLogDebug(wxT("Failed to create static control"));
-#endif
+ if (!OS2CreateControl( wxT("STATIC")
+ ,SS_FGNDFRAME
+ ,rPos
+ ,rSize
+ ,rsName
+ ))
return FALSE;
- }
- SubclassWin(m_hWnd);
+ wxColour vColour;
+
+ vColour.Set(wxString(wxT("GREY")));
+ LONG lColor = (LONG)vColour.GetPixel();
+
+ ::WinSetPresParam( m_hWnd
+ ,PP_FOREGROUNDCOLOR
+ ,sizeof(LONG)
+ ,(PVOID)&lColor
+ );
return TRUE;
-*/
- return FALSE;
-}
-#endif
+} // end of wxStaticLine::Create
+WXDWORD wxStaticLine::OS2GetStyle(
+ long lStyle
+, WXDWORD* pdwExstyle
+) const
+{
+ //
+ // We never have border
+ //
+ lStyle &= ~wxBORDER_MASK;
+ lStyle |= wxBORDER_NONE;
+
+ WXDWORD dwStyle = wxControl::OS2GetStyle( lStyle
+ ,pdwExstyle
+ );
+ //
+ // Add our default styles
+ //
+ return dwStyle | WS_CLIPSIBLINGS;
+}
+#endif // wxUSE_STATLINE