Michael Natterer
375a25dd24
Destroy the toplevel, not the shell in gimp_display_delete()
...
Also add disabled code that removes the display from an image window
that has more then one display.
2009-09-28 22:55:53 +02:00
Michael Natterer
f7f58d57be
gtk_window_present() the toplevel, not the shell
2009-09-28 22:55:52 +02:00
Michael Natterer
accdd3d8a1
Go via the toplevel to get to the menubar manager
2009-09-28 22:55:52 +02:00
Michael Natterer
6c76120561
Move "show-statusbar" next to "show-menubar"
2009-09-28 22:55:52 +02:00
Michael Natterer
fbc3b2f0c1
Get rid of image window FIXMEs
...
Add code that properly uses the statusbar in the toplevel image window
instead of assuming that the shell and the window are the same object.
Add new FIXME because it will break when switching between two
displays of one toplevel that both have active progress messages.
2009-09-28 22:55:52 +02:00
Michael Natterer
fa43c8797e
Add gimp_statusbar_override/restore_window_title()
...
Which sets/unsets the title of an iconified toplevel image window to
the current progress message (if any). Use the new functions when the
window is (de)iconified. Not exactly the high art of programming, but
much better than the hacks in gimpdisplayshell-progress.c that are now
removed.
2009-09-28 22:55:52 +02:00
Michael Natterer
892f9f8876
Add gimp_image_window_is_iconified() and use it in GimpImageWindow
2009-09-28 22:55:51 +02:00
Michael Natterer
5b5e4e039a
Add gimp_image_window_add_display() and use it
...
This API is most likely not final, but enables adding the vbox of
shell widgets to the image window's vbox *after* the shell constructor
returns. Seems to work nicely :-)
2009-09-28 22:55:51 +02:00
Michael Natterer
bcef4f275d
gimp_display_shell_fill_idle() present the toplevel not the shell
...
Not sure if this one should go to the image window...
2009-09-28 22:55:51 +02:00
Michael Natterer
32783d7228
Move shrink_wrap() from the display to the window
...
Also fix all callers. This clearly needs more cleanup.
2009-09-28 22:55:50 +02:00
Michael Natterer
8c2934f626
Remove dead and forgotten declaration of gimp_display_shell_update_icon()
2009-09-28 22:55:50 +02:00
Michael Natterer
d5b1542808
Add some forgotten casts, fixes (harmless) compile warnings
2009-09-28 22:55:50 +02:00
Michael Natterer
abc5e270b3
Go via the toplevel to update the image window's ui manager
2009-09-28 22:55:49 +02:00
Michael Natterer
7f064f694e
Get rid of the shell's window-state-event handler
...
Move the last remaining function to the window. It doesn't actually
belong there, but it's better than the handler in the wrong place.
Added FIXME as reminder.
2009-09-28 22:55:49 +02:00
Michael Natterer
4f60240a04
Move updating the "view-fullscreen" actions to the proper place
...
Update the actions in gimp_display_shell_appearance_update() and remove
all action code from the window-state-event handlers.
2009-09-28 22:55:49 +02:00
Michael Natterer
8b5b36751d
Move updating the shell's appearance to the right window state event handler
...
The shell's handler is going to go away, so move this call to
the image window.
2009-09-28 22:55:48 +02:00
Michael Natterer
5c048e0108
Reindent static prototypes
2009-09-28 22:55:48 +02:00
Michael Natterer
d015a704b3
Move GtkWidget::configure_event() impl from the shell to the window
...
Still has a FIXME for later, but is in the right place now.
2009-09-28 22:55:48 +02:00
Michael Natterer
c475b1b3be
Update widget packing ASCII art to not include image window widgets
2009-09-28 22:55:48 +02:00
Michael Natterer
a5945740e0
Move GtkWidget::delete_event() impl from the shell to the window
...
Still has a FIXME but is in the right place now at least
2009-09-28 22:55:47 +02:00
Michael Natterer
b11c3355cb
Implement GObject::constructor()
...
For now, simply assert that all required construct properties are set.
2009-09-28 22:55:47 +02:00
Michael Natterer
1ae5632753
Turn "popup-manager" into a construct-only property and pass it accordingly
2009-09-28 22:55:47 +02:00
Michael Natterer
7b62cb3b00
Turn "display" into a construct-only property and pass it accordingly
2009-09-28 22:55:47 +02:00
Michael Natterer
d2f43f1604
Finally fully enable the image window's active_display mechanism
...
Don't set the window's active_display manually in gimp_display_shell_new(),
setting it properly after construction in gimp_display_new() works fine
now. Enable all disabled code in gimp_image_window_set_active_display().
2009-09-28 22:55:47 +02:00
Michael Natterer
fdd55d37cb
Move the last window-related NIW code from the shell to the image window
2009-09-28 22:55:46 +02:00
Michael Natterer
2762100885
Show the shell after it has been associated with its image window, not before
...
...so the image window's session management has a chance to set
the window's size.
2009-09-28 22:55:46 +02:00
Michael Natterer
cf14f1ce62
Go via the tolevel to get to the image window's statusbar
2009-09-28 22:55:45 +02:00
Michael Natterer
8b5a692099
Remove display_factory member from GimpDisplayShell
2009-09-28 22:55:45 +02:00
Michael Natterer
9c5e44c566
Move the window part of gimp_display_shell_fill() to GimpImageWindow
2009-09-28 22:55:45 +02:00
Michael Natterer
4cc8f8e6f8
Move the window part of gimp_display_shell_empty() to GimpImageWindow
2009-09-28 22:55:44 +02:00
Michael Natterer
c7fdac4894
gimp_display_set_image(): emit notify::image only if the image changed
2009-09-28 22:55:44 +02:00
Michael Natterer
e5d8067a87
Unref the menubar_manager in finalize()
2009-09-28 22:55:44 +02:00
Michael Natterer
8086bc8e68
Pass the display_factory to the image window
2009-09-28 22:55:43 +02:00
Michael Natterer
e9c7b47284
Add "display-factory" construct-only property of type GimpDialogFactory
2009-09-28 22:55:43 +02:00
Michael Natterer
e7e8759710
Move image window related functions together (menubar and statusbar)
2009-09-28 22:55:43 +02:00
Michael Natterer
5804e80ad0
Get rid of all image window FIXMEs
...
Replace duplicated ugly macro constructs by proper utility functions
that do the right thing wrt GimpImageWindow being the new toplevel.
2009-09-28 22:55:43 +02:00
Michael Natterer
0b12978761
Go via gtk_widget_get_toplevel() to get to the statusbar
2009-09-28 22:55:42 +02:00
Michael Natterer
ac254f293d
Don't use the menubar_manager to set the quickmask toggle's tooltip
2009-09-28 22:55:42 +02:00
Michael Natterer
88ee13db56
Go via the toplevel to get to the statusbar for setting coords
...
Only a visible shell can produce cursor coordinates, so no need
to check for the image window's active display.
2009-09-28 22:55:42 +02:00
Michael Natterer
7e8a767e88
Add notify callback for GimpDisplay's "image" property
...
Will be used to do NIW things later.
2009-09-28 22:55:41 +02:00
Michael Natterer
fc75f38c03
Make gimp_statusbar_new() a void function and set a shell dynamically
2009-09-28 22:55:41 +02:00
Michael Natterer
82aa4084ab
Add gimp_statusbar_set_shell()
...
Reconnect signals when a new shell is set; reorganize internal code to
not set up permanent connections to one specific shell.
2009-09-28 22:55:41 +02:00
Michael Natterer
571cdd47ed
Set the window role and "resizable" on GimpImageWindow, not on the shell
2009-09-28 22:55:40 +02:00
Michael Natterer
a9b617235f
Make the scale dialog transient to the shell's toplevel
2009-09-28 22:55:40 +02:00
Michael Natterer
1bbcd8f7b5
Add "icon" property to GimpDisplayShell
...
Set it instead of setting the window icon and connect GimpImageWindow
to the notification.
2009-09-28 22:55:40 +02:00
Michael Natterer
660c333b55
Add "title" and "status" properties to GimpSisplayShell
...
Set the properties when updating title and status. In GimpImageWindow,
connect to notifications of the properties to update window title and
statusbar.
2009-09-28 22:55:39 +02:00
Michael Natterer
5112bc497d
Remove gimp_display_shell_title() because it was completely empty
2009-09-28 22:55:39 +02:00
Michael Natterer
3547a25390
Add a GimpDisplayShell::scaled() handler to GimpImageWindow
...
...which is connected to the window's active display. Remove updating
the window's menubar_manager from GimpDisplayShell's scaled()
impl. Had to hack around a bit with the new API to set the window's
active display because they are still the same widget.
2009-09-28 22:55:39 +02:00
Michael Natterer
a82169ee13
Keep around an "active_display" member in GimpImageWindow
...
And add gimp_image_window_set_active_display(). Call the new function
when creating a shell. Will all be done by the means of a GimpContext
later, but is a step to get rid of FIXME hacks.
2009-09-28 22:55:39 +02:00
Michael Natterer
03fcc99bbf
Move the GtkWidget::style_set() handler to GimpImageWindow
...
...and remove it from GimpDisplayShell completely.
2009-09-28 22:55:38 +02:00