From 823d0b3160d95b02b5f2d886dd576f0f5e0293d5 Mon Sep 17 00:00:00 2001 From: Thomas White Date: Fri, 26 Apr 2019 21:21:07 +0200 Subject: Get rid of "enum style_element" --- libstorycode/narrative_render_cairo.c | 16 ++++----- libstorycode/slide.c | 18 +++++----- libstorycode/slide_render_cairo.c | 14 ++++---- libstorycode/storycode.y | 16 ++++----- libstorycode/stylesheet.c | 64 +++++++++++++---------------------- libstorycode/stylesheet.h | 38 +++++++-------------- src/stylesheet_editor.c | 38 ++++++++++----------- 7 files changed, 87 insertions(+), 117 deletions(-) diff --git a/libstorycode/narrative_render_cairo.c b/libstorycode/narrative_render_cairo.c index 6a78a2f..6556c15 100644 --- a/libstorycode/narrative_render_cairo.c +++ b/libstorycode/narrative_render_cairo.c @@ -67,7 +67,7 @@ static PangoAlignment to_pangoalignment(enum alignment align) static void wrap_text(struct narrative_item *item, PangoContext *pc, - Stylesheet *ss, enum style_element el, double w, + Stylesheet *ss, const char *stn, double w, size_t sel_start, size_t sel_end) { PangoAlignment palignment; @@ -82,7 +82,7 @@ static void wrap_text(struct narrative_item *item, PangoContext *pc, struct colour fgcol; guint16 r, g, b; - font = stylesheet_get_font(ss, el, &fgcol, &align); + font = stylesheet_get_font(ss, stn, &fgcol, &align); if ( font == NULL ) return; fontdesc = pango_font_description_from_string(font); @@ -94,7 +94,7 @@ static void wrap_text(struct narrative_item *item, PangoContext *pc, palignment = to_pangoalignment(item->align); } - if ( stylesheet_get_paraspace(ss, el, paraspace) ) return; + if ( stylesheet_get_paraspace(ss, stn, paraspace) ) return; item->space_l = lcalc(paraspace[0], w); item->space_r = lcalc(paraspace[1], w); item->space_t = lcalc(paraspace[2], dummy_h_val); @@ -258,7 +258,7 @@ int narrative_wrap_range(Narrative *n, Stylesheet *stylesheet, PangoLanguage *la struct length pad[4]; int sel_s, sel_e; - if ( stylesheet_get_padding(stylesheet, STYEL_NARRATIVE, pad) ) return 1; + if ( stylesheet_get_padding(stylesheet, "NARRATIVE", pad) ) return 1; n->space_l = lcalc(pad[0], w); n->space_r = lcalc(pad[1], w); n->space_t = lcalc(pad[2], dummy_h_val); @@ -308,17 +308,17 @@ int narrative_wrap_range(Narrative *n, Stylesheet *stylesheet, PangoLanguage *la case NARRATIVE_ITEM_TEXT : wrap_text(&n->items[i], pc, stylesheet, - STYEL_NARRATIVE, w, srt, end); + "NARRATIVE", w, srt, end); break; case NARRATIVE_ITEM_BP : wrap_text(&n->items[i], pc, stylesheet, - STYEL_NARRATIVE_BP, w, srt, end); + "NARRATIVE.BP", w, srt, end); break; case NARRATIVE_ITEM_PRESTITLE : wrap_text(&n->items[i], pc, stylesheet, - STYEL_NARRATIVE_PRESTITLE, w, srt, end); + "NARRATIVE.PRESTITLE", w, srt, end); break; case NARRATIVE_ITEM_SLIDE : @@ -430,7 +430,7 @@ int narrative_render_cairo(Narrative *n, cairo_t *cr, Stylesheet *stylesheet) struct colour bgcol2; cairo_pattern_t *patt = NULL; - r = stylesheet_get_background(stylesheet, STYEL_NARRATIVE, &bg, &bgcol, &bgcol2); + r = stylesheet_get_background(stylesheet, "NARRATIVE", &bg, &bgcol, &bgcol2); if ( r ) return 1; /* Overall background */ diff --git a/libstorycode/slide.c b/libstorycode/slide.c index 3bf88a9..0e11785 100644 --- a/libstorycode/slide.c +++ b/libstorycode/slide.c @@ -232,29 +232,29 @@ int slide_get_logical_size(Slide *s, Stylesheet *ss, double *w, double *h) } -static enum style_element styel_for_slideitem(enum slide_item_type t) +static const char *style_name_for_slideitem(enum slide_item_type t) { switch ( t ) { case SLIDE_ITEM_TEXT : - return STYEL_SLIDE_TEXT; + return "SLIDE.TEXT"; case SLIDE_ITEM_IMAGE : - return STYEL_SLIDE_IMAGE; + return "SLIDE.IMAGE"; case SLIDE_ITEM_PRESTITLE : - return STYEL_SLIDE_PRESTITLE; + return "SLIDE.PRESTITLE"; case SLIDE_ITEM_SLIDETITLE : - return STYEL_SLIDE_SLIDETITLE; + return "SLIDE.SLIDETITLE"; case SLIDE_ITEM_FOOTER : - return STYEL_SLIDE_FOOTER; + return "SLIDE.FOOTER"; } fprintf(stderr, "Invalid slide item %i\n", t); - return STYEL_SLIDE_TEXT; + return "SLIDE.TEXT"; } @@ -279,7 +279,7 @@ void slide_item_get_geom(SlideItem *item, Stylesheet *ss, { geom = item->geom; } else { - if ( stylesheet_get_geometry(ss, styel_for_slideitem(item->type), &geom) ) { + if ( stylesheet_get_geometry(ss, style_name_for_slideitem(item->type), &geom) ) { *x = 0.0; *y = 0.0; *w = 0.0; *h = 0.0; return; @@ -300,7 +300,7 @@ void slide_item_get_padding(SlideItem *item, Stylesheet *ss, struct length padding[4]; double frx, fry, frw, frh; - if ( stylesheet_get_padding(ss, styel_for_slideitem(item->type), padding) ) { + if ( stylesheet_get_padding(ss, style_name_for_slideitem(item->type), padding) ) { *l = 0.0; *r = 0.0; *t = 0.0; *b = 0.0; return; } diff --git a/libstorycode/slide_render_cairo.c b/libstorycode/slide_render_cairo.c index cd8d397..1c1a4f9 100644 --- a/libstorycode/slide_render_cairo.c +++ b/libstorycode/slide_render_cairo.c @@ -90,7 +90,7 @@ static size_t pos_trail_to_offset(SlideItem *item, int para, static void render_text(SlideItem *item, cairo_t *cr, PangoContext *pc, - Stylesheet *ss, enum style_element el, + Stylesheet *ss, const char *stn, double parent_w, double parent_h, struct slide_pos sel_start, struct slide_pos sel_end) { @@ -110,12 +110,12 @@ static void render_text(SlideItem *item, cairo_t *cr, PangoContext *pc, y = lcalc(item->geom.y, parent_h); w = lcalc(item->geom.w, parent_w); - if ( stylesheet_get_padding(ss, el, pad) ) return; + if ( stylesheet_get_padding(ss, stn, pad) ) return; pad_l = lcalc(pad[0], parent_w); pad_r = lcalc(pad[1], parent_w); pad_t = lcalc(pad[2], parent_h); - font = stylesheet_get_font(ss, el, &fgcol, &align); + font = stylesheet_get_font(ss, stn, &fgcol, &align); if ( font == NULL ) return; fontdesc = pango_font_description_from_string(font); @@ -275,7 +275,7 @@ int slide_render_cairo(Slide *s, cairo_t *cr, ImageStore *is, Stylesheet *styles cairo_pattern_t *patt = NULL; double w, h; - r = stylesheet_get_background(stylesheet, STYEL_SLIDE, &bg, &bgcol, &bgcol2); + r = stylesheet_get_background(stylesheet, "SLIDE", &bg, &bgcol, &bgcol2); if ( r ) return 1; slide_get_logical_size(s, stylesheet, &w, &h); @@ -328,7 +328,7 @@ int slide_render_cairo(Slide *s, cairo_t *cr, ImageStore *is, Stylesheet *styles switch ( s->items[i].type ) { case SLIDE_ITEM_TEXT : - render_text(&s->items[i], cr, pc, stylesheet, STYEL_SLIDE_TEXT, + render_text(&s->items[i], cr, pc, stylesheet, "SLIDE.TEXT", w, h, srt, end); break; @@ -338,12 +338,12 @@ int slide_render_cairo(Slide *s, cairo_t *cr, ImageStore *is, Stylesheet *styles break; case SLIDE_ITEM_SLIDETITLE : - render_text(&s->items[i], cr, pc, stylesheet, STYEL_SLIDE_SLIDETITLE, + render_text(&s->items[i], cr, pc, stylesheet, "SLIDE.SLIDETITLE", w, h, srt, end); break; case SLIDE_ITEM_PRESTITLE : - render_text(&s->items[i], cr, pc, stylesheet, STYEL_SLIDE_PRESTITLE, + render_text(&s->items[i], cr, pc, stylesheet, "SLIDE.PRESTITLE", w, h, srt, end); break; diff --git a/libstorycode/storycode.y b/libstorycode/storycode.y index d98515b..5d22826 100644 --- a/libstorycode/storycode.y +++ b/libstorycode/storycode.y @@ -162,7 +162,7 @@ void add_str(struct scpctx *ctx, char *str) ctx->str[ctx->n_str++] = str; } -void set_style(struct scpctx *ctx, enum style_element element) +void set_style(struct scpctx *ctx, const char *element) { if ( ctx->mask & STYMASK_GEOM ) stylesheet_set_geometry(ctx->ss, element, ctx->geom); if ( ctx->mask & STYMASK_FONT ) stylesheet_set_font(ctx->ss, element, ctx->font); @@ -341,15 +341,15 @@ style_narrative_def: %empty | style_narrative_def style_narrative_prestitle | style_narrative_def style_narrative_bp -| style_narrative_def styledef { set_style(ctx, STYEL_NARRATIVE); } +| style_narrative_def styledef { set_style(ctx, "NARRATIVE"); } ; style_narrative_prestitle: - PRESTITLE '{' styledefs '}' { set_style(ctx, STYEL_NARRATIVE_PRESTITLE); } + PRESTITLE '{' styledefs '}' { set_style(ctx, "NARRATIVE.PRESTITLE"); } ; style_narrative_bp: - BP '{' styledefs '}' { set_style(ctx, STYEL_NARRATIVE_BP); } + BP '{' styledefs '}' { set_style(ctx, "NARRATIVE.BP"); } ; style_slide: @@ -361,7 +361,7 @@ style_slide_def: /* Doesn't need set_style() */ | style_slide_def style_slidesize { } /* Call set_style() immediately */ -| style_slide_def background { set_style(ctx, STYEL_SLIDE); } +| style_slide_def background { set_style(ctx, "SLIDE"); } /* The ones below will call set_style() themselves */ | style_slide_def style_slide_prestitle { } | style_slide_def style_slide_text { } @@ -390,15 +390,15 @@ background: ; style_slide_prestitle: - PRESTITLE '{' styledefs '}' { set_style(ctx, STYEL_SLIDE_PRESTITLE); } + PRESTITLE '{' styledefs '}' { set_style(ctx, "SLIDE.PRESTITLE"); } ; style_slide_title: - SLIDETITLE '{' styledefs '}' { set_style(ctx, STYEL_SLIDE_SLIDETITLE); } + SLIDETITLE '{' styledefs '}' { set_style(ctx, "SLIDE.SLIDETITLE"); } ; style_slide_text: - TEXTFRAME '{' styledefs '}' { set_style(ctx, STYEL_SLIDE_TEXT); } + TEXTFRAME '{' styledefs '}' { set_style(ctx, "SLIDE.TEXT"); } ; styledefs: diff --git a/libstorycode/stylesheet.c b/libstorycode/stylesheet.c index 51ae67c..f3fd7e6 100644 --- a/libstorycode/stylesheet.c +++ b/libstorycode/stylesheet.c @@ -224,22 +224,6 @@ Stylesheet *stylesheet_new() } -static struct style *get_style(Stylesheet *s, enum style_element el) -{ - if ( s == NULL ) return NULL; - switch ( el ) { - case STYEL_NARRATIVE : return lookup_style(&s->top, "NARRATIVE"); - case STYEL_NARRATIVE_BP : return lookup_style(&s->top, "NARRATIVE.BP"); - case STYEL_NARRATIVE_PRESTITLE : return lookup_style(&s->top, "NARRATIVE.PRESTITLE"); - case STYEL_SLIDE : return lookup_style(&s->top, "SLIDE"); - case STYEL_SLIDE_TEXT : return lookup_style(&s->top, "SLIDE.TEXT"); - case STYEL_SLIDE_PRESTITLE : return lookup_style(&s->top, "SLIDE.PRESTITLE"); - case STYEL_SLIDE_SLIDETITLE : return lookup_style(&s->top, "SLIDE.SLIDETITLE"); - default : return NULL; - } -} - - int stylesheet_get_slide_default_size(Stylesheet *s, double *w, double *h) { struct style *sty = lookup_style(&s->top, "SLIDE"); @@ -264,9 +248,9 @@ int stylesheet_set_slide_default_size(Stylesheet *s, double w, double h) } -int stylesheet_set_geometry(Stylesheet *s, enum style_element el, struct frame_geom geom) +int stylesheet_set_geometry(Stylesheet *s, const char *stn, struct frame_geom geom) { - struct style *sty = get_style(s, el); + struct style *sty = lookup_style(&s->top, stn); if ( sty == NULL ) return 1; sty->geom = geom; sty->set |= SM_FRAME_GEOM; @@ -274,9 +258,9 @@ int stylesheet_set_geometry(Stylesheet *s, enum style_element el, struct frame_g } -int stylesheet_set_font(Stylesheet *s, enum style_element el, char *font) +int stylesheet_set_font(Stylesheet *s, const char *stn, char *font) { - struct style *sty = get_style(s, el); + struct style *sty = lookup_style(&s->top, stn); if ( sty == NULL ) return 1; if ( sty->font != NULL ) { free(sty->font); @@ -287,10 +271,10 @@ int stylesheet_set_font(Stylesheet *s, enum style_element el, char *font) } -int stylesheet_set_padding(Stylesheet *s, enum style_element el, struct length padding[4]) +int stylesheet_set_padding(Stylesheet *s, const char *stn, struct length padding[4]) { int i; - struct style *sty = get_style(s, el); + struct style *sty = lookup_style(&s->top, stn); if ( sty == NULL ) return 1; for ( i=0; i<4; i++ ) { sty->padding[i] = padding[i]; @@ -300,10 +284,10 @@ int stylesheet_set_padding(Stylesheet *s, enum style_element el, struct length p } -int stylesheet_set_paraspace(Stylesheet *s, enum style_element el, struct length paraspace[4]) +int stylesheet_set_paraspace(Stylesheet *s, const char *stn, struct length paraspace[4]) { int i; - struct style *sty = get_style(s, el); + struct style *sty = lookup_style(&s->top, stn); if ( sty == NULL ) return 1; for ( i=0; i<4; i++ ) { sty->paraspace[i] = paraspace[i]; @@ -313,10 +297,10 @@ int stylesheet_set_paraspace(Stylesheet *s, enum style_element el, struct length } -int stylesheet_set_fgcol(Stylesheet *s, enum style_element el, struct colour fgcol) +int stylesheet_set_fgcol(Stylesheet *s, const char *stn, struct colour fgcol) { int i; - struct style *sty = get_style(s, el); + struct style *sty = lookup_style(&s->top, stn); if ( sty == NULL ) return 1; for ( i=0; i<4; i++ ) { sty->fgcol.rgba[i] = fgcol.rgba[i]; @@ -327,11 +311,11 @@ int stylesheet_set_fgcol(Stylesheet *s, enum style_element el, struct colour fgc } -int stylesheet_set_background(Stylesheet *s, enum style_element el, enum gradient grad, +int stylesheet_set_background(Stylesheet *s, const char *stn, enum gradient grad, struct colour bgcol, struct colour bgcol2) { int i; - struct style *sty = get_style(s, el); + struct style *sty = lookup_style(&s->top, stn); if ( sty == NULL ) return 1; sty->bggrad = grad; for ( i=0; i<4; i++ ) { @@ -345,9 +329,9 @@ int stylesheet_set_background(Stylesheet *s, enum style_element el, enum gradien } -int stylesheet_set_alignment(Stylesheet *s, enum style_element el, enum alignment align) +int stylesheet_set_alignment(Stylesheet *s, const char *stn, enum alignment align) { - struct style *sty = get_style(s, el); + struct style *sty = lookup_style(&s->top, stn); if ( sty == NULL ) return 1; assert(align != ALIGN_INHERIT); sty->alignment = align; @@ -356,19 +340,19 @@ int stylesheet_set_alignment(Stylesheet *s, enum style_element el, enum alignmen } -int stylesheet_get_geometry(Stylesheet *s, enum style_element el, struct frame_geom *geom) +int stylesheet_get_geometry(Stylesheet *s, const char *stn, struct frame_geom *geom) { - struct style *sty = get_style(s, el); + struct style *sty = lookup_style(&s->top, stn); if ( sty == NULL ) return 1; *geom = sty->geom; return 0; } -const char *stylesheet_get_font(Stylesheet *s, enum style_element el, +const char *stylesheet_get_font(Stylesheet *s, const char *stn, struct colour *fgcol, enum alignment *alignment) { - struct style *sty = get_style(s, el); + struct style *sty = lookup_style(&s->top, stn); if ( sty == NULL ) return NULL; *alignment = sty->alignment; @@ -379,11 +363,11 @@ const char *stylesheet_get_font(Stylesheet *s, enum style_element el, } -int stylesheet_get_background(Stylesheet *s, enum style_element el, +int stylesheet_get_background(Stylesheet *s, const char *stn, enum gradient *grad, struct colour *bgcol, struct colour *bgcol2) { - struct style *sty = get_style(s, el); + struct style *sty = lookup_style(&s->top, stn); if ( sty == NULL ) return 1; copy_col(bgcol, sty->bgcol); @@ -393,22 +377,22 @@ int stylesheet_get_background(Stylesheet *s, enum style_element el, } -int stylesheet_get_padding(Stylesheet *s, enum style_element el, +int stylesheet_get_padding(Stylesheet *s, const char *stn, struct length padding[4]) { int i; - struct style *sty = get_style(s, el); + struct style *sty = lookup_style(&s->top, stn); if ( sty == NULL ) return 1; for ( i=0; i<4; i++ ) padding[i] = sty->padding[i]; return 0; } -int stylesheet_get_paraspace(Stylesheet *s, enum style_element el, +int stylesheet_get_paraspace(Stylesheet *s, const char *stn, struct length paraspace[4]) { int i; - struct style *sty = get_style(s, el); + struct style *sty = lookup_style(&s->top, stn); if ( sty == NULL ) return 1; for ( i=0; i<4; i++ ) paraspace[i] = sty->paraspace[i]; return 0; diff --git a/libstorycode/stylesheet.h b/libstorycode/stylesheet.h index 00f3c6b..cd23c66 100644 --- a/libstorycode/stylesheet.h +++ b/libstorycode/stylesheet.h @@ -77,45 +77,31 @@ enum gradient }; -enum style_element -{ - STYEL_NARRATIVE, - STYEL_NARRATIVE_PRESTITLE, - STYEL_NARRATIVE_BP, - STYEL_SLIDE, - STYEL_SLIDE_TEXT, - STYEL_SLIDE_IMAGE, - STYEL_SLIDE_PRESTITLE, - STYEL_SLIDE_SLIDETITLE, - STYEL_SLIDE_FOOTER, -}; - - extern Stylesheet *stylesheet_new(void); extern void stylesheet_free(Stylesheet *s); extern int stylesheet_set_slide_default_size(Stylesheet *s, double w, double h); extern int stylesheet_get_slide_default_size(Stylesheet *s, double *w, double *h); -extern int stylesheet_set_geometry(Stylesheet *s, enum style_element el, struct frame_geom geom); -extern int stylesheet_set_font(Stylesheet *s, enum style_element el, char *font); -extern int stylesheet_set_alignment(Stylesheet *s, enum style_element el, enum alignment align); -extern int stylesheet_set_padding(Stylesheet *s, enum style_element el, struct length padding[4]); -extern int stylesheet_set_paraspace(Stylesheet *s, enum style_element el, struct length paraspace[4]); -extern int stylesheet_set_fgcol(Stylesheet *s, enum style_element el, struct colour fgcol); -extern int stylesheet_set_background(Stylesheet *s, enum style_element el, enum gradient grad, +extern int stylesheet_set_geometry(Stylesheet *s, const char *stn, struct frame_geom geom); +extern int stylesheet_set_font(Stylesheet *s, const char *stn, char *font); +extern int stylesheet_set_alignment(Stylesheet *s, const char *stn, enum alignment align); +extern int stylesheet_set_padding(Stylesheet *s, const char *stn, struct length padding[4]); +extern int stylesheet_set_paraspace(Stylesheet *s, const char *stn, struct length paraspace[4]); +extern int stylesheet_set_fgcol(Stylesheet *s, const char *stn, struct colour fgcol); +extern int stylesheet_set_background(Stylesheet *s, const char *stn, enum gradient grad, struct colour bgcol, struct colour bgcol2); -extern int stylesheet_get_geometry(Stylesheet *s, enum style_element el, +extern int stylesheet_get_geometry(Stylesheet *s, const char *stn, struct frame_geom *geom); -extern const char *stylesheet_get_font(Stylesheet *s, enum style_element el, +extern const char *stylesheet_get_font(Stylesheet *s, const char *stn, struct colour *fgcol, enum alignment *alignment); -extern int stylesheet_get_background(Stylesheet *s, enum style_element el, +extern int stylesheet_get_background(Stylesheet *s, const char *stn, enum gradient *grad, struct colour *bgcol, struct colour *bgcol2); -extern int stylesheet_get_padding(Stylesheet *s, enum style_element el, +extern int stylesheet_get_padding(Stylesheet *s, const char *stn, struct length padding[4]); -extern int stylesheet_get_paraspace(Stylesheet *s, enum style_element el, +extern int stylesheet_get_paraspace(Stylesheet *s, const char *stn, struct length paraspace[4]); extern char *stylesheet_serialise(Stylesheet *s); diff --git a/src/stylesheet_editor.c b/src/stylesheet_editor.c index 43413c8..e145dd2 100644 --- a/src/stylesheet_editor.c +++ b/src/stylesheet_editor.c @@ -43,11 +43,11 @@ G_DEFINE_TYPE_WITH_CODE(StylesheetEditor, stylesheet_editor, struct _sspriv { Stylesheet *stylesheet; - enum style_element el; + const char *style_name; }; -static void set_font_fgcol_align_from_ss(Stylesheet *ss, enum style_element el, +static void set_font_fgcol_align_from_ss(Stylesheet *ss, const char *style_name, GtkWidget *wfont, GtkWidget *wfgcol, GtkWidget *walign) @@ -56,7 +56,7 @@ static void set_font_fgcol_align_from_ss(Stylesheet *ss, enum style_element el, struct colour fgcol; enum alignment align; - font = stylesheet_get_font(ss, el, &fgcol, &align); + font = stylesheet_get_font(ss, style_name, &fgcol, &align); if ( font != NULL ) { GdkRGBA rgba; @@ -93,13 +93,13 @@ static void set_font_fgcol_align_from_ss(Stylesheet *ss, enum style_element el, } -static void set_padding_from_ss(Stylesheet *ss, enum style_element el, +static void set_padding_from_ss(Stylesheet *ss, const char *style_name, GtkWidget *wl, GtkWidget *wr, GtkWidget *wt, GtkWidget *wb) { struct length padding[4]; - if ( stylesheet_get_padding(ss, el, padding) ) return; + if ( stylesheet_get_padding(ss, style_name, padding) ) return; gtk_spin_button_set_value(GTK_SPIN_BUTTON(wl), padding[0].len); gtk_spin_button_set_value(GTK_SPIN_BUTTON(wr), padding[1].len); gtk_spin_button_set_value(GTK_SPIN_BUTTON(wt), padding[2].len); @@ -108,13 +108,13 @@ static void set_padding_from_ss(Stylesheet *ss, enum style_element el, } -static void set_paraspace_from_ss(Stylesheet *ss, enum style_element el, +static void set_paraspace_from_ss(Stylesheet *ss, const char *style_name, GtkWidget *wl, GtkWidget *wr, GtkWidget *wt, GtkWidget *wb) { struct length paraspace[4]; - if ( stylesheet_get_paraspace(ss, el, paraspace) ) return; + if ( stylesheet_get_paraspace(ss, style_name, paraspace) ) return; gtk_spin_button_set_value(GTK_SPIN_BUTTON(wl), paraspace[0].len); gtk_spin_button_set_value(GTK_SPIN_BUTTON(wr), paraspace[1].len); gtk_spin_button_set_value(GTK_SPIN_BUTTON(wt), paraspace[2].len); @@ -123,14 +123,14 @@ static void set_paraspace_from_ss(Stylesheet *ss, enum style_element el, } -static void set_geom_from_ss(Stylesheet *ss, enum style_element el, +static void set_geom_from_ss(Stylesheet *ss, const char *style_name, GtkWidget *ww, GtkWidget *wh, GtkWidget *wx, GtkWidget *wy, GtkWidget *wwu, GtkWidget *whu) { struct frame_geom geom; - if ( stylesheet_get_geometry(ss, el, &geom) ) return; + if ( stylesheet_get_geometry(ss, style_name, &geom) ) return; if ( geom.x.unit == LENGTH_FRAC ) { geom.w.len *= 100; @@ -151,7 +151,7 @@ static void set_geom_from_ss(Stylesheet *ss, enum style_element el, } -static void set_bg_from_ss(Stylesheet *ss, enum style_element el, +static void set_bg_from_ss(Stylesheet *ss, const char *style_name, GtkWidget *wcol, GtkWidget *wcol2, GtkWidget *wgrad) { struct colour bgcol; @@ -159,7 +159,7 @@ static void set_bg_from_ss(Stylesheet *ss, enum style_element el, enum gradient bggrad; GdkRGBA rgba; - if ( stylesheet_get_background(ss, el, &bggrad, &bgcol, &bgcol2) ) return; + if ( stylesheet_get_background(ss, style_name, &bggrad, &bgcol, &bgcol2) ) return; rgba.red = bgcol.rgba[0]; rgba.green = bgcol.rgba[1]; @@ -217,18 +217,18 @@ static void set_values_from_presentation(StylesheetEditor *se) gtk_tree_store_set(se->element_tree, &iter2, 0, "Slide title", -1); - set_geom_from_ss(se->priv->stylesheet, se->priv->el, + set_geom_from_ss(se->priv->stylesheet, se->priv->style_name, se->w, se->h, se->x, se->y, se->w_units, se->h_units); - set_padding_from_ss(se->priv->stylesheet, se->priv->el, + set_padding_from_ss(se->priv->stylesheet, se->priv->style_name, se->padding_l, se->padding_r, se->padding_t, se->padding_b); - set_paraspace_from_ss(se->priv->stylesheet, se->priv->el, + set_paraspace_from_ss(se->priv->stylesheet, se->priv->style_name, se->paraspace_l, se->paraspace_r, se->paraspace_t, se->paraspace_b); - set_font_fgcol_align_from_ss(se->priv->stylesheet, se->priv->el, + set_font_fgcol_align_from_ss(se->priv->stylesheet, se->priv->style_name, se->font, se->fgcol, se->alignment); - set_bg_from_ss(se->priv->stylesheet, se->priv->el, + set_bg_from_ss(se->priv->stylesheet, se->priv->style_name, se->bgcol, se->bgcol2, se->bggrad); } @@ -243,7 +243,7 @@ static enum gradient id_to_gradtype(const gchar *id) } -static void update_bg(Stylesheet *ss, enum style_element el, +static void update_bg(Stylesheet *ss, const char *style_name, GtkWidget *bggradw, GtkWidget *col1w, GtkWidget *col2w) { enum gradient g; @@ -268,7 +268,7 @@ static void update_bg(Stylesheet *ss, enum style_element el, bgcol2.rgba[2] = rgba.blue; bgcol2.rgba[3] = rgba.alpha; - stylesheet_set_background(ss, el, g, bgcol, bgcol2); + stylesheet_set_background(ss, style_name, g, bgcol, bgcol2); } @@ -496,7 +496,7 @@ StylesheetEditor *stylesheet_editor_new(Stylesheet *ss) if ( se == NULL ) return NULL; se->priv->stylesheet = ss; - se->priv->el = 0;//gtk_combo_box_get_active_id(GTK_COMBO_BOX(se->furniture_selector)); + se->priv->style_name = "NARRATIVE"; set_values_from_presentation(se); GtkCellRenderer *renderer; -- cgit v1.2.3