pidgin 2.14.14dev
desktopitem.h File Reference

Functions for managing .desktop files. More...

#include <glib.h>
#include <glib-object.h>
Include dependency graph for desktopitem.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define PURPLE_TYPE_DESKTOP_ITEM   (purple_desktop_item_get_type ())
 
#define PURPLE_DESKTOP_ITEM_ENCODING   "Encoding" /* string */
 
#define PURPLE_DESKTOP_ITEM_VERSION   "Version" /* numeric */
 
#define PURPLE_DESKTOP_ITEM_NAME   "Name" /* localestring */
 
#define PURPLE_DESKTOP_ITEM_GENERIC_NAME   "GenericName" /* localestring */
 
#define PURPLE_DESKTOP_ITEM_TYPE   "Type" /* string */
 
#define PURPLE_DESKTOP_ITEM_FILE_PATTERN   "FilePattern" /* regexp(s) */
 
#define PURPLE_DESKTOP_ITEM_TRY_EXEC   "TryExec" /* string */
 
#define PURPLE_DESKTOP_ITEM_NO_DISPLAY   "NoDisplay" /* boolean */
 
#define PURPLE_DESKTOP_ITEM_COMMENT   "Comment" /* localestring */
 
#define PURPLE_DESKTOP_ITEM_EXEC   "Exec" /* string */
 
#define PURPLE_DESKTOP_ITEM_ACTIONS   "Actions" /* strings */
 
#define PURPLE_DESKTOP_ITEM_ICON   "Icon" /* string */
 
#define PURPLE_DESKTOP_ITEM_MINI_ICON   "MiniIcon" /* string */
 
#define PURPLE_DESKTOP_ITEM_HIDDEN   "Hidden" /* boolean */
 
#define PURPLE_DESKTOP_ITEM_PATH   "Path" /* string */
 
#define PURPLE_DESKTOP_ITEM_TERMINAL   "Terminal" /* boolean */
 
#define PURPLE_DESKTOP_ITEM_TERMINAL_OPTIONS   "TerminalOptions" /* string */
 
#define PURPLE_DESKTOP_ITEM_SWALLOW_TITLE   "SwallowTitle" /* string */
 
#define PURPLE_DESKTOP_ITEM_SWALLOW_EXEC   "SwallowExec" /* string */
 
#define PURPLE_DESKTOP_ITEM_MIME_TYPE   "MimeType" /* regexp(s) */
 
#define PURPLE_DESKTOP_ITEM_PATTERNS   "Patterns" /* regexp(s) */
 
#define PURPLE_DESKTOP_ITEM_DEFAULT_APP   "DefaultApp" /* string */
 
#define PURPLE_DESKTOP_ITEM_DEV   "Dev" /* string */
 
#define PURPLE_DESKTOP_ITEM_FS_TYPE   "FSType" /* string */
 
#define PURPLE_DESKTOP_ITEM_MOUNT_POINT   "MountPoint" /* string */
 
#define PURPLE_DESKTOP_ITEM_READ_ONLY   "ReadOnly" /* boolean */
 
#define PURPLE_DESKTOP_ITEM_UNMOUNT_ICON   "UnmountIcon" /* string */
 
#define PURPLE_DESKTOP_ITEM_SORT_ORDER   "SortOrder" /* strings */
 
#define PURPLE_DESKTOP_ITEM_URL   "URL" /* string */
 
#define PURPLE_DESKTOP_ITEM_DOC_PATH   "X-GNOME-DocPath" /* string */
 

Typedefs

typedef struct _PurpleDesktopItem PurpleDesktopItem
 

Enumerations

enum  PurpleDesktopItemType {
  PURPLE_DESKTOP_ITEM_TYPE_NULL = 0 , PURPLE_DESKTOP_ITEM_TYPE_OTHER , PURPLE_DESKTOP_ITEM_TYPE_APPLICATION , PURPLE_DESKTOP_ITEM_TYPE_LINK ,
  PURPLE_DESKTOP_ITEM_TYPE_FSDEVICE , PURPLE_DESKTOP_ITEM_TYPE_MIME_TYPE , PURPLE_DESKTOP_ITEM_TYPE_DIRECTORY , PURPLE_DESKTOP_ITEM_TYPE_SERVICE ,
  PURPLE_DESKTOP_ITEM_TYPE_SERVICE_TYPE
}
 

Functions

GType purple_desktop_item_get_type (void)
 
PurpleDesktopItem * purple_desktop_item_new_from_file (const char *filename)
 This function loads 'filename' and turns it into a PurpleDesktopItem. More...
 
PurpleDesktopItemType purple_desktop_item_get_entry_type (const PurpleDesktopItem *item)
 Gets the type attribute (the 'Type' field) of the item. More...
 
const char * purple_desktop_item_get_string (const PurpleDesktopItem *item, const char *attr)
 Gets the value of an attribute of the item, as a string. More...
 
PurpleDesktopItem * purple_desktop_item_copy (const PurpleDesktopItem *item)
 Creates a copy of a PurpleDesktopItem. More...
 
void purple_desktop_item_unref (PurpleDesktopItem *item)
 Decreases the reference count of the specified item, and destroys the item if there are no more references left. More...
 

Detailed Description

Functions for managing .desktop files.

Definition in file desktopitem.h.

Macro Definition Documentation

◆ PURPLE_DESKTOP_ITEM_ACTIONS

#define PURPLE_DESKTOP_ITEM_ACTIONS   "Actions" /* strings */

Definition at line 97 of file desktopitem.h.

◆ PURPLE_DESKTOP_ITEM_COMMENT

#define PURPLE_DESKTOP_ITEM_COMMENT   "Comment" /* localestring */

Definition at line 95 of file desktopitem.h.

◆ PURPLE_DESKTOP_ITEM_DEFAULT_APP

#define PURPLE_DESKTOP_ITEM_DEFAULT_APP   "DefaultApp" /* string */

Definition at line 108 of file desktopitem.h.

◆ PURPLE_DESKTOP_ITEM_DEV

#define PURPLE_DESKTOP_ITEM_DEV   "Dev" /* string */

Definition at line 109 of file desktopitem.h.

◆ PURPLE_DESKTOP_ITEM_DOC_PATH

#define PURPLE_DESKTOP_ITEM_DOC_PATH   "X-GNOME-DocPath" /* string */

Definition at line 116 of file desktopitem.h.

◆ PURPLE_DESKTOP_ITEM_ENCODING

#define PURPLE_DESKTOP_ITEM_ENCODING   "Encoding" /* string */

Definition at line 87 of file desktopitem.h.

◆ PURPLE_DESKTOP_ITEM_EXEC

#define PURPLE_DESKTOP_ITEM_EXEC   "Exec" /* string */

Definition at line 96 of file desktopitem.h.

◆ PURPLE_DESKTOP_ITEM_FILE_PATTERN

#define PURPLE_DESKTOP_ITEM_FILE_PATTERN   "FilePattern" /* regexp(s) */

Definition at line 92 of file desktopitem.h.

◆ PURPLE_DESKTOP_ITEM_FS_TYPE

#define PURPLE_DESKTOP_ITEM_FS_TYPE   "FSType" /* string */

Definition at line 110 of file desktopitem.h.

◆ PURPLE_DESKTOP_ITEM_GENERIC_NAME

#define PURPLE_DESKTOP_ITEM_GENERIC_NAME   "GenericName" /* localestring */

Definition at line 90 of file desktopitem.h.

◆ PURPLE_DESKTOP_ITEM_HIDDEN

#define PURPLE_DESKTOP_ITEM_HIDDEN   "Hidden" /* boolean */

Definition at line 100 of file desktopitem.h.

◆ PURPLE_DESKTOP_ITEM_ICON

#define PURPLE_DESKTOP_ITEM_ICON   "Icon" /* string */

Definition at line 98 of file desktopitem.h.

◆ PURPLE_DESKTOP_ITEM_MIME_TYPE

#define PURPLE_DESKTOP_ITEM_MIME_TYPE   "MimeType" /* regexp(s) */

Definition at line 106 of file desktopitem.h.

◆ PURPLE_DESKTOP_ITEM_MINI_ICON

#define PURPLE_DESKTOP_ITEM_MINI_ICON   "MiniIcon" /* string */

Definition at line 99 of file desktopitem.h.

◆ PURPLE_DESKTOP_ITEM_MOUNT_POINT

#define PURPLE_DESKTOP_ITEM_MOUNT_POINT   "MountPoint" /* string */

Definition at line 111 of file desktopitem.h.

◆ PURPLE_DESKTOP_ITEM_NAME

#define PURPLE_DESKTOP_ITEM_NAME   "Name" /* localestring */

Definition at line 89 of file desktopitem.h.

◆ PURPLE_DESKTOP_ITEM_NO_DISPLAY

#define PURPLE_DESKTOP_ITEM_NO_DISPLAY   "NoDisplay" /* boolean */

Definition at line 94 of file desktopitem.h.

◆ PURPLE_DESKTOP_ITEM_PATH

#define PURPLE_DESKTOP_ITEM_PATH   "Path" /* string */

Definition at line 101 of file desktopitem.h.

◆ PURPLE_DESKTOP_ITEM_PATTERNS

#define PURPLE_DESKTOP_ITEM_PATTERNS   "Patterns" /* regexp(s) */

Definition at line 107 of file desktopitem.h.

◆ PURPLE_DESKTOP_ITEM_READ_ONLY

#define PURPLE_DESKTOP_ITEM_READ_ONLY   "ReadOnly" /* boolean */

Definition at line 112 of file desktopitem.h.

◆ PURPLE_DESKTOP_ITEM_SORT_ORDER

#define PURPLE_DESKTOP_ITEM_SORT_ORDER   "SortOrder" /* strings */

Definition at line 114 of file desktopitem.h.

◆ PURPLE_DESKTOP_ITEM_SWALLOW_EXEC

#define PURPLE_DESKTOP_ITEM_SWALLOW_EXEC   "SwallowExec" /* string */

Definition at line 105 of file desktopitem.h.

◆ PURPLE_DESKTOP_ITEM_SWALLOW_TITLE

#define PURPLE_DESKTOP_ITEM_SWALLOW_TITLE   "SwallowTitle" /* string */

Definition at line 104 of file desktopitem.h.

◆ PURPLE_DESKTOP_ITEM_TERMINAL

#define PURPLE_DESKTOP_ITEM_TERMINAL   "Terminal" /* boolean */

Definition at line 102 of file desktopitem.h.

◆ PURPLE_DESKTOP_ITEM_TERMINAL_OPTIONS

#define PURPLE_DESKTOP_ITEM_TERMINAL_OPTIONS   "TerminalOptions" /* string */

Definition at line 103 of file desktopitem.h.

◆ PURPLE_DESKTOP_ITEM_TRY_EXEC

#define PURPLE_DESKTOP_ITEM_TRY_EXEC   "TryExec" /* string */

Definition at line 93 of file desktopitem.h.

◆ PURPLE_DESKTOP_ITEM_TYPE

#define PURPLE_DESKTOP_ITEM_TYPE   "Type" /* string */

Definition at line 91 of file desktopitem.h.

◆ PURPLE_DESKTOP_ITEM_UNMOUNT_ICON

#define PURPLE_DESKTOP_ITEM_UNMOUNT_ICON   "UnmountIcon" /* string */

Definition at line 113 of file desktopitem.h.

◆ PURPLE_DESKTOP_ITEM_URL

#define PURPLE_DESKTOP_ITEM_URL   "URL" /* string */

Definition at line 115 of file desktopitem.h.

◆ PURPLE_DESKTOP_ITEM_VERSION

#define PURPLE_DESKTOP_ITEM_VERSION   "Version" /* numeric */

Definition at line 88 of file desktopitem.h.

◆ PURPLE_TYPE_DESKTOP_ITEM

#define PURPLE_TYPE_DESKTOP_ITEM   (purple_desktop_item_get_type ())

Definition at line 83 of file desktopitem.h.

Typedef Documentation

◆ PurpleDesktopItem

typedef struct _PurpleDesktopItem PurpleDesktopItem

Definition at line 81 of file desktopitem.h.

Enumeration Type Documentation

◆ PurpleDesktopItemType

enum PurpleDesktopItemType

Definition at line 64 of file desktopitem.h.

Function Documentation

◆ purple_desktop_item_copy()

PurpleDesktopItem * purple_desktop_item_copy ( const PurpleDesktopItem *  item)

Creates a copy of a PurpleDesktopItem.

The new copy has a refcount of 1. Note: Section stack is NOT copied.

Parameters
itemThe item to be copied
Returns
The new copy

◆ purple_desktop_item_get_entry_type()

PurpleDesktopItemType purple_desktop_item_get_entry_type ( const PurpleDesktopItem *  item)

Gets the type attribute (the 'Type' field) of the item.

This should usually be 'Application' for an application, but it can be 'Directory' for a directory description. There are other types available as well. The type usually indicates how the desktop item should be handeled and how the 'Exec' field should be handeled.

Parameters
itemA desktop item
Returns
The type of the specified 'item'. The returned memory remains owned by the PurpleDesktopItem and should not be freed.

◆ purple_desktop_item_get_string()

const char * purple_desktop_item_get_string ( const PurpleDesktopItem *  item,
const char *  attr 
)

Gets the value of an attribute of the item, as a string.

Parameters
itemA desktop item
attrThe attribute to look for
Returns
The value of the specified item attribute.

◆ purple_desktop_item_new_from_file()

PurpleDesktopItem * purple_desktop_item_new_from_file ( const char *  filename)

This function loads 'filename' and turns it into a PurpleDesktopItem.

Parameters
filenameThe filename or directory path to load the PurpleDesktopItem from
Returns
The newly loaded item, or NULL on error.

◆ purple_desktop_item_unref()

void purple_desktop_item_unref ( PurpleDesktopItem *  item)

Decreases the reference count of the specified item, and destroys the item if there are no more references left.

Parameters
itemA desktop item