Lines Matching refs:gui

48 static gboolean set_info_error_message_idle(STlinkGUI *gui) {  in set_info_error_message_idle()  argument
49 if (gui->error_message != NULL) { in set_info_error_message_idle()
52 markup = g_markup_printf_escaped("<b>%s</b>", gui->error_message); in set_info_error_message_idle()
53 gtk_label_set_markup(gui->infolabel, markup); in set_info_error_message_idle()
54 gtk_info_bar_set_message_type(gui->infobar, GTK_MESSAGE_ERROR); in set_info_error_message_idle()
55 gtk_widget_show(GTK_WIDGET(gui->infobar)); in set_info_error_message_idle()
58 g_free(gui->error_message); in set_info_error_message_idle()
59 gui->error_message = NULL; in set_info_error_message_idle()
65 static void stlink_gui_set_info_error_message(STlinkGUI *gui, const gchar *message) { in stlink_gui_set_info_error_message() argument
66 gui->error_message = g_strdup(message); in stlink_gui_set_info_error_message()
67 g_idle_add((GSourceFunc)set_info_error_message_idle, gui); in stlink_gui_set_info_error_message()
70 static void stlink_gui_set_sensitivity(STlinkGUI *gui, gboolean sensitivity) { in stlink_gui_set_sensitivity() argument
71 gtk_widget_set_sensitive(GTK_WIDGET(gui->open_button), sensitivity); in stlink_gui_set_sensitivity()
73 if (sensitivity && gui->sl) { in stlink_gui_set_sensitivity()
74 gtk_widget_set_sensitive(GTK_WIDGET(gui->disconnect_button), sensitivity); in stlink_gui_set_sensitivity()
77 if (sensitivity && !gui->sl) { in stlink_gui_set_sensitivity()
78 gtk_widget_set_sensitive(GTK_WIDGET(gui->connect_button), sensitivity); in stlink_gui_set_sensitivity()
81 if (sensitivity && gui->sl && gui->filename) { in stlink_gui_set_sensitivity()
82 gtk_widget_set_sensitive(GTK_WIDGET(gui->flash_button), sensitivity); in stlink_gui_set_sensitivity()
85 gtk_widget_set_sensitive(GTK_WIDGET(gui->export_button), sensitivity && (gui->sl != NULL)); in stlink_gui_set_sensitivity()
166 static void stlink_gui_update_mem_view(STlinkGUI *gui, struct mem_t *mem, GtkTreeView *view) { in stlink_gui_update_mem_view() argument
174 gtk_widget_hide(GTK_WIDGET(gui->progress.bar)); in stlink_gui_update_mem_view()
175 gtk_progress_bar_set_fraction(gui->progress.bar, 0); in stlink_gui_update_mem_view()
176 stlink_gui_set_sensitivity(gui, TRUE); in stlink_gui_update_mem_view()
179 static gboolean stlink_gui_update_devmem_view(STlinkGUI *gui) { in stlink_gui_update_devmem_view() argument
180 stlink_gui_update_mem_view(gui, &gui->flash_mem, gui->devmem_treeview); in stlink_gui_update_devmem_view()
189 STlinkGUI *gui = (STlinkGUI *)data; in stlink_gui_populate_devmem_view() local
191 g_return_val_if_fail((gui != NULL), NULL); in stlink_gui_populate_devmem_view()
192 g_return_val_if_fail((gui->sl != NULL), NULL); in stlink_gui_populate_devmem_view()
194 addr = gui->sl->flash_base; in stlink_gui_populate_devmem_view()
196 if (gui->flash_mem.memory) { in stlink_gui_populate_devmem_view()
197 g_free(gui->flash_mem.memory); in stlink_gui_populate_devmem_view()
200 gui->flash_mem.memory = g_malloc(gui->sl->flash_size); in stlink_gui_populate_devmem_view()
201 gui->flash_mem.size = gui->sl->flash_size; in stlink_gui_populate_devmem_view()
202 gui->flash_mem.base = gui->sl->flash_base; in stlink_gui_populate_devmem_view()
204 for (off = 0; off < gui->sl->flash_size; off += MEM_READ_SIZE) { in stlink_gui_populate_devmem_view()
207 if (off + MEM_READ_SIZE > gui->sl->flash_size) { in stlink_gui_populate_devmem_view()
208 n_read = (guint)gui->sl->flash_size - off; in stlink_gui_populate_devmem_view()
213 stlink_read_mem32(gui->sl, addr + off, n_read); // reads to sl->q_buf in stlink_gui_populate_devmem_view()
215 if (gui->sl->q_len < 0) { in stlink_gui_populate_devmem_view()
216 stlink_gui_set_info_error_message(gui, "Failed to read memory"); in stlink_gui_populate_devmem_view()
217 g_free(gui->flash_mem.memory); in stlink_gui_populate_devmem_view()
218 gui->flash_mem.memory = NULL; in stlink_gui_populate_devmem_view()
222 memcpy(gui->flash_mem.memory + off, gui->sl->q_buf, n_read); in stlink_gui_populate_devmem_view()
223 gui->progress.fraction = (gdouble)(off + n_read) / gui->sl->flash_size; in stlink_gui_populate_devmem_view()
226 g_idle_add((GSourceFunc)stlink_gui_update_devmem_view, gui); in stlink_gui_populate_devmem_view()
230 static gboolean stlink_gui_update_filemem_view(STlinkGUI *gui) { in stlink_gui_update_filemem_view() argument
233 basename = g_path_get_basename(gui->filename); in stlink_gui_update_filemem_view()
235 gui->notebook, GTK_WIDGET(gtk_notebook_get_nth_page(gui->notebook, 1)), basename); in stlink_gui_update_filemem_view()
238 stlink_gui_update_mem_view(gui, &gui->file_mem, gui->filemem_treeview); in stlink_gui_update_filemem_view()
251 STlinkGUI *gui = (STlinkGUI *)data; in stlink_gui_populate_filemem_view() local
253 g_return_val_if_fail(gui != NULL, NULL); in stlink_gui_populate_filemem_view()
254 g_return_val_if_fail(gui->filename != NULL, NULL); in stlink_gui_populate_filemem_view()
256 if (g_str_has_suffix(gui->filename, ".hex")) { in stlink_gui_populate_filemem_view()
266 int res = stlink_parse_ihex(gui->filename, 0, &mem, &size, &begin); in stlink_gui_populate_filemem_view()
269 if (gui->file_mem.memory) { in stlink_gui_populate_filemem_view()
270 g_free(gui->file_mem.memory); in stlink_gui_populate_filemem_view()
273 gui->file_mem.size = size; in stlink_gui_populate_filemem_view()
274 gui->file_mem.memory = g_malloc(size); in stlink_gui_populate_filemem_view()
275 gui->file_mem.base = begin; in stlink_gui_populate_filemem_view()
277 memcpy(gui->file_mem.memory, mem, size); in stlink_gui_populate_filemem_view()
279 stlink_gui_set_info_error_message(gui, "Cannot interpret the file as Intel-HEX"); in stlink_gui_populate_filemem_view()
284 file = g_file_new_for_path(gui->filename); in stlink_gui_populate_filemem_view()
288 stlink_gui_set_info_error_message(gui, err->message); in stlink_gui_populate_filemem_view()
297 stlink_gui_set_info_error_message(gui, err->message); in stlink_gui_populate_filemem_view()
302 if (gui->file_mem.memory) { g_free(gui->file_mem.memory); } in stlink_gui_populate_filemem_view()
304 gui->file_mem.size = g_file_info_get_size(file_info); in stlink_gui_populate_filemem_view()
305 gui->file_mem.memory = g_malloc(gui->file_mem.size); in stlink_gui_populate_filemem_view()
307 for (off = 0; off < (gint)gui->file_mem.size; off += MEM_READ_SIZE) { in stlink_gui_populate_filemem_view()
310 if (off + MEM_READ_SIZE > (gint)gui->file_mem.size) { in stlink_gui_populate_filemem_view()
311 n_read = (guint)gui->file_mem.size - off; in stlink_gui_populate_filemem_view()
316 stlink_gui_set_info_error_message(gui, err->message); in stlink_gui_populate_filemem_view()
321 memcpy(gui->file_mem.memory + off, buffer, n_read); in stlink_gui_populate_filemem_view()
322 gui->progress.fraction = (gdouble)(off + n_read) / gui->file_mem.size; in stlink_gui_populate_filemem_view()
329 g_idle_add((GSourceFunc)stlink_gui_update_filemem_view, gui); in stlink_gui_populate_filemem_view()
386 STlinkGUI *gui; in devmem_jmp_cb() local
390 gui = STLINK_GUI(data); in devmem_jmp_cb()
392 mem_jmp(gui->devmem_treeview, in devmem_jmp_cb()
393 gui->devmem_jmp_entry, in devmem_jmp_cb()
394 gui->sl->flash_base, in devmem_jmp_cb()
395 gui->sl->flash_size, in devmem_jmp_cb()
399 stlink_gui_set_info_error_message(gui, err->message); in devmem_jmp_cb()
405 STlinkGUI *gui; in filemem_jmp_cb() local
409 gui = STLINK_GUI(data); in filemem_jmp_cb()
411 g_return_if_fail(gui->filename != NULL); in filemem_jmp_cb()
413 mem_jmp(gui->filemem_treeview, in filemem_jmp_cb()
414 gui->filemem_jmp_entry, in filemem_jmp_cb()
416 gui->file_mem.size, in filemem_jmp_cb()
420 stlink_gui_set_info_error_message(gui, err->message); in filemem_jmp_cb()
440 static void stlink_gui_set_connected(STlinkGUI *gui) { in stlink_gui_set_connected() argument
445 …gtk_statusbar_push(gui->statusbar, gtk_statusbar_get_context_id(gui->statusbar, "conn"), "Connecte… in stlink_gui_set_connected()
447 gtk_widget_set_sensitive(GTK_WIDGET(gui->device_frame), TRUE); in stlink_gui_set_connected()
448 gtk_widget_set_sensitive(GTK_WIDGET(gui->devmem_box), TRUE); in stlink_gui_set_connected()
449 gtk_widget_set_sensitive(GTK_WIDGET(gui->connect_button), FALSE); in stlink_gui_set_connected()
451 if (gui->filename) { in stlink_gui_set_connected()
452 gtk_widget_set_sensitive(GTK_WIDGET(gui->flash_button), TRUE); in stlink_gui_set_connected()
455 tmp_str = dev_format_chip_id(gui->sl->chip_id); in stlink_gui_set_connected()
456 gtk_label_set_text(gui->chip_id_label, tmp_str); in stlink_gui_set_connected()
459 tmp_str = g_strdup_printf("0x%x", gui->sl->core_id); in stlink_gui_set_connected()
460 gtk_label_set_text(gui->core_id_label, tmp_str); in stlink_gui_set_connected()
463 tmp_str = dev_format_mem_size(gui->sl->flash_size); in stlink_gui_set_connected()
464 gtk_label_set_text(gui->flash_size_label, tmp_str); in stlink_gui_set_connected()
467 tmp_str = dev_format_mem_size(gui->sl->sram_size); in stlink_gui_set_connected()
468 gtk_label_set_text(gui->ram_size_label, tmp_str); in stlink_gui_set_connected()
471 tmp_str = g_strdup_printf("0x%08X", gui->sl->flash_base); in stlink_gui_set_connected()
472 gtk_entry_set_text(gui->devmem_jmp_entry, tmp_str); in stlink_gui_set_connected()
473 gtk_editable_set_editable(GTK_EDITABLE(gui->devmem_jmp_entry), TRUE); in stlink_gui_set_connected()
476 store = GTK_LIST_STORE(gtk_tree_view_get_model(gui->devmem_treeview)); in stlink_gui_set_connected()
482 stlink_gui_set_sensitivity(gui, FALSE); in stlink_gui_set_connected()
483 gtk_notebook_set_current_page(gui->notebook, PAGE_DEVMEM); in stlink_gui_set_connected()
484 gtk_widget_show(GTK_WIDGET(gui->progress.bar)); in stlink_gui_set_connected()
485 gtk_progress_bar_set_text(gui->progress.bar, "Reading memory"); in stlink_gui_set_connected()
487 g_thread_new("devmem", (GThreadFunc)stlink_gui_populate_devmem_view, gui); in stlink_gui_set_connected()
491 STlinkGUI *gui; in connect_button_cb() local
494 gui = STLINK_GUI(data); in connect_button_cb()
496 if (gui->sl != NULL) { return; } in connect_button_cb()
498 gui->sl = stlink_v1_open(0, 1); // try version 1 then version 2 in connect_button_cb()
500 if (gui->sl == NULL) { gui->sl = stlink_open_usb(0, 1, NULL, 0); } in connect_button_cb()
502 if (gui->sl == NULL) { in connect_button_cb()
503 stlink_gui_set_info_error_message(gui, "Failed to connect to STLink."); in connect_button_cb()
508 if (stlink_current_mode(gui->sl) == STLINK_DEV_DFU_MODE) { in connect_button_cb()
509 stlink_exit_dfu_mode(gui->sl); in connect_button_cb()
512 if (stlink_current_mode(gui->sl) != STLINK_DEV_DEBUG_MODE) { in connect_button_cb()
513 stlink_enter_swd_mode(gui->sl); in connect_button_cb()
516 stlink_gui_set_connected(gui); in connect_button_cb()
519 static void stlink_gui_set_disconnected(STlinkGUI *gui) { in stlink_gui_set_disconnected() argument
520 …gtk_statusbar_push(gui->statusbar, gtk_statusbar_get_context_id(gui->statusbar, "conn"), "Disconne… in stlink_gui_set_disconnected()
522 gtk_widget_set_sensitive(GTK_WIDGET(gui->device_frame), FALSE); in stlink_gui_set_disconnected()
523 gtk_widget_set_sensitive(GTK_WIDGET(gui->flash_button), FALSE); in stlink_gui_set_disconnected()
524 gtk_widget_set_sensitive(GTK_WIDGET(gui->export_button), FALSE); in stlink_gui_set_disconnected()
525 gtk_widget_set_sensitive(GTK_WIDGET(gui->disconnect_button), FALSE); in stlink_gui_set_disconnected()
526 gtk_widget_set_sensitive(GTK_WIDGET(gui->connect_button), TRUE); in stlink_gui_set_disconnected()
530 STlinkGUI *gui; in disconnect_button_cb() local
533 gui = STLINK_GUI(data); in disconnect_button_cb()
535 if (gui->sl != NULL) { in disconnect_button_cb()
536 stlink_exit_debug_mode(gui->sl); in disconnect_button_cb()
537 stlink_close(gui->sl); in disconnect_button_cb()
538 gui->sl = NULL; in disconnect_button_cb()
541 stlink_gui_set_disconnected(gui); in disconnect_button_cb()
545 static void stlink_gui_open_file(STlinkGUI *gui) { in stlink_gui_open_file() argument
551 gui->window, in stlink_gui_open_file()
558 gui->filename = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(dialog)); in stlink_gui_open_file()
560 store = GTK_LIST_STORE(gtk_tree_view_get_model(gui->filemem_treeview)); in stlink_gui_open_file()
566 stlink_gui_set_sensitivity(gui, FALSE); in stlink_gui_open_file()
567 gtk_notebook_set_current_page(gui->notebook, PAGE_FILEMEM); in stlink_gui_open_file()
568 gtk_widget_show(GTK_WIDGET(gui->progress.bar)); in stlink_gui_open_file()
569 gtk_progress_bar_set_text(gui->progress.bar, "Reading file"); in stlink_gui_open_file()
570 g_thread_new("file", (GThreadFunc)stlink_gui_populate_filemem_view, gui); in stlink_gui_open_file()
577 STlinkGUI *gui; in open_button_cb() local
580 gui = STLINK_GUI(data); in open_button_cb()
581 stlink_gui_open_file(gui); in open_button_cb()
584 static gboolean stlink_gui_write_flash_update(STlinkGUI *gui) { in stlink_gui_write_flash_update() argument
585 stlink_gui_set_sensitivity(gui, TRUE); in stlink_gui_write_flash_update()
586 gui->progress.activity_mode = FALSE; in stlink_gui_write_flash_update()
587 gtk_widget_hide(GTK_WIDGET(gui->progress.bar)); in stlink_gui_write_flash_update()
593 STlinkGUI *gui = (STlinkGUI *)data; in stlink_gui_write_flash() local
595 g_return_val_if_fail((gui->sl != NULL), NULL); in stlink_gui_write_flash()
596 g_return_val_if_fail((gui->filename != NULL), NULL); in stlink_gui_write_flash()
599 gui->sl, gui->file_mem.memory, (uint32_t)gui->file_mem.size, gui->sl->flash_base) < 0) { in stlink_gui_write_flash()
600 stlink_gui_set_info_error_message(gui, "Failed to write to flash"); in stlink_gui_write_flash()
603 g_idle_add((GSourceFunc)stlink_gui_write_flash_update, gui); in stlink_gui_write_flash()
608 STlinkGUI *gui; in flash_button_cb() local
615 gui = STLINK_GUI(data); in flash_button_cb()
616 g_return_if_fail(gui->sl != NULL); in flash_button_cb()
618 if (!g_strcmp0(gtk_entry_get_text(gui->flash_dialog_entry), "")) { in flash_button_cb()
619 tmp_str = g_strdup_printf("0x%08X", gui->sl->flash_base); in flash_button_cb()
620 gtk_entry_set_text(gui->flash_dialog_entry, tmp_str); in flash_button_cb()
624 result = gtk_dialog_run(gui->flash_dialog); in flash_button_cb()
627 address = hexstr_to_guint32(gtk_entry_get_text(gui->flash_dialog_entry), &err); in flash_button_cb()
630 stlink_gui_set_info_error_message(gui, err->message); in flash_button_cb()
632 … if (address > gui->sl->flash_base + gui->sl->flash_size || address < gui->sl->flash_base) { in flash_button_cb()
633 stlink_gui_set_info_error_message(gui, "Invalid address"); in flash_button_cb()
634 } else if (address + gui->file_mem.size > gui->sl->flash_base + gui->sl->flash_size) { in flash_button_cb()
635 stlink_gui_set_info_error_message(gui, "Binary overwrites flash"); in flash_button_cb()
637 stlink_gui_set_sensitivity(gui, FALSE); in flash_button_cb()
638 gtk_progress_bar_set_text(gui->progress.bar, "Writing to flash"); in flash_button_cb()
639 gui->progress.activity_mode = TRUE; in flash_button_cb()
640 gtk_widget_show(GTK_WIDGET(gui->progress.bar)); in flash_button_cb()
641 g_thread_new("flash", (GThreadFunc)stlink_gui_write_flash, gui); in flash_button_cb()
662 STlinkGUI * gui = STLINK_GUI(data); in export_button_cb() local
665 gui->window, in export_button_cb()
681 if (export_to_file(filename, gui->flash_mem) != 0) { in export_button_cb()
682 stlink_gui_set_info_error_message(gui, "Failed to export flash"); in export_button_cb()
684 stlink_gui_set_info_error_message(gui, "Export successful"); in export_button_cb()
693 static gboolean progress_pulse_timeout(STlinkGUI *gui) { in progress_pulse_timeout() argument
694 if (gui->progress.activity_mode) { in progress_pulse_timeout()
695 gtk_progress_bar_pulse(gui->progress.bar); in progress_pulse_timeout()
697 gtk_progress_bar_set_fraction(gui->progress.bar, gui->progress.fraction); in progress_pulse_timeout()
707 STlinkGUI *gui; in notebook_switch_page_cb() local
711 gui = STLINK_GUI(data); in notebook_switch_page_cb()
714 if (gui->filename == NULL) { stlink_gui_open_file(gui); } in notebook_switch_page_cb()
729 STlinkGUI *gui = STLINK_GUI(data); in dnd_received_cb() local
740 if (gui->filename) { in dnd_received_cb()
741 g_free(gui->filename); in dnd_received_cb()
748 gui->filename = g_file_get_path(file_uri); in dnd_received_cb()
753 store = GTK_LIST_STORE(gtk_tree_view_get_model(gui->devmem_treeview)); in dnd_received_cb()
759 stlink_gui_set_sensitivity(gui, FALSE); in dnd_received_cb()
760 gtk_notebook_set_current_page(gui->notebook, PAGE_FILEMEM); in dnd_received_cb()
761 gtk_widget_show(GTK_WIDGET(gui->progress.bar)); in dnd_received_cb()
762 gtk_progress_bar_set_text(gui->progress.bar, "Reading file"); in dnd_received_cb()
763 g_thread_new("file", (GThreadFunc)stlink_gui_populate_filemem_view, gui); in dnd_received_cb()
775 void stlink_gui_init_dnd(STlinkGUI *gui) { in stlink_gui_init_dnd() argument
781 GTK_WIDGET(gui->window), in stlink_gui_init_dnd()
787 g_signal_connect(gui->window, "drag-data-received", G_CALLBACK(dnd_received_cb), gui); in stlink_gui_init_dnd()
790 static void stlink_gui_build_ui(STlinkGUI *gui) { in stlink_gui_build_ui() argument
805 gui->window = GTK_WINDOW(gtk_builder_get_object(builder, "window")); in stlink_gui_build_ui()
806 g_signal_connect(G_OBJECT(gui->window), "destroy", G_CALLBACK(gtk_main_quit), NULL); in stlink_gui_build_ui()
809 gui->open_button = GTK_TOOL_BUTTON(gtk_builder_get_object(builder, "open_button")); in stlink_gui_build_ui()
810 g_signal_connect(G_OBJECT(gui->open_button), "clicked", G_CALLBACK(open_button_cb), gui); in stlink_gui_build_ui()
812 gui->connect_button = GTK_TOOL_BUTTON(gtk_builder_get_object(builder, "connect_button")); in stlink_gui_build_ui()
813 g_signal_connect(G_OBJECT(gui->connect_button), "clicked", G_CALLBACK(connect_button_cb), gui); in stlink_gui_build_ui()
815 gui->disconnect_button = GTK_TOOL_BUTTON(gtk_builder_get_object(builder, "disconnect_button")); in stlink_gui_build_ui()
816 …g_signal_connect(G_OBJECT(gui->disconnect_button), "clicked", G_CALLBACK(disconnect_button_cb), gu… in stlink_gui_build_ui()
818 gui->flash_button = GTK_TOOL_BUTTON(gtk_builder_get_object(builder, "flash_button")); in stlink_gui_build_ui()
819 g_signal_connect(G_OBJECT(gui->flash_button), "clicked", G_CALLBACK(flash_button_cb), gui); in stlink_gui_build_ui()
821 gui->export_button = GTK_TOOL_BUTTON(gtk_builder_get_object(builder, "export_button")); in stlink_gui_build_ui()
822 g_signal_connect(G_OBJECT(gui->export_button), "clicked", G_CALLBACK(export_button_cb), gui); in stlink_gui_build_ui()
824 gui->devmem_treeview = GTK_TREE_VIEW(gtk_builder_get_object(builder, "devmem_treeview")); in stlink_gui_build_ui()
825 mem_view_init_headers(gui->devmem_treeview); in stlink_gui_build_ui()
832 gtk_tree_view_set_model(gui->devmem_treeview, GTK_TREE_MODEL(devmem_store)); in stlink_gui_build_ui()
835 gui->filemem_treeview = GTK_TREE_VIEW(gtk_builder_get_object(builder, "filemem_treeview")); in stlink_gui_build_ui()
836 mem_view_init_headers(gui->filemem_treeview); in stlink_gui_build_ui()
843 gtk_tree_view_set_model(gui->filemem_treeview, GTK_TREE_MODEL(filemem_store)); in stlink_gui_build_ui()
846 gui->core_id_label = GTK_LABEL(gtk_builder_get_object(builder, "core_id_value")); in stlink_gui_build_ui()
847 gui->chip_id_label = GTK_LABEL(gtk_builder_get_object(builder, "chip_id_value")); in stlink_gui_build_ui()
848 gui->flash_size_label = GTK_LABEL(gtk_builder_get_object(builder, "flash_size_value")); in stlink_gui_build_ui()
849 gui->ram_size_label = GTK_LABEL(gtk_builder_get_object(builder, "ram_size_value")); in stlink_gui_build_ui()
850 gui->device_frame = GTK_FRAME(gtk_builder_get_object(builder, "device_frame")); in stlink_gui_build_ui()
852 gui->notebook = GTK_NOTEBOOK(gtk_builder_get_object(builder, "mem_notebook")); in stlink_gui_build_ui()
853 g_signal_connect(gui->notebook, "switch-page", G_CALLBACK(notebook_switch_page_cb), gui); in stlink_gui_build_ui()
855 gui->devmem_box = GTK_BOX(gtk_builder_get_object(builder, "devmem_box")); in stlink_gui_build_ui()
856 gui->filemem_box = GTK_BOX(gtk_builder_get_object(builder, "filemem_box")); in stlink_gui_build_ui()
858 gui->devmem_jmp_entry = GTK_ENTRY(gtk_builder_get_object(builder, "devmem_jmp_entry")); in stlink_gui_build_ui()
859 g_signal_connect(gui->devmem_jmp_entry, "activate", G_CALLBACK(devmem_jmp_cb), gui); in stlink_gui_build_ui()
861 gui->filemem_jmp_entry = GTK_ENTRY(gtk_builder_get_object(builder, "filemem_jmp_entry")); in stlink_gui_build_ui()
862 g_signal_connect(gui->filemem_jmp_entry, "activate", G_CALLBACK(filemem_jmp_cb), gui); in stlink_gui_build_ui()
863 gtk_editable_set_editable(GTK_EDITABLE(gui->filemem_jmp_entry), TRUE); in stlink_gui_build_ui()
865 gui->progress.bar = GTK_PROGRESS_BAR(gtk_builder_get_object(builder, "progressbar")); in stlink_gui_build_ui()
866 gtk_progress_bar_set_show_text(gui->progress.bar, TRUE); in stlink_gui_build_ui()
867 gui->progress.timer = g_timeout_add(100, (GSourceFunc)progress_pulse_timeout, gui); in stlink_gui_build_ui()
869 gui->statusbar = GTK_STATUSBAR(gtk_builder_get_object(builder, "statusbar")); in stlink_gui_build_ui()
871 gui->infobar = GTK_INFO_BAR(gtk_builder_get_object(builder, "infobar")); in stlink_gui_build_ui()
872 gtk_info_bar_add_button(gui->infobar, "_OK", GTK_RESPONSE_OK); in stlink_gui_build_ui()
873 gui->infolabel = GTK_LABEL(gtk_label_new("")); in stlink_gui_build_ui()
874 …gtk_container_add(GTK_CONTAINER(gtk_info_bar_get_content_area(gui->infobar)), GTK_WIDGET(gui->info… in stlink_gui_build_ui()
875 g_signal_connect(gui->infobar, "response", G_CALLBACK(gtk_widget_hide), NULL); in stlink_gui_build_ui()
878 gui->flash_dialog = GTK_DIALOG(gtk_builder_get_object(builder, "flash_dialog")); in stlink_gui_build_ui()
879 …g_signal_connect_swapped(gui->flash_dialog, "response", G_CALLBACK(gtk_widget_hide), gui->flash_di… in stlink_gui_build_ui()
880 gui->flash_dialog_ok = GTK_BUTTON(gtk_builder_get_object(builder, "flash_dialog_ok_button")); in stlink_gui_build_ui()
881gui->flash_dialog_cancel = GTK_BUTTON(gtk_builder_get_object(builder, "flash_dialog_cancel_button"… in stlink_gui_build_ui()
882 gui->flash_dialog_entry = GTK_ENTRY(gtk_builder_get_object(builder, "flash_dialog_entry")); in stlink_gui_build_ui()
885 gtk_widget_show_all(GTK_WIDGET(gui->window)); in stlink_gui_build_ui()
886 gtk_widget_hide(GTK_WIDGET(gui->infobar)); in stlink_gui_build_ui()
887 gtk_widget_hide(GTK_WIDGET(gui->progress.bar)); in stlink_gui_build_ui()
889 stlink_gui_set_disconnected(gui); in stlink_gui_build_ui()
893 STlinkGUI *gui; in main() local
897 gui = g_object_new(STLINK_TYPE_GUI, NULL); in main()
898 stlink_gui_build_ui(gui); in main()
899 stlink_gui_init_dnd(gui); in main()