Lots of tweaks and additions to get caught up with CVS HEAD

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30439 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Robin Dunn
2004-11-11 02:27:12 +00:00
parent 5311274387
commit 7aada1e05a
17 changed files with 285 additions and 83 deletions

View File

@@ -5,6 +5,31 @@ Recent Changes for wxPython
2.5.3.2 2.5.3.2
------- -------
New factory based printing framework. (TODO: Say more about this!)
wx.Sizer Add, Insert, and Prepend funcitons now return a reference to the
wx.SizerItem that was added to the sizer.
Added wx.Sizer.GetItem method which returns the wx.SizerItem for the given
wx.Window, wx.Sizer or position index.
wxMSW: wx.RadioButtons in the same group no longer have to be
consecutive (there may be intervening controls). Without this fix, an
out-of-sync assert is generated when clicking on a radio button and
then calling GetValue().
XRC:
- added 'icon' property to wxFrame and wxDialog
- no longer ignores menu bitmaps on non-MSW platforms
wxMSW: fix for [ 1052989 ] TextCtrl.SetBackgroundColour(wx.NullColour)
bug.
Added wx.PasswordEntryDialog analagous to wx.TextEntryDialog, allows
detecting entering an empty string vs. cancel unlike the
wx.GetPasswordFromUser dialog function.
OGL patch from Shane Holloway: OGL patch from Shane Holloway:
Two simple problems found in the new python ogl code. First is Two simple problems found in the new python ogl code. First is
@@ -27,6 +52,14 @@ OGL patch from Shane Holloway:
Fixed GetSaveData and SetSaveData in wx.lib.multisash to not depend on Fixed GetSaveData and SetSaveData in wx.lib.multisash to not depend on
the default way that class objectss are converted to strings. the default way that class objectss are converted to strings.
Fixed problem in StyledTextCtrl.Set[H|V]ScrollBar that could leave the
internal scrollbar visible.
Added wx.StandardPaths which provides methods for determining standard
system paths for each platform.
2.5.3.1 2.5.3.1

View File

@@ -342,5 +342,6 @@
%rename(VideoMode) wxVideoMode; %rename(VideoMode) wxVideoMode;
%rename(DefaultVideoMode) wxDefaultVideoMode; %rename(DefaultVideoMode) wxDefaultVideoMode;
%rename(Display) wxDisplay; %rename(Display) wxDisplay;
%rename(StandardPaths) wxStandardPaths;
#endif #endif

View File

@@ -114,6 +114,7 @@
%rename(MultiChoiceDialog) wxMultiChoiceDialog; %rename(MultiChoiceDialog) wxMultiChoiceDialog;
%rename(SingleChoiceDialog) wxSingleChoiceDialog; %rename(SingleChoiceDialog) wxSingleChoiceDialog;
%rename(TextEntryDialog) wxTextEntryDialog; %rename(TextEntryDialog) wxTextEntryDialog;
%rename(PasswordEntryDialog) wxPasswordEntryDialog;
%rename(FontData) wxFontData; %rename(FontData) wxFontData;
%rename(FontDialog) wxFontDialog; %rename(FontDialog) wxFontDialog;
%rename(MessageDialog) wxMessageDialog; %rename(MessageDialog) wxMessageDialog;
@@ -188,5 +189,7 @@
%rename(PyPrintPreview) wxPyPrintPreview; %rename(PyPrintPreview) wxPyPrintPreview;
%rename(PyPreviewFrame) wxPyPreviewFrame; %rename(PyPreviewFrame) wxPyPreviewFrame;
%rename(PyPreviewControlBar) wxPyPreviewControlBar; %rename(PyPreviewControlBar) wxPyPreviewControlBar;
%rename(PrintFactory) wxPrintFactory;
%rename(PrintNativeDataBase) wxPrintNativeDataBase;
#endif #endif

View File

@@ -154,10 +154,6 @@ bit depths, the behaviour is platform dependent.", "");
} }
#ifdef __WXMSW__
void SetPalette(wxPalette& palette);
#endif
// wxGDIImage methods // wxGDIImage methods
#ifdef __WXMSW__ #ifdef __WXMSW__
long GetHandle(); long GetHandle();
@@ -249,8 +245,8 @@ the ``type`` parameter.", "");
#if wxUSE_PALETTE
virtual wxPalette *GetPalette() const; virtual wxPalette *GetPalette() const;
#ifdef __WXMSW__
virtual void SetPalette(const wxPalette& palette); virtual void SetPalette(const wxPalette& palette);
#endif #endif

View File

@@ -252,7 +252,6 @@ example::
void , SetFilterIndex(int filterIndex), void , SetFilterIndex(int filterIndex),
"Sets the default filter index, starting from zero.", ""); "Sets the default filter index, starting from zero.", "");
DocDeclStr( DocDeclStr(
wxString , GetMessage() const, wxString , GetMessage() const,
"Returns the message that will be displayed on the dialog.", ""); "Returns the message that will be displayed on the dialog.", "");
@@ -439,7 +438,7 @@ public:
const wxString& message, const wxString& message,
const wxString& caption = wxPyGetTextFromUserPromptStr, const wxString& caption = wxPyGetTextFromUserPromptStr,
const wxString& defaultValue = wxPyEmptyString, const wxString& defaultValue = wxPyEmptyString,
long style = wxOK | wxCANCEL | wxCENTRE, long style = wxTextEntryDialogStyle,
const wxPoint& pos = wxDefaultPosition), const wxPoint& pos = wxDefaultPosition),
"Constructor. Use ShowModal method to show the dialog.", ""); "Constructor. Use ShowModal method to show the dialog.", "");
@@ -455,6 +454,21 @@ or the original value if the user has pressed Cancel.", "");
//--------------------------------------------------------------------------- //---------------------------------------------------------------------------
MAKE_CONST_WXSTRING(GetPasswordFromUserPromptStr);
class wxPasswordEntryDialog : public wxTextEntryDialog
{
public:
wxPasswordEntryDialog(wxWindow *parent,
const wxString& message,
const wxString& caption = wxPyGetPasswordFromUserPromptStr,
const wxString& value = wxPyEmptyString,
long style = wxTextEntryDialogStyle,
const wxPoint& pos = wxDefaultPosition);
};
//---------------------------------------------------------------------------
DocStr(wxFontData, DocStr(wxFontData,
"This class holds a variety of information related to font dialogs and "This class holds a variety of information related to font dialogs and

View File

@@ -368,7 +368,7 @@ rows and columns.", "");
%extend { %extend {
DocAStr(Add, DocAStr(Add,
"Add(self, item, GBPosition pos, GBSpan span=DefaultSpan, int flag=0, "Add(self, item, GBPosition pos, GBSpan span=DefaultSpan, int flag=0,
int border=0, userData=None)", int border=0, userData=None) -> wx.GBSizerItem",
"Adds an item to the sizer at the grid cell *pos*, optionally spanning "Adds an item to the sizer at the grid cell *pos*, optionally spanning
more than one row or column as specified with *span*. The remaining more than one row or column as specified with *span*. The remaining
@@ -377,12 +377,12 @@ args behave similarly to `wx.Sizer.Add`.
Returns True if the item was successfully placed at the given cell Returns True if the item was successfully placed at the given cell
position, False if something was already there. position, False if something was already there.
", ""); ", "");
bool Add( PyObject* item, wxGBSizerItem* Add( PyObject* item,
const wxGBPosition& pos, const wxGBPosition& pos,
const wxGBSpan& span = wxDefaultSpan, const wxGBSpan& span = wxDefaultSpan,
int flag = 0, int flag = 0,
int border = 0, int border = 0,
PyObject* userData = NULL ) { PyObject* userData = NULL ) {
wxPyUserData* data = NULL; wxPyUserData* data = NULL;
bool blocked = wxPyBeginBlockThreads(); bool blocked = wxPyBeginBlockThreads();
@@ -393,19 +393,19 @@ position, False if something was already there.
// Now call the real Add method if a valid item type was found // Now call the real Add method if a valid item type was found
if ( info.window ) if ( info.window )
return self->Add(info.window, pos, span, flag, border, data); return (wxGBSizerItem*)self->Add(info.window, pos, span, flag, border, data);
else if ( info.sizer ) else if ( info.sizer )
return self->Add(info.sizer, pos, span, flag, border, data); return (wxGBSizerItem*)self->Add(info.sizer, pos, span, flag, border, data);
else if (info.gotSize) else if (info.gotSize)
return self->Add(info.size.GetWidth(), info.size.GetHeight(), return (wxGBSizerItem*)self->Add(info.size.GetWidth(), info.size.GetHeight(),
pos, span, flag, border, data); pos, span, flag, border, data);
return false; return NULL;
} }
} }
DocDeclAStrName( DocDeclAStrName(
bool , Add( wxGBSizerItem *item ), wxGBSizerItem* , Add( wxGBSizerItem *item ),
"Add(self, GBSizerItem item) -> bool", "Add(self, GBSizerItem item) -> wx.GBSizerItem",
"Add an item to the sizer using a `wx.GBSizerItem`. Returns True if "Add an item to the sizer using a `wx.GBSizerItem`. Returns True if
the item was successfully placed at its given cell position, False if the item was successfully placed at its given cell position, False if
something was already there.", "", something was already there.", "",

View File

@@ -428,6 +428,11 @@ public:
"Create a new Rect from a position and size.", "", "Create a new Rect from a position and size.", "",
RectPS); RectPS);
DocCtorStrName(
wxRect(const wxSize& size),
"Create a new Rect from a size only.", "",
RectS);
~wxRect(); ~wxRect();
int GetX() const; int GetX() const;

View File

@@ -30,7 +30,7 @@ public:
DocDeclA( DocDeclA(
bool, GetRGB(int pixel, byte* OUTPUT, byte* OUTPUT, byte* OUTPUT), bool, GetRGB(int pixel, byte* OUTPUT, byte* OUTPUT, byte* OUTPUT),
"GetRGB(int pixel) -> (R,G,B)"); "GetRGB(self, int pixel) -> (R,G,B)");
bool Ok(); bool Ok();

View File

@@ -80,6 +80,7 @@ public:
int GetQuality(); int GetQuality();
wxPrintBin GetBin(); wxPrintBin GetBin();
wxPrintMode GetPrintMode() const;
void SetNoCopies(int v); void SetNoCopies(int v);
void SetCollate(bool flag); void SetCollate(bool flag);
@@ -92,22 +93,29 @@ public:
void SetPaperSize(const wxSize& sz); void SetPaperSize(const wxSize& sz);
void SetQuality(int quality); void SetQuality(int quality);
void SetBin(wxPrintBin bin); void SetBin(wxPrintBin bin);
void SetPrintMode(wxPrintMode printMode);
wxString GetFilename() const;
void SetFilename( const wxString &filename );
%pythoncode { def __nonzero__(self): return self.Ok() }
// NOTE: These are now inside of #if WXWIN_COMPATIBILITY_2_4, so be
// prepared to remove them...
// PostScript-specific data // PostScript-specific data
const wxString& GetPrinterCommand(); const wxString& GetPrinterCommand();
const wxString& GetPrinterOptions(); const wxString& GetPrinterOptions();
const wxString& GetPreviewCommand(); const wxString& GetPreviewCommand();
const wxString& GetFilename();
const wxString& GetFontMetricPath(); const wxString& GetFontMetricPath();
double GetPrinterScaleX(); double GetPrinterScaleX();
double GetPrinterScaleY(); double GetPrinterScaleY();
long GetPrinterTranslateX(); long GetPrinterTranslateX();
long GetPrinterTranslateY(); long GetPrinterTranslateY();
wxPrintMode GetPrintMode();
void SetPrinterCommand(const wxString& command); void SetPrinterCommand(const wxString& command);
void SetPrinterOptions(const wxString& options); void SetPrinterOptions(const wxString& options);
void SetPreviewCommand(const wxString& command); void SetPreviewCommand(const wxString& command);
void SetFilename(const wxString& filename);
void SetFontMetricPath(const wxString& path); void SetFontMetricPath(const wxString& path);
void SetPrinterScaleX(double x); void SetPrinterScaleX(double x);
void SetPrinterScaleY(double y); void SetPrinterScaleY(double y);
@@ -115,12 +123,7 @@ public:
void SetPrinterTranslateX(long x); void SetPrinterTranslateX(long x);
void SetPrinterTranslateY(long y); void SetPrinterTranslateY(long y);
void SetPrinterTranslation(long x, long y); void SetPrinterTranslation(long x, long y);
void SetPrintMode(wxPrintMode printMode);
wxOutputStream* GetOutputStream();
void SetOutputStream(wxOutputStream* outputstream);
%pythoncode { def __nonzero__(self): return self.Ok() }
}; };
//--------------------------------------------------------------------------- //---------------------------------------------------------------------------
@@ -206,7 +209,10 @@ public:
bool GetSelection() const; bool GetSelection() const;
bool GetCollate() const; bool GetCollate() const;
bool GetPrintToFile() const; bool GetPrintToFile() const;
// WXWIN_COMPATIBILITY_2_4
bool GetSetupDialog() const; bool GetSetupDialog() const;
void SetSetupDialog(bool flag);
void SetFromPage(int v); void SetFromPage(int v);
void SetToPage(int v); void SetToPage(int v);
@@ -217,7 +223,6 @@ public:
void SetSelection(bool flag); void SetSelection(bool flag);
void SetCollate(bool flag); void SetCollate(bool flag);
void SetPrintToFile(bool flag); void SetPrintToFile(bool flag);
void SetSetupDialog(bool flag);
void EnablePrintToFile(bool flag); void EnablePrintToFile(bool flag);
void EnableSelection(bool flag); void EnableSelection(bool flag);
@@ -234,11 +239,6 @@ public:
wxPrintData& GetPrintData(); wxPrintData& GetPrintData();
// %addmethods {
// %new wxPrintData* GetPrintData() {
// return new wxPrintData(self->GetPrintData()); // force a copy
// }
// }
void SetPrintData(const wxPrintData& printData); void SetPrintData(const wxPrintData& printData);
%pythoncode { def __nonzero__(self): return self.Ok() } %pythoncode { def __nonzero__(self): return self.Ok() }
@@ -253,11 +253,16 @@ public:
wxPrintDialog(wxWindow* parent, wxPrintDialogData* data = NULL); wxPrintDialog(wxWindow* parent, wxPrintDialogData* data = NULL);
wxPrintDialogData& GetPrintDialogData(); // TODO?: wxPrintDialog(wxWindow *parent, wxPrintData* data);
virtual int ShowModal();
virtual wxPrintDialogData& GetPrintDialogData();
virtual wxPrintData& GetPrintData();
%newobject GetPrintDC; %newobject GetPrintDC;
wxDC* GetPrintDC(); virtual wxDC *GetPrintDC();
int ShowModal();
}; };
@@ -280,14 +285,16 @@ public:
wxPrinter(wxPrintDialogData* data = NULL); wxPrinter(wxPrintDialogData* data = NULL);
~wxPrinter(); ~wxPrinter();
void CreateAbortWindow(wxWindow* parent, wxPyPrintout* printout); virtual wxWindow *CreateAbortWindow(wxWindow *parent, wxPrintout *printout);
wxPrintDialogData& GetPrintDialogData(); virtual void ReportError(wxWindow *parent, wxPrintout *printout, const wxString& message);
bool Print(wxWindow *parent, wxPyPrintout *printout, int prompt=true);
wxDC* PrintDialog(wxWindow *parent);
void ReportError(wxWindow *parent, wxPyPrintout *printout, const wxString& message);
bool Setup(wxWindow *parent);
bool GetAbort();
virtual bool Setup(wxWindow *parent);
virtual bool Print(wxWindow *parent, wxPrintout *printout, bool prompt = true);
virtual wxDC* PrintDialog(wxWindow *parent);
virtual wxPrintDialogData& GetPrintDialogData() const;
bool GetAbort();
static wxPrinterError GetLastError(); static wxPrinterError GetLastError();
}; };
@@ -773,6 +780,100 @@ public:
void base_SetZoomControl(int zoom); void base_SetZoomControl(int zoom);
}; };
//---------------------------------------------------------------------------
// wxPrintFactory
//---------------------------------------------------------------------------
class wxPrintFactory
{
public:
// wxPrintFactory() {} *** It's an ABC
// virtual ~wxPrintFactory();
virtual wxPrinterBase *CreatePrinter( wxPrintDialogData* data );
%nokwargs CreatePrintPreview;
virtual wxPrintPreviewBase *CreatePrintPreview( wxPrintout *preview,
wxPrintout *printout = NULL,
wxPrintDialogData *data = NULL );
virtual wxPrintPreviewBase *CreatePrintPreview( wxPrintout *preview,
wxPrintout *printout,
wxPrintData *data );
%nokwargs CreatePrintDialog;
virtual wxPrintDialogBase *CreatePrintDialog( wxWindow *parent,
wxPrintDialogData *data = NULL );
virtual wxPrintDialogBase *CreatePrintDialog( wxWindow *parent,
wxPrintData *data );
// What to do and what to show in the wxPrintDialog
// a) Use the generic print setup dialog or a native one?
virtual bool HasPrintSetupDialog();
virtual wxDialog *CreatePrintSetupDialog( wxWindow *parent, wxPrintData *data );
// b) Provide the "print to file" option ourselves or via print setup?
virtual bool HasOwnPrintToFile();
// c) Show current printer
virtual bool HasPrinterLine();
virtual wxString CreatePrinterLine();
// d) Show Status line for current printer?
virtual bool HasStatusLine();
virtual wxString CreateStatusLine();
virtual wxPrintNativeDataBase *CreatePrintNativeData();
static void SetPrintFactory( wxPrintFactory *factory );
static wxPrintFactory *GetFactory();
//static wxPrintFactory *m_factory;
};
// class wxNativePrintFactory: public wxPrintFactory
// {
// public:
// virtual wxPrinterBase *CreatePrinter( wxPrintDialogData *data );
// virtual wxPrintPreviewBase *CreatePrintPreview( wxPrintout *preview,
// wxPrintout *printout = NULL,
// wxPrintDialogData *data = NULL );
// virtual wxPrintPreviewBase *CreatePrintPreview( wxPrintout *preview,
// wxPrintout *printout,
// wxPrintData *data );
// virtual wxPrintDialogBase *CreatePrintDialog( wxWindow *parent,
// wxPrintDialogData *data = NULL );
// virtual wxPrintDialogBase *CreatePrintDialog( wxWindow *parent,
// wxPrintData *data );
// virtual bool HasPrintSetupDialog();
// virtual wxDialog *CreatePrintSetupDialog( wxWindow *parent, wxPrintData *data );
// virtual bool HasOwnPrintToFile();
// virtual bool HasPrinterLine();
// virtual wxString CreatePrinterLine();
// virtual bool HasStatusLine();
// virtual wxString CreateStatusLine();
// virtual wxPrintNativeDataBase *CreatePrintNativeData();
// };
class wxPrintNativeDataBase: public wxObject
{
public:
wxPrintNativeDataBase();
virtual ~wxPrintNativeDataBase() {}
virtual bool TransferTo( wxPrintData &data ) = 0;
virtual bool TransferFrom( const wxPrintData &data ) = 0;
virtual bool Ok() const = 0;
int m_ref;
};
//--------------------------------------------------------------------------- //---------------------------------------------------------------------------
//--------------------------------------------------------------------------- //---------------------------------------------------------------------------

View File

@@ -57,9 +57,7 @@ public:
void Clear(); void Clear();
#ifndef __WXMAC__
bool Offset(wxCoord x, wxCoord y); bool Offset(wxCoord x, wxCoord y);
#endif
wxRegionContain Contains(wxCoord x, wxCoord y); wxRegionContain Contains(wxCoord x, wxCoord y);
%name(ContainsPoint)wxRegionContain Contains(const wxPoint& pt); %name(ContainsPoint)wxRegionContain Contains(const wxPoint& pt);

View File

@@ -147,6 +147,10 @@ added, if needed.", "");
float , GetRatio(), float , GetRatio(),
"Set the ratio item attribute.", ""); "Set the ratio item attribute.", "");
DocDeclStr(
wxRect , GetRect(),
"Returns the rectangle that the sizer item should occupy", "");
DocDeclStr( DocDeclStr(
bool , IsWindow(), bool , IsWindow(),
@@ -378,7 +382,7 @@ public:
DocAStr(Add, DocAStr(Add,
"Add(self, item, int proportion=0, int flag=0, int border=0, "Add(self, item, int proportion=0, int flag=0, int border=0,
PyObject userData=None)", PyObject userData=None) -> wx.SizerItem",
"Appends a child item to the sizer.", " "Appends a child item to the sizer.", "
@@ -477,8 +481,8 @@ public:
is more complex than the *proportion* and *flag* will allow for. is more complex than the *proportion* and *flag* will allow for.
"); ");
void Add(PyObject* item, int proportion=0, int flag=0, int border=0, wxSizerItem* Add(PyObject* item, int proportion=0, int flag=0, int border=0,
PyObject* userData=NULL) { PyObject* userData=NULL) {
wxPyUserData* data = NULL; wxPyUserData* data = NULL;
bool blocked = wxPyBeginBlockThreads(); bool blocked = wxPyBeginBlockThreads();
@@ -489,25 +493,27 @@ public:
// Now call the real Add method if a valid item type was found // Now call the real Add method if a valid item type was found
if ( info.window ) if ( info.window )
self->Add(info.window, proportion, flag, border, data); return self->Add(info.window, proportion, flag, border, data);
else if ( info.sizer ) else if ( info.sizer )
self->Add(info.sizer, proportion, flag, border, data); return self->Add(info.sizer, proportion, flag, border, data);
else if (info.gotSize) else if (info.gotSize)
self->Add(info.size.GetWidth(), info.size.GetHeight(), return self->Add(info.size.GetWidth(), info.size.GetHeight(),
proportion, flag, border, data); proportion, flag, border, data);
else
return NULL;
} }
// virtual void AddSpacer(int size); // virtual wxSizerItem* AddSpacer(int size);
// virtual void AddStretchSpacer(int prop = 1); // virtual wxSizerItem* AddStretchSpacer(int prop = 1);
DocAStr(Insert, DocAStr(Insert,
"Insert(self, int before, item, int proportion=0, int flag=0, int border=0, "Insert(self, int before, item, int proportion=0, int flag=0, int border=0,
PyObject userData=None)", PyObject userData=None) -> wx.SizerItem",
"Inserts a new item into the list of items managed by this sizer before "Inserts a new item into the list of items managed by this sizer before
the item at index *before*. See `Add` for a description of the parameters.", ""); the item at index *before*. See `Add` for a description of the parameters.", "");
void Insert(int before, PyObject* item, int proportion=0, int flag=0, wxSizerItem* Insert(int before, PyObject* item, int proportion=0, int flag=0,
int border=0, PyObject* userData=NULL) { int border=0, PyObject* userData=NULL) {
wxPyUserData* data = NULL; wxPyUserData* data = NULL;
bool blocked = wxPyBeginBlockThreads(); bool blocked = wxPyBeginBlockThreads();
@@ -518,26 +524,28 @@ the item at index *before*. See `Add` for a description of the parameters.", ""
// Now call the real Insert method if a valid item type was found // Now call the real Insert method if a valid item type was found
if ( info.window ) if ( info.window )
self->Insert(before, info.window, proportion, flag, border, data); return self->Insert(before, info.window, proportion, flag, border, data);
else if ( info.sizer ) else if ( info.sizer )
self->Insert(before, info.sizer, proportion, flag, border, data); return self->Insert(before, info.sizer, proportion, flag, border, data);
else if (info.gotSize) else if (info.gotSize)
self->Insert(before, info.size.GetWidth(), info.size.GetHeight(), return self->Insert(before, info.size.GetWidth(), info.size.GetHeight(),
proportion, flag, border, data); proportion, flag, border, data);
else
return NULL;
} }
// virtual void InsertSpacer(size_t index, int size); // virtual wxSizerItem* InsertSpacer(size_t index, int size);
// virtual void InsertStretchSpacer(size_t index, int prop = 1); // virtual wxSizerItem* InsertStretchSpacer(size_t index, int prop = 1);
DocAStr(Prepend, DocAStr(Prepend,
"Prepend(self, item, int proportion=0, int flag=0, int border=0, "Prepend(self, item, int proportion=0, int flag=0, int border=0,
PyObject userData=None)", PyObject userData=None) -> wx.SizerItem",
"Adds a new item to the begining of the list of sizer items managed by "Adds a new item to the begining of the list of sizer items managed by
this sizer. See `Add` for a description of the parameters.", ""); this sizer. See `Add` for a description of the parameters.", "");
void Prepend(PyObject* item, int proportion=0, int flag=0, int border=0, wxSizerItem* Prepend(PyObject* item, int proportion=0, int flag=0, int border=0,
PyObject* userData=NULL) { PyObject* userData=NULL) {
wxPyUserData* data = NULL; wxPyUserData* data = NULL;
bool blocked = wxPyBeginBlockThreads(); bool blocked = wxPyBeginBlockThreads();
@@ -548,16 +556,18 @@ this sizer. See `Add` for a description of the parameters.", "");
// Now call the real Prepend method if a valid item type was found // Now call the real Prepend method if a valid item type was found
if ( info.window ) if ( info.window )
self->Prepend(info.window, proportion, flag, border, data); return self->Prepend(info.window, proportion, flag, border, data);
else if ( info.sizer ) else if ( info.sizer )
self->Prepend(info.sizer, proportion, flag, border, data); return self->Prepend(info.sizer, proportion, flag, border, data);
else if (info.gotSize) else if (info.gotSize)
self->Prepend(info.size.GetWidth(), info.size.GetHeight(), return self->Prepend(info.size.GetWidth(), info.size.GetHeight(),
proportion, flag, border, data); proportion, flag, border, data);
else
return NULL;
} }
// virtual void PrependSpacer(int size); // virtual wxSizerItem* PrependSpacer(int size);
// virtual void PrependStretchSpacer(int prop = 1); // virtual wxSizerItem* PrependStretchSpacer(int prop = 1);
DocAStr(Remove, DocAStr(Remove,
"Remove(self, item) -> bool", "Remove(self, item) -> bool",
@@ -610,6 +620,26 @@ was found and detached.", "");
} }
DocAStr(GetItem,
"GetItem(self, item) -> wx.SizerItem",
"Returns the `wx.SizerItem` which holds the *item* given. The *item*
parameter can be either a window, a sizer, or the zero-based index of
the item to be detached.", "");
wxSizerItem* GetItem(PyObject* item) {
bool blocked = wxPyBeginBlockThreads();
wxPySizerItemInfo info = wxPySizerItemTypeHelper(item, false, true);
wxPyEndBlockThreads(blocked);
if ( info.window )
return self->GetItem(info.window);
else if ( info.sizer )
return self->GetItem(info.sizer);
else if ( info.gotPos )
return self->GetItem(info.pos);
else
return NULL;
}
void _SetItemMinSize(PyObject* item, const wxSize& size) { void _SetItemMinSize(PyObject* item, const wxSize& size) {
bool blocked = wxPyBeginBlockThreads(); bool blocked = wxPyBeginBlockThreads();
wxPySizerItemInfo info = wxPySizerItemTypeHelper(item, false, true); wxPySizerItemInfo info = wxPySizerItemTypeHelper(item, false, true);
@@ -641,19 +671,19 @@ was found and detached.", "");
} }
DocDeclAStrName( DocDeclAStrName(
void , Add( wxSizerItem *item ), wxSizerItem* , Add( wxSizerItem *item ),
"AddItem(self, SizerItem item)", "AddItem(self, SizerItem item)",
"Adds a `wx.SizerItem` to the sizer.", "", "Adds a `wx.SizerItem` to the sizer.", "",
AddItem); AddItem);
DocDeclAStrName( DocDeclAStrName(
void , Insert( size_t index, wxSizerItem *item ), wxSizerItem* , Insert( size_t index, wxSizerItem *item ),
"InsertItem(self, int index, SizerItem item)", "InsertItem(self, int index, SizerItem item)",
"Inserts a `wx.SizerItem` to the sizer at the position given by *index*.", "", "Inserts a `wx.SizerItem` to the sizer at the position given by *index*.", "",
InsertItem); InsertItem);
DocDeclAStrName( DocDeclAStrName(
void , Prepend( wxSizerItem *item ), wxSizerItem* , Prepend( wxSizerItem *item ),
"PrependItem(self, SizerItem item)", "PrependItem(self, SizerItem item)",
"Prepends a `wx.SizerItem` to the sizer.", "", "Prepends a `wx.SizerItem` to the sizer.", "",
PrependItem); PrependItem);

View File

@@ -40,7 +40,7 @@ public:
wxObject* GetParent() { return m_parent; } wxObject* GetParent() { return m_parent; }
wxObject* GetInstance() { return m_instance; } wxObject* GetInstance() { return m_instance; }
wxWindow* GetParentAsWindow() { return m_parentAsWindow; } wxWindow* GetParentAsWindow() { return m_parentAsWindow; }
wxWindow* GetInstanceAsWindow() { return m_instanceAsWindow; } // wxWindow* GetInstanceAsWindow() { return m_instanceAsWindow; }
// turn some protected methods into public via delegation // turn some protected methods into public via delegation
@@ -166,7 +166,7 @@ public:
wxObject* GetParent() { return m_parent; } wxObject* GetParent() { return m_parent; }
wxObject* GetInstance() { return m_instance; } wxObject* GetInstance() { return m_instance; }
wxWindow* GetParentAsWindow() { return m_parentAsWindow; } wxWindow* GetParentAsWindow() { return m_parentAsWindow; }
wxWindow* GetInstanceAsWindow() { return m_instanceAsWindow; } // wxWindow* GetInstanceAsWindow() { return m_instanceAsWindow; }
// Returns true if the node has a property class equal to classname, // Returns true if the node has a property class equal to classname,

View File

@@ -2010,6 +2010,14 @@ public:
wxWindow* GetGridColLabelWindow(); wxWindow* GetGridColLabelWindow();
wxWindow* GetGridCornerLabelWindow(); wxWindow* GetGridCornerLabelWindow();
// Allow adjustment of scroll increment. The default is (15, 15).
void SetScrollLineX(int x);
void SetScrollLineY(int y);
int GetScrollLineX() const;
int GetScrollLineY() const;
int GetScrollX(int x) const;
int GetScrollY(int y) const;
static wxVisualAttributes static wxVisualAttributes
GetClassDefaultAttributes(wxWindowVariant variant = wxWINDOW_VARIANT_NORMAL); GetClassDefaultAttributes(wxWindowVariant variant = wxWINDOW_VARIANT_NORMAL);

View File

@@ -1045,7 +1045,7 @@ public:
void PreviewText(const wxString &htmltext, const wxString& basepath = wxPyEmptyString); void PreviewText(const wxString &htmltext, const wxString& basepath = wxPyEmptyString);
void PrintFile(const wxString &htmlfile); void PrintFile(const wxString &htmlfile);
void PrintText(const wxString &htmltext, const wxString& basepath = wxPyEmptyString); void PrintText(const wxString &htmltext, const wxString& basepath = wxPyEmptyString);
void PrinterSetup(); // void PrinterSetup();
void PageSetup(); void PageSetup();
void SetHeader(const wxString& header, int pg = wxPAGE_ALL); void SetHeader(const wxString& header, int pg = wxPAGE_ALL);
void SetFooter(const wxString& footer, int pg = wxPAGE_ALL); void SetFooter(const wxString& footer, int pg = wxPAGE_ALL);

View File

@@ -298,6 +298,9 @@ class XmlResApp:
if node.GetName() == "bitmap": if node.GetName() == "bitmap":
return True return True
if node.GetName() == "icon":
return True
# URLs in wxHtmlWindow: # URLs in wxHtmlWindow:
if node.GetName() == "url": if node.GetName() == "url":
return True return True

View File

@@ -624,6 +624,7 @@ wxRect = wx._core.Rect
wxRectPtr = wx._core.RectPtr wxRectPtr = wx._core.RectPtr
wxRectPP = wx._core.RectPP wxRectPP = wx._core.RectPP
wxRectPS = wx._core.RectPS wxRectPS = wx._core.RectPS
wxRectS = wx._core.RectS
wxIntersectRect = wx._core.IntersectRect wxIntersectRect = wx._core.IntersectRect
wxPoint2D = wx._core.Point2D wxPoint2D = wx._core.Point2D
wxPoint2DPtr = wx._core.Point2DPtr wxPoint2DPtr = wx._core.Point2DPtr

View File

@@ -215,6 +215,9 @@ wxSingleChoiceDialog = wx._windows.SingleChoiceDialog
wxSingleChoiceDialogPtr = wx._windows.SingleChoiceDialogPtr wxSingleChoiceDialogPtr = wx._windows.SingleChoiceDialogPtr
wxTextEntryDialog = wx._windows.TextEntryDialog wxTextEntryDialog = wx._windows.TextEntryDialog
wxTextEntryDialogPtr = wx._windows.TextEntryDialogPtr wxTextEntryDialogPtr = wx._windows.TextEntryDialogPtr
wxGetPasswordFromUserPromptStr = wx._windows.GetPasswordFromUserPromptStr
wxPasswordEntryDialog = wx._windows.PasswordEntryDialog
wxPasswordEntryDialogPtr = wx._windows.PasswordEntryDialogPtr
wxFontData = wx._windows.FontData wxFontData = wx._windows.FontData
wxFontDataPtr = wx._windows.FontDataPtr wxFontDataPtr = wx._windows.FontDataPtr
wxFontDialog = wx._windows.FontDialog wxFontDialog = wx._windows.FontDialog
@@ -338,6 +341,12 @@ wxPyPreviewFrame = wx._windows.PyPreviewFrame
wxPyPreviewFramePtr = wx._windows.PyPreviewFramePtr wxPyPreviewFramePtr = wx._windows.PyPreviewFramePtr
wxPyPreviewControlBar = wx._windows.PyPreviewControlBar wxPyPreviewControlBar = wx._windows.PyPreviewControlBar
wxPyPreviewControlBarPtr = wx._windows.PyPreviewControlBarPtr wxPyPreviewControlBarPtr = wx._windows.PyPreviewControlBarPtr
wxPrintFactory = wx._windows.PrintFactory
wxPrintFactoryPtr = wx._windows.PrintFactoryPtr
wxPrintFactory_SetPrintFactory = wx._windows.PrintFactory_SetPrintFactory
wxPrintFactory_GetFactory = wx._windows.PrintFactory_GetFactory
wxPrintNativeDataBase = wx._windows.PrintNativeDataBase
wxPrintNativeDataBasePtr = wx._windows.PrintNativeDataBasePtr
d = globals() d = globals()