summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPietro Gagliardi <[email protected]>2014-02-16 21:40:59 -0500
committerPietro Gagliardi <[email protected]>2014-02-16 21:40:59 -0500
commit6bf0b00aa36b646ca74c79f6a149f394431eb683 (patch)
tree144fc98665402328343cf7c8aff05e8bfdcb493d
parentbce4c19fddd35483534933b0db2bdb8d1549b0dd (diff)
Added GTK+ LineEdit. It appears there's something weird happening now...
-rw-r--r--gtkcalls_unix.go15
-rw-r--r--sysdata_unix.go7
2 files changed, 19 insertions, 3 deletions
diff --git a/gtkcalls_unix.go b/gtkcalls_unix.go
index fbea882..f4cbe54 100644
--- a/gtkcalls_unix.go
+++ b/gtkcalls_unix.go
@@ -166,3 +166,18 @@ func gtk_combo_box_get_active(widget *gtkWidget) int {
func gtk_combo_box_text_remove(widget *gtkWidget, index int) {
C.gtk_combo_box_text_remove((*C.GtkComboBoxText)(unsafe.Pointer(widget)), C.gint(index))
}
+
+func gtk_entry_new() *gtkWidget {
+ return (*gtkWidget)(unsafe.Pointer(C.gtk_entry_new()))
+}
+
+func gtk_entry_set_text(widget *gtkWidget, text string) {
+ ctext := C.CString(text)
+ defer C.free(unsafe.Pointer(ctext))
+ C.gtk_entry_set_text((*C.GtkEntry)(unsafe.Pointer(widget)),
+ (*C.gchar)(unsafe.Pointer(ctext)))
+}
+
+func gtk_entry_get_text(widget *gtkWidget) string {
+ return C.GoString((*C.char)(unsafe.Pointer(C.gtk_entry_get_text((*C.GtkEntry)(unsafe.Pointer(widget))))))
+}
diff --git a/sysdata_unix.go b/sysdata_unix.go
index 00c4ee5..d2efdc1 100644
--- a/sysdata_unix.go
+++ b/sysdata_unix.go
@@ -79,9 +79,7 @@ var classTypes = [nctypes]*classData{
},
c_combobox: &classData{
make: gtk_combo_box_text_new,
- // TODO creating an editable combobox causes GtkFixed to fail spectacularly for some reason
-// makeAlt: gtk_combo_box_text_new_with_entry,
- makeAlt: gtk_combo_box_text_new,
+ makeAlt: gtk_combo_box_text_new_with_entry,
// TODO setText
text: gtk_combo_box_text_get_active_text,
append: gtk_combo_box_text_append_text,
@@ -90,6 +88,9 @@ var classTypes = [nctypes]*classData{
delete: gtk_combo_box_text_remove,
},
c_lineedit: &classData{
+ make: gtk_entry_new,
+ setText: gtk_entry_set_text,
+ text: gtk_entry_get_text,
},
c_label: &classData{
},