]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/src/misc2.i
fixed bad overflow bug in wxX11 timer
[wxWidgets.git] / wxPython / src / misc2.i
index d36e1db32636d38bc93bff460cf322a6a8de0a7d..db800a4455614cc215c646ee15357031e9ff23b5 100644 (file)
@@ -32,6 +32,9 @@
 #endif
 
 #include <wx/mimetype.h>
+#include <wx/snglinst.h>
+#include <wx/effects.h>
+//#include <wx/spawnbrowser.h>
 %}
 
 //----------------------------------------------------------------------
@@ -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);
 %}
 
 
@@ -468,6 +473,9 @@ IMP_PYCALLBACK_STRING__pure( wxPyTipProvider, wxTipProvider, GetTip);
 class wxPyTipProvider : public wxTipProvider {
 public:
     wxPyTipProvider(size_t currentTip);
+
+    void _setCallbackInfo(PyObject* self, PyObject* _class);
+    %pragma(python) addtomethod = "__init__:self._setCallbackInfo(self, wxPyTipProvider)"
 };
 
 
@@ -611,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();
@@ -848,7 +857,7 @@ public:
     // on error NULL is returned, in any case the process object will be
     // deleted automatically when the process terminates and should *not* be
     // deleted by the caller
-    static wxPyProcess *Open(const wxString& cmd);
+    static wxPyProcess *Open(const wxString& cmd, int flags = wxEXEC_ASYNC);
 
 
 
@@ -869,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;
 };
 
 
@@ -1456,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  {
@@ -1607,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) \