Top |
gimpunitgimpunit — Provides a collection of predefined units and functions for creating user-defined units. |
gint | gimp_unit_get_number_of_units () |
gint | gimp_unit_get_number_of_built_in_units () |
GimpUnit | gimp_unit_new () |
gboolean | gimp_unit_get_deletion_flag () |
void | gimp_unit_set_deletion_flag () |
gdouble | gimp_unit_get_factor () |
gint | gimp_unit_get_digits () |
gint | gimp_unit_get_scaled_digits () |
const gchar * | gimp_unit_get_identifier () |
const gchar * | gimp_unit_get_symbol () |
const gchar * | gimp_unit_get_abbreviation () |
const gchar * | gimp_unit_get_singular () |
const gchar * | gimp_unit_get_plural () |
gchar * | gimp_unit_format_string () |
gdouble | gimp_pixels_to_units () |
gdouble | gimp_units_to_pixels () |
gdouble | gimp_units_to_points () |
gboolean | gimp_unit_is_metric () |
#define | GIMP_IS_PARAM_SPEC_UNIT() |
GParamSpec * | gimp_param_spec_unit () |
#define | GIMP_VALUE_HOLDS_UNIT() |
Provides a collection of predefined units and functions for creating user-defined units.
gint
gimp_unit_get_number_of_units (void
);
Returns the number of units which are known to the GimpUnit system.
gint
gimp_unit_get_number_of_built_in_units
(void
);
Returns the number of GimpUnit's which are hardcoded in the unit system (UNIT_INCH, UNIT_MM, UNIT_POINT, UNIT_PICA and the two "pseudo unit" UNIT_PIXEL).
GimpUnit gimp_unit_new (gchar *identifier
,gdouble factor
,gint digits
,gchar *symbol
,gchar *abbreviation
,gchar *singular
,gchar *plural
);
Returns the integer ID of the new GimpUnit.
Note that a new unit is always created with its deletion flag
set to TRUE
. You will have to set it to FALSE
with
gimp_unit_set_deletion_flag()
to make the unit definition persistent.
identifier |
The unit's identifier string. |
|
factor |
The unit's factor (how many units are in one inch). |
|
digits |
The unit's suggested number of digits (see |
|
symbol |
The symbol of the unit (e.g. "''" for inch). |
|
abbreviation |
The abbreviation of the unit. |
|
singular |
The singular form of the unit. |
|
plural |
The plural form of the unit. |
void gimp_unit_set_deletion_flag (GimpUnit unit
,gboolean deletion_flag
);
Sets a GimpUnit's deletion_flag
. If the deletion_flag
of a unit is
TRUE
when GIMP exits, this unit will not be saved in the users's
"unitrc" file.
Trying to change the deletion_flag
of a built-in unit will be silently
ignored.
gdouble
gimp_unit_get_factor (GimpUnit unit
);
A GimpUnit's factor
is defined to be:
distance_in_units == (factor
* distance_in_inches)
Returns 0 for unit
== GIMP_UNIT_PIXEL.
gint
gimp_unit_get_digits (GimpUnit unit
);
Returns the number of digits set for unit
.
Built-in units' accuracy is approximately the same as an inch with
two digits. User-defined units can suggest a different accuracy.
Note: the value is as-set by defaults or by the user and does not
necessary provide enough precision on high-resolution images.
When the information is needed for a specific image, the use of
gimp_unit_get_scaled_digits()
may be more appropriate.
Returns 0 for unit
== GIMP_UNIT_PIXEL.
gint gimp_unit_get_scaled_digits (GimpUnit unit
,gdouble resolution
);
Returns the number of digits a unit
field should provide to get
enough accuracy so that every pixel position shows a different
value from neighboring pixels.
Note: when needing digit accuracy to display a diagonal distance,
the resolution
may not correspond to the image's horizontal or
vertical resolution, but instead to the result of:
distance_in_pixel / distance_in_inch
.
const gchar *
gimp_unit_get_identifier (GimpUnit unit
);
This is an untranslated string and must not be changed or freed.
const gchar *
gimp_unit_get_symbol (GimpUnit unit
);
This is e.g. "''" for UNIT_INCH.
NOTE: This string must not be changed or freed.
const gchar *
gimp_unit_get_abbreviation (GimpUnit unit
);
For built-in units, this function returns the translated abbreviation of the unit.
NOTE: This string must not be changed or freed.
const gchar *
gimp_unit_get_singular (GimpUnit unit
);
For built-in units, this function returns the translated singular form of the unit's name.
NOTE: This string must not be changed or freed.
const gchar *
gimp_unit_get_plural (GimpUnit unit
);
For built-in units, this function returns the translated plural form of the unit's name.
NOTE: This string must not be changed or freed.
gchar * gimp_unit_format_string (const gchar *format
,GimpUnit unit
);
The format
string supports the following percent expansions:
% f | Factor (how many units make up an inch) |
% y | Symbol (e.g. "''" for GIMP_UNIT_INCH) |
% a | Abbreviation |
% s | Singular |
% p | Plural |
%% | Literal percent |
A newly allocated string with above percent expressions
replaced with the resp. strings for unit
.
Since: 2.8
gdouble gimp_pixels_to_units (gdouble pixels
,GimpUnit unit
,gdouble resolution
);
Converts a value
specified in pixels to unit
.
Since: 2.8
gdouble gimp_units_to_pixels (gdouble value
,GimpUnit unit
,gdouble resolution
);
Converts a value
specified in unit
to pixels.
Since: 2.8
gdouble gimp_units_to_points (gdouble value
,GimpUnit unit
,gdouble resolution
);
Converts a value
specified in unit
to points.
Since: 2.8
gboolean
gimp_unit_is_metric (GimpUnit unit
);
Checks if the given unit
is metric. A simplistic test is used
that looks at the unit's factor and checks if it is 2.54 multiplied
by some common powers of 10. Currently it checks for mm, cm, dm, m.
See also: gimp_unit_get_factor()
Since: 2.10
#define GIMP_IS_PARAM_SPEC_UNIT(pspec) (G_TYPE_CHECK_INSTANCE_TYPE ((pspec), GIMP_TYPE_PARAM_UNIT))
GParamSpec * gimp_param_spec_unit (const gchar *name
,const gchar *nick
,const gchar *blurb
,gboolean allow_pixels
,gboolean allow_percent
,GimpUnit default_value
,GParamFlags flags
);
Creates a param spec to hold a units param.
See g_param_spec_internal()
for more information.
name |
Canonical name of the param |
|
nick |
Nickname of the param |
|
blurb |
Brief description of param. |
|
allow_pixels |
Whether "pixels" is an allowed unit. |
|
allow_percent |
Whether "percent" is an allowed unit. |
|
default_value |
Unit to use if none is assigned. |
|
flags |
a combination of GParamFlags |
Since: 2.4
#define GIMP_TYPE_UNIT (gimp_unit_get_type ())
GIMP_TYPE_UNIT is a GType derived from G_TYPE_INT.