mirror of
https://gitlab.uni-freiburg.de/opensourcevdi/virt-viewer
synced 2025-12-27 14:54:14 +00:00
VM selection: expand models for UI/key columns
Add a new column in the list models for the VM selection dialog, and use this new column to hold the key of the VM. This way, the first column represents the UI representation of the VM without affecting the key. At the moment the VM name is set for both, so there is no behavior change. Signed-off-by: Pino Toscano <ptoscano@redhat.com>
This commit is contained in:
parent
c28374d8a8
commit
74d25742ea
@ -608,7 +608,8 @@ choose_vm(GtkWindow *main_window,
|
||||
g_return_val_if_fail(vm_name != NULL, NULL);
|
||||
free(*vm_name);
|
||||
|
||||
model = gtk_list_store_new(1, G_TYPE_STRING);
|
||||
/* UI name , key */
|
||||
model = gtk_list_store_new(2, G_TYPE_STRING, G_TYPE_STRING);
|
||||
|
||||
vms = ovirt_collection_get_resources(vms_collection);
|
||||
g_hash_table_iter_init(&vms_iter, vms);
|
||||
@ -616,7 +617,7 @@ choose_vm(GtkWindow *main_window,
|
||||
g_object_get(G_OBJECT(vm), "state", &state, NULL);
|
||||
if (state == OVIRT_VM_STATE_UP) {
|
||||
gtk_list_store_append(model, &iter);
|
||||
gtk_list_store_set(model, &iter, 0, *vm_name, -1);
|
||||
gtk_list_store_set(model, &iter, 0, *vm_name, 1, *vm_name, -1);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -65,6 +65,8 @@ virt_viewer_vm_connection_choose_name_dialog(GtkWindow *main_window,
|
||||
return NULL;
|
||||
}
|
||||
|
||||
g_assert(gtk_tree_model_get_n_columns(model) == 2);
|
||||
|
||||
vm_connection = virt_viewer_util_load_ui("virt-viewer-vm-connection.ui");
|
||||
g_return_val_if_fail(vm_connection != NULL, NULL);
|
||||
|
||||
@ -86,7 +88,7 @@ virt_viewer_vm_connection_choose_name_dialog(GtkWindow *main_window,
|
||||
|
||||
if (dialog_response == GTK_RESPONSE_ACCEPT &&
|
||||
gtk_tree_selection_get_selected(selection, &model, &iter)) {
|
||||
gtk_tree_model_get(model, &iter, 0, &vm_name, -1);
|
||||
gtk_tree_model_get(model, &iter, 1, &vm_name, -1);
|
||||
} else {
|
||||
g_set_error_literal(error,
|
||||
VIRT_VIEWER_ERROR, VIRT_VIEWER_ERROR_CANCELLED,
|
||||
|
||||
@ -823,12 +823,14 @@ choose_vm(GtkWindow *main_window,
|
||||
g_return_val_if_fail(vm_name != NULL, NULL);
|
||||
free(*vm_name);
|
||||
|
||||
model = gtk_list_store_new(1, G_TYPE_STRING);
|
||||
/* UI name , key */
|
||||
model = gtk_list_store_new(2, G_TYPE_STRING, G_TYPE_STRING);
|
||||
|
||||
vms_running = virConnectListAllDomains(conn, &domains, flags);
|
||||
for (i = 0; i < vms_running; i++) {
|
||||
const char *name = virDomainGetName(domains[i]);
|
||||
gtk_list_store_append(model, &iter);
|
||||
gtk_list_store_set(model, &iter, 0, virDomainGetName(domains[i]), -1);
|
||||
gtk_list_store_set(model, &iter, 0, name, 1, name, -1);
|
||||
virDomainFree(domains[i]);
|
||||
}
|
||||
free(domains);
|
||||
|
||||
Loading…
Reference in New Issue
Block a user