particle: add an 'on_click_template' to base constructor.

This is intended to be a format-like string, with the possibility to
use tag formatters.

The expanded string will later be passed to the system() call.
This commit is contained in:
Daniel Eklöf 2018-12-29 14:36:18 +01:00
parent 6019129acc
commit 5164d1d6ea
7 changed files with 14 additions and 7 deletions

View file

@ -7,6 +7,7 @@
#include "font.h"
#include "tag.h"
struct bar;
struct exposable;
struct particle {
@ -14,6 +15,7 @@ struct particle {
int left_margin, right_margin;
struct deco *deco;
char *on_click_template;
void (*destroy)(struct particle *particle);
struct exposable *(*instantiate)(const struct particle *particle,
@ -30,6 +32,7 @@ struct exposable {
void *private;
int width; /* Should be set by begin_expose(), at latest */
char *on_click;
void (*destroy)(struct exposable *exposable);
int (*begin_expose)(struct exposable *exposable, cairo_t *cr);
@ -40,7 +43,8 @@ struct exposable {
enum mouse_event event, int x, int y);
};
struct particle *particle_common_new(int left_margin, int right_margin);
struct particle *particle_common_new(int left_margin, int right_margin,
const char *on_click_template);
void particle_default_destroy(struct particle *particle);
struct exposable *exposable_common_new(