summaryrefslogtreecommitdiff
path: root/gui/gui.c
diff options
context:
space:
mode:
Diffstat (limited to 'gui/gui.c')
-rw-r--r--gui/gui.c75
1 files changed, 1 insertions, 74 deletions
diff --git a/gui/gui.c b/gui/gui.c
index d20928c..bf2d30f 100644
--- a/gui/gui.c
+++ b/gui/gui.c
@@ -51,7 +51,7 @@
/* ----- Helper functions -------------------------------------------------- */
-static void redraw(const struct gui_ctx *ctx)
+void redraw(const struct gui_ctx *ctx)
{
gtk_widget_queue_draw(ctx->da);
}
@@ -998,79 +998,6 @@ static bool hover_glabel(void *user, bool on)
}
-/* ----- Progress bar ------------------------------------------------------ */
-
-
-#define PROGRESS_BAR_HEIGHT 10
-
-
-static void progress_draw_event(GtkWidget *widget, cairo_t *cr,
- gpointer user_data)
-{
- GtkAllocation alloc;
- struct gui_ctx *ctx = user_data;
- unsigned w, x;
-
- x = ctx->progress >> ctx->progress_scale;
- if (!x) {
- /* @@@ needed ? Gtk seems to always clear the the surface. */
- cairo_set_source_rgb(cr, 1, 1, 1);
- cairo_paint(cr);
- }
-
- gtk_widget_get_allocation(ctx->da, &alloc);
- w = ctx->hist_size >> ctx->progress_scale;
-
- cairo_save(cr);
- cairo_translate(cr,
- (alloc.width - w) / 2, (alloc.height - PROGRESS_BAR_HEIGHT) / 2);
-
- cairo_set_source_rgb(cr, 0, 0.7, 0);
- cairo_set_line_width(cr, 0);
- cairo_rectangle(cr, 0, 0, x, PROGRESS_BAR_HEIGHT);
- cairo_fill(cr);
-
- cairo_set_source_rgb(cr, 0, 0, 0);
- cairo_set_line_width(cr, 2);
- cairo_rectangle(cr, 0, 0, w, PROGRESS_BAR_HEIGHT);
- cairo_stroke(cr);
-
- cairo_restore(cr);
-}
-
-
-static void setup_progress_bar(struct gui_ctx *ctx, GtkWidget *window)
-{
- GtkAllocation alloc;
-
- gtk_widget_get_allocation(ctx->da, &alloc);
-
- ctx->progress_scale = 0;
- while ((ctx->hist_size >> ctx->progress_scale) > alloc.width)
- ctx->progress_scale++;
- ctx->progress = 0;
-
- g_signal_connect(G_OBJECT(ctx->da), "draw",
- G_CALLBACK(progress_draw_event), ctx);
-
- redraw(ctx);
- gtk_main_iteration_do(0);
-}
-
-
-static void progress_update(struct gui_ctx *ctx)
-{
- unsigned mask = (1 << ctx->progress_scale) - 1;
-
- ctx->progress++;
- if ((ctx->progress & mask) != mask)
- return;
-
- redraw(ctx);
- gtk_main_iteration_do(0);
-}
-
-
/* ----- Initialization ---------------------------------------------------- */