DesktopAppInfo is an implementation of AppInfo based on desktop files. More...
Inherits Glib::Object, and Gio::AppInfo.
Public Member Functions | |
virtual | ~DesktopAppInfo () |
GDesktopAppInfo* | gobj () |
Provides access to the underlying C GObject. | |
const GDesktopAppInfo* | gobj () const |
Provides access to the underlying C GObject. | |
GDesktopAppInfo* | gobj_copy () |
Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs. | |
bool | is_hidden () const |
A desktop file is hidden if the Hidden key in it is set to True. | |
Static Public Member Functions | |
static Glib::RefPtr < DesktopAppInfo > | create (const std::string& desktop_id) |
Creates a new DesktopAppInfo based on a desktop file id. | |
static Glib::RefPtr < DesktopAppInfo > | create_from_keyfile (Glib::KeyFile& key_file) |
Creates a new DesktopAppInfo. | |
static Glib::RefPtr < DesktopAppInfo > | create_from_filename (const std::string& filename) |
Creates a new DesktopAppInfo. | |
static void | set_desktop_env (const std::string& desktop_env) |
Sets the name of the desktop that the application is running in. | |
Related Functions | |
(Note that these are not member functions.) | |
Glib::RefPtr< Gio::DesktopAppInfo > | wrap (GDesktopAppInfo* object, bool take_copy=false) |
A Glib::wrap() method for this object. |
DesktopAppInfo is an implementation of AppInfo based on desktop files.
virtual Gio::DesktopAppInfo::~DesktopAppInfo | ( | ) | [virtual] |
static Glib::RefPtr<DesktopAppInfo> Gio::DesktopAppInfo::create | ( | const std::string & | desktop_id | ) | [static] |
Creates a new DesktopAppInfo based on a desktop file id.
A desktop file id is the basename of the desktop file, including the .desktop extension. GIO is looking for a desktop file with this name in the <filename>applications</filename> subdirectories of the XDG data directories (i.e. the directories specified in the <envar>XDG_DATA_HOME</envar> and <envar>XDG_DATA_DIRS</envar> environment variables). GIO also supports the prefix-to-subdirectory mapping that is described in the <ulink url="http://standards.freedesktop.org/menu-spec/latest/">Menu Spec</ulink> (i.e. a desktop id of kde-foo.desktop will match <filename>/usr/share/applications/kde/foo.desktop</filename>).
desktop_id | The desktop file id. |
0
if no desktop file with that id. static Glib::RefPtr<DesktopAppInfo> Gio::DesktopAppInfo::create_from_filename | ( | const std::string & | filename | ) | [static] |
Creates a new DesktopAppInfo.
filename | The path of a desktop file, in the GLib filename encoding. |
0
on error. static Glib::RefPtr<DesktopAppInfo> Gio::DesktopAppInfo::create_from_keyfile | ( | Glib::KeyFile& | key_file | ) | [static] |
Creates a new DesktopAppInfo.
key_file | An opened KeyFile. |
0
on error.const GDesktopAppInfo* Gio::DesktopAppInfo::gobj | ( | ) | const [inline] |
Provides access to the underlying C GObject.
Reimplemented from Gio::AppInfo.
GDesktopAppInfo* Gio::DesktopAppInfo::gobj | ( | ) | [inline] |
Provides access to the underlying C GObject.
Reimplemented from Gio::AppInfo.
GDesktopAppInfo* Gio::DesktopAppInfo::gobj_copy | ( | ) |
Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs.
bool Gio::DesktopAppInfo::is_hidden | ( | ) | const |
A desktop file is hidden if the Hidden key in it is set to True.
true
if hidden, false
otherwise. static void Gio::DesktopAppInfo::set_desktop_env | ( | const std::string & | desktop_env | ) | [static] |
Sets the name of the desktop that the application is running in.
This is used by g_app_info_should_show() to evaluate the <literal>OnlyShowIn</literal> and <literal>NotShowIn</literal> desktop entry fields.
The <ulink url="http://standards.freedesktop.org/menu-spec/latest/">Desktop Menu specification</ulink> recognizes the following: <simplelist> <member>GNOME</member> <member>KDE</member> <member>ROX</member> <member>XFCE</member> <member>Old</member> </simplelist>
Should be called only once; subsequent calls are ignored.
desktop_env | A string specifying what desktop this is. |
Glib::RefPtr< Gio::DesktopAppInfo > wrap | ( | GDesktopAppInfo * | object, | |
bool | take_copy = false | |||
) | [related] |
A Glib::wrap() method for this object.
object | The C instance. | |
take_copy | False if the result should take ownership of the C instance. True if it should take a new copy or ref. |