Added wxDisplay and wxVideoMode
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@26149 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -108,6 +108,8 @@ cd bld
|
|||||||
%endif
|
%endif
|
||||||
--enable-geometry \
|
--enable-geometry \
|
||||||
--enable-optimise \
|
--enable-optimise \
|
||||||
|
--enable-sound \
|
||||||
|
--enable-display \
|
||||||
%if %{debug_flag}
|
%if %{debug_flag}
|
||||||
--enable-debug_flag \
|
--enable-debug_flag \
|
||||||
%endif
|
%endif
|
||||||
|
@@ -59,10 +59,12 @@ place, then do the same for wxPython.
|
|||||||
--disable-monolithic \
|
--disable-monolithic \
|
||||||
--enable-debug \
|
--enable-debug \
|
||||||
--enable-geometry \
|
--enable-geometry \
|
||||||
|
--enable-sound \
|
||||||
|
--enable-display \
|
||||||
|
|
||||||
|
|
||||||
On OS X of course you'll want to use --with-mac instead of
|
On OS X of course you'll want to use --with-mac instead of
|
||||||
--with-gtk. For GTK2 and unicode add:
|
--with-gtk. For GTK2 and unicode add::
|
||||||
|
|
||||||
--enable-gtk2 \
|
--enable-gtk2 \
|
||||||
--enable-unicode \
|
--enable-unicode \
|
||||||
|
@@ -1,7 +1,7 @@
|
|||||||
CHANGES.txt for wxPython
|
CHANGES.txt for wxPython
|
||||||
=====================================================================
|
=====================================================================
|
||||||
|
|
||||||
2.5.1.x
|
2.5.1.1
|
||||||
-------
|
-------
|
||||||
|
|
||||||
(See also the MigrationGuide.txt file for details about some of the
|
(See also the MigrationGuide.txt file for details about some of the
|
||||||
@@ -78,6 +78,8 @@ it.
|
|||||||
Updated wx.lib.calendar with many fixes and enhancements from Joerg
|
Updated wx.lib.calendar with many fixes and enhancements from Joerg
|
||||||
"Adi" Sieker.
|
"Adi" Sieker.
|
||||||
|
|
||||||
|
Added wx.Display and wx.VideoMode.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@@ -107,6 +107,7 @@ WXPORT = 'gtk' # On Linux/Unix there are several ports of wxWindows availabl
|
|||||||
|
|
||||||
BUILD_BASE = "build" # Directory to use for temporary build files.
|
BUILD_BASE = "build" # Directory to use for temporary build files.
|
||||||
|
|
||||||
|
CONTRIBS_INC = "" # A dir to add as an -I flag when compiling the contribs
|
||||||
|
|
||||||
|
|
||||||
# Some MSW build settings
|
# Some MSW build settings
|
||||||
@@ -190,7 +191,8 @@ for flag in ['BUILD_GLCANVAS', 'BUILD_OGL', 'BUILD_STC', 'BUILD_XRC',
|
|||||||
sys.argv[x] = ''
|
sys.argv[x] = ''
|
||||||
|
|
||||||
# String options
|
# String options
|
||||||
for option in ['WX_CONFIG', 'WXDLLVER', 'BUILD_BASE', 'WXPORT', 'SWIG']:
|
for option in ['WX_CONFIG', 'WXDLLVER', 'BUILD_BASE', 'WXPORT', 'SWIG',
|
||||||
|
'CONTRIBS_INC']:
|
||||||
for x in range(len(sys.argv)):
|
for x in range(len(sys.argv)):
|
||||||
if sys.argv[x].find(option) == 0:
|
if sys.argv[x].find(option) == 0:
|
||||||
pos = sys.argv[x].find('=') + 1
|
pos = sys.argv[x].find('=') + 1
|
||||||
@@ -591,7 +593,7 @@ elif os.name == 'posix':
|
|||||||
|
|
||||||
#----------------------------------------------------------------------
|
#----------------------------------------------------------------------
|
||||||
else:
|
else:
|
||||||
raise 'Sorry Charlie, platform not supported...'
|
raise 'Sorry, platform not supported...'
|
||||||
|
|
||||||
|
|
||||||
#----------------------------------------------------------------------
|
#----------------------------------------------------------------------
|
||||||
@@ -836,7 +838,7 @@ swig_sources = run_swig(['misc.i'], 'src', GENDIR, PKGDIR,
|
|||||||
'src/_sound.i', 'src/_mimetype.i',
|
'src/_sound.i', 'src/_mimetype.i',
|
||||||
'src/_artprov.i', 'src/_config.i',
|
'src/_artprov.i', 'src/_config.i',
|
||||||
'src/_datetime.i', 'src/_dataobj.i',
|
'src/_datetime.i', 'src/_dataobj.i',
|
||||||
'src/_dnd.i',
|
'src/_dnd.i', 'src/_display.i',
|
||||||
'src/_clipbrd.i',
|
'src/_clipbrd.i',
|
||||||
])
|
])
|
||||||
ext = Extension('_misc', swig_sources,
|
ext = Extension('_misc', swig_sources,
|
||||||
@@ -914,8 +916,10 @@ ext = Extension('_wizard', swig_sources,
|
|||||||
wxpExtensions.append(ext)
|
wxpExtensions.append(ext)
|
||||||
|
|
||||||
|
|
||||||
|
#----------------------------------------------------------------------
|
||||||
|
|
||||||
|
if CONTRIBS_INC:
|
||||||
|
includes += [ CONTRIBS_INC ]
|
||||||
|
|
||||||
#----------------------------------------------------------------------
|
#----------------------------------------------------------------------
|
||||||
# Define the GLCanvas extension module
|
# Define the GLCanvas extension module
|
||||||
|
196
wxPython/src/_display.i
Normal file
196
wxPython/src/_display.i
Normal file
@@ -0,0 +1,196 @@
|
|||||||
|
/////////////////////////////////////////////////////////////////////////////
|
||||||
|
// Name: _display.i
|
||||||
|
// Purpose: SWIG interface for wxVideoMode and wxDisplay
|
||||||
|
//
|
||||||
|
// Author: Robin Dunn
|
||||||
|
//
|
||||||
|
// Created: 9-Mar-2004
|
||||||
|
// RCS-ID: $Id$
|
||||||
|
// Copyright: (c) 2004 by Total Control Software
|
||||||
|
// Licence: wxWindows license
|
||||||
|
/////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
// Not a %module
|
||||||
|
|
||||||
|
|
||||||
|
//---------------------------------------------------------------------------
|
||||||
|
|
||||||
|
%{
|
||||||
|
#include "wx/display.h"
|
||||||
|
%}
|
||||||
|
|
||||||
|
|
||||||
|
//---------------------------------------------------------------------------
|
||||||
|
%newgroup
|
||||||
|
|
||||||
|
|
||||||
|
DocStr(wxVideoMode,
|
||||||
|
"A simple struct containing video mode parameters for a display");
|
||||||
|
|
||||||
|
struct wxVideoMode
|
||||||
|
{
|
||||||
|
wxVideoMode(int width = 0, int height = 0, int depth = 0, int freq = 0);
|
||||||
|
~wxVideoMode();
|
||||||
|
|
||||||
|
DocDeclStr(
|
||||||
|
bool , Matches(const wxVideoMode& other) const,
|
||||||
|
"Returns true if this mode matches the other one in the sense that
|
||||||
|
all non zero fields of the other mode have the same value in this
|
||||||
|
one (except for refresh which is allowed to have a greater value)");
|
||||||
|
|
||||||
|
DocDeclStr(
|
||||||
|
int , GetWidth() const,
|
||||||
|
"Returns the screen width in pixels (e.g. 640*480), 0 means
|
||||||
|
unspecified");
|
||||||
|
|
||||||
|
DocDeclStr(
|
||||||
|
int , GetHeight() const,
|
||||||
|
"Returns the screen width in pixels (e.g. 640*480), 0 means
|
||||||
|
unspecified");
|
||||||
|
|
||||||
|
DocDeclStr(
|
||||||
|
int , GetDepth() const,
|
||||||
|
"Returns the screen's bits per pixel (e.g. 32), 1 is monochrome
|
||||||
|
and 0 means unspecified/known");
|
||||||
|
|
||||||
|
|
||||||
|
DocDeclStr(
|
||||||
|
bool , IsOk() const,
|
||||||
|
"returns true if the object has been initialized");
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
%pythoncode { def __nonzero__(self): return self.IsOk() }
|
||||||
|
%extend {
|
||||||
|
bool __eq__(const wxVideoMode* other) { return other ? (*self == *other) : False; }
|
||||||
|
bool __ne__(const wxVideoMode* other) { return other ? (*self != *other) : True; }
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// the screen size in pixels (e.g. 640*480), 0 means unspecified
|
||||||
|
int w, h;
|
||||||
|
|
||||||
|
// bits per pixel (e.g. 32), 1 is monochrome and 0 means unspecified/known
|
||||||
|
int bpp;
|
||||||
|
|
||||||
|
// refresh frequency in Hz, 0 means unspecified/unknown
|
||||||
|
int refresh;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
%immutable;
|
||||||
|
const wxVideoMode wxDefaultVideoMode;
|
||||||
|
%mutable;
|
||||||
|
|
||||||
|
|
||||||
|
//---------------------------------------------------------------------------
|
||||||
|
|
||||||
|
DocStr(wxDisplay,
|
||||||
|
"Represents a display/monitor attached to the system");
|
||||||
|
|
||||||
|
|
||||||
|
class wxDisplay
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
//
|
||||||
|
DocCtorStr(
|
||||||
|
wxDisplay(size_t index = 0),
|
||||||
|
"Set up a Display instance with the specified display. The
|
||||||
|
displays are numbered from 0 to GetCount() - 1, 0 is always the
|
||||||
|
primary display and the only one which is always supported");
|
||||||
|
|
||||||
|
virtual ~wxDisplay();
|
||||||
|
|
||||||
|
DocDeclStr(
|
||||||
|
static size_t , GetCount(),
|
||||||
|
"Return the number of available displays.");
|
||||||
|
|
||||||
|
|
||||||
|
DocDeclStr(
|
||||||
|
static int , GetFromPoint(const wxPoint& pt),
|
||||||
|
"Find the display where the given point lies, return wx.NOT_FOUND
|
||||||
|
if it doesn't belong to any display");
|
||||||
|
|
||||||
|
|
||||||
|
DocStr(GetFromWindow,
|
||||||
|
"Find the display where the given window lies, return wx.NOT_FOUND
|
||||||
|
if it is not shown at all.");
|
||||||
|
#ifdef __WXMSW__
|
||||||
|
static int GetFromWindow(wxWindow *window);
|
||||||
|
#else
|
||||||
|
%extend {
|
||||||
|
static int GetFromWindow(wxWindow *window)
|
||||||
|
{ wxPyRaiseNotImplemented(); return wxNOT_FOUND; }
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
DocDeclStr(
|
||||||
|
virtual bool , IsOk() const,
|
||||||
|
"Return true if the object was initialized successfully");
|
||||||
|
%pythoncode { def __nonzero__(self): return self.IsOk() }
|
||||||
|
|
||||||
|
|
||||||
|
DocDeclStr(
|
||||||
|
virtual wxRect , GetGeometry() const,
|
||||||
|
"Returns the bounding rectangle of the display whose index was
|
||||||
|
passed to the constructor.");
|
||||||
|
|
||||||
|
|
||||||
|
DocDeclStr(
|
||||||
|
virtual wxString , GetName() const,
|
||||||
|
"Returns the display's name. A name is not available on all platforms.");
|
||||||
|
|
||||||
|
|
||||||
|
DocDeclStr(
|
||||||
|
bool , IsPrimary() const,
|
||||||
|
"Returns true if the display is the primary display. The primary
|
||||||
|
display is the one whose index is 0.");
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
%extend {
|
||||||
|
DocAStr(GetModes,
|
||||||
|
"GetModes(VideoMode mode=DefaultVideoMode) -> [videoMode...]",
|
||||||
|
"Enumerate all video modes supported by this display matching the
|
||||||
|
given one (in the sense of VideoMode.Match()).
|
||||||
|
|
||||||
|
As any mode matches the default value of the argument and there
|
||||||
|
is always at least one video mode supported by display, the
|
||||||
|
returned array is only empty for the default value of the
|
||||||
|
argument if this function is not supported at all on this
|
||||||
|
platform.");
|
||||||
|
|
||||||
|
PyObject* GetModes(const wxVideoMode& mode = wxDefaultVideoMode) {
|
||||||
|
PyObject* pyList = NULL;
|
||||||
|
wxArrayVideoModes arr = self->GetModes(mode);
|
||||||
|
wxPyBeginBlockThreads();
|
||||||
|
pyList = PyList_New(0);
|
||||||
|
for (int i=0; i < arr.GetCount(); i++) {
|
||||||
|
wxVideoMode* m = new wxVideoMode(arr.Item(i));
|
||||||
|
PyObject* pyObj = wxPyConstructObject(m, wxT("wxVideoMode"), true);
|
||||||
|
PyList_Append(pyList, pyObj);
|
||||||
|
}
|
||||||
|
wxPyEndBlockThreads();
|
||||||
|
return pyList;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
DocDeclStr(
|
||||||
|
virtual wxVideoMode , GetCurrentMode() const,
|
||||||
|
"Get the current video mode.");
|
||||||
|
|
||||||
|
|
||||||
|
DocDeclStr(
|
||||||
|
virtual bool , ChangeMode(const wxVideoMode& mode = wxDefaultVideoMode),
|
||||||
|
"Change current mode, return true if succeeded, false otherwise");
|
||||||
|
|
||||||
|
|
||||||
|
DocDeclStr(
|
||||||
|
void , ResetMode(),
|
||||||
|
"Restore the default video mode (just a more readable synonym)");
|
||||||
|
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
//---------------------------------------------------------------------------
|
@@ -336,5 +336,8 @@
|
|||||||
%rename(Clipboard) wxClipboard;
|
%rename(Clipboard) wxClipboard;
|
||||||
%rename(TheClipboard) wxTheClipboard;
|
%rename(TheClipboard) wxTheClipboard;
|
||||||
%rename(ClipboardLocker) wxClipboardLocker;
|
%rename(ClipboardLocker) wxClipboardLocker;
|
||||||
|
%rename(VideoMode) wxVideoMode;
|
||||||
|
%rename(DefaultVideoMode) wxDefaultVideoMode;
|
||||||
|
%rename(Display) wxDisplay;
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@@ -50,6 +50,6 @@ MAKE_CONST_WXSTRING_NOSWIG(EmptyString);
|
|||||||
%include _dataobj.i
|
%include _dataobj.i
|
||||||
%include _dnd.i
|
%include _dnd.i
|
||||||
%include _clipbrd.i
|
%include _clipbrd.i
|
||||||
|
%include _display.i
|
||||||
|
|
||||||
//---------------------------------------------------------------------------
|
//---------------------------------------------------------------------------
|
||||||
|
Reference in New Issue
Block a user