Move static inline CSS to gnucash.css file

This commit is contained in:
Robert Fewell 2017-07-23 11:40:58 +01:00 committed by John Ralls
parent 8ab3aadffa
commit e7d35b8309
5 changed files with 44 additions and 82 deletions

View File

@ -667,20 +667,10 @@ verify_children_compatible (AccountWindow *aw)
gtk_label_set_line_wrap (GTK_LABEL (label), TRUE);
gtk_label_set_selectable (GTK_LABEL (label), TRUE);
gnc_label_set_alignment (label, 0.0, 0.0);
{
GtkCssProvider *provider = gtk_css_provider_new();
const gchar *label_css = {
"label {\n"
" font-size:large;\n"
" font-weight: bold;\n"
"}\n"
};
gtk_css_provider_load_from_data (provider, label_css, strlen(label_css), NULL);
gtk_style_context_add_provider (gtk_widget_get_style_context(GTK_WIDGET(label)),
GTK_STYLE_PROVIDER (provider),
GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);
g_object_unref (provider);
}
/* make label large */
gnc_widget_set_style_context (GTK_WIDGET(label), "primary_label_size");
gtk_box_pack_start (GTK_BOX (vbox), label, FALSE, FALSE, 0);
/* secondary label */

View File

@ -50,9 +50,6 @@ static QofLogModule log_module = GNC_MOD_GUI;
#define GNC_PREF_LAST_GEOMETRY "last-geometry"
const gchar *css_default_color = "* { color: currentColor }";
const gchar *css_red_color = "* { color: rgb(75%, 0%, 0%) }";
/********************************************************************\
* gnc_set_label_color *
* sets the color of the label given the value *
@ -65,30 +62,16 @@ void
gnc_set_label_color(GtkWidget *label, gnc_numeric value)
{
gboolean deficit;
GtkStyleContext *stylecontext;
GtkCssProvider *provider;
if (!gnc_prefs_get_bool(GNC_PREFS_GROUP_GENERAL, GNC_PREF_NEGATIVE_IN_RED))
return;
provider = GTK_CSS_PROVIDER(g_object_get_data (G_OBJECT (label), "custom-provider"));
if (!provider)
{
provider = gtk_css_provider_new();
gtk_css_provider_load_from_data (provider, css_default_color, -1, NULL);
stylecontext = gtk_widget_get_style_context (label);
gtk_style_context_add_provider (stylecontext, GTK_STYLE_PROVIDER (provider),
GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);
g_object_set_data (G_OBJECT (label), "custom-provider", provider);
}
deficit = gnc_numeric_negative_p (value);
if (deficit)
gtk_css_provider_load_from_data (provider, css_red_color, -1, NULL);
gnc_widget_set_style_context (GTK_WIDGET(label), "css_red_color");
else
gtk_css_provider_load_from_data (provider, css_default_color, -1, NULL);
gnc_widget_set_style_context (GTK_WIDGET(label), "css_default_color");
}

View File

@ -622,15 +622,6 @@ gnc_tree_view_split_reg_pref_changed (gpointer prefs, gchar *pref, gpointer user
}
/* Set the grid lines to be solid */
static const gchar *css_string =
{
"treeview.view {\n"
" border-color: black;\n"
"}\n"
};
/* Define which columns are in which views */
static ViewCol *
gnc_tree_view_split_reg_get_colummn_list (GncTreeModelSplitReg *model)
@ -1018,7 +1009,6 @@ gnc_tree_view_split_reg_new_with_model (GncTreeModelSplitReg *model)
GtkTreeModel *s_model;
GncTreeViewSplitReg *view;
GtkTreeSelection *selection;
GtkCssProvider* provider = gtk_css_provider_new();
view = g_object_new (gnc_tree_view_split_reg_get_type(), NULL);
g_object_set (view, "name", "split_reg_tree", NULL);
@ -1030,12 +1020,8 @@ gnc_tree_view_split_reg_new_with_model (GncTreeModelSplitReg *model)
g_assert (gnc_commodity_is_currency (view->priv->reg_currency));
view->help_text = g_strdup ("Help Text");
// This sets up solid lines for the grid line.
gtk_css_provider_load_from_data (provider, css_string, strlen(css_string), NULL);
gtk_style_context_add_provider (gtk_widget_get_style_context(GTK_WIDGET(view)),
GTK_STYLE_PROVIDER (provider),
GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);
g_object_unref (provider);
/* Set the grid lines to be solid */
gnc_widget_set_style_context (GTK_WIDGET(view), "treeview_grid_lines");
/* TreeView Grid lines */
if (view->priv->use_horizontal_lines)

View File

@ -2,3 +2,36 @@
directly by name as these are not brought in when loaded, only
the widget type can be configured unless they are named in code */
/* Import Matcher # import-main-matcher.*/
.color_back_red {
background-color: brown1;
}
.color_back_yellow {
background-color: gold;
}
.color_back_green {
background-color: DarkSeaGreen1;
}
/* label colors # dialog-utils.c */
.css_default_color {
color: currentColor;
}
.css_red_color {
color: rgb(75%, 0%, 0%);
}
/* Set the grid lines to be solid # gnc-tree-view-split-reg.c */
.treeview_grid_lines {
border-color: black;
}
/* Increase label size # dialog-account.c */
.primary_label_size {
font-size: large;
font-weight: bold;
}

View File

@ -59,9 +59,6 @@ struct _main_matcher_info
GtkWidget *assistant;
GtkTreeView *view;
GNCImportSettings *user_settings;
GdkRGBA color_back_red;
GdkRGBA color_back_green;
GdkRGBA color_back_yellow;
int selected_row;
GNCTransactionProcessedCB transaction_processed_cb;
gpointer user_data;
@ -203,23 +200,6 @@ on_matcher_help_close_clicked (GtkButton *button, gpointer user_data)
gtk_widget_destroy(help_dialog);
}
static void
gnc_override_background_color (GtkWidget *widget,
GdkRGBA *rgba)
{
GtkCssProvider *provider = gtk_css_provider_new();
GtkStyleContext *stylectxt = gtk_widget_get_style_context (widget);
gchar *col_str = gdk_rgba_to_string (rgba);
gchar *widget_css = g_strconcat ("*{\n background-color:", col_str, ";\n}\n", NULL);
gtk_css_provider_load_from_data (provider, widget_css, -1, NULL);
gtk_style_context_add_provider (stylectxt, GTK_STYLE_PROVIDER (provider),
GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);
g_object_unref (provider);
g_free (col_str);
g_free (widget_css);
}
void
on_matcher_help_clicked (GtkButton *button, gpointer user_data)
{
@ -235,13 +215,13 @@ on_matcher_help_clicked (GtkButton *button, gpointer user_data)
gnc_builder_add_from_file (builder, "dialog-import.glade", "matcher_help_dialog");
box = GTK_WIDGET(gtk_builder_get_object (builder, "red"));
gnc_override_background_color (box, &info->color_back_red);
gnc_widget_set_style_context (GTK_WIDGET(box), "color_back_red");
box = GTK_WIDGET(gtk_builder_get_object (builder, "yellow"));
gnc_override_background_color (box, &info->color_back_yellow);
gnc_widget_set_style_context (GTK_WIDGET(box), "color_back_yellow");
box = GTK_WIDGET(gtk_builder_get_object (builder, "green"));
gnc_override_background_color (box, &info->color_back_green);
gnc_widget_set_style_context (GTK_WIDGET(box), "color_back_green");
help_dialog = GTK_WIDGET(gtk_builder_get_object (builder, "matcher_help_dialog"));
gtk_window_set_transient_for(GTK_WINDOW(help_dialog),
@ -568,11 +548,6 @@ GNCImportMainMatcher *gnc_gen_trans_list_new (GtkWidget *parent,
gtk_window_set_transient_for (GTK_WINDOW (info->dialog),
GTK_WINDOW (parent));*/
/*Initialise the colors */
gdk_rgba_parse(&info->color_back_red, COLOR_RED);
gdk_rgba_parse(&info->color_back_yellow, COLOR_YELLOW);
gdk_rgba_parse(&info->color_back_green, COLOR_GREEN);
if (heading)
gtk_label_set_text (GTK_LABEL (heading_label), heading);
@ -631,11 +606,6 @@ GNCImportMainMatcher * gnc_gen_trans_assist_new (GtkWidget *parent,
heading_label = GTK_WIDGET(gtk_builder_get_object (builder, "heading_label"));
g_assert (heading_label != NULL);
/*Initialise the colors */
gdk_rgba_parse(&info->color_back_red, COLOR_RED);
gdk_rgba_parse(&info->color_back_yellow, COLOR_YELLOW);
gdk_rgba_parse(&info->color_back_green, COLOR_GREEN);
if (heading)
gtk_label_set_text (GTK_LABEL (heading_label), heading);