/opt/cairo-dock/trunk/cairo-dock/src/cairo-dock-struct.h

Aller à la documentation de ce fichier.
00001 /* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 2; tab-width: 2 -*- */
00002 /*********************************************************************************
00003 
00004 This file is a part of the cairo-dock program,
00005 released under the terms of the GNU General Public License.
00006 
00007 Written by Fabrice Rey (for any bug report, please mail me to fabounet@users.berlios.de)
00008 
00009 *********************************************************************************/
00010 #ifndef __CAIRO_DOCK_STRUCT__
00011 #define  __CAIRO_DOCK_STRUCT__
00012 
00013 #include <glib.h>
00014 #include <gdk/gdk.h>
00015 #include <X11/Xlib.h>
00016 #include <gtk/gtk.h>
00017 #include <cairo.h>
00018 #include <librsvg/rsvg.h>
00019 #include <librsvg/rsvg-cairo.h>
00020 #include <glib/gi18n.h>
00021 
00022 #ifdef HAVE_GLITZ
00023 #include <gdk/gdkx.h>
00024 #include <glitz-glx.h>
00025 #include <cairo-glitz.h>
00026 #endif
00027 
00028 typedef struct _CairoDockRenderer CairoDockRenderer;
00029 typedef struct _CairoDockDeskletRenderer CairoDockDeskletRenderer;
00030 typedef struct _CairoDockDialogRenderer CairoDockDialogRenderer;
00031 
00032 typedef struct _Icon Icon;
00033 typedef struct _CairoDockContainer CairoDockContainer;
00034 typedef struct _CairoDock CairoDock;
00035 typedef struct _CairoDockDesklet CairoDockDesklet;
00036 typedef struct _CairoDockDialog CairoDockDialog;
00037 
00038 typedef struct _CairoDockModule CairoDockModule;
00039 typedef struct _CairoDockVisitCard CairoDockVisitCard;
00040 typedef struct _CairoDockMinimalAppletConfig CairoDockMinimalAppletConfig;
00041 typedef struct _CairoDockVFSBackend CairoDockVFSBackend;
00042 
00043 typedef struct _CairoDockClassAppli CairoDockClassAppli;
00044 
00045 typedef void (*CairoDockCalculateMaxDockSizeFunc) (CairoDock *pDock);
00046 typedef Icon * (*CairoDockCalculateIconsFunc) (CairoDock *pDock);
00047 typedef void (*CairoDockRenderFunc) (CairoDock *pDock);
00048 typedef void (*CairoDockRenderOptimizedFunc) (CairoDock *pDock, GdkRectangle *pArea);
00049 typedef void (*CairoDockSetSubDockPositionFunc) (Icon *pPointedIcon, CairoDock *pParentDock);
00050 
00051 struct _CairoDockRenderer {
00053         gchar *cReadmeFilePath;
00055         CairoDockCalculateMaxDockSizeFunc calculate_max_dock_size;
00057         CairoDockCalculateIconsFunc calculate_icons;
00059         CairoDockRenderFunc render;
00061         CairoDockRenderOptimizedFunc render_optimized;
00063         CairoDockSetSubDockPositionFunc set_subdock_position;
00065         gboolean bUseReflect;
00067         gchar *cPreviewFilePath;
00068         };
00069 
00070 
00071 
00072 typedef enum {
00073         CAIRO_DOCK_VERTICAL = 0,
00074         CAIRO_DOCK_HORIZONTAL
00075         } CairoDockTypeHorizontality;
00076 
00077 typedef enum {
00078         CAIRO_DOCK_TYPE_DOCK = 0,
00079         CAIRO_DOCK_TYPE_DESKLET,
00080         CAIRO_DOCK_TYPE_DIALOG
00081         } CairoDockTypeContainer;
00082 
00083 struct _CairoDockContainer {
00085         CairoDockTypeContainer iType;
00087         GtkWidget *pWidget;
00089         gint iWidth, iHeight;
00091         int iWindowPositionX, iWindowPositionY;
00093         gboolean bInside;
00095         CairoDockTypeHorizontality bIsHorizontal;
00096 #ifdef HAVE_GLITZ
00097         glitz_drawable_format_t *pDrawFormat;
00098         glitz_drawable_t* pGlitzDrawable;
00099         glitz_format_t* pGlitzFormat;
00100 #else
00101         gpointer padding[3];
00102 #endif // HAVE_GLITZ
00103 };
00104 
00105 #define CAIRO_DOCK_CONTAINER(p) ((CairoDockContainer *) (p))
00106 
00107 
00108 struct _CairoDock {
00110         CairoDockTypeContainer iType;
00112         GtkWidget *pWidget;
00114         gint iCurrentWidth;
00116         gint iCurrentHeight;
00118         gint iWindowPositionX;
00120         gint iWindowPositionY;
00122         gboolean bInside;
00124         CairoDockTypeHorizontality bHorizontalDock;
00125 #ifdef HAVE_GLITZ
00126         glitz_drawable_format_t *pDrawFormat;
00127         glitz_drawable_t* pGlitzDrawable;
00128         glitz_format_t* pGlitzFormat;
00129 #else
00130         gpointer padding[3];
00131 #endif // HAVE_GLITZ
00132 
00134         GList* icons;
00136         gboolean bIsMainDock;
00138         gint iRefCount;
00139 
00140         //\_______________ Les parametres de position et de geometrie de la fenetre du dock.
00142         gint iGapX;
00144         gint iGapY;
00146         gdouble fAlign;
00147         
00149         gdouble fMagnitudeMax;
00151         gdouble iMaxIconHeight;
00153         gdouble fFlatDockWidth;
00155         gint iMinDockWidth;
00157         gint iMinDockHeight;
00159         gint iMaxDockWidth;
00161         gint iMaxDockHeight;
00163         gint iDecorationsWidth;
00165         gint iDecorationsHeight;
00167         gdouble fRatio;
00168 
00169         gint iMaxLabelWidth;
00170         gint iRightMargin;
00171         gint iTopMargin;
00172 
00173         //\_______________ Les parametres lies a une animation du dock.
00175         gint iScrollOffset;
00177         gint iMagnitudeIndex;
00179         gdouble fFoldingFactor;
00181         gint iMouseX;
00183         gint iMouseY;
00185         gint iAvoidingMouseIconType;
00187         gdouble fAvoidingMouseMargin;
00188 
00190         GList *pFirstDrawnElement;
00192         gdouble fDecorationsOffsetX;
00193 
00195         gboolean bAtBottom;
00197         gboolean bAtTop;
00199         gboolean bMenuVisible;
00201         gboolean bIsDragging;
00202 
00203         //\_______________ Les ID des threads en cours sur le dock.
00205         gint iSidMoveDown;
00207         gint iSidMoveUp;
00209         gint iSidGrowUp;
00211         gint iSidShrinkDown;
00213         gint iSidLeaveDemand;
00214 
00215         //\_______________ Les fonctions de dessin du dock.
00217         gchar *cRendererName;
00219         CairoDockCalculateMaxDockSizeFunc calculate_max_dock_size;
00221         CairoDockCalculateIconsFunc calculate_icons;
00223         CairoDockRenderFunc render;
00225         CairoDockRenderOptimizedFunc render_optimized;
00227         CairoDockSetSubDockPositionFunc set_subdock_position;
00229         gboolean bUseReflect;
00230 };
00231 
00232 
00233 typedef enum {
00234         CAIRO_DOCK_CATEGORY_ACCESSORY=0,
00235         CAIRO_DOCK_CATEGORY_DESKTOP,
00236         CAIRO_DOCK_CATEGORY_CONTROLER,
00237         CAIRO_DOCK_NB_CATEGORY
00238         } CairoDockPluginCategory;
00239 
00240 struct _CairoDockVisitCard {
00242         gchar *cModuleName;
00244         gchar *cReadmeFilePath;
00246         short iMajorVersionNeeded;
00248         short iMinorVersionNeeded;
00250         short iMicroVersionNeeded;
00252         gchar *cPreviewFilePath;
00254         gchar *cGettextDomain;
00256         gchar *cDockVersionOnCompilation;
00258         gchar *cModuleVersion;
00260         gchar *cUserDataDir;
00262         gchar *cShareDataDir;
00264         gchar *cConfFileName;
00266         CairoDockPluginCategory iCategory;
00268         gchar *cIconFilePath;
00270         char reserved[40];
00271 };
00272 
00274 typedef CairoDockVisitCard * (* CairoDockModulePreInit) (void);
00275 
00277 typedef void (*CairoDockModuleInit) (GKeyFile *pKeyFile, Icon *pIcon, CairoDockContainer *pContainer, gchar *cConfFilePath, GError **erreur);
00278 
00280 typedef void (*CairoDockModuleStop) (void);
00281 
00283 typedef gboolean (*CairoDockModuleReload) (GKeyFile *pKeyFile, gchar *cConfFileToReload, CairoDockContainer *pContainer);
00284 
00285 struct _CairoDockModule {
00287         gchar *cSoFilePath;
00289         GModule *pModule;
00291         CairoDockModuleInit initModule;
00293         CairoDockModuleStop stopModule;
00295         CairoDockModuleReload reloadModule;
00297         CairoDockVisitCard *pVisitCard;
00299         gchar *cConfFilePath;
00301         gboolean bActive;
00303         gboolean bCanDetach;
00305         CairoDockContainer *pContainer;
00307         double fLastLoadingTime;
00308 };
00309 
00310 struct _CairoDockMinimalAppletConfig {
00311         gint iDesiredIconWidth;
00312         gint iDesiredIconHeight;
00313         gchar *cLabel;
00314         gchar *cIconFileName;
00315         gdouble fOrder;
00316         gboolean bDeskletUseSize;
00317         gint iDeskletWidth;
00318         gint iDeskletHeight;
00319         gint iDeskletPositionX;
00320         gint iDeskletPositionY;
00321         gboolean bIsDetached;
00322         gboolean bKeepBelow;
00323         gboolean bKeepAbove;
00324         gboolean bOnWidgetLayer;
00325 };
00326 
00327 
00328 typedef void (* CairoDockActionOnAnswerFunc) (int iAnswer, GtkWidget *pWidget, gpointer data);
00329 typedef void (* CairoDockDialogRenderFunc) (cairo_t *pCairoContext, CairoDockDialog *pDialog, gboolean bRenderOptimized);
00330 typedef gpointer (* CairoDockDialogLoadRendererFunc) (CairoDockDialog *pDialog, cairo_t *pSourceContext, gpointer *pConfig);
00331 typedef void (* CairoDockDialogFreeRendererDataFunc) (CairoDockDialog *pDesklet);
00332 struct _CairoDockDialogRenderer {
00333         CairoDockDialogRenderFunc render;
00334         CairoDockDialogLoadRendererFunc load_data;
00335         CairoDockDialogFreeRendererDataFunc free_data;
00336 };
00337 
00338 struct _CairoDockDialog {
00340         CairoDockTypeContainer iType;
00342         GtkWidget *pWidget;
00344         int iWidth;
00346         int iHeight;
00348         int iPositionX;
00350         int iPositionY;
00352         gboolean bInside;
00354         CairoDockTypeHorizontality bIsHorizontal;
00355 #ifdef HAVE_GLITZ
00356         glitz_drawable_format_t *pDrawFormat;
00357         glitz_drawable_t* pGlitzDrawable;
00358         glitz_format_t* pGlitzFormat;
00359 #else
00360         gpointer padding[3];
00361 #endif // HAVE_GLITZ
00363         CairoDockDialogRenderer *pRenderer;
00365         gpointer pRendererData;
00367         int iAimedX;
00369         int iAimedY;
00371         gboolean bRight;
00373         gboolean bDirectionUp;
00375         double fRadius;
00377         double fTipHeight;
00379         cairo_surface_t* pTextBuffer;
00381         int iBubbleWidth, iBubbleHeight;
00383         int iMessageWidth, iMessageHeight;
00385         int iButtonsWidth, iButtonsHeight;
00387         int iInteractiveWidth, iInteractiveHeight;
00389         int iDistanceToDock;
00391         int iMargin;
00393         int iButtonOkOffset;
00395         int iButtonCancelOffset;
00397         GtkWidget *pMessageWidget;
00399         GtkWidget *pButtonsWidget;
00401         GtkWidget *pTipWidget;
00403         int iSidTimer;
00405         int iRefCount;
00407         GtkWidget *pInteractiveWidget;
00409         int iButtonsType;
00411         CairoDockActionOnAnswerFunc action_on_answer;
00413         gpointer pUserData;
00415         GFreeFunc pFreeUserDataFunc;
00417         Icon *pIcon;
00418 };
00419 
00420 
00421 typedef enum {
00422         CAIRO_DOCK_LAUNCHER = 0,
00423         CAIRO_DOCK_SEPARATOR12,
00424         CAIRO_DOCK_APPLI,
00425         CAIRO_DOCK_SEPARATOR23,
00426         CAIRO_DOCK_APPLET,
00427         CAIRO_DOCK_NB_TYPES
00428         } CairoDockIconType;
00429 
00430 typedef enum {
00431         CAIRO_DOCK_BOUNCE = 0,
00432         CAIRO_DOCK_ROTATE,
00433         CAIRO_DOCK_BLINK,
00434         CAIRO_DOCK_PULSE,
00435         CAIRO_DOCK_UPSIDE_DOWN,
00436         CAIRO_DOCK_WOBBLY,
00437         CAIRO_DOCK_RANDOM,
00438         CAIRO_DOCK_NB_ANIMATIONS,
00439         CAIRO_DOCK_FOLLOW_MOUSE,
00440         CAIRO_DOCK_AVOID_MOUSE
00441         } CairoDockAnimationType;
00442 
00443 struct _Icon {
00444         //\____________ renseignes lors de la creation de l'icone.
00446         gchar *acDesktopFileName;
00448         gchar *cBaseURI;
00450         gint iVolumeID;
00452         gchar *acFileName;
00454         gchar *acName;
00456         gchar *acCommand;
00458         gchar *cWorkingDirectory;
00460         CairoDockIconType iType;
00462         gdouble fOrder;
00464         CairoDock *pSubDock;
00466         gchar *cParentDockName;
00467         //\____________ calcules lors du chargement de l'icone.
00469         gdouble fWidth;
00471         gdouble fHeight;
00473         cairo_surface_t* pIconBuffer;
00475         cairo_surface_t* pTextBuffer;
00477         cairo_surface_t* pReflectionBuffer;
00479         cairo_surface_t* pFullIconBuffer;
00481         int iTextWidth;
00483         int iTextHeight;
00485         gdouble fTextXOffset;
00487         gdouble fTextYOffset;
00489         gdouble fXMax;
00491         gdouble fXMin;
00492         //\____________ calcules a chaque scroll et insertion/suppression d'une icone.
00494         gdouble fXAtRest;
00495         //\____________ calcules a chaque fois.
00497         gdouble fPhase;
00499         gdouble fX;
00501         gdouble fY;
00503         gdouble fScale;
00505         gdouble fDrawX;
00507         gdouble fDrawY;
00509         gdouble fWidthFactor;
00511         gdouble fHeightFactor;
00513         gdouble fAlpha;
00515         gboolean bPointed;
00517         gint iCount;
00519         CairoDockAnimationType iAnimationType;
00521         gdouble fPersonnalScale;
00523         gdouble fDeltaYReflection;
00525         gdouble fOrientation;
00526         //\____________ Pour les applis.
00528         gint iPid;
00530         Window Xid;
00532         gchar *cClass;
00534         double fLastCheckTime;
00536         gboolean bIsHidden;
00538         GtkAllocation windowGeometry;
00539         //\____________ Pour les modules.
00541         CairoDockModule *pModule;
00543         gchar *cQuickInfo;
00545         cairo_surface_t* pQuickInfoBuffer;
00547         int iQuickInfoWidth;
00549         int iQuickInfoHeight;
00551         double fQuickInfoXOffset;
00553         double fQuickInfoYOffset;
00555         gboolean bHasIndicator;
00556 };
00557 
00558 
00559 typedef enum {
00560         CAIRO_DOCK_FILE_MODIFIED=0,
00561         CAIRO_DOCK_FILE_DELETED,
00562         CAIRO_DOCK_FILE_CREATED,
00563         CAIRO_DOCK_NB_EVENT_ON_FILES
00564         } CairoDockFMEventType;
00565 
00566 typedef enum {
00567         CAIRO_DOCK_FM_SORT_BY_NAME=0,
00568         CAIRO_DOCK_FM_SORT_BY_DATE,
00569         CAIRO_DOCK_FM_SORT_BY_SIZE,
00570         CAIRO_DOCK_FM_SORT_BY_TYPE,
00571         CAIRO_DOCK_NB_SORT_ON_FILE
00572         } CairoDockFMSortType;
00573 
00574 typedef void (*CairoDockFMGetFileInfoFunc) (const gchar *cBaseURI, gchar **cName, gchar **cURI, gchar **cIconName, gboolean *bIsDirectory, int *iVolumeID, double *fOrder, CairoDockFMSortType iSortType);
00575 typedef void (*CairoDockFMFilePropertiesFunc) (const gchar *cURI, guint64 *iSize, time_t *iLastModificationTime, gchar **cMimeType, int *iUID, int *iGID, int *iPermissionsMask);
00576 typedef GList * (*CairoDockFMListDirectoryFunc) (const gchar *cURI, CairoDockFMSortType g_fm_iSortType, int iNewIconsType, gboolean bListHiddenFiles, gchar **cFullURI);
00577 typedef void (*CairoDockFMLaunchUriFunc) (const gchar *cURI);
00578 
00579 typedef gchar * (*CairoDockFMIsMountedFunc) (const gchar *cURI, gboolean *bIsMounted);
00580 typedef void (*CairoDockFMMountCallback) (gboolean bMounting, gboolean bSuccess, const gchar *cName, Icon *icon, CairoDock *pDock);
00581 typedef void (*CairoDockFMMountFunc) (const gchar *cURI, int iVolumeID, CairoDockFMMountCallback pCallback, Icon *icon, CairoDock *pDock);
00582 typedef void (*CairoDockFMUnmountFunc) (const gchar *cURI, int iVolumeID, CairoDockFMMountCallback pCallback, Icon *icon, CairoDock *pDockCairoDock);
00583 
00584 typedef void (*CairoDockFMMonitorCallback) (CairoDockFMEventType iEventType, const gchar *cURI, gpointer data);
00585 typedef void (*CairoDockFMAddMonitorFunc) (const gchar *cURI, gboolean bDirectory, CairoDockFMMonitorCallback pCallback, gpointer data);
00586 typedef void (*CairoDockFMRemoveMonitorFunc) (const gchar *cURI);
00587 
00588 typedef gboolean (*CairoDockFMDeleteFileFunc) (const gchar *cURI);
00589 typedef gboolean (*CairoDockFMRenameFileFunc) (const gchar *cOldURI, const gchar *cNewName);
00590 typedef gboolean (*CairoDockFMMoveFileFunc) (const gchar *cURI, const gchar *cDirectoryURI);
00591 
00592 typedef gchar * (*CairoDockFMGetTrashFunc) (const gchar *cNearURI, gboolean bCreateIfNecessary);
00593 typedef gchar * (*CairoDockFMGetDesktopFunc) (void);
00594 typedef void (*CairoDockFMUserActionFunc) (void);
00595 
00596 struct _CairoDockVFSBackend {
00597         CairoDockFMGetFileInfoFunc              get_file_info;
00598         CairoDockFMFilePropertiesFunc   get_file_properties;
00599         CairoDockFMListDirectoryFunc    list_directory;
00600         CairoDockFMLaunchUriFunc                launch_uri;
00601         CairoDockFMIsMountedFunc                is_mounted;
00602         CairoDockFMMountFunc                    mount;
00603         CairoDockFMUnmountFunc          unmount;
00604         CairoDockFMAddMonitorFunc               add_monitor;
00605         CairoDockFMRemoveMonitorFunc    remove_monitor;
00606         CairoDockFMDeleteFileFunc               delete;
00607         CairoDockFMRenameFileFunc               rename;
00608         CairoDockFMMoveFileFunc                 move;
00609         CairoDockFMGetTrashFunc                 get_trash_path;
00610         CairoDockFMGetDesktopFunc       get_desktop_path;
00611         CairoDockFMUserActionFunc               logout;
00612         CairoDockFMUserActionFunc               setup_time;
00613 };
00614 
00615 
00616 typedef void (* CairoDockDeskletRenderFunc) (cairo_t *pCairoContext, CairoDockDesklet *pDesklet, gboolean bRenderOptimized);
00617 typedef gpointer (* CairoDockDeskletLoadRendererFunc) (CairoDockDesklet *pDesklet, cairo_t *pSourceContext, gpointer *pConfig);
00618 typedef void (* CairoDockDeskletFreeRendererDataFunc) (CairoDockDesklet *pDesklet);
00619 typedef void (* CairoDockDeskletLoadIconsFunc) (CairoDockDesklet *pDesklet, cairo_t *pSourceContext);
00620 struct _CairoDockDeskletRenderer {
00621         CairoDockDeskletRenderFunc render;
00622         CairoDockDeskletLoadRendererFunc load_data;
00623         CairoDockDeskletFreeRendererDataFunc free_data;
00624         CairoDockDeskletLoadIconsFunc load_icons;
00625 };
00626 
00627 struct _CairoDockDesklet {
00629         CairoDockTypeContainer iType;
00631         GtkWidget *pWidget;
00633         gint iWidth, iHeight;
00635         int iWindowPositionX, iWindowPositionY;
00637         gboolean bInside;
00639         CairoDockTypeHorizontality bIsHorizontal;
00640 #ifdef HAVE_GLITZ
00641         glitz_drawable_format_t *pDrawFormat;
00642         glitz_drawable_t* pGlitzDrawable;
00643         glitz_format_t* pGlitzFormat;
00644 #else
00645         gpointer padding[3];
00646 #endif // HAVE_GLITZ
00648         CairoDockDeskletRenderer *pRenderer;
00650         gpointer pRendererData;
00652         GList *icons;
00654         gint diff_x, diff_y;
00655         gboolean moving;
00657         Icon *pIcon;
00659         gint iSidWritePosition;
00661         gint iSidWriteSize;
00663         gint iGradationCount;
00665         gint iSidGradationOnEnter;
00666 };
00667 
00668 
00669 #define CAIRO_DOCK_FM_VFS_ROOT "_vfsroot_"
00670 #define CAIRO_DOCK_FM_NETWORK "_network_"
00671 #define CAIRO_DOCK_FM_VFS_ROOT_NETWORK "_vfsroot+network_"
00672 
00673 
00674 typedef gboolean (* CairoDockForeachDeskletFunc) (CairoDockDesklet *pDesklet, CairoDockModule *pModule, gpointer data);
00675 
00676 typedef void (* CairoDockForeachIconFunc) (Icon *icon, gpointer data);
00677 
00678 typedef void (* CairoDockConfigFunc) (gchar *cConfFile, gpointer data);
00679 
00680 
00681 struct _CairoDockClassAppli {
00683         gboolean bUseXIcon;
00685         GList *pIconsOfClass;
00687         GList *pAppliOfClass;
00688 };
00689 
00690 
00692 #define CAIRO_DOCK_DATA_DIR ".cairo-dock"
00694 #define CAIRO_DOCK_THEMES_DIR "themes"
00696 #define CAIRO_DOCK_CURRENT_THEME_NAME "current_theme"
00698 #define CAIRO_DOCK_LAUNCHERS_DIR "launchers"
00700 #define CAIRO_DOCK_MAIN_DOCK_NAME "_MainDock_"
00702 #define CAIRO_DOCK_DEFAULT_RENDERER_NAME "default"
00703 
00704 
00705 #define CAIRO_DOCK_LAST_ORDER -1e9
00706 #define CAIRO_DOCK_NB_MAX_ITERATIONS 1000
00707 
00708 #define CAIRO_DOCK_LOAD_ICONS_FOR_DESKLET TRUE
00709 
00710 #define CAIRO_DOCK_UPDATE_DOCK_SIZE TRUE
00711 #define CAIRO_DOCK_ANIMATE_ICON TRUE
00712 #define CAIRO_DOCK_APPLY_RATIO TRUE
00713 #define CAIRO_DOCK_INSERT_SEPARATOR TRUE
00714 
00715 #ifdef CAIRO_DOCK_VERBOSE
00716 #define CAIRO_DOCK_MESSAGE if (g_bVerbose) g_message
00717 #else
00718 #define CAIRO_DOCK_MESSAGE(s, ...)
00719 #endif
00720 
00721 
00722 typedef enum {
00723         CAIRO_DOCK_MAX_SIZE,
00724         CAIRO_DOCK_NORMAL_SIZE,
00725         CAIRO_DOCK_MIN_SIZE
00726         } CairoDockSizeType;
00727 
00728 typedef enum {
00729         CAIRO_DOCK_MOUSE_INSIDE,
00730         CAIRO_DOCK_MOUSE_ON_THE_EDGE,
00731         CAIRO_DOCK_MOUSE_OUTSIDE
00732         } CairoDockMousePositionType;
00733 
00734 typedef enum {
00735         CAIRO_DOCK_UNKNOWN_ENV=0,
00736         CAIRO_DOCK_GNOME,
00737         CAIRO_DOCK_KDE,
00738         CAIRO_DOCK_XFCE
00739         } CairoDockDesktopEnv;
00740 
00741 typedef enum
00742 {
00743         CAIRO_DOCK_BOTTOM = 0,
00744         CAIRO_DOCK_TOP,
00745         CAIRO_DOCK_LEFT,
00746         CAIRO_DOCK_RIGHT,
00747         CAIRO_DOCK_NB_POSITIONS
00748         } CairoDockPositionType;
00749 
00750 typedef enum
00751 {
00752         CAIRO_DOCK_LAUNCHER_FROM_DESKTOP_FILE = 0,
00753         CAIRO_DOCK_LAUNCHER_FOR_CONTAINER,
00754         CAIRO_DOCK_LAUNCHER_FOR_SEPARATOR,
00755         CAIRO_DOCK_NB_NEW_LAUNCHER_TYPE
00756         } CairoDockNewLauncherType;
00757 
00758 #endif

Généré le Wed Apr 16 03:27:15 2008 pour Cairo-Dock par  doxygen 1.5.3