#include "wx/caret.h"
#endif // wxUSE_CARET
+#if wxUSE_DISPLAY
+ #include "wx/display.h"
+#endif
+
#if wxUSE_SYSTEM_OPTIONS
#include "wx/sysopt.h"
#endif
if ( direction & wxCENTRE_ON_SCREEN )
{
+ //RN: If we are using wxDisplay we get
+ //the dimensions of the monitor the window is on,
+ //otherwise we get the dimensions of the primary monitor
+ //FIXME: wxDisplay::GetFromWindow only implemented on MSW
+#if wxUSE_DISPLAY && defined(__WXMSW__)
+ int nDisplay = wxDisplay::GetFromWindow((wxWindow*)this);
+ if(nDisplay != wxNOT_FOUND)
+ {
+ wxDisplay windowDisplay(nDisplay);
+ wxRect displayRect = windowDisplay.GetGeometry();
+ widthParent = displayRect.width;
+ heightParent = displayRect.height;
+ }
+ else
+#endif
// centre with respect to the whole screen
wxDisplaySize(&widthParent, &heightParent);
}
xNew += posParent.x;
yNew += posParent.y;
+ // FIXME: This needs to get the client display rect of the display
+ // the window is (via wxDisplay::GetFromWindow).
+
// Base size of the visible dimensions of the display
// to take into account the taskbar. And the Mac menu bar at top.
wxRect clientrect = wxGetClientDisplayRect();
// by default the origin is not shifted
wxPoint wxWindowBase::GetClientAreaOrigin() const
{
- return wxPoint();
+ return wxPoint(0,0);
}
// set the min/max size of the window
wxSize wxWindowBase::DoGetVirtualSize() const
{
- wxSize s( GetClientSize() );
+ if ( m_virtualSize.IsFullySpecified() )
+ return m_virtualSize;
+
+ wxSize size = GetClientSize();
+ if ( m_virtualSize.x != wxDefaultCoord )
+ size.x = m_virtualSize.x;
- return wxSize( wxMax( m_virtualSize.GetWidth(), s.GetWidth() ),
- wxMax( m_virtualSize.GetHeight(), s.GetHeight() ) );
+ if ( m_virtualSize.y != wxDefaultCoord )
+ size.y = m_virtualSize.y;
+
+ return size;
}
// ----------------------------------------------------------------------------
wxMessageBox(wxString::Format(
_T(
- " wxWidgets Library (%s port)\nVersion %u.%u.%u%s%s, compiled at %s %s\n Copyright (c) 1995-2004 wxWidgets team"
+ " wxWidgets Library (%s port)\nVersion %u.%u.%u%s%s, compiled at %s %s\n Copyright (c) 1995-2005 wxWidgets team"
),
port.c_str(),
wxMAJOR_VERSION,
#endif
-#if !wxUSE_STL
// ----------------------------------------------------------------------------
// list classes implementation
// ----------------------------------------------------------------------------
+#if wxUSE_STL
+
+#include <wx/listimpl.cpp>
+WX_DEFINE_LIST(wxWindowList);
+
+#else
+
void wxWindowListNode::DeleteData()
{
delete (wxWindow *)GetData();
}
+
#endif
// ----------------------------------------------------------------------------