1 /* LIBGIMP - The GIMP Library
2 * Copyright (C) 1995-2003 Peter Mattis and Spencer Kimball
3 *
4 * gimpimageguides_pdb.c
5 *
6 * This library is free software: you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 3 of the License, or (at your option) any later version.
10 *
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
15 *
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with this library. If not, see
18 * <https://www.gnu.org/licenses/>.
19 */
20
21 /* NOTE: This file is auto-generated by pdbgen.pl */
22
23 #include "config.h"
24
25 #include "gimp.h"
26
27
28 /**
29 * SECTION: gimpimageguides
30 * @title: gimpimageguides
31 * @short_description: Functions for manipulating an image's guides.
32 *
33 * Functions for manipulating an image's guides.
34 **/
35
36
37 /**
38 * gimp_image_add_hguide:
39 * @image_ID: The image.
40 * @yposition: The guide's y-offset from top of image.
41 *
42 * Add a horizontal guide to an image.
43 *
44 * This procedure adds a horizontal guide to an image. It takes the
45 * input image and the y-position of the new guide as parameters. It
46 * returns the guide ID of the new guide.
47 *
48 * Returns: The new guide.
49 **/
50 gint32
gimp_image_add_hguide(gint32 image_ID,gint yposition)51 gimp_image_add_hguide (gint32 image_ID,
52 gint yposition)
53 {
54 GimpParam *return_vals;
55 gint nreturn_vals;
56 gint32 guide_ID = -1;
57
58 return_vals = gimp_run_procedure ("gimp-image-add-hguide",
59 &nreturn_vals,
60 GIMP_PDB_IMAGE, image_ID,
61 GIMP_PDB_INT32, yposition,
62 GIMP_PDB_END);
63
64 if (return_vals[0].data.d_status == GIMP_PDB_SUCCESS)
65 guide_ID = return_vals[1].data.d_int32;
66
67 gimp_destroy_params (return_vals, nreturn_vals);
68
69 return guide_ID;
70 }
71
72 /**
73 * gimp_image_add_vguide:
74 * @image_ID: The image.
75 * @xposition: The guide's x-offset from left of image.
76 *
77 * Add a vertical guide to an image.
78 *
79 * This procedure adds a vertical guide to an image. It takes the input
80 * image and the x-position of the new guide as parameters. It returns
81 * the guide ID of the new guide.
82 *
83 * Returns: The new guide.
84 **/
85 gint32
gimp_image_add_vguide(gint32 image_ID,gint xposition)86 gimp_image_add_vguide (gint32 image_ID,
87 gint xposition)
88 {
89 GimpParam *return_vals;
90 gint nreturn_vals;
91 gint32 guide_ID = -1;
92
93 return_vals = gimp_run_procedure ("gimp-image-add-vguide",
94 &nreturn_vals,
95 GIMP_PDB_IMAGE, image_ID,
96 GIMP_PDB_INT32, xposition,
97 GIMP_PDB_END);
98
99 if (return_vals[0].data.d_status == GIMP_PDB_SUCCESS)
100 guide_ID = return_vals[1].data.d_int32;
101
102 gimp_destroy_params (return_vals, nreturn_vals);
103
104 return guide_ID;
105 }
106
107 /**
108 * gimp_image_delete_guide:
109 * @image_ID: The image.
110 * @guide_ID: The ID of the guide to be removed.
111 *
112 * Deletes a guide from an image.
113 *
114 * This procedure takes an image and a guide ID as input and removes
115 * the specified guide from the specified image.
116 *
117 * Returns: TRUE on success.
118 **/
119 gboolean
gimp_image_delete_guide(gint32 image_ID,gint32 guide_ID)120 gimp_image_delete_guide (gint32 image_ID,
121 gint32 guide_ID)
122 {
123 GimpParam *return_vals;
124 gint nreturn_vals;
125 gboolean success = TRUE;
126
127 return_vals = gimp_run_procedure ("gimp-image-delete-guide",
128 &nreturn_vals,
129 GIMP_PDB_IMAGE, image_ID,
130 GIMP_PDB_INT32, guide_ID,
131 GIMP_PDB_END);
132
133 success = return_vals[0].data.d_status == GIMP_PDB_SUCCESS;
134
135 gimp_destroy_params (return_vals, nreturn_vals);
136
137 return success;
138 }
139
140 /**
141 * gimp_image_find_next_guide:
142 * @image_ID: The image.
143 * @guide_ID: The ID of the current guide (0 if first invocation).
144 *
145 * Find next guide on an image.
146 *
147 * This procedure takes an image and a guide ID as input and finds the
148 * guide ID of the successor of the given guide ID in the image's guide
149 * list. If the supplied guide ID is 0, the procedure will return the
150 * first Guide. The procedure will return 0 if given the final guide ID
151 * as an argument or the image has no guides.
152 *
153 * Returns: The next guide's ID.
154 **/
155 gint32
gimp_image_find_next_guide(gint32 image_ID,gint32 guide_ID)156 gimp_image_find_next_guide (gint32 image_ID,
157 gint32 guide_ID)
158 {
159 GimpParam *return_vals;
160 gint nreturn_vals;
161 gint32 next_guide_ID = -1;
162
163 return_vals = gimp_run_procedure ("gimp-image-find-next-guide",
164 &nreturn_vals,
165 GIMP_PDB_IMAGE, image_ID,
166 GIMP_PDB_INT32, guide_ID,
167 GIMP_PDB_END);
168
169 if (return_vals[0].data.d_status == GIMP_PDB_SUCCESS)
170 next_guide_ID = return_vals[1].data.d_int32;
171
172 gimp_destroy_params (return_vals, nreturn_vals);
173
174 return next_guide_ID;
175 }
176
177 /**
178 * gimp_image_get_guide_orientation:
179 * @image_ID: The image.
180 * @guide_ID: The guide.
181 *
182 * Get orientation of a guide on an image.
183 *
184 * This procedure takes an image and a guide ID as input and returns
185 * the orientations of the guide.
186 *
187 * Returns: The guide's orientation.
188 **/
189 GimpOrientationType
gimp_image_get_guide_orientation(gint32 image_ID,gint32 guide_ID)190 gimp_image_get_guide_orientation (gint32 image_ID,
191 gint32 guide_ID)
192 {
193 GimpParam *return_vals;
194 gint nreturn_vals;
195 GimpOrientationType orientation = GIMP_ORIENTATION_UNKNOWN;
196
197 return_vals = gimp_run_procedure ("gimp-image-get-guide-orientation",
198 &nreturn_vals,
199 GIMP_PDB_IMAGE, image_ID,
200 GIMP_PDB_INT32, guide_ID,
201 GIMP_PDB_END);
202
203 if (return_vals[0].data.d_status == GIMP_PDB_SUCCESS)
204 orientation = return_vals[1].data.d_int32;
205
206 gimp_destroy_params (return_vals, nreturn_vals);
207
208 return orientation;
209 }
210
211 /**
212 * gimp_image_get_guide_position:
213 * @image_ID: The image.
214 * @guide_ID: The guide.
215 *
216 * Get position of a guide on an image.
217 *
218 * This procedure takes an image and a guide ID as input and returns
219 * the position of the guide relative to the top or left of the image.
220 *
221 * Returns: The guide's position relative to top or left of image.
222 **/
223 gint
gimp_image_get_guide_position(gint32 image_ID,gint32 guide_ID)224 gimp_image_get_guide_position (gint32 image_ID,
225 gint32 guide_ID)
226 {
227 GimpParam *return_vals;
228 gint nreturn_vals;
229 gint position = G_MININT /* GIMP_GUIDE_POSITION_UNDEFINED */;
230
231 return_vals = gimp_run_procedure ("gimp-image-get-guide-position",
232 &nreturn_vals,
233 GIMP_PDB_IMAGE, image_ID,
234 GIMP_PDB_INT32, guide_ID,
235 GIMP_PDB_END);
236
237 if (return_vals[0].data.d_status == GIMP_PDB_SUCCESS)
238 position = return_vals[1].data.d_int32;
239
240 gimp_destroy_params (return_vals, nreturn_vals);
241
242 return position;
243 }
244