Commit graph

27025 commits

Author SHA1 Message Date
Michael Natterer
468ea629a6 app: use image and rect_tool utility functions instead of duplicating them
and some random cleanups
2010-02-18 09:13:27 +01:00
Martin Nordholts
b081d91370 app/tests: Add regression test for hide/show of dock windows
Add regression test for hide/show of dock windows that makes sure that
dock window positions are kept after a hide/show cycle. Also introduce
a helper function gimp_ui_find_non_toolbox_dock_window().
2010-02-18 07:25:07 +01:00
Martin Nordholts
45efd84079 Bug 608834 - Toolbox and docks move on desktop change
Make sure that after we have set GTK_WIN_POS_MOUSE on a dialog created
with the dialog factory, it is eventually reset. Also remove the only
occurance of the DEBUG_FACTORY define.
2010-02-18 07:25:07 +01:00
Michael Natterer
838f2d567d app: cleanup 2010-02-17 21:39:33 +01:00
Michael Natterer
8f27ec48c6 app: split the text editor code out to a separate file 2010-02-17 21:24:09 +01:00
Martin Nordholts
50ef39a01f app: Make gimpgegltool.c compile 2010-02-17 20:45:20 +01:00
Michael Natterer
31659758d1 app: do the setting of the text box mode properly
- remove the button again.
- add a "box-mode" property to GimpTextOptions and a combo box.
- let the normal options -> proxy -> text mechanism do the setting.
- make sure we update the rectangle in some more situations.
- add utility function gimp_text_tool_frame_item().
2010-02-17 20:28:13 +01:00
Michael Natterer
919471c285 app: register descriptions for the GimpTextBoxMode enum 2010-02-17 20:28:13 +01:00
Michael Natterer
d28ed195a3 app: make the "Dynamic Text Box" button insensitive by default 2010-02-17 20:28:13 +01:00
Sven Neumann
91bc46f815 devel-docs: milestones are also used to track resolved bugs 2010-02-17 19:23:47 +01:00
Sven Neumann
dbae9c58a0 Bug 610282 - GEGL Operation tool's help-id
Assign a help ID to the GEGL tool.
2010-02-17 19:23:10 +01:00
Martin Nordholts
0f275bfdc9 plug-ins: Don't initialize va_list to NULL, it's not portable 2010-02-17 19:10:24 +01:00
Michael Natterer
2dc577d606 app: clean up the text options notify callback 2010-02-17 16:05:45 +01:00
Michael Natterer
8574f4c4e8 app: allow to set the text layer back to dynamic resizing
Add a "Dynamic Text Box" button to the tool options which sets the
text box' mode back to dynamically resizing with the text.  This badly
needs UI review but is at least possible now.
2010-02-17 15:50:03 +01:00
Michael Natterer
9974fe36d1 app: improve cursor movement by positions when there is a selection
Port over the patch I did for GtkTextView and move *to* the end of the
selection and not *from* it when there is a selection and we are
moving by characters.
2010-02-17 13:17:46 +01:00
Michael Natterer
3efd20de77 app: move gimp_text_tool_set_layer() to the public functions 2010-02-17 13:08:53 +01:00
Michael Natterer
dd1ec8ff9d app: rename editor related functions
so the on-canvas editor's functions are just called "editor" because
it's the default and the dialog's functions are called "editor_dialog".
2010-02-17 12:03:18 +01:00
Michael Natterer
94d9dca2a3 app: more text tool fixes
- bail out and don't warn like crazy in draw() when there is no text.
- fix crash in button_press() when clicking a modified text layer
  bring up the confirm dialog and thus didn't set text_tool->text.
- pull setting the right text on text_tool->text_buffer into
  gimp_text_tool_canvas_editor() (fixes editing after confirming a
  modified text layer edit).
- add lots of missing calls to gimp_text_tool_set_layer() so the
  tool will actually start editing.
2010-02-17 11:57:32 +01:00
Michael Natterer
1fa6497922 app: don't try to hide a NULL transform dialog 2010-02-17 09:52:15 +01:00
Martin Nordholts
5a11453465 devel-docs: Add bugzilla-milestones.txt
Add bugzilla-milestones.txt that explains how we use the milestone
feature in our bugtracker.
2010-02-17 08:33:41 +01:00
Martin Nordholts
592ac26250 devel-docs: Update 2.8 schedule
Update 2.8 schedule. I had to remove a bunch of things on the 2.8
milestone to get the estimated date down to late december 2010 again.
2010-02-17 08:09:01 +01:00
Michael Natterer
c2a8f51768 app: lots of text tool fixes
- Add gimp_text_tool_halt() to shut down the tool and call it
  from gimp_tool_control(HALT).
- call control(HALT) when escape is pressed to reset the tool
  (can finally switch to other tools again now).
- fix button_press() to handle clicks on already existing
  text layers well.
- also button_press(): fix the condition that sets the previously
  existing text on the canvas editor so we don't end up with weird
  ui states where displayed and internally used text differ.
- remove some redundant code.
2010-02-16 22:48:27 +01:00
Martin Nordholts
66a13cd0d1 Bug 608178 - view->show rules shortcut broken, duplicate keybinding
Ctrl+Shift+R was taken by 'Show Rulers' so change to Ctrl+J and
Ctrl+Shift+J for 'Shrink Wrap' and 'Fit Image in Window' which was the
only sane free combo (Ctrl+K, Ctrl+Shift+K was the other).
2010-02-16 22:33:40 +01:00
Michael Natterer
88e2b1aab3 app: add a focus rectangle to GimpCurveView 2010-02-16 20:08:03 +01:00
Martin Nordholts
ac1baa5374 plug-ins: Change MNG capability from LAYERS_AS_ANIMATION to LAYERS
When NULL is passed as format_name to gimp_export_image(), there is no
dialog where the user can make choices. Having the capability
GIMP_EXPORT_CAN_HANDLE_LAYERS_AS_ANIMATION in this case in practice
means "always merge". So to allow MNG animations, change to just
GIMP_EXPORT_CAN_HANDLE_LAYERS. We don't need to offer merging in the
export options since MNG is a format explicitly for animation, so if
there are enough layers, we'll always export as an animation.

Also set a tooltip explaining why the animation options are disabled
when they are disabled.
2010-02-16 20:02:57 +01:00
Martin Nordholts
7cdd99feac Bug 596427 - Can't export to animated GIF
Add an 'As Animation' toggle to the GIF export options. If checked,
the GIF will be written as an animation. Only enable it on images with
more than on layer though. Add the new GIFSaveVals as_animation member
last so we don't break gimp_get_data() of old data. The fix moves the
GIF options fetching to *before* gimp_export_image(). If as-animation,
we simply pass GIMP_EXPORT_CAN_HANDLE_LAYERS to capabilities so the
layers are kept.
2010-02-16 20:02:57 +01:00
Martin Nordholts
d9862b21c1 plug-ins: Move save_image() code out of options fetching code for GIF
Make the save_image() code out of the options fetching code for GIF to
make this more independent.
2010-02-16 20:02:57 +01:00
Martin Nordholts
c3b2e0e564 devel-docs: Add gtkbuilder-porting-guide.txt
Add guide giving a suggested workflow when porting C UI code to
GtkBuilder UI declaration files.
2010-02-16 20:02:57 +01:00
Martin Nordholts
5c154c17dc plug-ins: Port file-gif-save.c to Glade + GtkBuilder 2010-02-16 20:02:56 +01:00
Martin Nordholts
84b8ec1f5c plug-ins: Minor readability improvement in GIF's save_dialog()
Add an animation_supported boolean to GIF's save_dialog().
2010-02-16 20:02:56 +01:00
Michael Natterer
fdde593fc5 app: enable copy and paste for curves
Add GimpCurve support to the clipboard and handle ctrl-x, ctrl-c and
ctrl-v in GimpCurveView.
2010-02-16 19:58:51 +01:00
Michael Natterer
592fce0f7b app: properly implement GimpData::duplicate() 2010-02-16 19:58:06 +01:00
Michael Natterer
7a1b77fb07 app: gimp_device_info_map_axis(): "value" is a double, not a boolean 2010-02-16 19:29:37 +01:00
Michael Natterer
2a92f57577 app: actually use the device's pressure curve to map the pressure axis
unfortunately i have no way of testing this, so please test...
2010-02-16 13:27:46 +01:00
Michael Natterer
828e4d8452 app: some formatting before real changes happen 2010-02-16 13:05:17 +01:00
Michael Natterer
5af05cce0b app: move the entire get-coords API from GimpDisplayShell to GimpDeviceInfo
because GimpDeviceInfo will soon apply curves to the axes. Also change
everything to speak in terms of GimpDeviceInfo instead of GdkDevice.
2010-02-16 13:00:46 +01:00
Michael Natterer
6932a6d011 app: add gimp_device_info_has_cursor() as replacement for GdkDevice.has_cursor 2010-02-16 12:11:22 +01:00
Jakub Steiner
fb65cc197d Get rid of a backslash I forgot. 2010-02-16 11:14:03 +01:00
Jakub Steiner
0579cb949b infinite ability to forget to add stuff. 2010-02-16 11:00:19 +01:00
Michael Natterer
a10b8421d9 app: select the first axis so the shown curve makes sense 2010-02-16 10:54:53 +01:00
Jakub Steiner
7f2a0b2bd7 update launcher icon. Replace the scalable with a high resolution bitmap (256x256px). Source SVG includes all sizes. 2010-02-16 10:53:40 +01:00
Michael Natterer
1e26dbc22d app: add views for the axes' curves 2010-02-15 23:08:30 +01:00
Michael Natterer
2da0529ef4 app: add a pressure curve
but keep the API general so all axes can have curves.
2010-02-15 23:06:19 +01:00
Michael Natterer
3ff4a910a9 app: implement device removal in gimp_devices_device_removed() 2010-02-15 20:00:26 +01:00
Michael Natterer
0ce37c500e app: allow unplugging devices in GimpDeviceInfo
gimp_device_info_set_device(): support setting the device to NULL
and copy all settings to GimpDeviceInfo when it happens.
2010-02-15 19:58:02 +01:00
Michael Natterer
a023665a5d app: if there is no histogram set in the parent class, draw BG and borders here 2010-02-15 19:27:19 +01:00
Michael Natterer
00b1835f9e app: remove unused private member 2010-02-15 18:24:19 +01:00
Michael Natterer
240dae660d app : keep the axis mapping in a treeview
instead of in an ugly list of menus, so it looks better and can also
be used to select an axis to edit (like editing its curve).
2010-02-15 16:48:21 +01:00
Michael Natterer
f115a0bdfe app: add GimpFrames for axes and keys and remove useless treeview headers 2010-02-15 13:12:26 +01:00
Michael Natterer
55c8c86e49 app: oops, need to disconnect from the device list signals in dispose() 2010-02-15 13:11:58 +01:00