Remove the single-stage units converters
The stage-with/height-percentage converters had been broken by the multiple-stages support of Clutter 0.8. They are also made useless by the fact that Units are now floating point values. The millimeters and typographic points converters also depended on the default stage, but they can be reworked to use the default DPI coming from the default Backend instead.
This commit is contained in:
@ -101,6 +101,58 @@
|
||||
#include "clutter-units.h"
|
||||
#include "clutter-private.h"
|
||||
|
||||
#define DPI_FALLBACK 96.0
|
||||
|
||||
/**
|
||||
* clutter_units_mm:
|
||||
* @mm: millimeters to convert
|
||||
*
|
||||
* Converts a value in millimeters to #ClutterUnit<!-- -->s at
|
||||
* the current DPI.
|
||||
*
|
||||
* Return value: the value in units
|
||||
*
|
||||
* Since: 1.0
|
||||
*/
|
||||
ClutterUnit
|
||||
clutter_units_mm (gdouble mm)
|
||||
{
|
||||
ClutterBackend *backend;
|
||||
gdouble dpi;
|
||||
|
||||
backend = clutter_get_default_backend ();
|
||||
dpi = clutter_backend_get_resolution (backend);
|
||||
if (dpi < 0)
|
||||
dpi = DPI_FALLBACK;
|
||||
|
||||
return mm * dpi / 25.4;
|
||||
}
|
||||
|
||||
/**
|
||||
* clutter_units_pt:
|
||||
* @pt: typographic points to convert
|
||||
*
|
||||
* Converts a value in typographic points to #ClutterUnit<!-- -->s
|
||||
* at the current DPI.
|
||||
*
|
||||
* Return value: the value in units
|
||||
*
|
||||
* Since: 1.0
|
||||
*/
|
||||
ClutterUnit
|
||||
clutter_units_pt (gdouble pt)
|
||||
{
|
||||
ClutterBackend *backend;
|
||||
gdouble dpi;
|
||||
|
||||
backend = clutter_get_default_backend ();
|
||||
dpi = clutter_backend_get_resolution (backend);
|
||||
if (dpi < 0)
|
||||
dpi = DPI_FALLBACK;
|
||||
|
||||
return pt * dpi / 72.0;
|
||||
}
|
||||
|
||||
static GTypeInfo _info = {
|
||||
0,
|
||||
NULL,
|
||||
|
Reference in New Issue
Block a user