--- /dev/null
+///////////////////////////////////////////////////////////////////////////
+// Name: displayx11.cpp
+// Purpose: Unix/X11 implementation of wxDisplay class
+// Author: Brian Victor
+// Modified by:
+// Created: 12/05/02
+// RCS-ID: $Id$
+// Copyright: (c) wxWidgets team
+// Licence: wxWindows licence
+/////////////////////////////////////////////////////////////////////////////
+
+#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
+ #pragma implementation "display.h"
+#endif
+
+// For compilers that support precompilation, includes "wx.h".
+#include "wx/wxprec.h"
+
+#ifdef __BORLANDC__
+ #pragma hdrstop
+#endif
+
+#include "wx/display.h"
+#include "wx/intl.h"
+#include "wx/log.h"
+
+#ifndef WX_PRECOMP
+ #include "wx/dynarray.h"
+ #include "wx/gdicmn.h"
+ #include "wx/string.h"
+ #include "wx/utils.h"
+#endif /* WX_PRECOMP */
+
+#if wxUSE_DISPLAY
+
+size_t wxDisplayBase::GetCount()
+{
+ return 1;
+}
+
+int wxDisplayBase::GetFromPoint(const wxPoint &p)
+{
+ return -1;
+}
+
+wxDisplay::wxDisplay(size_t index)
+: wxDisplayBase ( index )
+{
+}
+
+wxDisplay::~wxDisplay()
+{
+}
+
+wxRect wxDisplay::GetGeometry() const
+{
+ wxRect vRect(0,0,0,0);
+
+ return vRect;
+}
+
+int wxDisplay::GetDepth() const
+{
+ return 24;
+}
+
+wxString wxDisplay::GetName() const
+{
+ return wxEmptyString;
+}
+
+
+wxArrayVideoModes wxDisplay::GetModes(const wxVideoMode& mode) const
+{
+ wxArrayVideoModes modes;
+ return modes;
+}
+
+wxVideoMode wxDisplay::GetCurrentMode() const
+{
+ // Not implemented
+ return wxVideoMode();
+}
+
+bool wxDisplay::ChangeMode(const wxVideoMode& mode)
+{
+ // Not implemented
+ return false;
+}
+
+#endif /* wxUSE_DISPLAY */
--- /dev/null
+/////////////////////////////////////////////////////////////////////////////
+// Name: src/msw/tglbtn.cpp
+// Purpose: Definition of the wxToggleButton class, which implements a
+// toggle button under wxMSW.
+// Author: John Norris, minor changes by Axel Schlueter
+// and William Gallafent.
+// Modified by:
+// Created: 08.02.01
+// RCS-ID: $Id$
+// Copyright: (c) 2000 Johnny C. Norris II
+// License: wxWindows licence
+/////////////////////////////////////////////////////////////////////////////
+
+// ============================================================================
+// declatations
+// ============================================================================
+
+// ----------------------------------------------------------------------------
+// headers
+// ----------------------------------------------------------------------------
+
+#include "wx/wxprec.h"
+
+#ifdef __BORLANDC__
+ #pragma hdrstop
+#endif
+
+#include "wx/tglbtn.h"
+
+#if wxUSE_TOGGLEBTN
+
+#ifndef WX_PRECOMP
+ #include "wx/button.h"
+ #include "wx/brush.h"
+ #include "wx/dcscreen.h"
+ #include "wx/settings.h"
+
+ #include "wx/log.h"
+#endif // WX_PRECOMP
+
+#include "wx/msw/private.h"
+
+// ----------------------------------------------------------------------------
+// macros
+// ----------------------------------------------------------------------------
+
+IMPLEMENT_DYNAMIC_CLASS(wxToggleButton, wxControl)
+DEFINE_EVENT_TYPE(wxEVT_COMMAND_TOGGLEBUTTON_CLICKED)
+
+#define BUTTON_HEIGHT_FROM_CHAR_HEIGHT(cy) (11*EDIT_HEIGHT_FROM_CHAR_HEIGHT(cy)/10)
+
+// ============================================================================
+// implementation
+// ============================================================================
+
+// ----------------------------------------------------------------------------
+// wxToggleButton
+// ----------------------------------------------------------------------------
+
+bool wxToggleButton::OS2Command(WXUINT WXUNUSED(param), WXWORD WXUNUSED(id))
+{
+ wxCommandEvent event(wxEVT_COMMAND_TOGGLEBUTTON_CLICKED, m_windowId);
+ event.SetInt(GetValue());
+ event.SetEventObject(this);
+ ProcessCommand(event);
+ return true;
+}
+
+// Single check box item
+bool wxToggleButton::Create(wxWindow *parent, wxWindowID id,
+ const wxString& label,
+ const wxPoint& pos,
+ const wxSize& size, long style,
+ const wxValidator& validator,
+ const wxString& name)
+{
+ if ( !CreateControl(parent, id, pos, size, style, validator, name) )
+ return false;
+
+ if ( !OS2CreateControl(wxT("BUTTON"), label, pos, size, 0) )
+ return false;
+
+ return true;
+}
+
+wxBorder wxToggleButton::GetDefaultBorder() const
+{
+ return wxBORDER_NONE;
+}
+
+WXDWORD wxToggleButton::OS2GetStyle(long style, WXDWORD *exstyle) const
+{
+ WXDWORD msStyle = wxControl::OS2GetStyle(style, exstyle);
+
+#ifndef BS_PUSHLIKE
+#define BS_PUSHLIKE 0x00001000L
+#endif
+
+ msStyle |= BS_AUTOCHECKBOX | BS_PUSHLIKE | WS_TABSTOP;
+
+ return msStyle;
+}
+
+wxSize wxToggleButton::DoGetBestSize() const
+{
+ wxString label = wxGetWindowText(GetHWND());
+ int wBtn;
+ wxFont vFont = GetFont();
+ int wChar;
+ int hChar;
+
+ GetTextExtent(label, &wBtn, NULL);
+
+
+ wxGetCharSize(GetHWND(), &wChar, &hChar, &vFont);
+
+ // add a margin - the button is wider than just its label
+ wBtn += 3*wChar;
+
+ // the button height is proportional to the height of the font used
+ int hBtn = BUTTON_HEIGHT_FROM_CHAR_HEIGHT(hChar);
+
+#if wxUSE_BUTTON
+ wxSize sz = wxButton::GetDefaultSize();
+ if (wBtn > sz.x)
+ sz.x = wBtn;
+ if (hBtn > sz.y)
+ sz.y = hBtn;
+#else
+ wxSize sz(wBtn, hBtn);
+#endif
+
+ return sz;
+}
+
+void wxToggleButton::SetValue(bool val)
+{
+ ::WinSendMsg(GetHwnd(), BM_SETCHECK, MPFROMSHORT(val), (MPARAM)0);
+}
+
+#ifndef BST_CHECKED
+#define BST_CHECKED 0x0001
+#endif
+
+bool wxToggleButton::GetValue() const
+{
+ return (::WinSendMsg(GetHwnd(), BM_QUERYCHECK, 0, 0) == (MRESULT)BST_CHECKED);
+}
+
+void wxToggleButton::Command(wxCommandEvent & event)
+{
+ SetValue((event.GetInt() != 0));
+ ProcessCommand(event);
+}
+
+#endif // wxUSE_TOGGLEBTN
+