Commit graph

1827 commits

Author SHA1 Message Date
Martin Nordholts
676e7f8c31 app: Formating 2009-10-09 20:04:56 +02:00
Michael Natterer
23955439d6 Don't access GtkAdjustment's members directly
but also don't use its accessors because doing that would emit
"changed" multiple times when setting up an adjustment with multiple
utility functions. Instead, use g_object_set() and freeze/thaw
notification around all calls. g_object_thaw_notify() will make sure
"changed" is emitted if anything has changed since freezing.
2009-10-09 09:59:01 +02:00
Michael Natterer
7c39a22dc2 Simplify GimpDisplayShell's icon update API
It makes no sense to distinguish between idle and immediate update in
the public API, the code can simply decide by itself to immediately
update a NULL image's icon.
2009-10-08 23:30:56 +02:00
Michael Natterer
e2cc191c92 Use GtkAdjustment's accessors 2009-10-08 20:05:12 +02:00
Michael Natterer
57541f8093 Rename gimp_display_shell_selection_layer_set_hidden() to set_layer_hidden() 2009-10-08 09:10:33 +02:00
Michael Natterer
dd0575edb4 Move refing/unrefing the image to gimp_display_set_image()
and don't do it in gimp_display_connect()/disconnect() because
set_image() is the natural place to do it.
2009-10-07 21:13:39 +02:00
Michael Natterer
067cfe9ff0 Move a call to gimp_display_shell_connect() around
from gimp_display_shell_reconnect() to gimp_display_set_image()
because it makes unsetting and setting an image in
gimp_display_set_image() more symmetric.
2009-10-07 20:11:48 +02:00
Michael Natterer
1ae5d6ad8d Use the local shell variable and don't call get_shell() again 2009-10-07 19:59:54 +02:00
Michael Natterer
6ad76d226e Use gimp_display_set_image() in gimp_display_new()
instead of manually calling gimp_display_connect(). Make
gimp_display_set_image() handle displays in construction
(which don't have a shell yet).
2009-10-07 19:42:08 +02:00
Michael Natterer
c17dfd22a8 Rename layer_select->shell to layer_select->window
Calling that member "shell" is just too confusing in the
GimpDisplayShell context.
2009-10-06 19:25:33 +02:00
Michael Natterer
c5b856f16f Use gimp_display_get_image() instead of display->image 2009-10-06 19:20:44 +02:00
Michael Natterer
bf41a773cb Update the window title and icon when switching between shells 2009-10-06 10:56:46 +02:00
Michael Natterer
d0a614093e Default to GIMP_NAME for the "title" property 2009-10-06 10:56:10 +02:00
Michael Natterer
23cd244c65 Make display->instance private, add an accessor and use it everywhere 2009-10-06 09:16:46 +02:00
Michael Natterer
5d70d60927 Move the display ID to the private struct 2009-10-05 20:10:00 +02:00
Michael Natterer
c339125d7d Add private struct and move "shell" and "update_areas" there 2009-10-05 20:06:13 +02:00
Michael Natterer
d1ded0617f More gimp_display_get_shell() instead of display->shell 2009-10-05 19:58:03 +02:00
Michael Natterer
297d205269 Use gimp_display_get_shell() also in gimpdisplay.c 2009-10-05 19:27:04 +02:00
Michael Natterer
161f1346db Create the new display ID in set_property() not in gimp_display_new()
Make the ID a read-only property and set it when the "gimp"
construct-only property gets set. Removes code from gimp_display_new()
where it doesn't belong.
2009-10-04 22:00:04 +02:00
Michael Natterer
7d878f6f4b Use the GimpDisplayConfig from GimpDisplay where possible
...instead of going via display->gimp and casting.
2009-10-04 20:22:06 +02:00
Michael Natterer
ac98c2c234 Use gimp_display_get_shell() instead of directly accessing it 2009-10-04 19:56:39 +02:00
Michael Natterer
18cbe3422e Add getters for "gimp", "image" and "shell" 2009-10-04 19:39:22 +02:00
Michael Natterer
4a0b826493 (gimp_display_new): add a local "shell" variable for more readable code 2009-10-04 19:30:32 +02:00
Michael Natterer
31a41c2b3d Use gimp_display_shell_present() instead of gtk_window_present() 2009-10-04 19:27:58 +02:00
Michael Natterer
94dcbe0e2e Add new function gimp_display_shell_present()
Not only presents the shell's toplevel, but also makes it the active
shell in the image window.
2009-10-04 19:24:55 +02:00
Michael Natterer
dee0afed79 Move the statusbar back to GimpDisplayShell
Keeping it in GimpImageWindow was a bad idea because
- it wasted space
- it produced evil code because
- it conceptually didn't belong there
2009-10-04 15:33:03 +02:00
Martin Nordholts
d8392b8c52 app: Don't resize the left dock area when the image window is resized 2009-10-04 13:51:47 +02:00
Martin Nordholts
8fd011e75e app: Make right dock column not resize when adjusting left pane 2009-10-04 11:27:46 +02:00
Martin Nordholts
d3435b14e6 app: Put docks in the image window in single-window mode in panes 2009-10-04 11:13:05 +02:00
Martin Nordholts
d1958a5103 app: Add GimpDockColumns to the left and right of a GimpImageWindow 2009-10-04 02:10:11 +02:00
Martin Nordholts
301e5c2c34 app: Maintain a list of GimpImageWindow:s on an app instance level 2009-10-04 02:10:11 +02:00
Michael Natterer
750c11f001 Move the display render buf size #defines to gimpdisplayshell-render.h 2009-10-03 00:15:04 +02:00
Michael Natterer
1a7c67bc05 Remove duplicate #define GIMP_DISPLAY_RENDER_BUF_WIDTH 256 2009-10-03 00:11:34 +02:00
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
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
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