1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158
|
// Supports building with gtk 3.6+
package gtk
// #include <gtk/gtk.h>
// #include "gtk.go.h"
import "C"
import (
"unsafe"
"github.com/gotk3/gotk3/glib"
)
func init() {
tm := []glib.TypeMarshaler{
{glib.Type(C.gtk_level_bar_mode_get_type()), marshalLevelBarMode},
{glib.Type(C.gtk_level_bar_get_type()), marshalLevelBar},
}
glib.RegisterGValueMarshalers(tm)
WrapMap["GtkLevelBar"] = wrapLevelBar
}
// LevelBarMode is a representation of GTK's GtkLevelBarMode.
type LevelBarMode int
const (
LEVEL_BAR_MODE_CONTINUOUS LevelBarMode = C.GTK_LEVEL_BAR_MODE_CONTINUOUS
LEVEL_BAR_MODE_DISCRETE LevelBarMode = C.GTK_LEVEL_BAR_MODE_DISCRETE
)
// stock offset macro values of GtkLevelBar
const (
LEVEL_BAR_OFFSET_LOW string = C.GTK_LEVEL_BAR_OFFSET_LOW
LEVEL_BAR_OFFSET_HIGH string = C.GTK_LEVEL_BAR_OFFSET_HIGH
)
func marshalLevelBarMode(p uintptr) (interface{}, error) {
c := C.g_value_get_enum((*C.GValue)(unsafe.Pointer(p)))
return LevelBarMode(c), nil
}
/*
* GtkLevelBar
*/
type LevelBar struct {
Widget
}
// native returns a pointer to the underlying GtkLevelBar.
func (v *LevelBar) native() *C.GtkLevelBar {
if v == nil || v.GObject == nil {
return nil
}
p := unsafe.Pointer(v.GObject)
return C.toGtkLevelBar(p)
}
func marshalLevelBar(p uintptr) (interface{}, error) {
c := C.g_value_get_object((*C.GValue)(unsafe.Pointer(p)))
obj := glib.Take(unsafe.Pointer(c))
return wrapLevelBar(obj), nil
}
func wrapLevelBar(obj *glib.Object) *LevelBar {
if obj == nil {
return nil
}
return &LevelBar{Widget{glib.InitiallyUnowned{obj}}}
}
// LevelBarNew is a wrapper around gtk_level_bar_new().
func LevelBarNew() (*LevelBar, error) {
c := C.gtk_level_bar_new()
if c == nil {
return nil, nilPtrErr
}
return wrapLevelBar(glib.Take(unsafe.Pointer(c))), nil
}
// LevelBarNewForInterval is a wrapper around gtk_level_bar_new_for_interval().
func LevelBarNewForInterval(min_value, max_value float64) (*LevelBar, error) {
c := C.gtk_level_bar_new_for_interval(C.gdouble(min_value), C.gdouble(max_value))
if c == nil {
return nil, nilPtrErr
}
return wrapLevelBar(glib.Take(unsafe.Pointer(c))), nil
}
// SetMode is a wrapper around gtk_level_bar_set_mode().
func (v *LevelBar) SetMode(m LevelBarMode) {
C.gtk_level_bar_set_mode(v.native(), C.GtkLevelBarMode(m))
}
// GetMode is a wrapper around gtk_level_bar_get_mode().
func (v *LevelBar) GetMode() LevelBarMode {
return LevelBarMode(C.gtk_level_bar_get_mode(v.native()))
}
// SetValue is a wrapper around gtk_level_bar_set_value().
func (v *LevelBar) SetValue(value float64) {
C.gtk_level_bar_set_value(v.native(), C.gdouble(value))
}
// GetValue is a wrapper around gtk_level_bar_get_value().
func (v *LevelBar) GetValue() float64 {
c := C.gtk_level_bar_get_value(v.native())
return float64(c)
}
// SetMinValue is a wrapper around gtk_level_bar_set_min_value().
func (v *LevelBar) SetMinValue(value float64) {
C.gtk_level_bar_set_min_value(v.native(), C.gdouble(value))
}
// GetMinValue is a wrapper around gtk_level_bar_get_min_value().
func (v *LevelBar) GetMinValue() float64 {
c := C.gtk_level_bar_get_min_value(v.native())
return float64(c)
}
// SetMaxValue is a wrapper around gtk_level_bar_set_max_value().
func (v *LevelBar) SetMaxValue(value float64) {
C.gtk_level_bar_set_max_value(v.native(), C.gdouble(value))
}
// GetMaxValue is a wrapper around gtk_level_bar_get_max_value().
func (v *LevelBar) GetMaxValue() float64 {
c := C.gtk_level_bar_get_max_value(v.native())
return float64(c)
}
// AddOffsetValue is a wrapper around gtk_level_bar_add_offset_value().
func (v *LevelBar) AddOffsetValue(name string, value float64) {
cstr := C.CString(name)
defer C.free(unsafe.Pointer(cstr))
C.gtk_level_bar_add_offset_value(v.native(), (*C.gchar)(cstr), C.gdouble(value))
}
// RemoveOffsetValue is a wrapper around gtk_level_bar_remove_offset_value().
func (v *LevelBar) RemoveOffsetValue(name string) {
cstr := C.CString(name)
defer C.free(unsafe.Pointer(cstr))
C.gtk_level_bar_remove_offset_value(v.native(), (*C.gchar)(cstr))
}
// GetOffsetValue is a wrapper around gtk_level_bar_get_offset_value().
func (v *LevelBar) GetOffsetValue(name string) (float64, bool) {
cstr := C.CString(name)
defer C.free(unsafe.Pointer(cstr))
var value C.gdouble
c := C.gtk_level_bar_get_offset_value(v.native(), (*C.gchar)(cstr), &value)
return float64(value), gobool(c)
}
|