84d33e4316
app: make image-coords overlay widgets work fine at any zoom factor
...
Add anchor and spacing parameters to the shell overlay API, so
overlays can be positioned on each side of a point in image space,
with configurable spacing in display space.
2010-02-28 14:48:47 +01:00
ff01c2d77e
app: add API to move an existing image-coords overlay around
2010-02-26 01:27:04 +01:00
9b75184442
app: add API to add overlays in image coordinates
...
and update their positions when the shell scrolls and zooms.
2010-02-20 15:15:53 +01:00
ed2d178da3
app: Get rid of config -> display module dependency
...
In order to make a clear separation between the core modules and the
UI modules, move the necessary enums from display-enums.h and
widgets-enums.h to config-enums.h and the files
gimpdisplayoptions.[ch] from the display to the config module. This
removes the config -> display dependency.
This change has three main benefits
* It lets us remove includes of display files from the config module
* We don't have to link gimp-console and test-config with a subset of
object files from the display module
* It is reflected in devel-docs/gimp-module-dependencies.svg that the
application is made up of core modules and UI modules and that no
core module depends on any UI module
2010-02-01 21:56:48 +01:00
8ba9700ddb
Bug 597368 - Widget spacing around canvas steals working space
...
Remove spacing between the canvas and the surrounding widgets so that
that space can be used for the actual canvas itself instead.
2010-01-30 08:59:28 +01:00
7175f3e883
Some more changes to build with GSEAL_ENABLE
...
- use more GTK+ accessors instead of struct members
- remove quite some #undef GSEAL_ENABLE from completely ported files
2010-01-15 15:35:03 +01:00
deed1636f9
Remove all code from gimp_display_shell_new()
...
Move the entire widget construction code to constructor().
2009-11-01 18:18:17 +01:00
439994d994
Clean up gimp_display_shell_init()
...
Only initialize members that don't default to zero. It was simply too
much and soon widgets will be constructed in init().
2009-11-01 14:51:08 +01:00
8780342dcb
Set a 10px border on the canvas so overlays have some spacing
2009-10-18 23:03:04 +02:00
6608d66cde
Build with GSEAL_ENABLE and #undef it where accessors are missing
2009-10-17 19:51:33 +02:00
c83788377a
app: Remove unused includes from gimpdisplayshell.c
2009-10-09 23:04:29 +02:00
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
c5b856f16f
Use gimp_display_get_image() instead of display->image
2009-10-06 19:20:44 +02:00
d0a614093e
Default to GIMP_NAME for the "title" property
2009-10-06 10:56:10 +02:00
d1ded0617f
More gimp_display_get_shell() instead of display->shell
2009-10-05 19:58:03 +02:00
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
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
750c11f001
Move the display render buf size #defines to gimpdisplayshell-render.h
2009-10-03 00:15:04 +02:00
f6fd3aed51
Move GimpDisplayShell's expose functions to separate files
2009-10-02 23:55:26 +02:00
6c46d1ec73
Fix some comment typos and formatting
2009-10-02 23:43:58 +02:00
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
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
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
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
97987aff6e
Add gimp_display_shell_get_window() which returns an image window or NULL
2009-09-28 23:53:05 +02:00
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
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
16038023a5
Remove some dead code and fix some comments
2009-09-28 22:55:53 +02:00
a8876834e8
Move the remaining menubar signal connections from the shell to the window
2009-09-28 22:55:53 +02:00
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
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
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
abc5e270b3
Go via the toplevel to update the image window's ui manager
2009-09-28 22:55:49 +02:00
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
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
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
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
c475b1b3be
Update widget packing ASCII art to not include image window widgets
2009-09-28 22:55:48 +02:00
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
b11c3355cb
Implement GObject::constructor()
...
For now, simply assert that all required construct properties are set.
2009-09-28 22:55:47 +02:00
1ae5632753
Turn "popup-manager" into a construct-only property and pass it accordingly
2009-09-28 22:55:47 +02:00
7b62cb3b00
Turn "display" into a construct-only property and pass it accordingly
2009-09-28 22:55:47 +02:00
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
fdd55d37cb
Move the last window-related NIW code from the shell to the image window
2009-09-28 22:55:46 +02:00
8b5a692099
Remove display_factory member from GimpDisplayShell
2009-09-28 22:55:45 +02:00
9c5e44c566
Move the window part of gimp_display_shell_fill() to GimpImageWindow
2009-09-28 22:55:45 +02:00
4cc8f8e6f8
Move the window part of gimp_display_shell_empty() to GimpImageWindow
2009-09-28 22:55:44 +02:00
8086bc8e68
Pass the display_factory to the image window
2009-09-28 22:55:43 +02:00
ac254f293d
Don't use the menubar_manager to set the quickmask toggle's tooltip
2009-09-28 22:55:42 +02:00
571cdd47ed
Set the window role and "resizable" on GimpImageWindow, not on the shell
2009-09-28 22:55:40 +02:00