diff options
author | Antenore Gatta <antenore@simbiosi.org> | 2014-07-18 18:57:17 +0400 |
---|---|---|
committer | Antenore Gatta <antenore@simbiosi.org> | 2014-07-18 18:57:17 +0400 |
commit | 865a6b94316b85db84ddf3d212a2eaf4564c6cf2 (patch) | |
tree | a4bdb5908f686d9c2712647dda58dab607fe8905 /remmina-plugins/rdp | |
parent | 52051f41bd7ab820ce9a813853c63a0e61a245d4 (diff) |
added freerdp_register_addin_provider to fix LoadLibraryA: /usr/local/lib64/freerdp/drive-client.so: cannot open shared object file: No such file or directory
Diffstat (limited to 'remmina-plugins/rdp')
-rw-r--r-- | remmina-plugins/rdp/rdp_settings.c | 249 |
1 files changed, 125 insertions, 124 deletions
diff --git a/remmina-plugins/rdp/rdp_settings.c b/remmina-plugins/rdp/rdp_settings.c index d4220c731..3ef5c0f3b 100644 --- a/remmina-plugins/rdp/rdp_settings.c +++ b/remmina-plugins/rdp/rdp_settings.c @@ -49,16 +49,16 @@ guint remmina_rdp_settings_get_keyboard_layout(void) return keyboard_layout; } -#define REMMINA_TYPE_PLUGIN_RDPSET_TABLE (remmina_rdp_settings_table_get_type()) -#define REMMINA_RDPSET_TABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), REMMINA_TYPE_PLUGIN_RDPSET_TABLE, RemminaPluginRdpsetTable)) -#define REMMINA_RDPSET_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), REMMINA_TYPE_PLUGIN_RDPSET_TABLE, RemminaPluginRdpsetTableClass)) -#define REMMINA_IS_PLUGIN_RDPSET_TABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), REMMINA_TYPE_PLUGIN_RDPSET_TABLE)) -#define REMMINA_IS_PLUGIN_RDPSET_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), REMMINA_TYPE_PLUGIN_RDPSET_TABLE)) -#define REMMINA_RDPSET_TABLE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), REMMINA_TYPE_PLUGIN_RDPSET_TABLE, RemminaPluginRdpsetTableClass)) - -typedef struct _RemminaPluginRdpsetTable +#define REMMINA_TYPE_PLUGIN_RDPSET_GRID (remmina_rdp_settings_grid_get_type()) +#define REMMINA_RDPSET_GRID(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), REMMINA_TYPE_PLUGIN_RDPSET_GRID, RemminaPluginRdpsetgrid)) +#define REMMINA_RDPSET_GRID_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), REMMINA_TYPE_PLUGIN_RDPSET_GRID, RemminaPluginRdpsetgridClass)) +#define REMMINA_IS_PLUGIN_RDPSET_GRID(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), REMMINA_TYPE_PLUGIN_RDPSET_GRID)) +#define REMMINA_IS_PLUGIN_RDPSET_GRID_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), REMMINA_TYPE_PLUGIN_RDPSET_GRID)) +#define REMMINA_RDPSET_GRID_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), REMMINA_TYPE_PLUGIN_RDPSET_GRID, RemminaPluginRdpsetgridClass)) + +typedef struct _RemminaPluginRdpsetgrid { - GtkTable table; + GtkGrid grid; GtkWidget* keyboard_layout_label; GtkWidget* keyboard_layout_combo; @@ -77,33 +77,33 @@ typedef struct _RemminaPluginRdpsetTable GtkWidget* use_client_keymap_check; guint quality_values[10]; -} RemminaPluginRdpsetTable; +} RemminaPluginRdpsetgrid; -typedef struct _RemminaPluginRdpsetTableClass +typedef struct _RemminaPluginRdpsetgridClass { - GtkTableClass parent_class; -} RemminaPluginRdpsetTableClass; + GtkGridClass parent_class; +} RemminaPluginRdpsetgridClass; -GType remmina_rdp_settings_table_get_type(void) G_GNUC_CONST; +GType remmina_rdp_settings_grid_get_type(void) G_GNUC_CONST; -G_DEFINE_TYPE(RemminaPluginRdpsetTable, remmina_rdp_settings_table, GTK_TYPE_TABLE) +G_DEFINE_TYPE(RemminaPluginRdpsetgrid, remmina_rdp_settings_grid, GTK_TYPE_GRID) -static void remmina_rdp_settings_table_class_init(RemminaPluginRdpsetTableClass* klass) +static void remmina_rdp_settings_grid_class_init(RemminaPluginRdpsetgridClass* klass) { } -static void remmina_rdp_settings_table_destroy(GtkWidget* widget, gpointer data) +static void remmina_rdp_settings_grid_destroy(GtkWidget* widget, gpointer data) { gchar* s; guint new_layout; GtkTreeIter iter; - RemminaPluginRdpsetTable* table; + RemminaPluginRdpsetgrid* grid; - table = REMMINA_RDPSET_TABLE(widget); + grid = REMMINA_RDPSET_GRID(widget); - if (gtk_combo_box_get_active_iter(GTK_COMBO_BOX(table->keyboard_layout_combo), &iter)) + if (gtk_combo_box_get_active_iter(GTK_COMBO_BOX(grid->keyboard_layout_combo), &iter)) { - gtk_tree_model_get(GTK_TREE_MODEL(table->keyboard_layout_store), &iter, 0, &new_layout, -1); + gtk_tree_model_get(GTK_TREE_MODEL(grid->keyboard_layout_store), &iter, 0, &new_layout, -1); if (new_layout != rdp_keyboard_layout) { @@ -117,53 +117,53 @@ static void remmina_rdp_settings_table_destroy(GtkWidget* widget, gpointer data) } remmina_plugin_service->pref_set_value("rdp_use_client_keymap", - gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(table->use_client_keymap_check)) ? "1" : "0"); + gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(grid->use_client_keymap_check)) ? "1" : "0"); - s = g_strdup_printf("%X", table->quality_values[0]); + s = g_strdup_printf("%X", grid->quality_values[0]); remmina_plugin_service->pref_set_value("rdp_quality_0", s); g_free(s); - s = g_strdup_printf("%X", table->quality_values[1]); + s = g_strdup_printf("%X", grid->quality_values[1]); remmina_plugin_service->pref_set_value("rdp_quality_1", s); g_free(s); - s = g_strdup_printf("%X", table->quality_values[2]); + s = g_strdup_printf("%X", grid->quality_values[2]); remmina_plugin_service->pref_set_value("rdp_quality_2", s); g_free(s); - s = g_strdup_printf("%X", table->quality_values[9]); + s = g_strdup_printf("%X", grid->quality_values[9]); remmina_plugin_service->pref_set_value("rdp_quality_9", s); g_free(s); } -static void remmina_rdp_settings_table_load_layout(RemminaPluginRdpsetTable* table) +static void remmina_rdp_settings_grid_load_layout(RemminaPluginRdpsetgrid* grid) { gint i; gchar* s; GtkTreeIter iter; RDP_KEYBOARD_LAYOUT* layouts; - gtk_list_store_append(table->keyboard_layout_store, &iter); - gtk_list_store_set(table->keyboard_layout_store, &iter, 0, 0, 1, _("<Auto detect>"), -1); + gtk_list_store_append(grid->keyboard_layout_store, &iter); + gtk_list_store_set(grid->keyboard_layout_store, &iter, 0, 0, 1, _("<Auto detect>"), -1); if (rdp_keyboard_layout == 0) - gtk_combo_box_set_active(GTK_COMBO_BOX(table->keyboard_layout_combo), 0); + gtk_combo_box_set_active(GTK_COMBO_BOX(grid->keyboard_layout_combo), 0); - gtk_label_set_text(GTK_LABEL(table->keyboard_layout_label), "-"); + gtk_label_set_text(GTK_LABEL(grid->keyboard_layout_label), "-"); layouts = freerdp_keyboard_get_layouts(RDP_KEYBOARD_LAYOUT_TYPE_STANDARD | RDP_KEYBOARD_LAYOUT_TYPE_VARIANT); for (i = 0; layouts[i].code; i++) { s = g_strdup_printf("%08X - %s", layouts[i].code, layouts[i].name); - gtk_list_store_append(table->keyboard_layout_store, &iter); - gtk_list_store_set(table->keyboard_layout_store, &iter, 0, layouts[i].code, 1, s, -1); + gtk_list_store_append(grid->keyboard_layout_store, &iter); + gtk_list_store_set(grid->keyboard_layout_store, &iter, 0, layouts[i].code, 1, s, -1); if (rdp_keyboard_layout == layouts[i].code) - gtk_combo_box_set_active(GTK_COMBO_BOX(table->keyboard_layout_combo), i + 1); + gtk_combo_box_set_active(GTK_COMBO_BOX(grid->keyboard_layout_combo), i + 1); if (keyboard_layout == layouts[i].code) - gtk_label_set_text(GTK_LABEL(table->keyboard_layout_label), s); + gtk_label_set_text(GTK_LABEL(grid->keyboard_layout_label), s); g_free(s); } @@ -171,124 +171,125 @@ static void remmina_rdp_settings_table_load_layout(RemminaPluginRdpsetTable* tab free(layouts); } -static void remmina_rdp_settings_table_load_quality(RemminaPluginRdpsetTable* table) +static void remmina_rdp_settings_grid_load_quality(RemminaPluginRdpsetgrid* grid) { gchar* value; GtkTreeIter iter; - gtk_list_store_append(table->quality_store, &iter); - gtk_list_store_set(table->quality_store, &iter, 0, 0, 1, _("Poor (fastest)"), -1); - gtk_list_store_append(table->quality_store, &iter); - gtk_list_store_set(table->quality_store, &iter, 0, 1, 1, _("Medium"), -1); - gtk_list_store_append(table->quality_store, &iter); - gtk_list_store_set(table->quality_store, &iter, 0, 2, 1, _("Good"), -1); - gtk_list_store_append(table->quality_store, &iter); - gtk_list_store_set(table->quality_store, &iter, 0, 9, 1, _("Best (slowest)"), -1); + gtk_list_store_append(grid->quality_store, &iter); + gtk_list_store_set(grid->quality_store, &iter, 0, 0, 1, _("Poor (fastest)"), -1); + gtk_list_store_append(grid->quality_store, &iter); + gtk_list_store_set(grid->quality_store, &iter, 0, 1, 1, _("Medium"), -1); + gtk_list_store_append(grid->quality_store, &iter); + gtk_list_store_set(grid->quality_store, &iter, 0, 2, 1, _("Good"), -1); + gtk_list_store_append(grid->quality_store, &iter); + gtk_list_store_set(grid->quality_store, &iter, 0, 9, 1, _("Best (slowest)"), -1); - memset(table->quality_values, 0, sizeof (table->quality_values)); + memset(grid->quality_values, 0, sizeof (grid->quality_values)); value = remmina_plugin_service->pref_get_value("rdp_quality_0"); - table->quality_values[0] = (value && value[0] ? strtoul(value, NULL, 16) : DEFAULT_QUALITY_0); + grid->quality_values[0] = (value && value[0] ? strtoul(value, NULL, 16) : DEFAULT_QUALITY_0); g_free(value); value = remmina_plugin_service->pref_get_value("rdp_quality_1"); - table->quality_values[1] = (value && value[0] ? strtoul(value, NULL, 16) : DEFAULT_QUALITY_1); + grid->quality_values[1] = (value && value[0] ? strtoul(value, NULL, 16) : DEFAULT_QUALITY_1); g_free(value); value = remmina_plugin_service->pref_get_value("rdp_quality_2"); - table->quality_values[2] = (value && value[0] ? strtoul(value, NULL, 16) : DEFAULT_QUALITY_2); + grid->quality_values[2] = (value && value[0] ? strtoul(value, NULL, 16) : DEFAULT_QUALITY_2); g_free(value); value = remmina_plugin_service->pref_get_value("rdp_quality_9"); - table->quality_values[9] = (value && value[0] ? strtoul(value, NULL, 16) : DEFAULT_QUALITY_9); + grid->quality_values[9] = (value && value[0] ? strtoul(value, NULL, 16) : DEFAULT_QUALITY_9); g_free(value); } -static void remmina_rdp_settings_quality_on_changed(GtkComboBox *widget, RemminaPluginRdpsetTable *table) +static void remmina_rdp_settings_quality_on_changed(GtkComboBox *widget, RemminaPluginRdpsetgrid *grid) { guint v; guint i = 0; GtkTreeIter iter; - if (gtk_combo_box_get_active_iter(GTK_COMBO_BOX (table->quality_combo), &iter)) + if (gtk_combo_box_get_active_iter(GTK_COMBO_BOX (grid->quality_combo), &iter)) { - gtk_tree_model_get(GTK_TREE_MODEL(table->quality_store), &iter, 0, &i, -1); - v = table->quality_values[i]; - gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(table->wallpaper_check), (v & 1) == 0); - gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(table->windowdrag_check), (v & 2) == 0); - gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(table->menuanimation_check), (v & 4) == 0); - gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(table->theme_check), (v & 8) == 0); - gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(table->cursorshadow_check), (v & 0x20) == 0); - gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(table->cursorblinking_check), (v & 0x40) == 0); - gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(table->fontsmoothing_check), (v & 0x80) != 0); - gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(table->composition_check), (v & 0x100) != 0); + gtk_tree_model_get(GTK_TREE_MODEL(grid->quality_store), &iter, 0, &i, -1); + v = grid->quality_values[i]; + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(grid->wallpaper_check), (v & 1) == 0); + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(grid->windowdrag_check), (v & 2) == 0); + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(grid->menuanimation_check), (v & 4) == 0); + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(grid->theme_check), (v & 8) == 0); + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(grid->cursorshadow_check), (v & 0x20) == 0); + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(grid->cursorblinking_check), (v & 0x40) == 0); + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(grid->fontsmoothing_check), (v & 0x80) != 0); + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(grid->composition_check), (v & 0x100) != 0); } } -static void remmina_rdp_settings_quality_option_on_toggled(GtkToggleButton* togglebutton, RemminaPluginRdpsetTable* table) +static void remmina_rdp_settings_quality_option_on_toggled(GtkToggleButton* togglebutton, RemminaPluginRdpsetgrid* grid) { guint v; guint i = 0; GtkTreeIter iter; - if (gtk_combo_box_get_active_iter(GTK_COMBO_BOX(table->quality_combo), &iter)) + if (gtk_combo_box_get_active_iter(GTK_COMBO_BOX(grid->quality_combo), &iter)) { - gtk_tree_model_get(GTK_TREE_MODEL(table->quality_store), &iter, 0, &i, -1); + gtk_tree_model_get(GTK_TREE_MODEL(grid->quality_store), &iter, 0, &i, -1); v = 0; - v |= (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(table->wallpaper_check)) ? 0 : 1); - v |= (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(table->windowdrag_check)) ? 0 : 2); - v |= (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(table->menuanimation_check)) ? 0 : 4); - v |= (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(table->theme_check)) ? 0 : 8); - v |= (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(table->cursorshadow_check)) ? 0 : 0x20); - v |= (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(table->cursorblinking_check)) ? 0 : 0x40); - v |= (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(table->fontsmoothing_check)) ? 0x80 : 0); - v |= (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(table->composition_check)) ? 0x100 : 0); - table->quality_values[i] = v; + v |= (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(grid->wallpaper_check)) ? 0 : 1); + v |= (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(grid->windowdrag_check)) ? 0 : 2); + v |= (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(grid->menuanimation_check)) ? 0 : 4); + v |= (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(grid->theme_check)) ? 0 : 8); + v |= (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(grid->cursorshadow_check)) ? 0 : 0x20); + v |= (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(grid->cursorblinking_check)) ? 0 : 0x40); + v |= (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(grid->fontsmoothing_check)) ? 0x80 : 0); + v |= (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(grid->composition_check)) ? 0x100 : 0); + grid->quality_values[i] = v; } } -static void remmina_rdp_settings_table_init(RemminaPluginRdpsetTable *table) +static void remmina_rdp_settings_grid_init(RemminaPluginRdpsetgrid *grid) { gchar* s; GtkWidget* widget; GtkCellRenderer* renderer; - /* Create the table */ - g_signal_connect(G_OBJECT(table), "destroy", G_CALLBACK(remmina_rdp_settings_table_destroy), NULL); - gtk_table_resize(GTK_TABLE(table), 8, 3); - gtk_table_set_homogeneous(GTK_TABLE(table), FALSE); - gtk_container_set_border_width(GTK_CONTAINER(table), 8); - gtk_table_set_row_spacings(GTK_TABLE(table), 4); - gtk_table_set_col_spacings(GTK_TABLE(table), 4); + /* Create the grid */ + g_signal_connect(G_OBJECT(grid), "destroy", G_CALLBACK(remmina_rdp_settings_grid_destroy), NULL); + //gtk_grid_resize(GTK_GRID(grid), 8, 3); + gtk_grid_set_row_homogeneous(GTK_GRID(grid), FALSE); + gtk_grid_set_column_homogeneous(GTK_GRID(grid), FALSE); + gtk_container_set_border_width(GTK_CONTAINER(grid), 8); + gtk_grid_set_row_spacing(GTK_GRID(grid), 4); + gtk_grid_set_column_spacing(GTK_GRID(grid), 4); /* Create the content */ widget = gtk_label_new(_("Keyboard layout")); gtk_widget_show(widget); gtk_misc_set_alignment(GTK_MISC(widget), 0.0, 0.5); - gtk_table_attach_defaults(GTK_TABLE(table), widget, 0, 1, 0, 1); + gtk_grid_attach(GTK_GRID(grid), widget, 0, 1, 0, 1); - table->keyboard_layout_store = gtk_list_store_new(2, G_TYPE_UINT, G_TYPE_STRING); - widget = gtk_combo_box_new_with_model(GTK_TREE_MODEL(table->keyboard_layout_store)); + grid->keyboard_layout_store = gtk_list_store_new(2, G_TYPE_UINT, G_TYPE_STRING); + widget = gtk_combo_box_new_with_model(GTK_TREE_MODEL(grid->keyboard_layout_store)); gtk_widget_show(widget); - gtk_table_attach_defaults(GTK_TABLE(table), widget, 1, 4, 0, 1); + gtk_grid_attach(GTK_GRID(grid), widget, 1, 4, 0, 1); renderer = gtk_cell_renderer_text_new(); gtk_cell_layout_pack_start(GTK_CELL_LAYOUT(widget), renderer, TRUE); gtk_cell_layout_add_attribute(GTK_CELL_LAYOUT(widget), renderer, "text", 1); - table->keyboard_layout_combo = widget; + grid->keyboard_layout_combo = widget; widget = gtk_label_new("-"); gtk_widget_show(widget); gtk_misc_set_alignment(GTK_MISC(widget), 0.0, 0.5); - gtk_table_attach_defaults(GTK_TABLE(table), widget, 1, 4, 1, 2); - table->keyboard_layout_label = widget; + gtk_grid_attach(GTK_GRID(grid), widget, 1, 4, 1, 2); + grid->keyboard_layout_label = widget; - remmina_rdp_settings_table_load_layout(table); + remmina_rdp_settings_grid_load_layout(grid); widget = gtk_check_button_new_with_label(_("Use client keyboard mapping")); gtk_widget_show(widget); - gtk_table_attach_defaults(GTK_TABLE(table), widget, 1, 3, 2, 3); - table->use_client_keymap_check = widget; + gtk_grid_attach(GTK_GRID(grid), widget, 1, 3, 2, 3); + grid->use_client_keymap_check = widget; s = remmina_plugin_service->pref_get_value("rdp_use_client_keymap"); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widget), @@ -298,86 +299,86 @@ static void remmina_rdp_settings_table_init(RemminaPluginRdpsetTable *table) widget = gtk_label_new(_("Quality option")); gtk_widget_show(widget); gtk_misc_set_alignment(GTK_MISC(widget), 0.0, 0.5); - gtk_table_attach_defaults(GTK_TABLE(table), widget, 0, 1, 3, 4); + gtk_grid_attach(GTK_GRID(grid), widget, 0, 1, 3, 4); - table->quality_store = gtk_list_store_new(2, G_TYPE_UINT, G_TYPE_STRING); - widget = gtk_combo_box_new_with_model(GTK_TREE_MODEL(table->quality_store)); + grid->quality_store = gtk_list_store_new(2, G_TYPE_UINT, G_TYPE_STRING); + widget = gtk_combo_box_new_with_model(GTK_TREE_MODEL(grid->quality_store)); gtk_widget_show(widget); - gtk_table_attach_defaults(GTK_TABLE(table), widget, 1, 4, 3, 4); + gtk_grid_attach(GTK_GRID(grid), widget, 1, 4, 3, 4); renderer = gtk_cell_renderer_text_new(); gtk_cell_layout_pack_start(GTK_CELL_LAYOUT(widget), renderer, TRUE); gtk_cell_layout_add_attribute(GTK_CELL_LAYOUT(widget), renderer, "text", 1); g_signal_connect(G_OBJECT(widget), "changed", - G_CALLBACK(remmina_rdp_settings_quality_on_changed), table); - table->quality_combo = widget; + G_CALLBACK(remmina_rdp_settings_quality_on_changed), grid); + grid->quality_combo = widget; - remmina_rdp_settings_table_load_quality(table); + remmina_rdp_settings_grid_load_quality(grid); widget = gtk_check_button_new_with_label(_("Wallpaper")); gtk_widget_show(widget); - gtk_table_attach_defaults(GTK_TABLE(table), widget, 1, 2, 4, 5); + gtk_grid_attach(GTK_GRID(grid), widget, 1, 2, 4, 5); g_signal_connect(G_OBJECT(widget), "toggled", - G_CALLBACK(remmina_rdp_settings_quality_option_on_toggled), table); - table->wallpaper_check = widget; + G_CALLBACK(remmina_rdp_settings_quality_option_on_toggled), grid); + grid->wallpaper_check = widget; widget = gtk_check_button_new_with_label(_("Window drag")); gtk_widget_show(widget); - gtk_table_attach_defaults(GTK_TABLE(table), widget, 2, 3, 4, 5); + gtk_grid_attach(GTK_GRID(grid), widget, 2, 3, 4, 5); g_signal_connect(G_OBJECT(widget), "toggled", - G_CALLBACK(remmina_rdp_settings_quality_option_on_toggled), table); - table->windowdrag_check = widget; + G_CALLBACK(remmina_rdp_settings_quality_option_on_toggled), grid); + grid->windowdrag_check = widget; widget = gtk_check_button_new_with_label(_("Menu animation")); gtk_widget_show(widget); - gtk_table_attach_defaults(GTK_TABLE(table), widget, 1, 2, 5, 6); + gtk_grid_attach(GTK_GRID(grid), widget, 1, 2, 5, 6); g_signal_connect(G_OBJECT(widget), "toggled", - G_CALLBACK(remmina_rdp_settings_quality_option_on_toggled), table); - table->menuanimation_check = widget; + G_CALLBACK(remmina_rdp_settings_quality_option_on_toggled), grid); + grid->menuanimation_check = widget; widget = gtk_check_button_new_with_label(_("Theme")); gtk_widget_show(widget); - gtk_table_attach_defaults(GTK_TABLE(table), widget, 2, 3, 5, 6); + gtk_grid_attach(GTK_GRID(grid), widget, 2, 3, 5, 6); g_signal_connect(G_OBJECT(widget), "toggled", - G_CALLBACK(remmina_rdp_settings_quality_option_on_toggled), table); - table->theme_check = widget; + G_CALLBACK(remmina_rdp_settings_quality_option_on_toggled), grid); + grid->theme_check = widget; widget = gtk_check_button_new_with_label(_("Cursor shadow")); gtk_widget_show(widget); - gtk_table_attach_defaults(GTK_TABLE(table), widget, 1, 2, 6, 7); + gtk_grid_attach(GTK_GRID(grid), widget, 1, 2, 6, 7); g_signal_connect(G_OBJECT(widget), "toggled", - G_CALLBACK(remmina_rdp_settings_quality_option_on_toggled), table); - table->cursorshadow_check = widget; + G_CALLBACK(remmina_rdp_settings_quality_option_on_toggled), grid); + grid->cursorshadow_check = widget; widget = gtk_check_button_new_with_label(_("Cursor blinking")); gtk_widget_show(widget); - gtk_table_attach_defaults(GTK_TABLE(table), widget, 2, 3, 6, 7); + gtk_grid_attach(GTK_GRID(grid), widget, 2, 3, 6, 7); g_signal_connect(G_OBJECT(widget), "toggled", - G_CALLBACK(remmina_rdp_settings_quality_option_on_toggled), table); - table->cursorblinking_check = widget; + G_CALLBACK(remmina_rdp_settings_quality_option_on_toggled), grid); + grid->cursorblinking_check = widget; widget = gtk_check_button_new_with_label(_("Font smoothing")); gtk_widget_show(widget); - gtk_table_attach_defaults(GTK_TABLE(table), widget, 1, 2, 7, 8); + gtk_grid_attach(GTK_GRID(grid), widget, 1, 2, 7, 8); g_signal_connect(G_OBJECT(widget), "toggled", - G_CALLBACK(remmina_rdp_settings_quality_option_on_toggled), table); - table->fontsmoothing_check = widget; + G_CALLBACK(remmina_rdp_settings_quality_option_on_toggled), grid); + grid->fontsmoothing_check = widget; widget = gtk_check_button_new_with_label(_("Composition")); gtk_widget_show(widget); - gtk_table_attach_defaults(GTK_TABLE(table), widget, 2, 3, 7, 8); + gtk_grid_attach(GTK_GRID(grid), widget, 2, 3, 7, 8); g_signal_connect(G_OBJECT(widget), "toggled", - G_CALLBACK(remmina_rdp_settings_quality_option_on_toggled), table); - table->composition_check = widget; + G_CALLBACK(remmina_rdp_settings_quality_option_on_toggled), grid); + grid->composition_check = widget; - gtk_combo_box_set_active(GTK_COMBO_BOX (table->quality_combo), 0); + gtk_combo_box_set_active(GTK_COMBO_BOX (grid->quality_combo), 0); } GtkWidget* remmina_rdp_settings_new(void) { GtkWidget* widget; - widget = GTK_WIDGET(g_object_new(REMMINA_TYPE_PLUGIN_RDPSET_TABLE, NULL)); + widget = GTK_WIDGET(g_object_new(REMMINA_TYPE_PLUGIN_RDPSET_GRID, NULL)); gtk_widget_show(widget); return widget; |