]> git.saurik.com Git - wxWidgets.git/blobdiff - interface/wx/taskbar.h
add a more readable wrapper for CreateDocument(wxEmptyString, wxDOC_NEW)
[wxWidgets.git] / interface / wx / taskbar.h
index 8926a6c9c003c86ac98284a9fd6b8732d2c60506..b4aeaef4606a8cb1a14ca461ccf1281d1a2701fb 100644 (file)
@@ -26,7 +26,7 @@ public:
     /**
         Destroys the wxTaskBarIcon object, removing the icon if not already removed.
     */
-    ~wxTaskBarIcon();
+    virtual ~wxTaskBarIcon();
 
     /**
         This method is called by the library when the user requests popup menu
@@ -50,27 +50,50 @@ public:
     /**
         Returns @true if SetIcon() was called with no subsequent RemoveIcon().
     */
-    bool IsIconInstalled();
+    bool IsIconInstalled() const;
 
     /**
         Returns @true if the object initialized successfully.
     */
-    bool IsOk();
+    bool IsOk() const;
 
     /**
         Pops up a menu at the current mouse position. The events can be handled by
         a class derived from wxTaskBarIcon.
     */
-    bool PopupMenu(wxMenu* menu);
+    virtual bool PopupMenu(wxMenu* menu);
 
     /**
         Removes the icon previously set with SetIcon().
     */
-    bool RemoveIcon();
+    virtual bool RemoveIcon();
 
     /**
         Sets the icon, and optional tooltip text.
     */
     bool SetIcon(const wxIcon& icon, const wxString& tooltip);
+
+    /**
+        Returns true if system tray is available in the desktop environment the
+        app runs under.
+
+        On Windows and Mac OS X, the tray is always available and this function
+        simply returns true.
+
+        On Unix, X11 environment may or may not provide the tray, depending on
+        user's desktop environment. Most modern desktops support the tray via
+        the System Tray Protocol by freedesktop.org
+        (http://freedesktop.org/wiki/Specifications/systemtray-spec).
+
+        @note Tray availability may change during application's lifetime
+              under X11 and so applications shouldn't cache the result.
+
+        @note wxTaskBarIcon supports older GNOME 1.2 and KDE 1/2 methods of
+              adding icons to tray, but they are unreliable and this method
+              doesn't detect them.
+
+        @since 2.9.0
+    */
+    static bool IsAvailable();
 };