~cairo-dock-team/cairo-dock-core/3.0.x

332 by Fabounet (Fabrice Rey) - http://cairo-dock.org
correction on input shape => this time is ok \!
1
/*
290.1.1 by matttbe
Added Gnu-GPL3 licence in all files + rename .sh
2
* This file is a part of the Cairo-Dock project
3
*
4
* Copyright : (C) see the 'copyright' file.
5
* E-mail    : see the 'copyright' file.
6
*
7
* This program is free software; you can redistribute it and/or
8
* modify it under the terms of the GNU General Public License
9
* as published by the Free Software Foundation; either version 3
10
* of the License, or (at your option) any later version.
11
*
12
* This program is distributed in the hope that it will be useful,
13
* but WITHOUT ANY WARRANTY; without even the implied warranty of
14
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15
* GNU General Public License for more details.
16
* You should have received a copy of the GNU General Public License
17
* along with this program.  If not, see <http://www.gnu.org/licenses/>.
18
*/
19
96 by fabounet
correction label + API opengl (en cours) + liste clock
20
21
#ifndef __CAIRO_DOCK_SURFACE_FACTORY__
22
#define  __CAIRO_DOCK_SURFACE_FACTORY__
23
24
#include <glib.h>
25
#include <gdk/gdk.h>
26
#include <cairo.h>
223 by fabounet
added some print for the KDE4 bug + use of CairoDockTasks + bug GMenu et Sysmonitor (ce dernier semble avoir du mal avec la valeur de cpu...)
27
508 by fabounet
the Core can now be compiled with cmake : cmake CMakeLists.txt -DCMAKE_INSTALL_PREFIX=/usr
28
#include "cairo-dock-struct.h"
96 by fabounet
correction label + API opengl (en cours) + liste clock
29
G_BEGIN_DECLS
30
223 by fabounet
added some print for the KDE4 bug + use of CairoDockTasks + bug GMenu et Sysmonitor (ce dernier semble avoir du mal avec la valeur de cpu...)
31
/**
32
*@file cairo-dock-surface-factory.h This class contains functions to load any image/X buffer/GdkPixbuf/text into a cairo-surface.
33
* The loading of an image can be modified by a mask, to take into account the ratio, zoom, orientation, etc.
236 by fabounet
enlevage de cpusage, rame et nvidia + documentation : finie a 90% + nettoyage de l'API => si ca compile c'est que j'ai eu du bol ^_^
34
*
35
* The general way to load an image is by using \ref cairo_dock_create_surface_from_image.
36
* 
37
* If you just want to load an image at a given size, use \ref cairo_dock_create_surface_from_image_simple, or \ref cairo_dock_create_surface_from_icon.
38
* 
380 by Fabounet (Fabrice Rey) - http://cairo-dock.org
added files opened by the dock to the recent documents + correction of dialogs with c-format strings + made personnal desklet decorations use user images
39
* To load a text into a surface, describe your text look with a _CairoDockLabelDescription, and pass it to \ref cairo_dock_create_surface_from_text.
236 by fabounet
enlevage de cpusage, rame et nvidia + documentation : finie a 90% + nettoyage de l'API => si ca compile c'est que j'ai eu du bol ^_^
40
*
674 by Fabrice Rey
images are now taken in an 'images' folder, and searched in the root folder and in 'icons' if not found
41
* Note: if you also need to load the image into a texture, it's easier to use the higher level ImageBuffer API (see \ref cairo_dock_create_image_buffer).
223 by fabounet
added some print for the KDE4 bug + use of CairoDockTasks + bug GMenu et Sysmonitor (ce dernier semble avoir du mal avec la valeur de cpu...)
42
*/
43
234 by fabounet
correction chargement de themes avec docks racines + ajout d'un timer de refresh sur switcher
44
/// Types of image loading modifiers.
223 by fabounet
added some print for the KDE4 bug + use of CairoDockTasks + bug GMenu et Sysmonitor (ce dernier semble avoir du mal avec la valeur de cpu...)
45
typedef enum {
234 by fabounet
correction chargement de themes avec docks racines + ajout d'un timer de refresh sur switcher
46
	/// fill the space, with transparency if necessary.
223 by fabounet
added some print for the KDE4 bug + use of CairoDockTasks + bug GMenu et Sysmonitor (ce dernier semble avoir du mal avec la valeur de cpu...)
47
	CAIRO_DOCK_FILL_SPACE 			= 1<<0,
234 by fabounet
correction chargement de themes avec docks racines + ajout d'un timer de refresh sur switcher
48
	/// keep the ratio of the original image.
223 by fabounet
added some print for the KDE4 bug + use of CairoDockTasks + bug GMenu et Sysmonitor (ce dernier semble avoir du mal avec la valeur de cpu...)
49
	CAIRO_DOCK_KEEP_RATIO 			= 1<<1,
234 by fabounet
correction chargement de themes avec docks racines + ajout d'un timer de refresh sur switcher
50
	/// don't zoom in the image if the final surface is larger than the original image.
223 by fabounet
added some print for the KDE4 bug + use of CairoDockTasks + bug GMenu et Sysmonitor (ce dernier semble avoir du mal avec la valeur de cpu...)
51
	CAIRO_DOCK_DONT_ZOOM_IN 		= 1<<2,
234 by fabounet
correction chargement de themes avec docks racines + ajout d'un timer de refresh sur switcher
52
	/// orientation horizontal flip
223 by fabounet
added some print for the KDE4 bug + use of CairoDockTasks + bug GMenu et Sysmonitor (ce dernier semble avoir du mal avec la valeur de cpu...)
53
	CAIRO_DOCK_ORIENTATION_HFLIP 		= 1<<3,
234 by fabounet
correction chargement de themes avec docks racines + ajout d'un timer de refresh sur switcher
54
	/// orientation 180° rotation
223 by fabounet
added some print for the KDE4 bug + use of CairoDockTasks + bug GMenu et Sysmonitor (ce dernier semble avoir du mal avec la valeur de cpu...)
55
	CAIRO_DOCK_ORIENTATION_ROT_180 	= 2<<3,
234 by fabounet
correction chargement de themes avec docks racines + ajout d'un timer de refresh sur switcher
56
	/// orientation vertical flip
223 by fabounet
added some print for the KDE4 bug + use of CairoDockTasks + bug GMenu et Sysmonitor (ce dernier semble avoir du mal avec la valeur de cpu...)
57
	CAIRO_DOCK_ORIENTATION_VFLIP 		= 3<<3,
234 by fabounet
correction chargement de themes avec docks racines + ajout d'un timer de refresh sur switcher
58
	/// orientation 90° rotation + horizontal flip
223 by fabounet
added some print for the KDE4 bug + use of CairoDockTasks + bug GMenu et Sysmonitor (ce dernier semble avoir du mal avec la valeur de cpu...)
59
	CAIRO_DOCK_ORIENTATION_ROT_90_HFLIP = 4<<3,
234 by fabounet
correction chargement de themes avec docks racines + ajout d'un timer de refresh sur switcher
60
	/// orientation 90° rotation
223 by fabounet
added some print for the KDE4 bug + use of CairoDockTasks + bug GMenu et Sysmonitor (ce dernier semble avoir du mal avec la valeur de cpu...)
61
	CAIRO_DOCK_ORIENTATION_ROT_90 	= 5<<3,
234 by fabounet
correction chargement de themes avec docks racines + ajout d'un timer de refresh sur switcher
62
	/// orientation 90° rotation + vertical flip
223 by fabounet
added some print for the KDE4 bug + use of CairoDockTasks + bug GMenu et Sysmonitor (ce dernier semble avoir du mal avec la valeur de cpu...)
63
	CAIRO_DOCK_ORIENTATION_ROT_90_VFLIP = 6<<3,
234 by fabounet
correction chargement de themes avec docks racines + ajout d'un timer de refresh sur switcher
64
	/// orientation 270° rotation
959 by Fabrice Rey
image loading: added the ability to load and display animated images
65
	CAIRO_DOCK_ORIENTATION_ROT_270 	= 7<<3,
66
	/// load the image as a strip if possible.
67
	CAIRO_DOCK_ANIMATED_IMAGE = 1<<6
223 by fabounet
added some print for the KDE4 bug + use of CairoDockTasks + bug GMenu et Sysmonitor (ce dernier semble avoir du mal avec la valeur de cpu...)
68
	} CairoDockLoadImageModifier;
234 by fabounet
correction chargement de themes avec docks racines + ajout d'un timer de refresh sur switcher
69
/// mask to get the orientation from a CairoDockLoadImageModifier.
223 by fabounet
added some print for the KDE4 bug + use of CairoDockTasks + bug GMenu et Sysmonitor (ce dernier semble avoir du mal avec la valeur de cpu...)
70
#define CAIRO_DOCK_ORIENTATION_MASK (7<<3)
71
234 by fabounet
correction chargement de themes avec docks racines + ajout d'un timer de refresh sur switcher
72
/// Description of the rendering of a text.
223 by fabounet
added some print for the KDE4 bug + use of CairoDockTasks + bug GMenu et Sysmonitor (ce dernier semble avoir du mal avec la valeur de cpu...)
73
struct _CairoDockLabelDescription {
234 by fabounet
correction chargement de themes avec docks racines + ajout d'un timer de refresh sur switcher
74
	/// font size (also approximately the resulting size in pixels)
223 by fabounet
added some print for the KDE4 bug + use of CairoDockTasks + bug GMenu et Sysmonitor (ce dernier semble avoir du mal avec la valeur de cpu...)
75
	gint iSize;
234 by fabounet
correction chargement de themes avec docks racines + ajout d'un timer de refresh sur switcher
76
	/// font.
223 by fabounet
added some print for the KDE4 bug + use of CairoDockTasks + bug GMenu et Sysmonitor (ce dernier semble avoir du mal avec la valeur de cpu...)
77
	gchar *cFont;
234 by fabounet
correction chargement de themes avec docks racines + ajout d'un timer de refresh sur switcher
78
	/// text weight. The higher, the thicker the strokes are.
223 by fabounet
added some print for the KDE4 bug + use of CairoDockTasks + bug GMenu et Sysmonitor (ce dernier semble avoir du mal avec la valeur de cpu...)
79
	PangoWeight iWeight;
234 by fabounet
correction chargement de themes avec docks racines + ajout d'un timer de refresh sur switcher
80
	/// text style (italic or normal).
223 by fabounet
added some print for the KDE4 bug + use of CairoDockTasks + bug GMenu et Sysmonitor (ce dernier semble avoir du mal avec la valeur de cpu...)
81
	PangoStyle iStyle;
234 by fabounet
correction chargement de themes avec docks racines + ajout d'un timer de refresh sur switcher
82
	/// first color of the characters.
223 by fabounet
added some print for the KDE4 bug + use of CairoDockTasks + bug GMenu et Sysmonitor (ce dernier semble avoir du mal avec la valeur de cpu...)
83
	gdouble fColorStart[3];
234 by fabounet
correction chargement de themes avec docks racines + ajout d'un timer de refresh sur switcher
84
	/// second color of the characters. If different from the first one, it will make a gradation.
223 by fabounet
added some print for the KDE4 bug + use of CairoDockTasks + bug GMenu et Sysmonitor (ce dernier semble avoir du mal avec la valeur de cpu...)
85
	gdouble fColorStop[3];
234 by fabounet
correction chargement de themes avec docks racines + ajout d'un timer de refresh sur switcher
86
	/// TRUE if the gradation is vertical (from top to bottom).
223 by fabounet
added some print for the KDE4 bug + use of CairoDockTasks + bug GMenu et Sysmonitor (ce dernier semble avoir du mal avec la valeur de cpu...)
87
	gboolean bVerticalPattern;
234 by fabounet
correction chargement de themes avec docks racines + ajout d'un timer de refresh sur switcher
88
	/// frame background color. Set the alpha channel to 0 to not draw a frame in the background.
223 by fabounet
added some print for the KDE4 bug + use of CairoDockTasks + bug GMenu et Sysmonitor (ce dernier semble avoir du mal avec la valeur de cpu...)
89
	gdouble fBackgroundColor[4];
234 by fabounet
correction chargement de themes avec docks racines + ajout d'un timer de refresh sur switcher
90
	/// TRUE to stroke the outline of the characters (in black).
223 by fabounet
added some print for the KDE4 bug + use of CairoDockTasks + bug GMenu et Sysmonitor (ce dernier semble avoir du mal avec la valeur de cpu...)
91
	gboolean bOutlined;
234 by fabounet
correction chargement de themes avec docks racines + ajout d'un timer de refresh sur switcher
92
	/// margin around the text, it is also the dimension of the frame if available.
223 by fabounet
added some print for the KDE4 bug + use of CairoDockTasks + bug GMenu et Sysmonitor (ce dernier semble avoir du mal avec la valeur de cpu...)
93
	gint iMargin;
557 by fabounet
don't use markups in dialogs by default, only as an option
94
	/// whether to use Pango markups or not (markups are html-like marks, like <b>...</b>; using markups force you to escape some characters like "&" -> "&amp;")
95
	gboolean bUseMarkup;
672 by Fabrice Rey
dialogs: insert carriage return when the text is too wide
96
	/// maximum width allowed, in ratio of the screen's width. Carriage returns will be inserted if necessary. 0 means no limit.
97
	gdouble fMaxRelativeWidth;
223 by fabounet
added some print for the KDE4 bug + use of CairoDockTasks + bug GMenu et Sysmonitor (ce dernier semble avoir du mal avec la valeur de cpu...)
98
};
99
96 by fabounet
correction label + API opengl (en cours) + liste clock
100
234 by fabounet
correction chargement de themes avec docks racines + ajout d'un timer de refresh sur switcher
101
/* Calcule la taille d'une image selon une contrainte en largeur et hauteur de manière à remplir l'espace donné.
102
*@param fImageWidth the width of the image. Contient initialement the width of the image, et sera écrasée avec la largeur obtenue.
103
*@param fImageHeight the height of the image. Contient initialement the height of the image, et sera écrasée avec la hauteur obtenue.
96 by fabounet
correction label + API opengl (en cours) + liste clock
104
*@param iWidthConstraint contrainte en largeur (0 <=> pas de contrainte).
105
*@param iHeightConstraint contrainte en hauteur (0 <=> pas de contrainte).
234 by fabounet
correction chargement de themes avec docks racines + ajout d'un timer de refresh sur switcher
106
*@param bNoZoomUp TRUE ssi on ne doit pas agrandir the image (seulement la rétrécir).
96 by fabounet
correction label + API opengl (en cours) + liste clock
107
*@param fZoomWidth sera renseigné avec le facteur de zoom en largeur qui a été appliqué.
108
*@param fZoomHeight sera renseigné avec le facteur de zoom en hauteur qui a été appliqué.
109
*/
110
void cairo_dock_calculate_size_fill (double *fImageWidth, double *fImageHeight, int iWidthConstraint, int iHeightConstraint, gboolean bNoZoomUp, double *fZoomWidth, double *fZoomHeight);
234 by fabounet
correction chargement de themes avec docks racines + ajout d'un timer de refresh sur switcher
111
112
/* Calcule la taille d'une image selon une contrainte en largeur et hauteur en gardant le ratio hauteur/largeur constant.
113
*@param fImageWidth the width of the image. Contient initialement the width of the image, et sera écrasée avec la largeur obtenue.
114
*@param fImageHeight the height of the image. Contient initialement the height of the image, et sera écrasée avec la hauteur obtenue.
96 by fabounet
correction label + API opengl (en cours) + liste clock
115
*@param iWidthConstraint contrainte en largeur (0 <=> pas de contrainte).
116
*@param iHeightConstraint contrainte en hauteur (0 <=> pas de contrainte).
234 by fabounet
correction chargement de themes avec docks racines + ajout d'un timer de refresh sur switcher
117
*@param bNoZoomUp TRUE ssi on ne doit pas agrandir the image (seulement la rétrécir).
96 by fabounet
correction label + API opengl (en cours) + liste clock
118
*@param fZoom sera renseigné avec le facteur de zoom qui a été appliqué.
119
*/
120
void cairo_dock_calculate_size_constant_ratio (double *fImageWidth, double *fImageHeight, int iWidthConstraint, int iHeightConstraint, gboolean bNoZoomUp, double *fZoom);
234 by fabounet
correction chargement de themes avec docks racines + ajout d'un timer de refresh sur switcher
121
122
/** Calculate the size of an image according to a constraint on width and height, and a loading modifier.
123
*@param fImageWidth pointer to the width of the image. Initially contains the width of the original image, and is updated with the resulting width.
124
*@param fImageHeight pointer to the height of the image. Initially contains the height of the original image, and is updated with the resulting height.
125
*@param iWidthConstraint constraint on width (0 <=> no constraint).
126
*@param iHeightConstraint constraint on height (0 <=> no constraint).
127
*@param iLoadingModifier a mask of different loading modifiers.
128
*@param fZoomWidth will be filled with the zoom that has been applied on width.
129
*@param fZoomHeight will be filled with the zoom that has been applied on height.
96 by fabounet
correction label + API opengl (en cours) + liste clock
130
*/
131
void cairo_dock_calculate_constrainted_size (double *fImageWidth, double *fImageHeight, int iWidthConstraint, int iHeightConstraint, CairoDockLoadImageModifier iLoadingModifier, double *fZoomWidth, double *fZoomHeight);
132
234 by fabounet
correction chargement de themes avec docks racines + ajout d'un timer de refresh sur switcher
133
/** Create a surface from raw data of an X icon. The biggest icon possible is taken. The ratio is kept, and the surface will fill the space with transparency if necessary.
134
*@param pXIconBuffer raw data of the icon.
135
*@param iBufferNbElements number of elements in the buffer.
547 by fabounet
moved gio-vfs.c into the plug-ins and add a backend for container icons + fix for dual-screen
136
*@param iWidth will be filled with the resulting width of the surface.
137
*@param iHeight will be filled with the resulting height of the surface.
234 by fabounet
correction chargement de themes avec docks racines + ajout d'un timer de refresh sur switcher
138
*@return the newly allocated surface.
96 by fabounet
correction label + API opengl (en cours) + liste clock
139
*/
530 by fabounet
use libcurl instead of forking a curl process => new dependency + made an indicator manager + added a source context in cache to avoid creating it for any image loading
140
cairo_surface_t *cairo_dock_create_surface_from_xicon_buffer (gulong *pXIconBuffer, int iBufferNbElements, int iWidth, int iHeight);
96 by fabounet
correction label + API opengl (en cours) + liste clock
141
234 by fabounet
correction chargement de themes avec docks racines + ajout d'un timer de refresh sur switcher
142
/** Create a surface from a GdkPixbuf.
143
*@param pixbuf the pixbuf.
144
*@param fMaxScale maximum zoom of the icon.
145
*@param iWidthConstraint constraint on the width, or 0 to not constraint it.
146
*@param iHeightConstraint constraint on the height, or 0 to not constraint it.
147
*@param iLoadingModifier a mask of different loading modifiers.
148
*@param fImageWidth will be filled with the resulting width of the surface (hors zoom).
149
*@param fImageHeight will be filled with the resulting height of the surface (hors zoom).
150
*@param fZoomX if non NULL, will be filled with the zoom that has been applied on width.
151
*@param fZoomY if non NULL, will be filled with the zoom that has been applied on width.
152
*@return the newly allocated surface.
96 by fabounet
correction label + API opengl (en cours) + liste clock
153
*/
530 by fabounet
use libcurl instead of forking a curl process => new dependency + made an indicator manager + added a source context in cache to avoid creating it for any image loading
154
cairo_surface_t *cairo_dock_create_surface_from_pixbuf (GdkPixbuf *pixbuf, double fMaxScale, int iWidthConstraint, int iHeightConstraint, CairoDockLoadImageModifier iLoadingModifier, double *fImageWidth, double *fImageHeight, double *fZoomX, double *fZoomY);
155
156
157
void cairo_dock_reset_source_context (void);
134 by fabounet
maj de la doc et 2 petites modifs
158
234 by fabounet
correction chargement de themes avec docks racines + ajout d'un timer de refresh sur switcher
159
/** Create an empty surface (transparent) of a given size. In OpenGL mode, this surface can act as a buffer to generate a texture.
160
*@param iWidth width of the surface.
161
*@param iHeight height of the surface.
162
*@return the newly allocated surface.
134 by fabounet
maj de la doc et 2 petites modifs
163
*/
530 by fabounet
use libcurl instead of forking a curl process => new dependency + made an indicator manager + added a source context in cache to avoid creating it for any image loading
164
cairo_surface_t *cairo_dock_create_blank_surface (int iWidth, int iHeight);
134 by fabounet
maj de la doc et 2 petites modifs
165
234 by fabounet
correction chargement de themes avec docks racines + ajout d'un timer de refresh sur switcher
166
/** Create a surface from any image.
167
*@param cImagePath complete path to the image.
168
*@param fMaxScale maximum zoom of the icon.
169
*@param iWidthConstraint constraint on the width, or 0 to not constraint it.
170
*@param iHeightConstraint constraint on the height, or 0 to not constraint it.
171
*@param iLoadingModifier a mask of different loading modifiers.
172
*@param fImageWidth will be filled with the resulting width of the surface (hors zoom).
173
*@param fImageHeight will be filled with the resulting height of the surface (hors zoom).
174
*@param fZoomX if non NULL, will be filled with the zoom that has been applied on width.
175
*@param fZoomY if non NULL, will be filled with the zoom that has been applied on width.
176
*@return the newly allocated surface.
96 by fabounet
correction label + API opengl (en cours) + liste clock
177
*/
530 by fabounet
use libcurl instead of forking a curl process => new dependency + made an indicator manager + added a source context in cache to avoid creating it for any image loading
178
cairo_surface_t *cairo_dock_create_surface_from_image (const gchar *cImagePath, double fMaxScale, int iWidthConstraint, int iHeightConstraint, CairoDockLoadImageModifier iLoadingModifier, double *fImageWidth, double *fImageHeight, double *fZoomX, double *fZoomY);
234 by fabounet
correction chargement de themes avec docks racines + ajout d'un timer de refresh sur switcher
179
236 by fabounet
enlevage de cpusage, rame et nvidia + documentation : finie a 90% + nettoyage de l'API => si ca compile c'est que j'ai eu du bol ^_^
180
/** Create a surface from any image, at a given size. If the image is given by its sole name, it is searched inside the current theme root folder.
181
*@param cImageFile path or name of an image.
182
*@param fImageWidth the desired surface width.
183
*@param fImageHeight the desired surface height.
184
*@return the newly allocated surface.
185
*/
530 by fabounet
use libcurl instead of forking a curl process => new dependency + made an indicator manager + added a source context in cache to avoid creating it for any image loading
186
cairo_surface_t *cairo_dock_create_surface_from_image_simple (const gchar *cImageFile, double fImageWidth, double fImageHeight);
236 by fabounet
enlevage de cpusage, rame et nvidia + documentation : finie a 90% + nettoyage de l'API => si ca compile c'est que j'ai eu du bol ^_^
187
188
/** Create a surface from any image, at a given size. If the image is given by its sole name, it is searched inside the icons themes known by Cairo-Dock. 
189
*@param cImagePath path or name of an image.
190
*@param fImageWidth the desired surface width.
191
*@param fImageHeight the desired surface height.
192
*@return the newly allocated surface.
193
*/
530 by fabounet
use libcurl instead of forking a curl process => new dependency + made an indicator manager + added a source context in cache to avoid creating it for any image loading
194
cairo_surface_t *cairo_dock_create_surface_from_icon (const gchar *cImagePath, double fImageWidth, double fImageHeight);
236 by fabounet
enlevage de cpusage, rame et nvidia + documentation : finie a 90% + nettoyage de l'API => si ca compile c'est que j'ai eu du bol ^_^
195
#define cairo_dock_create_surface_for_icon cairo_dock_create_surface_from_icon
196
197
/** Create a square surface from any image, at a given size. If the image is given by its sole name, it is searched inside the icons themes known by Cairo-Dock.
198
*@param cImagePath path or name of an image.
234 by fabounet
correction chargement de themes avec docks racines + ajout d'un timer de refresh sur switcher
199
*@param fImageSize the desired surface size.
200
*@return the newly allocated surface.
96 by fabounet
correction label + API opengl (en cours) + liste clock
201
*/
530 by fabounet
use libcurl instead of forking a curl process => new dependency + made an indicator manager + added a source context in cache to avoid creating it for any image loading
202
#define cairo_dock_create_surface_for_square_icon(cImagePath, fImageSize) cairo_dock_create_surface_for_icon (cImagePath, fImageSize, fImageSize)
96 by fabounet
correction label + API opengl (en cours) + liste clock
203
204
483 by fabounet
fixed the bug of the input shape with auto-hide on maximized window
205
/** Create a surface at a given size, and fill it with a pattern. If the pattern image is given by its sole name, it is searched inside the current theme root folder.
501 by fabounet
added a desklet manager + added missing files
206
*@param cImageFile path or name of an image that will be repeated to fill the surface.
483 by fabounet
fixed the bug of the input shape with auto-hide on maximized window
207
*@param fImageWidth the desired surface width.
208
*@param fImageHeight the desired surface height.
209
*@param fAlpha transparency of the pattern (1 means opaque).
210
*@return the newly allocated surface.
211
*/
530 by fabounet
use libcurl instead of forking a curl process => new dependency + made an indicator manager + added a source context in cache to avoid creating it for any image loading
212
cairo_surface_t *cairo_dock_create_surface_from_pattern (const gchar *cImageFile, double fImageWidth, double fImageHeight, double fAlpha);
483 by fabounet
fixed the bug of the input shape with auto-hide on maximized window
213
214
234 by fabounet
correction chargement de themes avec docks racines + ajout d'un timer de refresh sur switcher
215
/** Create a surface by rotating another. Only works for 1/4 of rounds.
216
*@param pSurface surface to rotate.
217
*@param fImageWidth the width of the surface.
218
*@param fImageHeight the height of the surface.
219
*@param fRotationAngle rotation angle to apply, in radians.
220
*@return the newly allocated surface.
96 by fabounet
correction label + API opengl (en cours) + liste clock
221
*/
530 by fabounet
use libcurl instead of forking a curl process => new dependency + made an indicator manager + added a source context in cache to avoid creating it for any image loading
222
cairo_surface_t * cairo_dock_rotate_surface (cairo_surface_t *pSurface, double fImageWidth, double fImageHeight, double fRotationAngle);
96 by fabounet
correction label + API opengl (en cours) + liste clock
223
978 by Fabrice Rey
core: various fixes, beta coming soon
224
/* Create a surface by reflection of another. Apply a transparency gradation. The size of the reflect is given by the global config,and its position if given by the orientation of the icon; if this changes, the reflect needs to be re-created.
234 by fabounet
correction chargement de themes avec docks racines + ajout d'un timer de refresh sur switcher
225
*@param pSurface surface to reflect.
226
*@param fImageWidth the width of the surface.
227
*@param fImageHeight the height of the surface.
459 by fabounet03
separated the gui launcher with an interface
228
*@param fReflectSize size of the reflection.
501 by fabounet
added a desklet manager + added missing files
229
*@param fAlbedo power of the reflection (1 : strong, 0 : transparent)
301 by Fabounet (Fabrice Rey) - http://cairo-dock.org
some bug-fixs on sub-docks + renamed some fields
230
*@param bIsHorizontal TRUE if the surface is in an horizontal container.
234 by fabounet
correction chargement de themes avec docks racines + ajout d'un timer de refresh sur switcher
231
*@param bDirectionUp TRUE if the surface is in a container whose direction is towards.
232
*@return the newly allocated surface.
96 by fabounet
correction label + API opengl (en cours) + liste clock
233
*/
978 by Fabrice Rey
core: various fixes, beta coming soon
234
//cairo_surface_t * cairo_dock_create_reflection_surface (cairo_surface_t *pSurface, double fImageWidth, double fImageHeight, double fReflectSize, double fAlbedo, gboolean bIsHorizontal, gboolean bDirectionUp);
96 by fabounet
correction label + API opengl (en cours) + liste clock
235
234 by fabounet
correction chargement de themes avec docks racines + ajout d'un timer de refresh sur switcher
236
/** Create a surface representing a text, according to a given text description.
237
*@param cText the text.
238
*@param pLabelDescription description of the text rendering.
239
*@param fMaxScale maximum zoom of the text.
240
*@param iMaxWidth maximum authorized width for the surface; it will be zoomed in to fits this limit. 0 for no limit.
241
*@param iTextWidth will be filled the width of the resulting surface.
242
*@param iTextHeight will be filled the height of the resulting surface.
243
*@return the newly allocated surface.
96 by fabounet
correction label + API opengl (en cours) + liste clock
244
*/
972 by Fabrice Rey
per-dock icon size: fixed most of the regressions
245
cairo_surface_t *cairo_dock_create_surface_from_text_full (const gchar *cText, CairoDockLabelDescription *pLabelDescription, double fMaxScale, int iMaxWidth, int *iTextWidth, int *iTextHeight);
236 by fabounet
enlevage de cpusage, rame et nvidia + documentation : finie a 90% + nettoyage de l'API => si ca compile c'est que j'ai eu du bol ^_^
246
247
/** Create a surface representing a text, according to a given text description.
248
*@param cText the text.
249
*@param pLabelDescription description of the text rendering.
250
*@param iTextWidthPtr will be filled the width of the resulting surface.
251
*@param iTextHeightPtr will be filled the height of the resulting surface.
252
*@return the newly allocated surface.
253
*/
972 by Fabrice Rey
per-dock icon size: fixed most of the regressions
254
#define cairo_dock_create_surface_from_text(cText, pLabelDescription, iTextWidthPtr, iTextHeightPtr) cairo_dock_create_surface_from_text_full (cText, pLabelDescription, 1., 0, iTextWidthPtr, iTextHeightPtr) 
96 by fabounet
correction label + API opengl (en cours) + liste clock
255
234 by fabounet
correction chargement de themes avec docks racines + ajout d'un timer de refresh sur switcher
256
/** Create a surface identical to another, possibly resizing it.
257
*@param pSurface surface to duplicate.
258
*@param fWidth the width of the surface.
259
*@param fHeight the height of the surface.
260
*@param fDesiredWidth desired width of the copy (0 to keep the same size).
261
*@param fDesiredHeight desired height of the copy (0 to keep the same size).
262
*@return the newly allocated surface.
96 by fabounet
correction label + API opengl (en cours) + liste clock
263
*/
530 by fabounet
use libcurl instead of forking a curl process => new dependency + made an indicator manager + added a source context in cache to avoid creating it for any image loading
264
cairo_surface_t * cairo_dock_duplicate_surface (cairo_surface_t *pSurface, double fWidth, double fHeight, double fDesiredWidth, double fDesiredHeight);
96 by fabounet
correction label + API opengl (en cours) + liste clock
265
266
267
G_END_DECLS
268
#endif