{
struct dlgparam *dp = (struct dlgparam *)dlg;
dp->retval = value;
- gtk_main_quit();
+ gtk_widget_destroy(dp->window);
}
void dlg_refresh(union control *ctrl, void *dlg)
event->keyval==GDK_Page_Up || event->keyval==GDK_KP_Page_Up)
? 2 : 1;
int i, n;
- GtkWidget *thisitem;
GList *children, *chead;
chead = children = gtk_container_children(GTK_CONTAINER(list));
static int listitem_single_key(GtkWidget *item, GdkEventKey *event,
gpointer data)
{
- listitem_key(item, event, data, FALSE);
+ return listitem_key(item, event, data, FALSE);
}
static int listitem_multi_key(GtkWidget *item, GdkEventKey *event,
gpointer data)
{
- listitem_key(item, event, data, TRUE);
+ return listitem_key(item, event, data, TRUE);
}
static int listitem_button(GtkWidget *item, GdkEventButton *event,
static void filesel_ok(GtkButton *button, gpointer data)
{
- struct dlgparam *dp = (struct dlgparam *)data;
+ /* struct dlgparam *dp = (struct dlgparam *)data; */
gpointer filesel = gtk_object_get_data(GTK_OBJECT(button), "user-data");
struct uctrl *uc = gtk_object_get_data(GTK_OBJECT(filesel), "user-data");
char *name = gtk_file_selection_get_filename(GTK_FILE_SELECTION(filesel));
static void fontsel_ok(GtkButton *button, gpointer data)
{
- struct dlgparam *dp = (struct dlgparam *)data;
+ /* struct dlgparam *dp = (struct dlgparam *)data; */
gpointer fontsel = gtk_object_get_data(GTK_OBJECT(button), "user-data");
struct uctrl *uc = gtk_object_get_data(GTK_OBJECT(fontsel), "user-data");
char *name = gtk_font_selection_dialog_get_font_name
{
GtkWidget *w = dp->treeitems[i];
int vis = TRUE;
- while (w && GTK_IS_TREE_ITEM(w) || GTK_IS_TREE(w)) {
+ while (w && (GTK_IS_TREE_ITEM(w) || GTK_IS_TREE(w))) {
if (!GTK_WIDGET_VISIBLE(w)) {
vis = FALSE;
break;
gtk_signal_emit_stop_by_name(GTK_OBJECT(widget),
"key_press_event");
if (j >= 0) {
- gint return_val;
gtk_signal_emit_by_name(GTK_OBJECT(dp->treeitems[j]), "toggle");
gtk_widget_grab_focus(dp->treeitems[j]);
}
}
}
-int do_config_box(const char *title)
+int do_config_box(const char *title, Config *cfg)
{
GtkWidget *window, *hbox, *vbox, *cols, *label,
*tree, *treescroll, *panels, *panelvbox;
char *path;
GtkTreeItem *treeitemlevels[8];
GtkTree *treelevels[8];
- Config cfg;
struct dlgparam dp;
struct sesslist sl;
struct Shortcuts scs;
struct selparam *selparams = NULL;
int nselparams = 0, selparamsize = 0;
- do_defaults(NULL, &cfg);
+ do_defaults(NULL, cfg);
dlg_init(&dp);
dp.treeitems[index] = selparams[index].treeitem;
}
- dp.data = &cfg;
+ dp.data = cfg;
dlg_refresh(NULL, &dp);
dp.shortcuts = &selparams[0].shortcuts;
int main(int argc, char **argv)
{
+ Config cfg;
gtk_init(&argc, &argv);
- printf("returned %d\n", do_config_box("PuTTY Configuration"));
+ printf("returned %d\n", do_config_box("PuTTY Configuration", &cfg));
return 0;
}