- ModalDialog dialog;
- GtkEntry* entity;
- GtkEntry* brush;
-
- GtkWindow* window = create_dialog_window(MainFrame_getWindow(), "Find Brush", G_CALLBACK(dialog_delete_callback), &dialog);
-
- GtkAccelGroup* accel = gtk_accel_group_new();
- gtk_window_add_accel_group(window, accel);
-
- {
- GtkVBox* vbox = create_dialog_vbox(4, 4);
- gtk_container_add(GTK_CONTAINER(window), GTK_WIDGET(vbox));
- {
- GtkTable* table = create_dialog_table(2, 2, 4, 4);
- gtk_box_pack_start(GTK_BOX(vbox), GTK_WIDGET(table), TRUE, TRUE, 0);
- {
- GtkWidget* label = gtk_label_new ("Entity number");
- gtk_widget_show (label);
- gtk_table_attach (GTK_TABLE (table), label, 0, 1, 0, 1,
- (GtkAttachOptions) (0),
- (GtkAttachOptions) (0), 0, 0);
- }
- {
- GtkWidget* label = gtk_label_new ("Brush number");
- gtk_widget_show (label);
- gtk_table_attach (GTK_TABLE (table), label, 0, 1, 1, 2,
- (GtkAttachOptions) (0),
- (GtkAttachOptions) (0), 0, 0);
- }
- {
- GtkEntry* entry = GTK_ENTRY(gtk_entry_new());
- gtk_widget_show(GTK_WIDGET(entry));
- gtk_table_attach(table, GTK_WIDGET(entry), 1, 2, 0, 1,
- (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
- (GtkAttachOptions) (0), 0, 0);
- gtk_widget_grab_focus(GTK_WIDGET(entry));
- entity = entry;
- }
- {
- GtkEntry* entry = GTK_ENTRY(gtk_entry_new());
- gtk_widget_show(GTK_WIDGET(entry));
- gtk_table_attach(table, GTK_WIDGET(entry), 1, 2, 1, 2,
- (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
- (GtkAttachOptions) (0), 0, 0);
-
- brush = entry;
- }
- }
- {
- GtkHBox* hbox = create_dialog_hbox(4);
- gtk_box_pack_start(GTK_BOX(vbox), GTK_WIDGET(hbox), TRUE, TRUE, 0);
- {
- GtkButton* button = create_dialog_button("Find", G_CALLBACK(dialog_button_ok), &dialog);
- gtk_box_pack_start(GTK_BOX(hbox), GTK_WIDGET(button), FALSE, FALSE, 0);
- widget_make_default(GTK_WIDGET(button));
- gtk_widget_add_accelerator(GTK_WIDGET(button), "clicked", accel, GDK_Return, (GdkModifierType)0, (GtkAccelFlags)0);
- }
- {
- GtkButton* button = create_dialog_button("Close", G_CALLBACK(dialog_button_cancel), &dialog);
- gtk_box_pack_start(GTK_BOX(hbox), GTK_WIDGET(button), FALSE, FALSE, 0);
- gtk_widget_add_accelerator(GTK_WIDGET(button), "clicked", accel, GDK_Escape, (GdkModifierType)0, (GtkAccelFlags)0);
- }
- }
- }
-
- // Initialize dialog
- char buf[16];
- int ent, br;
-
- GetSelectionIndex (&ent, &br);
- sprintf (buf, "%i", ent);
- gtk_entry_set_text(entity, buf);
- sprintf (buf, "%i", br);
- gtk_entry_set_text(brush, buf);
-
- if(modal_dialog_show(window, dialog) == eIDOK)
- {
- const char *entstr = gtk_entry_get_text(entity);
- const char *brushstr = gtk_entry_get_text(brush);
- SelectBrush (atoi(entstr), atoi(brushstr));
- }
-
- gtk_widget_destroy(GTK_WIDGET(window));
-}
-
-void Map_constructPreferences(PreferencesPage& page)
-{
- page.appendCheckBox("", "Load last map on open", g_bLoadLastMap);
-}
-
-
-class MapEntityClasses : public ModuleObserver
-{
- std::size_t m_unrealised;
+ ModalDialog dialog;
+ ui::Entry entity{ui::null};
+ ui::Entry brush{ui::null};
+
+ ui::Window window = MainFrame_getWindow().create_dialog_window("Find Brush", G_CALLBACK(dialog_delete_callback),
+ &dialog);
+
+ auto accel = ui::AccelGroup(ui::New);
+ window.add_accel_group(accel);
+
+ {
+ auto vbox = create_dialog_vbox(4, 4);
+ window.add(vbox);
+ {
+ auto table = create_dialog_table(2, 2, 4, 4);
+ vbox.pack_start(table, TRUE, TRUE, 0);
+ {
+ ui::Widget label = ui::Label("Entity number");
+ label.show();
+ (table).attach(label, {0, 1, 0, 1}, {0, 0});
+ }
+ {
+ ui::Widget label = ui::Label("Brush number");
+ label.show();
+ (table).attach(label, {0, 1, 1, 2}, {0, 0});
+ }
+ {
+ auto entry = ui::Entry(ui::New);
+ entry.show();
+ table.attach(entry, {1, 2, 0, 1}, {GTK_EXPAND | GTK_FILL, 0});
+ gtk_widget_grab_focus(entry);
+ entity = entry;
+ }
+ {
+ auto entry = ui::Entry(ui::New);
+ entry.show();
+ table.attach(entry, {1, 2, 1, 2}, {GTK_EXPAND | GTK_FILL, 0});
+
+ brush = entry;
+ }
+ }
+ {
+ auto hbox = create_dialog_hbox(4);
+ vbox.pack_start(hbox, TRUE, TRUE, 0);
+ {
+ auto button = create_dialog_button("Find", G_CALLBACK(dialog_button_ok), &dialog);
+ hbox.pack_start(button, FALSE, FALSE, 0);
+ widget_make_default(button);
+ gtk_widget_add_accelerator(button, "clicked", accel, GDK_KEY_Return, (GdkModifierType) 0,
+ (GtkAccelFlags) 0);
+ }
+ {
+ auto button = create_dialog_button("Close", G_CALLBACK(dialog_button_cancel), &dialog);
+ hbox.pack_start(button, FALSE, FALSE, 0);
+ gtk_widget_add_accelerator(button, "clicked", accel, GDK_KEY_Escape, (GdkModifierType) 0,
+ (GtkAccelFlags) 0);
+ }
+ }
+ }
+
+ // Initialize dialog
+ char buf[16];
+ int ent, br;
+
+ GetSelectionIndex(&ent, &br);
+ sprintf(buf, "%i", ent);
+ entity.text(buf);
+ sprintf(buf, "%i", br);
+ brush.text(buf);
+
+ if (modal_dialog_show(window, dialog) == eIDOK) {
+ const char *entstr = gtk_entry_get_text(entity);
+ const char *brushstr = gtk_entry_get_text(brush);
+ SelectBrush(atoi(entstr), atoi(brushstr));
+ }
+
+ window.destroy();
+}
+
+void Map_constructPreferences(PreferencesPage &page)
+{
+ page.appendCheckBox("", "Load last map on open", g_bLoadLastMap);
+}
+
+
+class MapEntityClasses : public ModuleObserver {
+ std::size_t m_unrealised;