// Author: Vadim Zeitlin
// Modified by:
// Created: 01.03.03
-// RCS-ID: $Id$
// Copyright: (c) 2003-2006 Vadim Zeitlin <vadim@wxwindows.org>
-// License: wxWindows licence
+// Licence: wxWindows licence
///////////////////////////////////////////////////////////////////////////////
// ============================================================================
#ifndef WX_PRECOMP
#include "wx/gdicmn.h"
#include "wx/window.h"
+ #include "wx/module.h"
#endif //WX_PRECOMP
#include "wx/display.h"
#include "wx/display_impl.h"
-#include "wx/module.h"
-#include "wx/gdicmn.h" // for wxDisplaySize()
#if wxUSE_DISPLAY
return r;
}
+ virtual wxRect GetClientArea() const { return wxGetClientDisplayRect(); }
+
virtual wxString GetName() const { return wxString(); }
#if wxUSE_DISPLAY
#endif // wxUSE_DISPLAY
- DECLARE_NO_COPY_CLASS(wxDisplayImplSingle)
+ wxDECLARE_NO_COPY_CLASS(wxDisplayImplSingle);
};
// ----------------------------------------------------------------------------
virtual bool OnInit() { return true; }
virtual void OnExit()
{
- if ( gs_factory )
- {
- delete gs_factory;
- gs_factory = NULL;
- }
+ wxDELETE(gs_factory);
}
DECLARE_DYNAMIC_CLASS(wxDisplayModule)
// ctor/dtor
// ----------------------------------------------------------------------------
-wxDisplay::wxDisplay(size_t n)
+wxDisplay::wxDisplay(unsigned n)
{
wxASSERT_MSG( n < GetCount(),
wxT("An invalid index was passed to wxDisplay") );
// static functions forwarded to wxDisplayFactory
// ----------------------------------------------------------------------------
-/* static */ size_t wxDisplay::GetCount()
+/* static */ unsigned wxDisplay::GetCount()
{
return Factory().GetCount();
}
return Factory().GetFromPoint(pt);
}
-/* static */ int wxDisplay::GetFromWindow(wxWindow *window)
+/* static */ int wxDisplay::GetFromWindow(const wxWindow *window)
{
- wxCHECK_MSG( window, wxNOT_FOUND, _T("invalid window") );
+ wxCHECK_MSG( window, wxNOT_FOUND, wxT("invalid window") );
return Factory().GetFromWindow(window);
}
wxRect wxDisplay::GetGeometry() const
{
- wxCHECK_MSG( IsOk(), wxRect(), _T("invalid wxDisplay object") );
+ wxCHECK_MSG( IsOk(), wxRect(), wxT("invalid wxDisplay object") );
return m_impl->GetGeometry();
}
+wxRect wxDisplay::GetClientArea() const
+{
+ wxCHECK_MSG( IsOk(), wxRect(), wxT("invalid wxDisplay object") );
+
+ return m_impl->GetClientArea();
+}
+
wxString wxDisplay::GetName() const
{
- wxCHECK_MSG( IsOk(), wxString(), _T("invalid wxDisplay object") );
+ wxCHECK_MSG( IsOk(), wxString(), wxT("invalid wxDisplay object") );
return m_impl->GetName();
}
wxArrayVideoModes wxDisplay::GetModes(const wxVideoMode& mode) const
{
- wxCHECK_MSG( IsOk(), wxArrayVideoModes(), _T("invalid wxDisplay object") );
+ wxCHECK_MSG( IsOk(), wxArrayVideoModes(), wxT("invalid wxDisplay object") );
return m_impl->GetModes(mode);
}
wxVideoMode wxDisplay::GetCurrentMode() const
{
- wxCHECK_MSG( IsOk(), wxVideoMode(), _T("invalid wxDisplay object") );
+ wxCHECK_MSG( IsOk(), wxVideoMode(), wxT("invalid wxDisplay object") );
return m_impl->GetCurrentMode();
}
bool wxDisplay::ChangeMode(const wxVideoMode& mode)
{
- wxCHECK_MSG( IsOk(), false, _T("invalid wxDisplay object") );
+ wxCHECK_MSG( IsOk(), false, wxT("invalid wxDisplay object") );
return m_impl->ChangeMode(mode);
}
-#endif // wxUSE_DIRECTDRAW
+#endif // wxUSE_DISPLAY
// ----------------------------------------------------------------------------
// static functions implementation
// wxDisplayFactory implementation
// ============================================================================
-int wxDisplayFactory::GetFromWindow(wxWindow *window)
+int wxDisplayFactory::GetFromWindow(const wxWindow *window)
{
// consider that the window belongs to the display containing its centre
- const wxRect r(window->GetRect());
+ const wxRect r(window->GetScreenRect());
return GetFromPoint(wxPoint(r.x + r.width/2, r.y + r.height/2));
}
// ============================================================================
/* static */
-wxDisplayImpl *wxDisplayFactorySingle::CreateDisplay(size_t n)
+wxDisplayImpl *wxDisplayFactorySingle::CreateDisplay(unsigned n)
{
// we recognize the main display only
return n != 0 ? NULL : new wxDisplayImplSingle;
// the point is outside of the screen
return wxNOT_FOUND;
}
-