10#ifndef __GUI_WIDGETS_KNOB_H__
11#define __GUI_WIDGETS_KNOB_H__
15#include "gtk_wrapper.h"
17#define KNOB_WIDGET_TYPE (knob_widget_get_type ())
18G_DECLARE_FINAL_TYPE (
KnobWidget, knob_widget, Z, KNOB_WIDGET, GtkWidget)
39typedef struct _KnobWidget
41 GtkWidget parent_instance;
101 PangoLayout * layout;
134#define knob_widget_new_simple( \
135 getter, default_getter, setter, obj, min, max, size, zero) \
137 (GenericFloatGetter) getter, (GenericFloatGetter) default_getter, \
138 (GenericFloatSetter) setter, (void *) obj, KnobType::KNOB_TYPE_NORMAL, \
139 min, max, size, zero)
144#define knob_widget_new_port(conn, size) \
146 NULL, NULL, (void *) conn, KnobType::KNOB_TYPE_PORT_MULTIPLIER, 0.f, 1.f, \
void(* GenericStringCopyGetter)(void *object, char *buf)
Getter prototype for strings to be saved in the given buffer.
float(* GenericFloatGetter)(void *object)
Getter prototype for float values.
void(* GenericFloatSetter)(void *object, float val)
Setter prototype for float values.
Must ONLY be created via port_new()