I used some things from yours and now things work as I intended, thanks!. I suspect it was due to showing the window BEFORE the hints/resize had been applied which was causing my confusion..
--- David Neèas (Yeti) <[EMAIL PROTECTED]> wrote: > On Wed, Jun 27, 2007 at 05:03:48PM -0700, David J. > Andruczyk wrote: > > I have an app that creates a window. inside this > > window is an eventbox and inside that is a > GtkFixed > > (no slapping me for using a GtkFixed, it works > well > > for this purpose) > > > > I want to be a be able to scale the window to ANY > > size. (yes i know the fixed widget doesn't handle > > scaling, I plan on handling that once i can sort > out > > the resizing problems) > > > > I've used gtk_window_set_geometry_hints to set the > > aspect ratio, and minimum size. The problem is > the > > windows ALWAYS default displays at the minimum > size. > > NOT at a size I specify using (gtk_window_resize) > or > > similar. > > If I do NOT set the minimum geometry hint. I CAN > set > > the size to be larger than the Fixed widget (with > its > > children). > > > > All I want to be able to do is tell GTK/window > manager > > that there's a window that can be no smaller than > > 100x100 and no larger than 1000x1000, and I want > ot be > > able ot set the size to any point in between those > > extremes. (GTK ignores me, when using the hints) > > > > any ideas? > > Where exactly is the problem? This works flawlessly > for me: > > =========================================================== > #include <gtk/gtk.h> > #include <gdk/gdkkeysyms.h> > > static gboolean > key_press(GtkWidget *widget, > GdkEventKey *event) > { > if (event->keyval >= GDK_0 && event->keyval <= > GDK_9) { > gint size = 60*(event->keyval - GDK_0 + 1); > > gtk_window_resize(GTK_WINDOW(widget), size, > size); > return TRUE; > } > return FALSE; > } > > int > main(int argc, char *argv[]) > { > GtkWidget *window, *fixed, *widget; > GdkGeometry geometry = { 60, 60, 600, 600, 0, 0, > 0, 0, 0.0, 0.0, 0 }; > gint i; > > gtk_init(&argc, &argv); > window = gtk_window_new(GTK_WINDOW_TOPLEVEL); > > fixed = gtk_fixed_new(); > gtk_container_add(GTK_CONTAINER(window), fixed); > > for (i = 0; i < 33; i++) { > widget = gtk_label_new("Bloody"); > gtk_fixed_put(GTK_FIXED(fixed), widget, > g_random_int_range(0, 560), > g_random_int_range(0, 590)); > } > > > gtk_window_set_geometry_hints(GTK_WINDOW(window), > NULL, &geometry, > GDK_HINT_MIN_SIZE > | GDK_HINT_MAX_SIZE); > gtk_window_set_default_size(GTK_WINDOW(window), > 300, 300); > g_signal_connect(window, "destroy", > G_CALLBACK(gtk_main_quit), NULL); > g_signal_connect(window, "key-press-event", > G_CALLBACK(key_press), NULL); > > g_print("Press 0-9 to resize me.\n"); > > gtk_widget_show_all(window); > gtk_main(); > > return 0; > } > =========================================================== > > Yeti > > -- > http://gwyddion.net/ > _______________________________________________ > gtk-app-devel-list mailing list > gtk-app-devel-list@gnome.org > http://mail.gnome.org/mailman/listinfo/gtk-app-devel-list > -- David J. Andruczyk ____________________________________________________________________________________ Luggage? GPS? Comic books? Check out fitting gifts for grads at Yahoo! Search http://search.yahoo.com/search?fr=oni_on_mail&p=graduation+gifts&cs=bz _______________________________________________ gtk-app-devel-list mailing list gtk-app-devel-list@gnome.org http://mail.gnome.org/mailman/listinfo/gtk-app-devel-list