X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/cf27687318294d9067459170e20dedcc4d1cebc8..9750481f368dceba820004ab479d31deb4860253:/wxPython/src/misc2.i diff --git a/wxPython/src/misc2.i b/wxPython/src/misc2.i index 5e080982f0..db800a4455 100644 --- a/wxPython/src/misc2.i +++ b/wxPython/src/misc2.i @@ -32,6 +32,9 @@ #endif #include +#include +#include +//#include %} //---------------------------------------------------------------------- @@ -175,6 +178,8 @@ void wxFlushEvents(); wxWindow* wxGetTopLevelParent(wxWindow *win); +//bool wxSpawnBrowser(wxWindow *parent, wxString href); + //--------------------------------------------------------------------------- // Resource System @@ -443,7 +448,7 @@ public: virtual wxString GetTip() = 0; size_t GetCurrentTip(); - + virtual wxString PreprocessTip(const wxString& tip); }; @@ -455,12 +460,12 @@ public: : wxTipProvider(currentTip) {} DEC_PYCALLBACK_STRING__pure(GetTip); - + DEC_PYCALLBACK_STRING_STRING(PreprocessTip); PYPRIVATE; }; IMP_PYCALLBACK_STRING__pure( wxPyTipProvider, wxTipProvider, GetTip); - +IMP_PYCALLBACK_STRING_STRING(wxPyTipProvider, wxTipProvider, PreprocessTip); %} @@ -614,6 +619,7 @@ public: static void AddTraceMask(const wxString& str); static void RemoveTraceMask(const wxString& str); static void ClearTraceMasks(); + static const wxArrayString &GetTraceMasks(); static void SetTimestamp(const wxString& ts); static const wxString& GetTimestamp(); @@ -872,6 +878,13 @@ public: wxOutputStream *GetOutputStream(); void CloseOutput(); + + // return TRUE if the child process stdout is not closed + bool IsInputOpened() const; + + // return TRUE if any input is available on the child process stdout/err + bool IsInputAvailable() const; + bool IsErrorAvailable() const; }; @@ -1459,49 +1472,48 @@ extern wxMimeTypesManager* wxTheMimeTypesManager; %} -// Art clients -#define wxART_TOOLBAR "toolbar_C" -#define wxART_MENU "menu_C" -#define wxART_FRAME_ICON "frame_icon_C" - -#define wxART_CMN_DIALOG "cmn_dialog_C" -#define wxART_HELP_BROWSER "help_browser_C" -#define wxART_MESSAGE_BOX "message_box_C" - -#define wxART_OTHER "other_C" - -// Art IDs -#define wxART_ADD_BOOKMARK "add_bookmark" -#define wxART_DEL_BOOKMARK "del_bookmark" -#define wxART_HELP_SIDE_PANEL "help_side_panel" -#define wxART_HELP_SETTINGS "help_settings" -#define wxART_HELP_BOOK "help_book" -#define wxART_HELP_FOLDER "help_folder" -#define wxART_HELP_PAGE "help_page" -#define wxART_GO_BACK "go_back" -#define wxART_GO_FORWARD "go_forward" -#define wxART_GO_UP "go_up" -#define wxART_GO_DOWN "go_down" -#define wxART_GO_TO_PARENT "go_to_parent" -#define wxART_GO_HOME "go_home" -#define wxART_FILE_OPEN "file_open" -#define wxART_PRINT "print" -#define wxART_HELP "help" -#define wxART_TIP "tip" -#define wxART_REPORT_VIEW "report_view" -#define wxART_LIST_VIEW "list_view" -#define wxART_NEW_DIR "new_dir" -#define wxART_FOLDER "folder" -#define wxART_GO_DIR_UP "go_dir_up" -#define wxART_EXECUTABLE_FILE "executable_file" -#define wxART_NORMAL_FILE "normal_file" -#define wxART_TICK_MARK "tick" -#define wxART_CROSS_MARK "cross" -#define wxART_ERROR "error" -#define wxART_QUESTION "question" -#define wxART_WARNING "warning" -#define wxART_INFORMATION "information" - +%pragma(python) code = " +# Art clients +wxART_TOOLBAR = 'wxART_TOOLBAR_C' +wxART_MENU = 'wxART_MENU_C' +wxART_FRAME_ICON = 'wxART_FRAME_ICON_C' +wxART_CMN_DIALOG = 'wxART_CMN_DIALOG_C' +wxART_HELP_BROWSER = 'wxART_HELP_BROWSER_C' +wxART_MESSAGE_BOX = 'wxART_MESSAGE_BOX_C' +wxART_OTHER = 'wxART_OTHER_C' + +# Art IDs +wxART_ADD_BOOKMARK = 'wxART_ADD_BOOKMARK' +wxART_DEL_BOOKMARK = 'wxART_DEL_BOOKMARK' +wxART_HELP_SIDE_PANEL = 'wxART_HELP_SIDE_PANEL' +wxART_HELP_SETTINGS = 'wxART_HELP_SETTINGS' +wxART_HELP_BOOK = 'wxART_HELP_BOOK' +wxART_HELP_FOLDER = 'wxART_HELP_FOLDER' +wxART_HELP_PAGE = 'wxART_HELP_PAGE' +wxART_GO_BACK = 'wxART_GO_BACK' +wxART_GO_FORWARD = 'wxART_GO_FORWARD' +wxART_GO_UP = 'wxART_GO_UP' +wxART_GO_DOWN = 'wxART_GO_DOWN' +wxART_GO_TO_PARENT = 'wxART_GO_TO_PARENT' +wxART_GO_HOME = 'wxART_GO_HOME' +wxART_FILE_OPEN = 'wxART_FILE_OPEN' +wxART_PRINT = 'wxART_PRINT' +wxART_HELP = 'wxART_HELP' +wxART_TIP = 'wxART_TIP' +wxART_REPORT_VIEW = 'wxART_REPORT_VIEW' +wxART_LIST_VIEW = 'wxART_LIST_VIEW' +wxART_NEW_DIR = 'wxART_NEW_DIR' +wxART_FOLDER = 'wxART_FOLDER' +wxART_GO_DIR_UP = 'wxART_GO_DIR_UP' +wxART_EXECUTABLE_FILE = 'wxART_EXECUTABLE_FILE' +wxART_NORMAL_FILE = 'wxART_NORMAL_FILE' +wxART_TICK_MARK = 'wxART_TICK_MARK' +wxART_CROSS_MARK = 'wxART_CROSS_MARK' +wxART_ERROR = 'wxART_ERROR' +wxART_QUESTION = 'wxART_QUESTION' +wxART_WARNING = 'wxART_WARNING' +wxART_INFORMATION = 'wxART_INFORMATION' +" %{ // Python aware wxArtProvider class wxPyArtProvider : public wxArtProvider { @@ -1610,8 +1622,70 @@ public: }; //---------------------------------------------------------------------- + +class wxEffects: public wxObject +{ +public: + // Assume system colours + wxEffects(); + + wxColour GetHighlightColour() const; + wxColour GetLightShadow() const; + wxColour GetFaceColour() const; + wxColour GetMediumShadow() const; + wxColour GetDarkShadow() const; + + void SetHighlightColour(const wxColour& c); + void SetLightShadow(const wxColour& c); + void SetFaceColour(const wxColour& c); + void SetMediumShadow(const wxColour& c); + void SetDarkShadow(const wxColour& c); + + void Set(const wxColour& highlightColour, const wxColour& lightShadow, + const wxColour& faceColour, const wxColour& mediumShadow, + const wxColour& darkShadow); + + // Draw a sunken edge + void DrawSunkenEdge(wxDC& dc, const wxRect& rect, int borderSize = 1); + + // Tile a bitmap + bool TileBitmap(const wxRect& rect, wxDC& dc, wxBitmap& bitmap); + +}; + +//---------------------------------------------------------------------- + +class wxSingleInstanceChecker +{ +public: + // like Create() but no error checking (dangerous!) + wxSingleInstanceChecker(const wxString& name, + const wxString& path = wxPyEmptyString); + + // default ctor, use Create() after it + %name(wxPreSingleInstanceChecker) wxSingleInstanceChecker(); + + ~wxSingleInstanceChecker(); + + + // name must be given and be as unique as possible, it is used as the mutex + // name under Win32 and the lock file name under Unix - + // wxTheApp->GetAppName() may be a good value for this parameter + // + // path is optional and is ignored under Win32 and used as the directory to + // create the lock file in under Unix (default is wxGetHomeDir()) + // + // returns FALSE if initialization failed, it doesn't mean that another + // instance is running - use IsAnotherRunning() to check it + bool Create(const wxString& name, const wxString& path = wxPyEmptyString); + + // is another copy of this program already running? + bool IsAnotherRunning() const; +}; + //---------------------------------------------------------------------- + // %{ // #if wxUSE_UNICODE // #define ADD_STRING(dict, str) \