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 "&" -> "&")
|
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
|