use cairo image surfaces, not GdkPixmap, when computing text sizes for port matrix labels
git-svn-id: svn://localhost/ardour2/branches/3.0@10460 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
parent
e12432cc63
commit
e69bfc745b
|
@ -39,9 +39,8 @@ PortMatrixColumnLabels::PortMatrixColumnLabels (PortMatrix* m, PortMatrixBody* b
|
|||
void
|
||||
PortMatrixColumnLabels::compute_dimensions ()
|
||||
{
|
||||
GdkPixmap* pm = gdk_pixmap_new (NULL, 1, 1, gdk_visual_get_depth (gdk_visual_get_system ()));
|
||||
gdk_drawable_set_colormap (pm, gdk_colormap_get_system());
|
||||
cairo_t* cr = gdk_cairo_create (pm);
|
||||
cairo_surface_t* surface = cairo_image_surface_create (CAIRO_FORMAT_RGB24, 200, 200);
|
||||
cairo_t* cr = cairo_create (surface);
|
||||
|
||||
/* width of the longest bundle name */
|
||||
_longest_bundle_name = 0;
|
||||
|
@ -95,7 +94,7 @@ PortMatrixColumnLabels::compute_dimensions ()
|
|||
}
|
||||
|
||||
cairo_destroy (cr);
|
||||
g_object_unref (pm);
|
||||
cairo_surface_destroy (surface);
|
||||
|
||||
/* height of the whole thing */
|
||||
|
||||
|
|
|
@ -38,9 +38,8 @@ PortMatrixRowLabels::PortMatrixRowLabels (PortMatrix* m, PortMatrixBody* b)
|
|||
void
|
||||
PortMatrixRowLabels::compute_dimensions ()
|
||||
{
|
||||
GdkPixmap* pm = gdk_pixmap_new (NULL, 1, 1, gdk_visual_get_depth (gdk_visual_get_system ()));
|
||||
gdk_drawable_set_colormap (pm, gdk_colormap_get_system());
|
||||
cairo_t* cr = gdk_cairo_create (pm);
|
||||
cairo_surface_t* surface = cairo_image_surface_create (CAIRO_FORMAT_RGB24, 200, 200);
|
||||
cairo_t* cr = cairo_create (surface);
|
||||
|
||||
_longest_port_name = 0;
|
||||
_longest_bundle_name = 0;
|
||||
|
@ -83,7 +82,7 @@ PortMatrixRowLabels::compute_dimensions ()
|
|||
}
|
||||
|
||||
cairo_destroy (cr);
|
||||
g_object_unref (pm);
|
||||
cairo_surface_destroy (surface);
|
||||
|
||||
_width = _longest_bundle_name +
|
||||
name_pad() * 2;
|
||||
|
|
Loading…
Reference in New Issue
Block a user