X-Git-Url: https://git.dogcows.com/gitweb?p=chaz%2Fhomebank;a=blobdiff_plain;f=src%2Fgtk-chart.h;fp=src%2Fgtk-chart.h;h=fe18992219d63b5a22dfb9b26d85b6ed3bd7af56;hp=0c4d56e06704b6e953ccf24e5996ba1f8869e5d9;hb=996fa4ab9f6b836001f8ad0eecbfd3821687fea7;hpb=27f6e3b112df235c8e9afc9911b1f6bce208a001 diff --git a/src/gtk-chart.h b/src/gtk-chart.h index 0c4d56e..fe18992 100644 --- a/src/gtk-chart.h +++ b/src/gtk-chart.h @@ -1,5 +1,5 @@ /* HomeBank -- Free, easy, personal accounting for everyone. - * Copyright (C) 1995-2014 Maxime DOYEN + * Copyright (C) 1995-2016 Maxime DOYEN * * This file is part of HomeBank. * @@ -20,11 +20,7 @@ #ifndef __GTK_CHART_H__ #define __GTK_CHART_H__ -#include -#include -#include -#include -#include +#include "gtk-chart-colors.h" G_BEGIN_DECLS #define GTK_TYPE_CHART (gtk_chart_get_type ()) @@ -53,8 +49,10 @@ typedef gchar (* GtkChartPrintDoubleFunc) (gdouble value, gboolean minor); /* default zoomx for charts */ #define GTK_CHART_BARW 24 -#define GTK_CHART_MINBARW 8 -#define GTK_CHART_MAXBARW 64 + +#define GTK_CHART_MINBARW 4 +#define GTK_CHART_MAXBARW 128 + #define GTK_CHART_MINRADIUS 64 @@ -76,6 +74,7 @@ typedef gchar (* GtkChartPrintDoubleFunc) (gdouble value, gboolean minor); enum { + CHART_TYPE_NONE, CHART_TYPE_COL, CHART_TYPE_PIE, CHART_TYPE_LINE, @@ -102,7 +101,7 @@ struct _ChartItem gdouble serie2; gdouble rate; - /* cairo part */ + /* draw stuffs */ gchar *legend; double angle2; /* rate for pie */ double height; /* for column */ @@ -118,7 +117,7 @@ struct _GtkChart /* all below should be in priv normally */ - GtkHBox hbox; + GtkBox hbox; GtkWidget *drawarea; GtkAdjustment *adjustment; @@ -141,16 +140,19 @@ struct _GtkChart gboolean abs; gboolean show_over; gboolean show_xval; + gboolean show_mono; gint every_xval; - //guint32 kcur; + guint32 kcur; gboolean minor; gdouble minor_rate; gchar *minor_symbol; /* color datas */ - struct rgbcol *colors; - gint nb_cols; - gint cs_red, cs_green, cs_blue, cs_yellow; + GtkColorScheme color_scheme; + + /* cairo default value */ + PangoFontDescription *pfd; + gint pfd_size; /* buffer surface */ cairo_surface_t *surface; @@ -158,6 +160,7 @@ struct _GtkChart /* draw area coordinates */ double l, t, b, r, w, h; /* our drawing rectangle with margin */ + double label_w; double legend_w; /* zones height */ @@ -192,7 +195,7 @@ struct _GtkChart struct _GtkChartClass { - GtkHBoxClass parent_class; + GtkBoxClass parent_class; /* Padding for future expansion */ void (*_gtk_reserved1) (void); @@ -211,15 +214,16 @@ void gtk_chart_set_color_scheme(GtkChart * chart, gint colorscheme); void gtk_chart_queue_redraw(GtkChart *chart); -void gtk_chart_set_datas(GtkChart *chart, GtkTreeModel *model, guint column, gchar *title); -void gtk_chart_set_dualdatas(GtkChart *chart, GtkTreeModel *model, guint column1, guint column2, gchar *title); +void gtk_chart_set_datas(GtkChart *chart, GtkTreeModel *model, guint column, gchar *title, gchar *subtitle); +void gtk_chart_set_dualdatas(GtkChart *chart, GtkTreeModel *model, guint column1, guint column2, gchar *title, gchar *subtitle); void gtk_chart_set_minor_prefs(GtkChart * chart, gdouble rate, gchar *symbol); -//void gtk_chart_set_currency(GtkChart * chart, guint32 kcur); +void gtk_chart_set_currency(GtkChart * chart, guint32 kcur); void gtk_chart_set_overdrawn(GtkChart * chart, gdouble minimum); void gtk_chart_set_every_xval(GtkChart * chart, gint decay); void gtk_chart_set_barw(GtkChart * chart, gdouble barw); +void gtk_chart_set_showmono(GtkChart * chart, gboolean mono); void gtk_chart_show_legend(GtkChart * chart, gboolean visible, gboolean showextracol); void gtk_chart_show_overdrawn(GtkChart * chart, gboolean visible);