]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/src/msw/_misc.py
Allow the OOR reference to be saved without doing an INCREF. This
[wxWidgets.git] / wxPython / src / msw / _misc.py
index a8e6ecea5e13c0273501f75dca1904e3f0a6118f..48eea84e7f82bf6b0f7f897b45ed5e14e425e2aa 100644 (file)
@@ -205,6 +205,8 @@ class SystemOptionsPtr(SystemOptions):
         if not hasattr(self,"thisown"): self.thisown = 0
         self.__class__ = SystemOptions
 _misc_.SystemOptions_swigregister(SystemOptionsPtr)
+cvar = _misc_.cvar
+WINDOW_DEFAULT_VARIANT = cvar.WINDOW_DEFAULT_VARIANT
 
 def SystemOptions_SetOption(*args, **kwargs):
     """SystemOptions_SetOption(String name, String value)"""
@@ -241,6 +243,18 @@ def GetCurrentId(*args, **kwargs):
     """GetCurrentId() -> long"""
     return _misc_.GetCurrentId(*args, **kwargs)
 
+def IsStockID(*args, **kwargs):
+    """IsStockID(int id) -> bool"""
+    return _misc_.IsStockID(*args, **kwargs)
+
+def IsStockLabel(*args, **kwargs):
+    """IsStockLabel(int id, String label) -> bool"""
+    return _misc_.IsStockLabel(*args, **kwargs)
+
+def GetStockLabel(*args, **kwargs):
+    """GetStockLabel(int id) -> String"""
+    return _misc_.GetStockLabel(*args, **kwargs)
+
 def Bell(*args, **kwargs):
     """Bell()"""
     return _misc_.Bell(*args, **kwargs)
@@ -295,9 +309,14 @@ def Sleep(*args, **kwargs):
     """Sleep(int secs)"""
     return _misc_.Sleep(*args, **kwargs)
 
-def Usleep(*args, **kwargs):
-    """Usleep(unsigned long milliseconds)"""
-    return _misc_.Usleep(*args, **kwargs)
+def MilliSleep(*args, **kwargs):
+    """MilliSleep(unsigned long milliseconds)"""
+    return _misc_.MilliSleep(*args, **kwargs)
+
+def MicroSleep(*args, **kwargs):
+    """MicroSleep(unsigned long microseconds)"""
+    return _misc_.MicroSleep(*args, **kwargs)
+Usleep = MilliSleep 
 
 def EnableTopLevelWindows(*args, **kwargs):
     """EnableTopLevelWindows(bool enable)"""
@@ -527,7 +546,6 @@ class MutexGuiLockerPtr(MutexGuiLocker):
         if not hasattr(self,"thisown"): self.thisown = 0
         self.__class__ = MutexGuiLocker
 _misc_.MutexGuiLocker_swigregister(MutexGuiLockerPtr)
-cvar = _misc_.cvar
 FileSelectorPromptStr = cvar.FileSelectorPromptStr
 FileSelectorDefaultWildcardStr = cvar.FileSelectorDefaultWildcardStr
 DirSelectorPromptStr = cvar.DirSelectorPromptStr
@@ -775,7 +793,7 @@ class FileHistory(_core.Object):
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxFileHistory instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
-        """__init__(self, int maxFiles=9) -> FileHistory"""
+        """__init__(self, int maxFiles=9, int idBase=ID_FILE1) -> FileHistory"""
         newobj = _misc_.new_FileHistory(*args, **kwargs)
         self.this = newobj.this
         self.thisown = 1
@@ -1568,6 +1586,8 @@ KILL_BAD_SIGNAL = _misc_.KILL_BAD_SIGNAL
 KILL_ACCESS_DENIED = _misc_.KILL_ACCESS_DENIED
 KILL_NO_PROCESS = _misc_.KILL_NO_PROCESS
 KILL_ERROR = _misc_.KILL_ERROR
+KILL_NOCHILDREN = _misc_.KILL_NOCHILDREN
+KILL_CHILDREN = _misc_.KILL_CHILDREN
 SIGNONE = _misc_.SIGNONE
 SIGHUP = _misc_.SIGHUP
 SIGINT = _misc_.SIGINT
@@ -1589,7 +1609,7 @@ class Process(_core.EvtHandler):
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxPyProcess instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def Kill(*args, **kwargs):
-        """Kill(int pid, int sig=SIGTERM) -> int"""
+        """Kill(int pid, int sig=SIGTERM, int flags=KILL_NOCHILDREN) -> int"""
         return _misc_.Process_Kill(*args, **kwargs)
 
     Kill = staticmethod(Kill)
@@ -1668,7 +1688,7 @@ class ProcessPtr(Process):
 _misc_.Process_swigregister(ProcessPtr)
 
 def Process_Kill(*args, **kwargs):
-    """Process_Kill(int pid, int sig=SIGTERM) -> int"""
+    """Process_Kill(int pid, int sig=SIGTERM, int flags=KILL_NOCHILDREN) -> int"""
     return _misc_.Process_Kill(*args, **kwargs)
 
 def Process_Exists(*args, **kwargs):
@@ -1717,6 +1737,10 @@ EXEC_MAKE_GROUP_LEADER = _misc_.EXEC_MAKE_GROUP_LEADER
 def Execute(*args, **kwargs):
     """Execute(String command, int flags=EXEC_ASYNC, Process process=None) -> long"""
     return _misc_.Execute(*args, **kwargs)
+
+def Kill(*args, **kwargs):
+    """Kill(long pid, int sig=SIGTERM, int rc, int flags=KILL_NOCHILDREN) -> int"""
+    return _misc_.Kill(*args, **kwargs)
 #---------------------------------------------------------------------------
 
 JOYSTICK1 = _misc_.JOYSTICK1
@@ -2450,6 +2474,7 @@ ART_FRAME_ICON = cvar.ART_FRAME_ICON
 ART_CMN_DIALOG = cvar.ART_CMN_DIALOG
 ART_HELP_BROWSER = cvar.ART_HELP_BROWSER
 ART_MESSAGE_BOX = cvar.ART_MESSAGE_BOX
+ART_BUTTON = cvar.ART_BUTTON
 ART_OTHER = cvar.ART_OTHER
 ART_ADD_BOOKMARK = cvar.ART_ADD_BOOKMARK
 ART_DEL_BOOKMARK = cvar.ART_DEL_BOOKMARK
@@ -2471,7 +2496,12 @@ ART_TIP = cvar.ART_TIP
 ART_REPORT_VIEW = cvar.ART_REPORT_VIEW
 ART_LIST_VIEW = cvar.ART_LIST_VIEW
 ART_NEW_DIR = cvar.ART_NEW_DIR
+ART_HARDDISK = cvar.ART_HARDDISK
+ART_FLOPPY = cvar.ART_FLOPPY
+ART_CDROM = cvar.ART_CDROM
+ART_REMOVABLE = cvar.ART_REMOVABLE
 ART_FOLDER = cvar.ART_FOLDER
+ART_FOLDER_OPEN = cvar.ART_FOLDER_OPEN
 ART_GO_DIR_UP = cvar.ART_GO_DIR_UP
 ART_EXECUTABLE_FILE = cvar.ART_EXECUTABLE_FILE
 ART_NORMAL_FILE = cvar.ART_NORMAL_FILE
@@ -3273,7 +3303,11 @@ class DateTime(object):
 
     GetWeekDayName = staticmethod(GetWeekDayName)
     def GetAmPmStrings(*args, **kwargs):
-        """GetAmPmStrings() -> (am, pm)"""
+        """
+        GetAmPmStrings() -> (am, pm)
+
+        Get the AM and PM strings in the current locale (may be empty)
+        """
         return _misc_.DateTime_GetAmPmStrings(*args, **kwargs)
 
     GetAmPmStrings = staticmethod(GetAmPmStrings)
@@ -3418,6 +3452,14 @@ class DateTime(object):
         """GetWeek(self, int numWeek, int weekday=Mon, int flags=Monday_First) -> DateTime"""
         return _misc_.DateTime_GetWeek(*args, **kwargs)
 
+    SetToTheWeek = wx._deprecated(SetToTheWeek, "SetToTheWeek is deprecated, use (static) SetToWeekOfYear instead")
+    GetWeek = wx._deprecated(GetWeek, "GetWeek is deprecated, use GetWeekOfYear instead")
+
+    def SetToWeekOfYear(*args, **kwargs):
+        """SetToWeekOfYear(int year, int numWeek, int weekday=Mon) -> DateTime"""
+        return _misc_.DateTime_SetToWeekOfYear(*args, **kwargs)
+
+    SetToWeekOfYear = staticmethod(SetToWeekOfYear)
     def SetToLastMonthDay(*args, **kwargs):
         """SetToLastMonthDay(self, int month=Inv_Month, int year=Inv_Year) -> DateTime"""
         return _misc_.DateTime_SetToLastMonthDay(*args, **kwargs)
@@ -3747,7 +3789,11 @@ def DateTime_GetWeekDayName(*args, **kwargs):
     return _misc_.DateTime_GetWeekDayName(*args, **kwargs)
 
 def DateTime_GetAmPmStrings(*args, **kwargs):
-    """GetAmPmStrings() -> (am, pm)"""
+    """
+    GetAmPmStrings() -> (am, pm)
+
+    Get the AM and PM strings in the current locale (may be empty)
+    """
     return _misc_.DateTime_GetAmPmStrings(*args, **kwargs)
 
 def DateTime_IsDSTApplicable(*args, **kwargs):
@@ -3801,6 +3847,10 @@ def DateTimeFromDMY(*args, **kwargs):
     val.thisown = 1
     return val
 
+def DateTime_SetToWeekOfYear(*args, **kwargs):
+    """DateTime_SetToWeekOfYear(int year, int numWeek, int weekday=Mon) -> DateTime"""
+    return _misc_.DateTime_SetToWeekOfYear(*args, **kwargs)
+
 class TimeSpan(object):
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxTimeSpan instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
@@ -4854,7 +4904,11 @@ class FileDataObject(DataObjectSimple):
         self.thisown = 1
         del newobj.thisown
     def GetFilenames(*args, **kwargs):
-        """GetFilenames(self) -> [names]"""
+        """
+        GetFilenames(self) -> [names]
+
+        Returns a list of file names.
+        """
         return _misc_.FileDataObject_GetFilenames(*args, **kwargs)
 
     def AddFile(*args, **kwargs):
@@ -5340,6 +5394,15 @@ class Clipboard(_core.Object):
         """
         return _misc_.Clipboard_UsePrimarySelection(*args, **kwargs)
 
+    def Get(*args, **kwargs):
+        """
+        Get() -> Clipboard
+
+        Returns global instance (wxTheClipboard) of the object.
+        """
+        return _misc_.Clipboard_Get(*args, **kwargs)
+
+    Get = staticmethod(Get)
 
 class ClipboardPtr(Clipboard):
     def __init__(self, this):
@@ -5348,6 +5411,31 @@ class ClipboardPtr(Clipboard):
         self.__class__ = Clipboard
 _misc_.Clipboard_swigregister(ClipboardPtr)
 
+def Clipboard_Get(*args, **kwargs):
+    """
+    Clipboard_Get() -> Clipboard
+
+    Returns global instance (wxTheClipboard) of the object.
+    """
+    return _misc_.Clipboard_Get(*args, **kwargs)
+
+class _wxPyDelayedInitWrapper(object):
+    def __init__(self, initfunc, *args, **kwargs):
+        self._initfunc = initfunc
+        self._args = args
+        self._kwargs = kwargs
+        self._instance = None
+    def _checkInstance(self):
+        if self._instance is None:
+            self._instance = self._initfunc(*self._args, **self._kwargs)        
+    def __getattr__(self, name):
+        self._checkInstance()
+        return getattr(self._instance, name)
+    def __repr__(self):
+        self._checkInstance()
+        return repr(self._instance)
+TheClipboard = _wxPyDelayedInitWrapper(Clipboard.Get)
+
 class ClipboardLocker(object):
     """
     A helpful class for opening the clipboard and automatically
@@ -5388,7 +5476,6 @@ class ClipboardLockerPtr(ClipboardLocker):
         if not hasattr(self,"thisown"): self.thisown = 0
         self.__class__ = ClipboardLocker
 _misc_.ClipboardLocker_swigregister(ClipboardLockerPtr)
-TheClipboard = cvar.TheClipboard
 
 #---------------------------------------------------------------------------
 
@@ -5589,7 +5676,22 @@ class Display(object):
         """
         ChangeMode(self, VideoMode mode=DefaultVideoMode) -> bool
 
-        Change current mode, return true if succeeded, false otherwise
+        Changes the video mode of this display to the mode specified in the
+        mode parameter.
+
+        If wx.DefaultVideoMode is passed in as the mode parameter, the defined
+        behaviour is that wx.Display will reset the video mode to the default
+        mode used by the display.  On Windows, the behavior is normal.
+        However, there are differences on other platforms. On Unix variations
+        using X11 extensions it should behave as defined, but some
+        irregularities may occur.
+
+        On wxMac passing in wx.DefaultVideoMode as the mode parameter does
+        nothing.  This happens because Carbon no longer has access to
+        DMUseScreenPrefs, an undocumented function that changed the video mode
+        to the system default by using the system's 'scrn' resource.
+
+        Returns True if succeeded, False otherwise
         """
         return _misc_.Display_ChangeMode(*args, **kwargs)
 
@@ -5636,4 +5738,159 @@ def Display_GetFromWindow(*args, **kwargs):
     """
     return _misc_.Display_GetFromWindow(*args, **kwargs)
 
+#---------------------------------------------------------------------------
+
+class StandardPaths(object):
+    """
+    wx.StandardPaths returns the standard locations in the file system and
+    should be used by the programs to find their data files in a portable
+    way.
+
+    In the description of the methods below, the example return values are
+    given for the Unix, Windows and Mac OS X systems, however please note
+    that these are just the examples and the actual values may differ. For
+    example, under Windows: the system administrator may change the
+    standard directories locations, i.e. the Windows directory may be
+    named W:\Win2003 instead of the default C:\Windows.
+
+    The strings appname and username should be replaced with the value
+    returned by `wx.App.GetAppName` and the name of the currently logged
+    in user, respectively. The string prefix is only used under Unix and
+    is /usr/local by default but may be changed using `SetInstallPrefix`.
+
+    The directories returned by the methods of this class may or may not
+    exist. If they don't exist, it's up to the caller to create them,
+    wxStandardPaths doesn't do it.
+
+    Finally note that these functions only work with standardly packaged
+    applications. I.e. under Unix you should follow the standard
+    installation conventions and under Mac you should create your
+    application bundle according to the Apple guidelines. Again, this
+    class doesn't help you to do it.
+    """
+    def __init__(self): raise RuntimeError, "No constructor defined"
+    def __repr__(self):
+        return "<%s.%s; proxy of C++ wxStandardPaths instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
+    def Get(*args, **kwargs):
+        """
+        Get() -> StandardPaths
+
+        Return the global standard paths singleton
+        """
+        return _misc_.StandardPaths_Get(*args, **kwargs)
+
+    Get = staticmethod(Get)
+    def GetConfigDir(*args, **kwargs):
+        """
+        GetConfigDir(self) -> String
+
+        Return the directory with system config files: /etc under Unix,
+        'c:\Documents and Settings\All Users\Application Data' under Windows,
+        /Library/Preferences for Mac
+        """
+        return _misc_.StandardPaths_GetConfigDir(*args, **kwargs)
+
+    def GetUserConfigDir(*args, **kwargs):
+        """
+        GetUserConfigDir(self) -> String
+
+        Return the directory for the user config files: $HOME under Unix,
+        'c:\Documents and Settings\username' under Windows, and 
+        ~/Library/Preferences under Mac
+            
+        Only use this if you have a single file to put there, otherwise
+        `GetUserDataDir` is more appropriate
+        """
+        return _misc_.StandardPaths_GetUserConfigDir(*args, **kwargs)
+
+    def GetDataDir(*args, **kwargs):
+        """
+        GetDataDir(self) -> String
+
+        Return the location of the application's global, (i.e. not
+        user-specific,) data files: prefix/share/appname under Unix,
+        'c:\Program Files\appname' under Windows,
+        appname.app/Contents/SharedSupport app bundle directory under Mac.
+        """
+        return _misc_.StandardPaths_GetDataDir(*args, **kwargs)
+
+    def GetLocalDataDir(*args, **kwargs):
+        """
+        GetLocalDataDir(self) -> String
+
+        Return the location for application data files which are
+        host-specific.  Same as `GetDataDir` except under Unix where it is
+        /etc/appname
+        """
+        return _misc_.StandardPaths_GetLocalDataDir(*args, **kwargs)
+
+    def GetUserDataDir(*args, **kwargs):
+        """
+        GetUserDataDir(self) -> String
+
+        Return the directory for the user-dependent application data files:
+        $HOME/.appname under Unix, c:\Documents and
+        Settings\username\Application Data\appname under Windows and
+        ~/Library/Application Support/appname under Mac
+        """
+        return _misc_.StandardPaths_GetUserDataDir(*args, **kwargs)
+
+    def GetUserLocalDataDir(*args, **kwargs):
+        """
+        GetUserLocalDataDir(self) -> String
+
+        Return the directory for user data files which shouldn't be shared
+        with the other machines
+
+        Same as `GetUserDataDir` for all platforms except Windows where it is
+        the 'Local Settings\Application Data\appname' directory.
+        """
+        return _misc_.StandardPaths_GetUserLocalDataDir(*args, **kwargs)
+
+    def GetPluginsDir(*args, **kwargs):
+        """
+        GetPluginsDir(self) -> String
+
+        Return the directory where the loadable modules (plugins) live:
+        prefix/lib/appname under Unix, program directory under Windows and
+        Contents/Plugins app bundle subdirectory under Mac
+        """
+        return _misc_.StandardPaths_GetPluginsDir(*args, **kwargs)
+
+    def SetInstallPrefix(*args, **kwargs):
+        """
+        SetInstallPrefix(self, String prefix)
+
+        Set the program installation directory which is /usr/local by default.
+        This value will be used by other methods such as `GetDataDir` and
+        `GetPluginsDir` as the prefix for what they return. (This function
+        only has meaning on Unix systems.)
+        """
+        return _misc_.StandardPaths_SetInstallPrefix(*args, **kwargs)
+
+    def GetInstallPrefix(*args, **kwargs):
+        """
+        GetInstallPrefix(self) -> String
+
+        Get the program installation prefix. The default is the prefix where
+        Python is installed. (This function only has meaning on Unix systems.)
+        """
+        return _misc_.StandardPaths_GetInstallPrefix(*args, **kwargs)
+
+
+class StandardPathsPtr(StandardPaths):
+    def __init__(self, this):
+        self.this = this
+        if not hasattr(self,"thisown"): self.thisown = 0
+        self.__class__ = StandardPaths
+_misc_.StandardPaths_swigregister(StandardPathsPtr)
+
+def StandardPaths_Get(*args, **kwargs):
+    """
+    StandardPaths_Get() -> StandardPaths
+
+    Return the global standard paths singleton
+    """
+    return _misc_.StandardPaths_Get(*args, **kwargs)
+