2005-08-15  Morten Welinder <[email protected]>

       * Release 0.0.3

2005-08-15  Jean Brefort  <[email protected]>
       * goffice/graph/gog-object-xml.c: (gog_object_new_from_xml): return NULL
       if dynamic type is not available.

2005-08-15  Emmanuel Pacaud <[email protected]>

       * goffice/graph/gog-guru.c (cb_graph_guru_add_plot): call
       gog_plot_guru_helper if plot is added from porerty editor page.

2005-08-15  Emmanuel Pacaud <[email protected]>

       * goffice/graph/gog-axis.c (map_bounds): minimum or maximum may be
       NULL.
       (map_log_bounds): ditto.
       * goffice/graph/gog-series-lines.c (gog_series_lines_render): draw
       sharp lines.
       * plugins/plot_xy/gog-xy.c (gog_xy_view_render): draw drop lines from
       point to axis start.

2005-08-15  Emmanuel Pacaud <[email protected]>

       * goffice/graph/goffice-graph.h: new GOG_POSITION_IS_SPECIAL and
       GOG_POSITION_IS_PADDING macros for determining GogPosition type.
       Simple == test doesn't work.
       * goffice/graph/gog-axis.c (gog_axis_view_padding_request): use these
       macros.
       (gog_axis_view_size_allocate): ditto.
       * goffice/graph/gog-chart.c (gog_chart_view_size_allocate): ditto.
       * goffice/graph/gog-graph.c (gog_graph_view_size_allocate): ditto.
       * goffice/graph/gog-view.c (gog_view_padding_request_real): ditto.
       (gog_view_size_allocate_real): ditto.
       (gog_view_size_child_request): ditto.
       * goffice/graph/gog-object.c (gog_object_position_cmp): ditto.
       (gog_object_populate_editor): fix manual_toggle widget handling.
       (cb_anchor_changed): set position to manual if anchor changes.

2005-08-14  Emmanuel Pacaud <[email protected]>

       Fix clipping of polar plots. Renamed all clip_push, clip_pop functions
       to push_clip, pop_clip for consistency with push_style, pop_style.

       * goffice/graph/gog-renderer-gnome-print.c
       (print_make_rectangle_path): removed.
       (gog_renderer_gnome_print_push_clip): clipping region is a path now.
       (gog_renderer_gnome_print_draw_path): clip dashed line to graph bbox.
       (gog_renderer_gnome_print_draw_polygon): ditto.
       (gog_graph_print_to_gnome_print): stire graph bbox.
       * goffice/graph/gog-renderer-pixbuf.c (gog_renderer_pixbuf_push_clip):
       handle clipping region as path, assuming nested region is included in
       parent one.
       (gog_renderer_pixbuf_pop_clip): free clip svp.
       (gog_renderer_pixbuf_do_clip): new.
       (gog_renderer_pixbuf_draw_path): call gog_renderer_pixbuf_do_clip.
       clip dashed line to graph bbox.
       (gog_renderer_pixbuf_draw_polygon): ditto.
       * goffice/graph/gog-renderer-svg.c (gog_renderer_svg_push_clip):
       clipping region is a path now.
       * goffice/graph/gog-renderer.c (gog_renderer_push_clip): ditto.
       (gog_renderer_pop_clip): ditto. Free clip_path.
       (gog_renderer_get_rectangle_vpath): new.
       * goffice/graph/gog-view.c (gog_view_render): clipping region is a
       path now.
       * plugins/plot_barcol/gog-line.c (gog_line_view_render): ditto.
       * plugins/plot_radar/gog-radar.c (gog_rt_plot_guru_helper): force
       auto_dash to FALSE.
       (gog_rt_view_render): add correct polar clipping.
       (gog_rt_series_init_style): don't disable marker theming.

2005-08-14  Jean Brefort  <[email protected]>

       * goffice/graph/gog-series.c: (gog_series_class_init),
       (gog_series_base_init): moved roles registering from class_init to
       base_init.

2005-08-13  Jean Brefort  <[email protected]>

       * goffice/graph/gog-chart.c: (calc_circle_parameters): fix a dangerous
       comparison and avoid resulting infinite loops.

2005-08-13  Emmanuel Pacaud <[email protected]>

       * goffice/graph/gog-view.c (gog_view_info_at_point): walk the list in
       reverse order.

2005-08-12  Emmanuel Pacaud <[email protected]>

       Add pattern support for SVG renderer [#310320].

       * goffice/graph/gog-renderer-svg.c (fill_properties): add support for
       patterns.
       * goffice/utils/Makefile.am: install svg-patterns.xml in
       goffice_datadir/patterns.
       * goffice/utils/go-pattern.c: fix thin-rev-diag str in go_patterns.
       (go_pattern_get_svg_path): new.
       * goffice//utils/svg-patterns.xml: new.

2005-08-12  Jean Brefort  <[email protected]>

       * goffice/graph/gog-grid-line.c: (gog_grid_line_view_render):
       fix a memory leak
       * goffice/graph/gog-plot.c: (gog_plot_finalize): and one more.

2005-08-12  Jean Brefort  <[email protected]>

       * goffice/graph/gog-object.c: (gog_object_clear_parent),
       (gog_object_set_parent): do not set class before checking object validity.

2005-08-11  Morten Welinder  <[email protected]>

       * goffice/utils/go-format-match.c (format_create_regexp): Fix
       buffer overrun problem exibited while loading file from #313150.

2005-08-11  Jean Brefort  <[email protected]>

       * goffice/app/go-plugin-loader-module.c: updated to new
       GSF_CLASS_FULL signature.
       * goffice/app/io-context.c: ditto.
       * goffice/graph/gog-axis-line.c: ditto.
       * goffice/graph/gog-axis.c: ditto.
       * goffice/graph/gog-error-bar.c: ditto.
       * goffice/graph/gog-label.c: ditto.
       * goffice/graph/gog-reg-curve.c: ditto.
       * goffice/graph/gog-series.c: ditto.
       * goffice/graph/gog-style.c: ditto.
       * plugins/plot_barcol/gog-1.5d.c: updated to new
       GSF_DYNAMIC_CLASS_FULL signature.
       * plugins/plot_xy/gog-xy.c: ditto and use base_finalize instead
       of class_finalize.

2005-08-10  Emmanuel Pacaud <[email protected]>

       * goffice/graph/gog-axis-line.c (axis_circle_render): fix label
       overlap of 0° and 360° ticks.

       GogPlot::guru_helper implementation for automatic addition of objects
       when creating graphs in guru.

       * goffice/graph/gog-axis.c (role_grid_line_can_add): removed.
       (role_grid_line_major_can_add): use new gog_axis_get_grid_line
       function.
       (role_grid_line_minor_post_add): ditto.
       (gog_axis_get_grid_line): new.
       * goffice/graph/gog-chart.c (role_plot_pre_remove): remove
       GogChart::grid if new axis set is not compatible.
       (role_grid_can_add): add GOG_AXIS_SET_RADAR in list of axis sets
       compatible with GogGrid.
       (gog_chart_axis_set_assign): don't handle GogGrid object here.
       * goffice/graph/gog-guru.c (graph_typeselect_minor): remove current
       chart, not only plot. Call GogPlot::guru_helper for additionnal
       objects.
       * goffice/graph/gog-plot.c (gog_plot_set_property): add new guru-hints
       property, which is a semicolon separated list of hints for
       GogPlot::guru_helper.
       (gog_plot_get_property): ditto.
       (gog_plot_class_init): ditto.
       (gog_plot_guru_helper_add_grid_line): new.
       (gog_plot_guru_helper): new.
       * plugins/plot_barcol/plot_types.xml.in: add "backplane" hint for all
       plots.
       * plugins/plot_box_plot/plot_types.xml.in: ditto.
       * plugins/plot_radar/gog-radar.c (gog_rt_plot_guru_helper): new.
       Handle "circular-no-line" guru hint.
       * plugins/plot_radar/plot-types.xml.in: add "circular-no-line" hint to
       radar plots. add "major-grid" and "backplane" to polar plot.
       * plugins/plot_xy/plot-types.xml.in: add "backplane" to all plots.

2005-08-10  Jean Brefort  <[email protected]>

       * plugins/plot_barcol/gog-1.5d.c:
       (gog_series1_5d_register_type): use base_finalize instead of
       class_finalize since we have derived classes.

2005-08-08  J.H.M. Dassen (Ray) <[email protected]>

       * *: Updated FSF's address.

2005-08-07  Stepan Kasal  <[email protected]>

       * goffice/graph/Makefile.am (goffice_gladedir): Rename to ...
       (gladedir): ..., to prevent conflicts--goffice_gladedir is AC_SUBSTed.
       * goffice/gtk/Makefile.am (goffice_gladedir, gladedir): Likewise.

2005-08-06  Jean Brefort  <[email protected]>

       * goffice/goffice.c: (libgoffice_init): add call to GOG_SERIES_LINES_TYPE.
       * goffice/graph/Makefile.am: add gog-series-lines.[c,h].
       * goffice/graph/gog-object.c: (gog_object_unregister_role): new function.
       * goffice/graph/gog-object.h: ditto.
       * goffice/graph/gog-series-lines.c: moved from plugins/plot_barcol.
       * goffice/graph/gog-series-lines.h: ditto.
       * plugins/plot_barcol/Makefile.am: remove gog-series-lines.[c,h].
       * plugins/plot_barcol/gog-1.5d.c: (gog_series1_5d_class_finalize),
       (gog_series1_5d_get_type), (gog_series1_5d_register_type),
       (go_plugin_init): unregister roles when class is destroyed.
       * plugins/plot_barcol/gog-barcol.c: update path to gog-series-lines.h.
       * plugins/plot_barcol/gog-dropbar.c: ditto.
       * plugins/plot_barcol/gog-line.c: ditto.
       * plugins/plot_barcol/gog-minmax.c: ditto.
       * plugins/plot_barcol/gog-series-lines.c: moved to goffice/graph/.
       * plugins/plot_barcol/gog-series-lines.h: ditto.
       * plugins/plot_xy/gog-xy.c: add horizontal and vertical droplines.
       * plugins/plot_xy/gog-xy.h: ditto.

2005-08-04  Jean Brefort  <[email protected]>

       * goffice/utils/go-line.c (go_line_build_bpath): do not access data
       outside of allocated arrays.

2005-08-04  Stepan Kasal  <[email protected]>

       * goffice/utils/go-file.c: #include unistd.h, for dup().

2005-08-04  Emmanuel Pacaud <[email protected]>

       Allow user to delete all plots of a chart and re-add new plots with
       different axis set.

       * goffice/graph/gog-axis-line.c (gog_axis_base_get_crossed_axis_type):
       handle GOG_AXIS_SET_UNKNOW.
       (gog_axis_base_view_info_at_point): ditto. Do nothing.
       (gog_axis_base_view_padding_request): ditto.
       (gog_axis_base_view_render): ditto.
       * goffice/graph/gog-chart.c (role_plot_pre_remove): if there's no plot
       left, reset axis_set to GOG_AXIS_SET_UNKNOW.
       (gog_chart_axis_set_assign): don't touch axes if axis_set ==
       GOG_AXIS_SET_UNKNOW.
       * goffice/graph/gog-guru.c (cb_graph_guru_delete_item): select parent
       row after item is deleted, because if we do this before, parent->add
       submenu is sometimes incorrect.

2005-08-04  Emmanuel Pacaud <[email protected]>

       * goffice/graph/gog-axis-line.c (gog_axis_base_view_info_at_point):
       handle GOG_AXIS_SET_XY_pseudo_3d.
       * goffice/graph/gog-chart.c (gog_axis_set_from_str): new.
       * goffice/graph/gog-guru.c (cb_plot_family_menu_create): show only
       family with compatible axis set.
       * goffice/graph/gog-label.c (gog_label_init_style): only change text
       orientation if auto flag is TRUE.
       * goffice/graph/gog-plot-engine.c (cb_pending_plot_types_load): load
       axis_set from plot-types.xml.
       (gog_plot_family_register): set axis_set.
       * goffice/graph/gog-plot-impl.h: now store axis_set in GogPlotClass. No
       need for GogPlot::axis_set_pref, GogPlot::axis_set_is_valid and
       GogPlot::axis_set_assign.
       * goffice/graph/gog-plot.c (gog_plot_axis_set_pref): use
       GogPlot::axis_set.
       (gog_plot_axis_set_is_valid): ditto.
       (gog_plot_axis_set_assign): ditto.
       * goffice/graph/gog-style.c (gog_style_assign): assign
       GogStyle::text_layout.auto_angle too.
       (gog_style_force_auto): init GogStyle::text_layout.auto_angle.
       (gog_style_set_text_angle): force auto_angle to FALSE.
       * goffice/gtk/goffice-gtk.c (go_gtk_button_new_with_stock): fix
       compilation warning.
       * plugins/plot_*/gog*.c: remove axis_set_pref, axis_set_is_valid,
       axis_set_assign functions. Set GogPlotClass::axis_set value.
       * plugins/plot_*/plot-types.xml.in: Add axis_set property.

2005-08-04  J.H.M. Dassen (Ray) <[email protected]>

       * README, configure.in: Bumped libgsf requirements as
       goffice/utils/go-file.c needs gsf_input_stdio_new_FILE which is only in
       libgsf HEAD.

2005-08-03  Jody Goldberg <[email protected]>

       * goffice/gtk/goffice-gtk.c (go_gtk_button_new_with_stock) : Use
         gtk_button_set_image to avoid the kludgery that broken settings.
       (go_gtk_dialog_add_button) : merged from gnumeric.

2005-08-03  Morten Welinder  <[email protected]>

       * goffice/utils/go-file.c (go_file_open): Handle URIs like "fd://0".

2005-08-03  Stepan Kasal  <[email protected]>

       * goffice/graph/gog-renderer-pixbuf.c (gog_renderer_pixbuf_draw_text):
         Fix a typo; add an initialization to silence a warning.

2005-08-03  Stepan Kasal  <[email protected]>

       In many Makefile.am's, use the "dist_" prefix instead of adding the
       variable to EXTRA_DIST.
       * goffice/graph/Makefile.am (cairo_sources, cairo_headers): Nuke;
         instead, append to the variables directly.

2005-08-03  Emmanuel Pacaud <[email protected]>

       Cairo renderer build fixes.

       * goffice/graph/gog-renderer-cairo.c (gog_renderer_cairo_draw_text):
       fix size.
       (gog_renderer_cairo_get_text_OBR): ditto.
       (gog_renderer_cairo_update): graph size is a property of GogGraph now.

2005-07-28  Emmanuel Pacaud <[email protected]>

       Who said text angle is not a style property ?

       * goffice/graph/gog-axis-line.c (gog_axis_base_set_property): remove
       label-angle property.
       (gog_axis_base_get_property): ditto.
       (gog_axis_base_class_init): ditto.
       (gog_axis_base_set_label_angle): removed.
       (cb_label_angle_changed): removed.
       (gog_axis_base_populate_editor): remove UI for label angle.
       * goffice/graph/gog-axis-prefs.glade: ditto.
       * goffice/graph/gog-axis.c (role_label_post_add): removed.
       (role_label_can_add): new.
       (gog_axis_init_style): if axis is GOG_AXIS_PSEUDO_3D, no style.
       * goffice/graph/gog-label.c (gog_label_set_angle): removed.
       (gog_label_set_property): remove angle property.
       (gog_label_get_property): ditto.
       (gog_label_class_init): ditto.
       (label_pref_state_free): removed.
       (cb_angle_changed): removed.
       (gog_label_populate_editor): remove UI for angle.
       (gog_label_init_style): set text angle to 90 if parent is an Y axis.
       * goffice/graph/gog-renderer-gnome-print.c
       (gog_renderer_gnome_print_draw_text): text_angle is a style property.
       * goffice/graph/gog-renderer-pixbuf.c
       (gog_renderer_pixbuf_get_pango_layout): ditto.
       * goffice/graph/gog-renderer-svg.c (gog_renderer_svg_draw_text):
       ditto.
       * goffice/graph/gog-renderer.c (gog_renderer_get_text_OBR): ditto.
       (gog_renderer_push_style): no more
       angle property in renderer.
       (gog_renderer_pop_style): ditto.
       (gog_renderer_set_text_angle): removed.
       * goffice/graph/gog-style-prefs.glade: add a new UI for text layout
       group.
       * goffice/graph/gog-style (cb_angle_changed): new.
       (text_layout_init): new.
       (gog_style_assign): handle angle.
       (gog_style_init): ditto.
       (gog_style_text_layout_load): new.
       (gog_style_text_layout_dom_save): new.
       (gog_style_text_layout_sax_save): new.
       (gog_style_persist_dom_load): handle angle.
       (gog_style_persist_dom_save): ditto.
       (gog_style_persist_sax_save): ditto.
       (gog_style_is_different_size): ditto.
       (gog_style_set_text_angle): new.
       * goffice/graph/gog-styled-object.c (styled_object_populate_editor):
       don't display style editor if there isn't any interresting fields.

2005-07-27  Emmanuel Pacaud <[email protected]>

       Code cleanup. Remove bbox parameter of GogRenderer:draw functions.
       It was a previous attempt to do clipping, which is handled by
       gog_renderer_clip_push and gog_renderer_clip_pop for quite a long
       time now.

       Modified Files:

       ChangeLog goffice/graph/gog-axis-line.c
       goffice/graph/gog-error-bar.c goffice/graph/gog-grid-line.c
       goffice/graph/gog-grid.c goffice/graph/gog-label.c
       goffice/graph/gog-legend.c goffice/graph/gog-outlined-object.c
       goffice/graph/gog-reg-curve.c goffice/graph/gog-reg-eqn.c
       goffice/graph/gog-renderer-cairo.c
       goffice/graph/gog-renderer-gnome-print.c
       goffice/graph/gog-renderer-impl.h
       goffice/graph/gog-renderer-pixbuf.c
       goffice/graph/gog-renderer-svg.c goffice/graph/gog-renderer.c
       goffice/graph/gog-renderer.h plugins/plot_barcol/gog-barcol.c
       plugins/plot_barcol/gog-dropbar.c
       plugins/plot_barcol/gog-line.c
       plugins/plot_barcol/gog-minmax.c
       plugins/plot_barcol/gog-series-lines.c
       plugins/plot_boxes/gog-boxplot.c plugins/plot_pie/gog-pie.c
       plugins/plot_radar/gog-radar.c
       plugins/plot_surface/gog-surface.c plugins/plot_xy/gog-xy.c

2005-07-27  Emmanuel Pacaud <[email protected]>

       Text angle is not a font property.
       Set default angle to 90° for y axes (#301582).

       * goffice/graph/gog-axis-line.c (gog_axis_base_class_init): install
       label_angle property.
       (gog_axis_base_set_property): handle label_angle property.
       (gog_axis_base_get_property): ditto.
       (gog_axis_base_set_label_angle): new.
       (cb_label_angle_changed): new.
       (gog_axis_base_populate_editor): init UI for label_angle.
       (gog_axis_base_view_padding_request): set text angle.
       (gog_axis_base_view_render): ditto.
       * goffice/graph/gog-axis-prefs.glade: add UI for label angle.
       * goffice/graph/gog-axis.c (role_label_post_add): new. Sets label
       angle to 90° for y axis.
       (gog_axis_class_init): add role_label_post_add.
       * goffice/graph/gog-label-prefs.glade: new.
       * goffice/graph/gog-label.c (gog_label_set_angle): new.
       (gog_label_class_init): handle angle property.
       (gog_label_set_property): ditto.
       (gog_label_get_property): ditto.
       (label_pref_state_free): new.
       (cb_angle_changed): new.
       (gog_label_populate_editor): add layout page for angle setting.
       (gog_label_init): new.
       (gog_label_view_size_request): set text angle.
       (gog_label_view_render): ditto.
       * goffice/graph/gog-renderer-gnome-print.c
       (gog_renderer_gnome_print_draw_text): text_angle is a property of
       renderer.
       * goffice/graph/gog-renderer-pixbuf.c
       (gog_renderer_pixbuf_get_pango_layout): ditto.
       * goffice/graph/gog-renderer-svg.c (gog_renderer_svg_draw_text):
       ditto.
       * goffice/graph/gog-renderer.c (gog_renderer_push_style): reset text
       angle.
       (gog_renderer_pop_style): ditto.
       (gog_renderer_set_text_angle): new.
       (gog_renderer_get_text_OBR): text_angle is a property of renderer.
       * goffice/graph/gog-style-prefs.glade: remove UI for angle.
       * goffice/graph/gog-style.c (cb_rotation_angle_changed): removed.
       (font_init): remove angle UI.
       (gog_style_font_load): remove rotation_angle setting.
       (gog_style_font_dom_save): ditto.
       (gog_style_font_sax_save): ditto.

2005-07-25  Emmanuel Pacaud <[email protected]>

       * goffice/graph/gog-object-prefs.glade: remove chart preference
       dialog and move it to gog-chart-prefs.glade.
       * goffice/graph/gog-chart-prefs.glade: new.
       * goffice/graph/gog-chart.c (cb_plot_area_changed): actually use
       signal handlers.
       (gog_chart_populate_editor): ditto.

2005-07-25  Emmanuel Pacaud <[email protected]>

       Implementation of manual position of graph objects.

       * goffice/graph/goffice-graph.h: new modifier flags in
       GogObjectPosition for manual position.
       * goffice/graph/gog-axis.c (gog_axis_class_init): Label can be
       positionned manually.
       (gog_axis_view_padding_request): GOG_POSITION_MANUAL supersedes
       GOG_POSITION_SPECIAL.
       (gog_axis_view_size_allocate): handle GOG_POSITION_MANUAL case.
       * goffice/graph/gog-chart-impl.h: plot_area stores plot area position
       in fraction of chart size. new is_plot_area_manual flag.
       * goffice/graph/gog-chart.c (gog_chart_set_property): new.
       (gog_chart_get_property): handles plot-area and is-plot-area-manual
       properties.
       (chart_pref_state_free): new.
       (cb_plot_area_changed): new.
       (cb_manual_toggle_changed): new.
       (gog_chart_populate_editor): new.
       (gog_chart_class_init): reorder childs. Still need some work for a
       nice display in object tree.  Install plot-area and
       is-plot_area-manual properties.
       (gog_chart_get_plot_area): new.
       (gog_chart_set_plot_area): new.
       (gog_chart_view_get_plot_area): plot area extents are stored in
       GogChartView::plot_area now.
       (gog_chart_view_size_allocate): handle manual case.
       (gog_chart_view_class_init): don't clip to chart area.
       * graph/goffice/gog-control-foocanvas
       (gog_control_foocanvas_set_property): remove logical_width_pts and
       logical_height_pts properties. These are properties of GogGraph now.
       (gog_control_foocanvas_get_property): ditto.
       (gog_control_foocanvas_class_init): ditto.
       * goffice/graph/gog-graph.c (gog_graph_set_property): handle new width-pts
       and height-pts properties.
       (gog_graph_get_property): ditto.
       (gog_graph_class_init): ditto. Chart and Title object can be
       positionned manually.
       (gog_graph_get_size): new.
       (gog_graph_set_size): new.
       * goffice/graph/gog-guru.c (cb_typesel_sample_plot_resize): don't
       change graph logical size.
       (cb_sample_pressed): don't change canvas scale.
       (cb_canvas_select_item): center graph on canvas.
       (cb_sample_plot_resize): calculate graph size to make it fit in canvas
       area.
       (graph_guru_init_format_page): don't change canvas scale.
       * goffice/graph/gog-object.c (gog_object_set_property): handle new
       position, position-is-manual and anchor properties.
       (gog_object_get_property): ditto.
       (gog_object_class_init): ditto.
       (cb_position_changed): new.
       (cb_manual_position_changed): new.
       (cb_anchor_changed): new.
       (gog_object_populate_editor): new UI for manual position setting.
       (gog_role_cmp): test priority first, then compare allowable positions.
       (gog_object_set_position_flags): emit a warning in case of wrong
       flags.
       (gog_object_get_manual_position): new.
       (gog_object_set_manual_position): new.
       (gog_object_get_manual_allocation): new.
       * goffice/graph/gog-plot.c (gog_plot_populate_editor): allways call parent
       populate_editor.
       * goffice/graph/gog-renderer-pixbuf.c
       (gog_renderer_pixbuf_get_text_OBR): use pango_layout_get_extents
       instead of pango_layout_get_pixel_extents for more accuracy.
       (gog_renderer_pixbuf_update): logical width and height of graph is a
       property of GogGraph now.
       * goffice/graph/gog-renderer.c (gog_renderer_set_property): remove
       logical_width_pts and logical_height_pts properties.
       (gog_renderer_get_property): ditto.
       (gog_renderer_class_init): ditto.
       * goffice/graph/gog-view.c (gog_view_size_allocate_real): handle
       manual case.

2005-07-22  Chris Lahey  <[email protected]>

       * goffice/drawing/god-drawing-renderer-gdk.c: Remove * .7 hack
       since it's been fixed in parsing code.

2005-07-21  Chris Lahey  <clahey@site>

       * goffice/drawing/god-drawing-renderer-gdk.c,
       goffice/drawing/god-paragraph-attributes.c,
       goffice/drawing/god-paragraph-attributes.h: Add support for
       setting whether the bullet is drawn for a particular paragraph.

2005-07-19  Emmanuel Pacaud <[email protected]>

       * goffice/grah/gog-axis-line.c (gog_axis_base_get_crossed_axis_type):
       don't complain when axis_set = GOG_AXIS_SET_X.
       (axis_line_get_bbox): scale tick len with gog_renderer_pt2r instead of
       gog_renderer_pt2r_x.
       (axis_line_render): ditto.
       (axis_circle_get_bbox): ditto.
       (axis_circle_render): ditto.
       (x_process): use correct enum for label/tick side, which fixes a
       display bug.

2005-07-15  Dom Lachowicz <[email protected]>

       * goffice/utils/go-file.c (go_get_mime_type): Free 'wuri' if mime lookup failed;
       have function return "application/octet-stream" instead of "octet-string";
       g_strdup() the "application/octet-stream" so that we don't try to free .text data

2005-07-15  Emmanuel Pacaud <[email protected]>

       * goffice/graph/gog-legend.c (cb_render_elements): fix swatch,
       line/marker position.

2005-07-11  Morten Welinder  <[email protected]>

       * configure.in (set_more_warnings): Check for fdopen.

       * goffice/utils/go-file.c (is_fd_uri): New function.
       (go_file_create): Support URIs like "fd://1".

2005-07-01  Jean Brefort  <[email protected]>

       * goffice/data/go-data-simple.c: (go_data_vector_str_load_values): set
       vec->len (fixes a crash when pasting charts in abiword).
       * goffice/graph/goffice-graph.h: change GOG_MS_DIM_* enum.
       * goffice/graph/gog-data-set.c: (gog_dataset_dup_to_simple): fix export of
       scalar strings.
       * goffice/graph/gog-plot.c: (gog_plot_finalize),
       (gog_plot_set_property), (gog_plot_get_property),
       (gog_plot_class_init), (gog_plot_init): add "plot_group" property.
       * goffice/graph/gog-plot.h:
       * pixmaps/chart_dropbar_1_1.svg:
       * pixmaps/chart_minmax_2_2.svg:
       * plugins/plot_barcol/Makefile.am:
       * plugins/plot_barcol/gog-1.5d.c: (go_plugin_init):
       * plugins/plot_barcol/gog-dropbar.c: (gog_dropbar_plot_class_init):
       update GOG_MS_DIM_*.
       * plugins/plot_barcol/gog-minmax.c: (gog_minmax_axis_get_bounds):
       set center_on_ticks to FALSE,
       (gog_minmax_plot_class_init): update  GOG_MS_DIM_*.

2005-06-26  Jean Brefort  <[email protected]>

       * goffice/graph/gog-theme.c: (gog_themes_init): add GogSeriesLines.
       * plugins/plot_barcol/Makefile.am: add gog-series-lines.[c,h].
       * plugins/plot_barcol/gog-1.5d.c: (gog_plot1_5d_init),
       (series_lines_can_add), (series_lines_post_add),
       (series_lines_pre_remove), (drop_lines_can_add),
       (drop_lines_post_add), (drop_lines_pre_remove), (lines_can_add),
       (lines_post_add), (lines_pre_remove), (gog_series1_5d_class_init),
       (gog_series1_5d_init), (go_plugin_init): add support for various lines.
       * plugins/plot_barcol/gog-1.5d.h: ditto.
       * plugins/plot_barcol/gog-barcol.c: (gog_barcol_plot_init),
       (gog_barcol_view_render): added series lines.
       * plugins/plot_barcol/gog-dropbar.c: (gog_dropbar_plot_init),
       (barcol_draw_rect), (gog_dropbar_view_render): added lines.
       * plugins/plot_barcol/gog-line.c: (gog_line_plot_init),
       (gog_area_plot_init), (gog_line_view_render): added drop lines.
       * plugins/plot_barcol/gog-minmax.c: (gog_minmax_plot_init),
       (gog_minmax_view_render): added lines.
       * plugins/plot_barcol/gog-series-lines.c:
       (gog_series_lines_init_style), (gog_series_lines_update),
       (gog_series_lines_changed), (gog_series_lines_class_init),
       (gog_series_lines_render): support for lines in various plots.
       * plugins/plot_barcol/gog-series-lines.h: ditto.

2005-06-24  Jean Brefort  <[email protected]>

       * goffice/graph/gog-legend.c: (cb_size_elements),
       (gog_legend_view_size_request): use legned style to calculate elements
       height.

2005-06-21  Emmanuel Pacaud <[email protected]>

       * goffice/graph/gog-renderer-cairo.c (grc_invert_pixbuf_RB): new.
       (grc_draw_polygon): implement repeated image texture.
       (grc_get_marker_surface): use grc_invert_pixbuf_RB.
       (gog_renderer_cairo_update): ditto.

2005-06-21  Jon K Hellan  <[email protected]>

       * goffice/graph/gog-control-foocanvas.c
       (gog_control_foocanvas_update):  Fix typo.

2005-06-21  Emmanuel Pacaud <[email protected]>

       New cairo renderer. Option at compile time (--with-cairo).

       * configure.in: add optional cairo dependency.
       * goffice/graph/gog-control-foocanvas.c
       (gog_control_foocanvas_set_property): use cairo renderer if enabled.
       (gog_control_foocanvas_draw): ditto.
       (gog_control_foocanvas_update): ditto.
       (gog_control_foocanvas_class_init): ditto.
       * goffice/graph/gog-renderer-cairo.[ch]: new files.
       * goffice/utils/go-pattern.c (go_pattern_get_pattern): new.

2005-06-20  Jean Brefort  <[email protected]>

       * plugins/plot_barcol/gog-1.5d.c: (gog_plot1_5d_update),
       (gog_series1_5d_finalize), (gog_series1_5d_class_init): fixed error bar
       leaks.

2005-06-20  Morten Welinder  <[email protected]>

       * goffice/utils/formats.c (find_currency): Special hack to accept
       a quoted euro character.
       (pattern_account): Remove stray "}".

2005-06-20  Jean Brefort  <[email protected]>

       * goffice/graph/gog-guru.c: (cb_canvas_select_item): fixed one more leak.

2005-06-20  Jean Brefort  <[email protected]>

       * goffice/graph/gog-guru.c: (cb_canvas_select_item): add missing
       g_object_unref call.
       * goffice/graph/gog-series.c: (regression_curve_can_add): fixed the test.
       * goffice/graph/gog-style.c: (gog_style_set_image_preview): return if
       pix == NULL (#308307).

2005-06-16  Emmanuel Pacaud <[email protected]>

       * goffice/graph/gog-axis-line.c (axis_line_render): remove kludge for
       ticks not centered on labels.
       * goffice/graph/gog-axis.c (map_discrete_calc_ticks): separate
       handling of ticks from handling of labels.
       (gog_axis_update): allways set GogAxis::center_on_ticks from
       GogBounds.
       * plugins/plot_radar/gog-radar.c (gog_radar_plot_axis_get_bounds):
       set center_on_ticks=TRUE explicitely.

2005-06-13  Emmanuel Pacaud <[email protected]>

       Support for rotated text and text color.

       * goffice/graph/gog-axis-line.c (get_point_to_segment_distance):
       moved to go-geometry.c.
       (update_bbox): ditto.
       (overlap): removed.
       (compute_angles): removed.
       (axis_line_point): use go_geometry_point_to_segment.
       (axis_line_get_bbox): handle rotated text case. Use
       go_geometry_cartesian_to_polar. side is an enum now.
       (axis_line_render): ditto.
       (axis_circle_get_bbox): ditto.
       (axis_circle_render): ditto.
       (xy_process): side is an enum.
       (radar_process): ditto.
       * goffice/graph/gog-label.c (gog_label_view_size_request): use
       gog_renderer_get_text_AABR.
       (gog_label_view_render): ditto.
       * goffice/graph/gog-legend.c (cb_size_elements): ditto.
       * goffice/graph/gog-reg-eqn.c
       (gog_reg_eqn_view_render): ditto.
       * goffice/graph/gog-renderer-gnome-print.c
       (gog_renderer_gnome_print_draw_text): handle rotated text and color.
       (gog_renderer_gnome_print_get_text_OBR): new.
       * goffice/graph/gog-renderer-pixbuf.c (get_rotated_layout_bounds):
       new.
       (gog_renderer_pixbuf_get_pango_layout): handle rotation angle.
       (gog_renderer_pixbuf_draw_text): ditto. Handle special n * pi / 2
       angles separately for performance.
       (gog_renderer_pixbuf_get_text_OBR): new.
       * goffice/graph/gog-renderer-svg.c (gog_renderer_svg_get_text_OBR):
       ditto.
       (gog_renderer_svg_draw_text): handle rotation angle and color.
       * goffice/graph/gog-renderer.c (gog_renderer_get_text_OBR): new.
       (gog_renderer_get_text_AABR): new. Replaces measure_text.
       * goffice/graph/gog-style-prefs.glade: add widgets for text rotation
       angle and text color.
       * goffice/graph/gog-style.c (cb_rotation_angle_changed): new.
       (cb_font_color_changed): new.
       (font_init): load widgets for text rotation and color.
       (gog_style_font_load): load rotation angle.
       (gog_style_font_save): save rotation angle.
       (gog_style_font_sax_save): ditto.
       (gog_style_is_different_size): different angles means different sizes.
       * goffice/utils/go-geometry.[ch]: new files. Collection of geometry
       related functions.

2005-06-12  Jody Goldberg <[email protected]>

       * configure.in : post release bump