/usr/include/cairo-dock/gldit/cairo-dock-icon-manager.h is in cairo-dock-dev 3.4.1-1.2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 | /*
* This file is a part of the Cairo-Dock project
*
* Copyright : (C) see the 'copyright' file.
* E-mail : see the 'copyright' file.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 3
* of the License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef __CAIRO_DOCK_ICON_MANAGER__
#define __CAIRO_DOCK_ICON_MANAGER__
#include <glib.h>
#include "cairo-dock-struct.h"
#include "cairo-dock-manager.h"
#include "cairo-dock-style-facility.h" // GldiTextDescription
#include "cairo-dock-icon-factory.h" // CairoDockIconGroup
G_BEGIN_DECLS
/**
*@file cairo-dock-icon-manager.h This class manages the icons parameters and their associated ressources.
*
* Specialized Icons are handled by the corresponding manager.
*/
// manager
typedef struct _CairoIconsParam CairoIconsParam;
#ifndef _MANAGER_DEF_
extern CairoIconsParam myIconsParam;
extern GldiManager myIconsMgr;
extern GldiObjectManager myIconObjectMgr;
#endif
#define CAIRO_DOCK_DEFAULT_ICON_SIZE 128
// params
typedef enum {
CAIRO_DOCK_NORMAL_SEPARATOR,
CAIRO_DOCK_FLAT_SEPARATOR,
CAIRO_DOCK_PHYSICAL_SEPARATOR,
CAIRO_DOCK_NB_SEPARATOR_TYPES
} CairoDockSeparatorType;
struct _CairoIconsParam {
// icons
CairoDockIconGroup tIconTypeOrder[CAIRO_DOCK_NB_GROUPS];
gdouble fReflectHeightRatio;
gdouble fAlbedo;
gdouble fAmplitude;
gint iSinusoidWidth;
gint iIconGap;
gint iStringLineWidth;
gdouble fStringColor[4];
gdouble fAlphaAtRest;
///gdouble fReflectSize;
gchar *cIconTheme;
gchar *cBackgroundImagePath;
gint iIconWidth; // default icon size
gint iIconHeight;
// separators
CairoDockSeparatorType iSeparatorType;
gint iSeparatorWidth;
gint iSeparatorHeight;
gchar *cSeparatorImage;
gboolean bRevolveSeparator;
gboolean bConstantSeparatorSize;
gboolean bSeparatorUseDefaultColors;
GldiColor fSeparatorColor;
// labels
GldiTextDescription iconTextDescription;
GldiTextDescription quickInfoTextDescription;
gboolean bLabelForPointedIconOnly;
gint iLabelSize; // taille des etiquettes des icones, en prenant en compte le contour et la marge.
gdouble fLabelAlphaThreshold;
};
/// signals
typedef enum {
/// notification called when an icon's sub-dock is starting to (un)fold. data : {Icon}
NOTIFICATION_UNFOLD_SUBDOCK = NB_NOTIFICATIONS_OBJECT,
/// notification called when an icon is updated in the fast rendering loop.
NOTIFICATION_UPDATE_ICON,
/// notification called when an icon is updated in the slow rendering loop.
NOTIFICATION_UPDATE_ICON_SLOW,
/// notification called when the background of an icon is rendered.
NOTIFICATION_PRE_RENDER_ICON,
/// notification called when an icon is rendered.
NOTIFICATION_RENDER_ICON,
/// notification called when an icon is stopped, for instance before it is removed.
NOTIFICATION_STOP_ICON,
/// notification called when someone asks for an animation for a given icon.
NOTIFICATION_REQUEST_ICON_ANIMATION,
///
NB_NOTIFICATIONS_ICON
} CairoIconNotifications;
/** Execute an action on all icons.
*@param pFunction the action.
*@param pUserData data passed to the callback.
*/
void gldi_icons_foreach (GldiIconFunc pFunction, gpointer pUserData);
void cairo_dock_hide_show_launchers_on_other_desktops (void);
void cairo_dock_set_specified_desktop_for_icon (Icon *pIcon, int iSpecificDesktop);
/** Search the icon size of a GtkIconSize.
* @param iIconSize a GtkIconSize
* @return the maximum between the width and the height of the icon size in pixel (or 128 if there is a problem)
*/
gint cairo_dock_search_icon_size (GtkIconSize iIconSize);
/** Search the path of an icon into the defined icons themes. It also handles the '~' caracter in paths.
* @param cFileName name of the icon file.
* @param iDesiredIconSize desired icon size if we use icons from user icons theme.
* @return the complete path of the icon, or NULL if not found.
*/
gchar *cairo_dock_search_icon_s_path (const gchar *cFileName, gint iDesiredIconSize);
void cairo_dock_add_path_to_icon_theme (const gchar *cPath);
void cairo_dock_remove_path_from_icon_theme (const gchar *cPath);
void gldi_register_icons_manager (void);
G_END_DECLS
#endif
|