]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/src/_app.i
GetData can only be called within the DnD operation, so don't make it
[wxWidgets.git] / wxPython / src / _app.i
index d28c88992cb22f441c665d59d77442c0806f0a07..4c7ff5f139307c017e1c6b4518da9fa2309cbc18 100644 (file)
@@ -48,8 +48,9 @@ class wxPyApp : public wxEvtHandler {
 public:
 
     %pythonAppend wxPyApp
 public:
 
     %pythonAppend wxPyApp
-       "self._setCallbackInfo(self, PyApp)
-        self._setOORInfo(self)";
+       "self._setCallbackInfo(self, PyApp, False)
+        self._setOORInfo(self, False)";
+    %typemap(out) wxPyApp*;    // turn off this typemap
 
     DocStr(wxPyApp,
            "Create a new application object, starting the bootstrap process.", "");
 
     DocStr(wxPyApp,
            "Create a new application object, starting the bootstrap process.", "");
@@ -62,7 +63,11 @@ public:
 
     ~wxPyApp();
 
 
     ~wxPyApp();
 
-    void _setCallbackInfo(PyObject* self, PyObject* _class);
+    // Turn it back on again
+    %typemap(out) wxPyApp* { $result = wxPyMake_wxObject($1, $owner); }
+
+
+    void _setCallbackInfo(PyObject* self, PyObject* _class, bool incref);
 
 
     DocDeclStr(
 
 
     DocDeclStr(
@@ -110,7 +115,7 @@ during each event loop iteration.", "");
 
 
     DocDeclStr(
 
 
     DocDeclStr(
-        virtual bool, Yield(bool onlyIfNeeded = False),
+        virtual bool, Yield(bool onlyIfNeeded = false),
         "Process all currently pending events right now, instead of waiting
 until return to the event loop.  It is an error to call ``Yield``
 recursively unless the value of ``onlyIfNeeded`` is True.
         "Process all currently pending events right now, instead of waiting
 until return to the event loop.  It is an error to call ``Yield``
 recursively unless the value of ``onlyIfNeeded`` is True.
@@ -129,6 +134,12 @@ recursively unless the value of ``onlyIfNeeded`` is True.
         "Make sure that idle events are sent again.
 :see: `wx.WakeUpIdle`", "");
 
         "Make sure that idle events are sent again.
 :see: `wx.WakeUpIdle`", "");
 
+    
+    DocDeclStr(
+        static bool , IsMainLoopRunning() const,
+        "Returns True if we're running the main loop, i.e. if the events can
+currently be dispatched.", "");
+    
 
     DocDeclStr(
         virtual int, MainLoop(),
 
     DocDeclStr(
         virtual int, MainLoop(),
@@ -142,6 +153,11 @@ all top level windows have been closed and destroyed.", "");
 :see: `wx.Exit`", "");
 
     
 :see: `wx.Exit`", "");
 
     
+    DocDeclStr(
+        virtual wxLayoutDirection , GetLayoutDirection() const,
+        "Return the layout direction for the current locale.", "");
+    
+    
     DocDeclStr(
         virtual void, ExitMainLoop(),
         "Exit the main GUI loop during the next iteration of the main
     DocDeclStr(
         virtual void, ExitMainLoop(),
         "Exit the main GUI loop during the next iteration of the main
@@ -251,13 +267,13 @@ systems where more than one is available, (Sun, SGI, XFree86 4, etc.)", "");
         "Get the current OnAssert behaviour setting.", "");
 
 
         "Get the current OnAssert behaviour setting.", "");
 
 
-    static bool GetMacSupportPCMenuShortcuts();
+    static bool GetMacSupportPCMenuShortcuts();  // TODO, deprecate this
     static long GetMacAboutMenuItemId();
     static long GetMacPreferencesMenuItemId();
     static long GetMacExitMenuItemId();
     static wxString GetMacHelpMenuTitleName();
 
     static long GetMacAboutMenuItemId();
     static long GetMacPreferencesMenuItemId();
     static long GetMacExitMenuItemId();
     static wxString GetMacHelpMenuTitleName();
 
-    static void SetMacSupportPCMenuShortcuts(bool val);
+    static void SetMacSupportPCMenuShortcuts(bool val);  // TODO, deprecate this
     static void SetMacAboutMenuItemId(long val);
     static void SetMacPreferencesMenuItemId(long val);
     static void SetMacExitMenuItemId(long val);
     static void SetMacAboutMenuItemId(long val);
     static void SetMacPreferencesMenuItemId(long val);
     static void SetMacExitMenuItemId(long val);
@@ -279,6 +295,41 @@ it wasn't found at all.  Raises an exception on non-Windows platforms.", "");
             { wxPyRaiseNotImplemented(); return 0; }
     }
 #endif
             { wxPyRaiseNotImplemented(); return 0; }
     }
 #endif
+
+    %extend {
+        DocStr(IsDisplayAvailable,
+               "Tests if it is possible to create a GUI in the current environment.
+This will mean different things on the different platforms.
+
+   * On X Windows systems this function will return ``False`` if it is
+     not able to open a connection to the X display, which can happen
+     if $DISPLAY is not set, or is not set correctly.
+
+   * On Mac OS X a ``False`` return value will mean that wx is not
+     able to access the window manager, which can happen if logged in
+     remotely or if running from the normal version of python instead
+     of the framework version, (i.e., pythonw.)
+
+   * On MS Windows...
+", "");
+        static bool IsDisplayAvailable() {
+            return wxPyTestDisplayAvailable();
+        }
+    }
+
+    
+    %property(AppName, GetAppName, SetAppName, doc="See `GetAppName` and `SetAppName`");
+    %property(AssertMode, GetAssertMode, SetAssertMode, doc="See `GetAssertMode` and `SetAssertMode`");
+    %property(ClassName, GetClassName, SetClassName, doc="See `GetClassName` and `SetClassName`");
+    %property(ExitOnFrameDelete, GetExitOnFrameDelete, SetExitOnFrameDelete, doc="See `GetExitOnFrameDelete` and `SetExitOnFrameDelete`");
+    %property(LayoutDirection, GetLayoutDirection, doc="See `GetLayoutDirection`");
+    %property(PrintMode, GetPrintMode, SetPrintMode, doc="See `GetPrintMode` and `SetPrintMode`");
+    %property(TopWindow, GetTopWindow, SetTopWindow, doc="See `GetTopWindow` and `SetTopWindow`");
+    %property(Traits, GetTraits, doc="See `GetTraits`");
+    %property(UseBestVisual, GetUseBestVisual, SetUseBestVisual, doc="See `GetUseBestVisual` and `SetUseBestVisual`");
+    %property(VendorName, GetVendorName, SetVendorName, doc="See `GetVendorName` and `SetVendorName`");
+
+    %property(Active, IsActive);
 };
 
 
 };
 
 
@@ -302,7 +353,7 @@ DocDeclStr(
 
 
 DocDeclStr(
 
 
 DocDeclStr(
-    bool, wxSafeYield(wxWindow* win=NULL, bool onlyIfNeeded=False),
+    bool, wxSafeYield(wxWindow* win=NULL, bool onlyIfNeeded=false),
     "This function is similar to `wx.Yield`, except that it disables the
 user input to all program windows before calling `wx.Yield` and
 re-enables it again afterwards. If ``win`` is not None, this window
     "This function is similar to `wx.Yield`, except that it disables the
 user input to all program windows before calling `wx.Yield` and
 re-enables it again afterwards. If ``win`` is not None, this window
@@ -334,15 +385,37 @@ Python shuts down.", "");
 %} 
 
 
 %} 
 
 
-DocStr(wxGetApp,
-       "Return a reference to the current wx.App object.", "");
-%inline %{
-    wxPyApp* wxGetApp() {
-        return (wxPyApp*)wxTheApp;
-    }
+DocDeclStrName(
+    wxPyApp* , wxPyGetApp(),
+    "Return a reference to the current wx.App object.", "",
+    GetApp);
+%{
+    wxPyApp* wxPyGetApp() { return (wxPyApp*)wxTheApp; }
 %}
 
 
 %}
 
 
+
+
+
+DocDeclAStr(
+    void , wxSetDefaultPyEncoding(const char* encoding),
+    "SetDefaultPyEncoding(string encoding)",
+    "Sets the encoding that wxPython will use when it needs to convert a
+Python string or unicode object to or from a wxString.
+
+The default encoding is the value of ``locale.getdefaultlocale()[1]``
+but please be aware that the default encoding within the same locale
+may be slightly different on different platforms.  For example, please
+see http://www.alanwood.net/demos/charsetdiffs.html for differences
+between the common latin/roman encodings.", "");
+
+DocDeclAStr(
+    const char* , wxGetDefaultPyEncoding(),
+    "GetDefaultPyEncoding() -> string",
+    "Gets the current encoding that wxPython will use when it needs to
+convert a Python string or unicode object to or from a wxString.", "");
+
+
 //---------------------------------------------------------------------------
 // Include some extra wxApp related python code here
 
 //---------------------------------------------------------------------------
 // Include some extra wxApp related python code here