From 15f28a82dfd3e1c469ed3aa77aa9f431ba16908b Mon Sep 17 00:00:00 2001 From: Alexey Yerin Date: Fri, 21 Mar 2025 15:17:28 +0300 Subject: Consistently use gtk3/4 suffixes instead of numeric suffixes --- cmd/demo-gtk3/main.ha | 57 +++++++++++++++++++++++++++++++++++++++++++++++++ cmd/demo-gtk4/main.ha | 59 +++++++++++++++++++++++++++++++++++++++++++++++++++ cmd/demo3/main.ha | 57 ------------------------------------------------- cmd/demo4/main.ha | 59 --------------------------------------------------- 4 files changed, 116 insertions(+), 116 deletions(-) create mode 100644 cmd/demo-gtk3/main.ha create mode 100644 cmd/demo-gtk4/main.ha delete mode 100644 cmd/demo3/main.ha delete mode 100644 cmd/demo4/main.ha (limited to 'cmd') diff --git a/cmd/demo-gtk3/main.ha b/cmd/demo-gtk3/main.ha new file mode 100644 index 0000000..a106b5c --- /dev/null +++ b/cmd/demo-gtk3/main.ha @@ -0,0 +1,57 @@ +use gi::gio; +use gi::glib; +use gi::gobject; +use gi::gtk; +use os; +use rt; +use types::c; + +fn about_clicked(btn: *gtk::Button, data: *opaque) void = { + let dialog = gtk::about_dialog_new(): *gtk::AboutDialog; + const authors: []*c::char = [ + c::nulstr("Harriet?\0"), + null: *c::char, + ]; + gtk::about_dialog_set_license_type( + dialog, + gtk::License::MPL_2_0, + ); + gtk::about_dialog_set_authors( + dialog, + authors: *[*]*c::char: **c::char, + ); + gtk::about_dialog_set_website( + dialog, + c::nulstr("https://git.sr.ht/~yerinalexey/hare-gi\0"), + ); + gtk::widget_show_all(dialog); +}; + +fn activate(app: *gio::Application, data: *opaque) void = { + const app = app: *gtk::Application; + + let button = gtk::button_new_with_label(c::nulstr("About\0")): *gtk::Button; + gtk::button_connect_clicked(button, &about_clicked, null); + + let headerbar = gtk::header_bar_new(): *gtk::HeaderBar; + gtk::header_bar_set_title(headerbar, c::nulstr("hare-gi demo\0")); + gtk::header_bar_set_show_close_button(headerbar, glib::TRUE); + gtk::header_bar_pack_end(headerbar, button); + + let window = gtk::application_window_new(app): *gtk::ApplicationWindow; + gtk::window_set_titlebar(window, headerbar); + gtk::widget_show_all(window); +}; + +export fn main() void = { + let app = gtk::application_new( + c::nulstr("hare_gi.example\0"), + gio::ApplicationFlags::FLAGS_NONE, + ): *gtk::Application; + gio::application_connect_activate(app, &activate, null); + const status = gio::application_run( + app, rt::argc: int, rt::argv: **c::char, + ); + gobject::object_unref(app); + os::exit(status); +}; diff --git a/cmd/demo-gtk4/main.ha b/cmd/demo-gtk4/main.ha new file mode 100644 index 0000000..39ca4ca --- /dev/null +++ b/cmd/demo-gtk4/main.ha @@ -0,0 +1,59 @@ +use gi::gio; +use gi::glib; +use gi::gobject; +use gi::gtk4; +use os; +use rt; +use types::c; + +fn about_clicked(btn: *gtk4::Button, data: *opaque) void = { + let dialog = gtk4::about_dialog_new(); + const authors: []*c::char = [ + c::nulstr("Harriet?\0"), + null: *c::char, + ]; + gtk4::about_dialog_set_license_type( + dialog: *gtk4::AboutDialog, + gtk4::License::MPL_2_0, + ); + gtk4::about_dialog_set_authors( + dialog: *gtk4::AboutDialog, + authors: *[*]*c::char: **c::char, + ); + gtk4::about_dialog_set_website( + dialog: *gtk4::AboutDialog, + c::nulstr("https://git.sr.ht/~yerinalexey/hare-gi\0"), + ); + + gtk4::widget_show(dialog); +}; + +fn activate(app: *gio::Application, data: *opaque) void = { + const app = app: *gtk4::Application; + + let button = gtk4::button_new_with_label(c::nulstr("About\0")); + gtk4::button_connect_clicked(button: *gtk4::Button, &about_clicked, null); + + let headerbar = gtk4::header_bar_new(); + let title = gtk4::label_new(c::nulstr("hare-gi demo\0")); + gtk4::header_bar_set_title_widget(headerbar: *gtk4::HeaderBar, title); + gtk4::header_bar_set_show_title_buttons(headerbar: *gtk4::HeaderBar, glib::TRUE); + gtk4::header_bar_pack_end(headerbar: *gtk4::HeaderBar, button); + + let window = gtk4::application_window_new(app); + gtk4::window_set_titlebar(window: *gtk4::Window, headerbar); + gtk4::widget_show(window); +}; + +export fn main() void = { + let app = gtk4::application_new( + c::nulstr("hare_gi.example\0"), + gio::ApplicationFlags::FLAGS_NONE, + ): *gio::Application; + gio::application_connect_activate(app, &activate, null); + const status = gio::application_run( + app, rt::argc: int, rt::argv: **c::char, + ); + gobject::object_unref(app); + os::exit(status); +}; diff --git a/cmd/demo3/main.ha b/cmd/demo3/main.ha deleted file mode 100644 index a106b5c..0000000 --- a/cmd/demo3/main.ha +++ /dev/null @@ -1,57 +0,0 @@ -use gi::gio; -use gi::glib; -use gi::gobject; -use gi::gtk; -use os; -use rt; -use types::c; - -fn about_clicked(btn: *gtk::Button, data: *opaque) void = { - let dialog = gtk::about_dialog_new(): *gtk::AboutDialog; - const authors: []*c::char = [ - c::nulstr("Harriet?\0"), - null: *c::char, - ]; - gtk::about_dialog_set_license_type( - dialog, - gtk::License::MPL_2_0, - ); - gtk::about_dialog_set_authors( - dialog, - authors: *[*]*c::char: **c::char, - ); - gtk::about_dialog_set_website( - dialog, - c::nulstr("https://git.sr.ht/~yerinalexey/hare-gi\0"), - ); - gtk::widget_show_all(dialog); -}; - -fn activate(app: *gio::Application, data: *opaque) void = { - const app = app: *gtk::Application; - - let button = gtk::button_new_with_label(c::nulstr("About\0")): *gtk::Button; - gtk::button_connect_clicked(button, &about_clicked, null); - - let headerbar = gtk::header_bar_new(): *gtk::HeaderBar; - gtk::header_bar_set_title(headerbar, c::nulstr("hare-gi demo\0")); - gtk::header_bar_set_show_close_button(headerbar, glib::TRUE); - gtk::header_bar_pack_end(headerbar, button); - - let window = gtk::application_window_new(app): *gtk::ApplicationWindow; - gtk::window_set_titlebar(window, headerbar); - gtk::widget_show_all(window); -}; - -export fn main() void = { - let app = gtk::application_new( - c::nulstr("hare_gi.example\0"), - gio::ApplicationFlags::FLAGS_NONE, - ): *gtk::Application; - gio::application_connect_activate(app, &activate, null); - const status = gio::application_run( - app, rt::argc: int, rt::argv: **c::char, - ); - gobject::object_unref(app); - os::exit(status); -}; diff --git a/cmd/demo4/main.ha b/cmd/demo4/main.ha deleted file mode 100644 index 39ca4ca..0000000 --- a/cmd/demo4/main.ha +++ /dev/null @@ -1,59 +0,0 @@ -use gi::gio; -use gi::glib; -use gi::gobject; -use gi::gtk4; -use os; -use rt; -use types::c; - -fn about_clicked(btn: *gtk4::Button, data: *opaque) void = { - let dialog = gtk4::about_dialog_new(); - const authors: []*c::char = [ - c::nulstr("Harriet?\0"), - null: *c::char, - ]; - gtk4::about_dialog_set_license_type( - dialog: *gtk4::AboutDialog, - gtk4::License::MPL_2_0, - ); - gtk4::about_dialog_set_authors( - dialog: *gtk4::AboutDialog, - authors: *[*]*c::char: **c::char, - ); - gtk4::about_dialog_set_website( - dialog: *gtk4::AboutDialog, - c::nulstr("https://git.sr.ht/~yerinalexey/hare-gi\0"), - ); - - gtk4::widget_show(dialog); -}; - -fn activate(app: *gio::Application, data: *opaque) void = { - const app = app: *gtk4::Application; - - let button = gtk4::button_new_with_label(c::nulstr("About\0")); - gtk4::button_connect_clicked(button: *gtk4::Button, &about_clicked, null); - - let headerbar = gtk4::header_bar_new(); - let title = gtk4::label_new(c::nulstr("hare-gi demo\0")); - gtk4::header_bar_set_title_widget(headerbar: *gtk4::HeaderBar, title); - gtk4::header_bar_set_show_title_buttons(headerbar: *gtk4::HeaderBar, glib::TRUE); - gtk4::header_bar_pack_end(headerbar: *gtk4::HeaderBar, button); - - let window = gtk4::application_window_new(app); - gtk4::window_set_titlebar(window: *gtk4::Window, headerbar); - gtk4::widget_show(window); -}; - -export fn main() void = { - let app = gtk4::application_new( - c::nulstr("hare_gi.example\0"), - gio::ApplicationFlags::FLAGS_NONE, - ): *gio::Application; - gio::application_connect_activate(app, &activate, null); - const status = gio::application_run( - app, rt::argc: int, rt::argv: **c::char, - ); - gobject::object_unref(app); - os::exit(status); -}; -- cgit 1.3.0-6-gf8a5