Michael Natterer
cbc4013412
Reindent prototypes
2009-10-03 00:06:44 +02:00
Michael Natterer
f6fd3aed51
Move GimpDisplayShell's expose functions to separate files
2009-10-02 23:55:26 +02:00
Michael Natterer
6c46d1ec73
Fix some comment typos and formatting
2009-10-02 23:43:58 +02:00
Michael Natterer
3d13f8d4d5
Tweak display finding logic of previous commit a bit
...
(gimp_display_new): add the new shell to the active display's image
window, not the first display's.
2009-10-02 21:50:02 +02:00
Michael Natterer
3106b66186
Finally enable multiple images in one window
...
(gimp_display_new): if single-window-mode is active, put the new shell
into the first display's image window.
2009-10-02 21:15:07 +02:00
Michael Natterer
ff20a1367d
Make GimpImageWindow handle the empty display correctly
...
Keep around a boolean state "is_empty" and update it when adding and
removing shells, and when the image of any shell changes. Do empty
display voodoo only when the "is_empty" state changes.
2009-10-01 19:44:13 +02:00
Michael Natterer
625885eb9d
Make sure the shell is really destroyed when removing it from the window
...
Explicitely call gtk_widget_destroy() to break whatever reference
cycles so the shell really goes away.
2009-10-01 19:44:13 +02:00
Michael Natterer
a6bb7fb8ee
Remove accidentially added #include
2009-09-30 19:31:13 +02:00
Michael Natterer
b9b7cadbb0
Use large image previews as tab widgets
2009-09-30 19:25:38 +02:00
Michael Natterer
98a4653186
(gui_display_get_window): return the ID of the toplevel, not of the shell
2009-09-30 17:01:55 +02:00
Michael Natterer
97f556160f
Remove #include "display/gimpimagewindow.h"
2009-09-30 15:00:09 +02:00
Martin Nordholts
e36c3ee9bd
app: Fix keyboard shortcuts not working when non-image-windows focused
...
Handle GIMP_IS_DOCK_WINDOW in action_data_get_foo(). This makes image
related keyboard shortcuts work again when e.g. a dock is the focused
window. Fix discovered by Michael Natterer.
2009-09-30 07:34:55 +02:00
Michael Natterer
ccdab9e4cd
Make updagin the image window's ui manager more sane
...
(gimp_image_window_image_notify): update the ui manager unconditionally
(both when a display is emptied *and* filled)
(gui_display_create): remove updating code here. It was not belonging
here anyway and the image window does the right thing now.
2009-09-30 00:00:36 +02:00
Sven Neumann
bc9602c410
remove pointless delete-event handler
2009-09-29 23:38:16 +02:00
Tal Trachtman
9fe00a7877
Bug 596472 - Rotate brushes artifacts at certain rotation angles
...
Solved a bug in the bilinear interpolated brush transform algorithm that
sometimes caused pixel artifacts to appear on brush edges for brushes
rotated 90, -90, -180, 180 degrees.
2009-09-29 23:03:58 +02:00
Michael Natterer
ee2fdbcf8f
Enable some #if 0'ed code and use the just added API
...
gimp_display_delete(): remove shells from image windows with more than
one shell instead of destroying the window.
2009-09-29 23:01:33 +02:00
Michael Natterer
d1dc70fbdf
Add some more shell management API to GimpImageWindow
...
- gimp_image_window_remove_shell()
- gimp_image_window_get_n_shells()
2009-09-29 22:59:48 +02:00
Michael Natterer
3189b8f45f
Move GimpImage::saved and GimpImage::exported handlers to the right place
...
GimpDisplay is *only* for proxying the image's projection, every other
image/display connection belongs into GimpDisplayShell, so move these
handlers from gimpdisplay-handlers.c to gimpdisplayshell-handlers.c.
2009-09-29 22:38:34 +02:00
Michael Natterer
35588efaa1
Remove "gimp-" prefix from the shell's "icon" and "title" properties
...
The prefix was needed because GtkWindow also has "icon" and "title"
properties.
2009-09-29 22:20:12 +02:00
Michael Natterer
d046da90e2
Merge the image window's active shell logic with the notebook's active page
...
Add a GtkNotebook::switch_page() handler and move all shell switching
code there. In gimp_image_window_set_active_shell(), simply set the
right notebook page.
2009-09-29 22:14:10 +02:00
Michael Natterer
e8061e5a7e
Add a notebook for the display shells
2009-09-29 21:57:57 +02:00
Michael Natterer
b0f7a7daf4
Add a central hbox for docks and display shells
2009-09-29 21:47:58 +02:00
Michael Natterer
1c430a2b19
Move all GimpImageWindow members to a private struct
...
Add accessor functions for publically available members and visibility
functions for menubar and statusbar.
2009-09-29 21:44:43 +02:00
Michael Natterer
59274856ad
Derive GimpDisplayShell from GtkVBox instead of GimpImageWindow
...
...and pack the widget into a separately created GimpImageWindow.
2009-09-29 20:56:14 +02:00
Michael Natterer
253b8e2cbe
Use gimp_display_shell_get_window() instead of gtk_widget_get_toplevel()
...
The new function does the right thing, unlike get_toplevel() which
returns the shell itself if it is not in a window. Check the return
value of get_window() for being non-NULL.
2009-09-29 20:32:26 +02:00
Michael Natterer
97987aff6e
Add gimp_display_shell_get_window() which returns an image window or NULL
2009-09-28 23:53:05 +02:00
Michael Natterer
35739c743c
Change GimpImageWindow API to speak in shells, not displays
...
A widget container should keep around child widgets, not whatever
objects that just have widgets.
2009-09-28 22:55:55 +02:00
Michael Natterer
bb8daa49a3
Present the toplevel not the shell
2009-09-28 22:55:55 +02:00
Michael Natterer
87001c1b3a
gtk_window_present() the toplevel, not the shell
2009-09-28 22:55:54 +02:00
Michael Natterer
54edc20113
Add missing #include "gimpimagewindow.h"
2009-09-28 22:55:54 +02:00
Michael Natterer
45f4a99339
Don't set any options in gimp_display_shell_new()
...
All options are properly set when the shell is set active in its image
window.
2009-09-28 22:55:54 +02:00
Michael Natterer
1273a63eab
Update the shell's appearance when it is set active in the image window
2009-09-28 22:55:53 +02:00
Michael Natterer
16038023a5
Remove some dead code and fix some comments
2009-09-28 22:55:53 +02:00
Michael Natterer
a8876834e8
Move the remaining menubar signal connections from the shell to the window
2009-09-28 22:55:53 +02:00
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