OSDN Git Service

mypaint-anime/master.git
12 years agoversion bump
Martin Renold [Sun, 20 Nov 2011 14:42:06 +0000 (15:42 +0100)]
version bump

12 years agoload_ora: add feedback_cb
Martin Renold [Sun, 20 Nov 2011 14:23:28 +0000 (15:23 +0100)]
load_ora: add feedback_cb

Also, make load_png use the new fast code instead of going
via gdk_pixbuf.

12 years agoload_ora: load png layers faster, use less memory
Martin Renold [Sun, 20 Nov 2011 01:06:15 +0000 (02:06 +0100)]
load_ora: load png layers faster, use less memory

Use libpng directly (fastpng.hpp) as we already did for saving.
No longer load the full png into a gdk_pixbuf, but load and
convert one tile row at a time.

This should use less temporary memory, especially if lots of
tiles are empty, because we can free them again early.

This should fix https://gna.org/bugs/index.php?17568

Also remove code to recognize solid backgrounds (because it expects
the png to be in a gdk_pixbuf). Rely on the background_tile attribute
instead.

load_ora benchmark: 2.75 --> 2.08

12 years agoSpanish translation updated
Manuel Quiñones [Sun, 20 Nov 2011 03:41:01 +0000 (00:41 -0300)]
Spanish translation updated

Signed-off-by: Manuel Quiñones <manuq@laptop.org>
12 years agofix compiler warning
Martin Renold [Sat, 19 Nov 2011 17:56:30 +0000 (18:56 +0100)]
fix compiler warning

only seen with scons debug=1

12 years agosave_png: don't append an additional info block
Martin Renold [Sat, 19 Nov 2011 17:51:01 +0000 (18:51 +0100)]
save_png: don't append an additional info block

Bugfix, but I doubt that anyone would ever have noticed.

12 years agoalways allow to cancel eraser mode
Martin Renold [Fri, 18 Nov 2011 23:27:13 +0000 (00:27 +0100)]
always allow to cancel eraser mode

Fix for https://gna.org/bugs/index.php?18616

And a similar problem fixed by this commit:
<liquidApe> in trunk - draw some, press 'e' to go into eraser mode, then
flip pen over and erase some, then flip pen back over, it will flip back
into the 'e' eraser. Press 'e' again to toggle out of eraser mode and
note you can't get out of eraser mode

12 years agoupdated Hungarian translation
Gergely Aradszki [Fri, 18 Nov 2011 08:20:01 +0000 (09:20 +0100)]
updated Hungarian translation

12 years agoupdated pt_BR translation
Joao S. O. Bueno [Fri, 18 Nov 2011 08:17:17 +0000 (09:17 +0100)]
updated pt_BR translation

12 years agoUpdated Russian translation for 1.0. Most work is done.
Alexandre Prokoudine [Thu, 17 Nov 2011 12:22:06 +0000 (16:22 +0400)]
Updated Russian translation for 1.0. Most work is done.

12 years agocosmetic: fix separators drawing at ends
Andrew Chadwick [Wed, 16 Nov 2011 17:42:20 +0000 (17:42 +0000)]
cosmetic: fix separators drawing at ends

Fix separator drawing at the ends ofthe toolbar under some
circumstances. We don't really need the fussy little dividing lines, so
set all separators to not draw.

12 years agotoolbar: minor cosmetic tweaks
Andrew Chadwick [Tue, 15 Nov 2011 22:33:58 +0000 (22:33 +0000)]
toolbar: minor cosmetic tweaks

Put the menu button inside the toolbar and remove its normal-state
border. It looks far better, and works with most themes now, after some
judicious rc_parse_string() persuasion. Some default focus tweaks to
make things look a little neater on opening. Ctrl[+Shift]+Tab now works
along the toolbar, FWIW.

12 years agoUpdated nn-NO translation for version 1.0
Tor Egil Hoftun Kvæstad [Tue, 15 Nov 2011 19:29:13 +0000 (20:29 +0100)]
Updated nn-NO translation for version 1.0

Updated the Norwegian Nynorsk translation for version 1.0

12 years agobrush collection tuning
Martin Renold [Sun, 13 Nov 2011 22:35:56 +0000 (23:35 +0100)]
brush collection tuning

Mostly just enabling anti-aliasing for brushes where it does not matter.
(This is to have better defaults to start tuning.)
Also, retuning of some ink brushes that were not updated recently, using
anti-aliasing, and in some rare cases, increasing opaque_linearize.

see eg. http://forum.intilinux.com/mypaint-help-and-tips/less-%27wet%27-smudge/

12 years agomypaintlib: Use SharedLibrary instead of LoadableModule in build
Jon Nordby [Sun, 13 Nov 2011 21:41:20 +0000 (22:41 +0100)]
mypaintlib: Use SharedLibrary instead of LoadableModule in build

On OSX LoadableModule will try to create a module bundle,
which is not what we want. The SHLIBSUFFIX was also ignored,
so produced file had the wrong file extension.

12 years agobrushsettings: keep 'anti_aliasing' disabled for old brushes
Martin Renold [Sun, 13 Nov 2011 21:25:43 +0000 (22:25 +0100)]
brushsettings: keep 'anti_aliasing' disabled for old brushes

Let's take .myb compatibility a bit more serious, as this one
can change a few existing brushes to the worse.
http://forum.intilinux.com/mypaint-development-and-suggestions/windows-git-version-gives-problem-with-fast-stroking%28opacity-goes-to-zero-%29/

12 years agofix "save scrap" bug
Martin Renold [Sun, 13 Nov 2011 21:13:02 +0000 (22:13 +0100)]
fix "save scrap" bug

Fix exception after 26 revisions (letter z).
https://gna.org/bugs/index.php?18720

12 years agoUpdate Norwegian Bokmål translation
Jon Nordby [Fri, 11 Nov 2011 21:04:45 +0000 (22:04 +0100)]
Update Norwegian Bokmål translation

12 years agobrush.preview is always a valid pixbuf
Martin Renold [Sun, 13 Nov 2011 19:05:05 +0000 (20:05 +0100)]
brush.preview is always a valid pixbuf

Turn ManagedBrush.preview into a property, so we can load
the preview on demand transparently.  Remove many lines of
"if not preview: load_preview()".

Fix for https://gna.org/bugs/index.php?18994

12 years agoUpdated the Swedish translation.
Griatch [Sat, 12 Nov 2011 13:24:10 +0000 (14:24 +0100)]
Updated the Swedish translation.

Conflicts:

po/sv.po

12 years agoupdate default startup group
Martin Renold [Sun, 13 Nov 2011 16:06:38 +0000 (17:06 +0100)]
update default startup group

12 years agoupdate all .po files
Martin Renold [Thu, 10 Nov 2011 21:59:27 +0000 (22:59 +0100)]
update all .po files

12 years agomore helpful error message when icons are missing
Martin Renold [Sun, 6 Nov 2011 12:06:21 +0000 (13:06 +0100)]
more helpful error message when icons are missing

12 years agobrushmodifier: remove dead code
Martin Renold [Sun, 6 Nov 2011 10:50:23 +0000 (11:50 +0100)]
brushmodifier: remove dead code

12 years agofix "copy to clipboard"
Martin Renold [Sun, 6 Nov 2011 08:34:04 +0000 (09:34 +0100)]
fix "copy to clipboard"

https://gna.org/bugs/?18936

12 years agobrushes: update of deevad brushset
David Revoy [Sat, 5 Nov 2011 19:15:19 +0000 (20:15 +0100)]
brushes: update of deevad brushset

Mainly little improvement here and there to make them react better,
have more linear pressure behavior, more predictible effect, or
just correction of some glitch happening sometimes with (newer?)
antialiasing and hardness. Also, I did 4 or 5 removal and sort them
a little bit differently.

Normaly, if I did well my job , most user will not see any
difference, but tools will be better for their artworks...
I changed license of the brush pack to "public domain" ( to avoid
problems with pick context, and derivative brush pack )
I didn't labelled icons with text, because most of the brush icons
visual are pretty obvious imo, and label are not adapted to each
langage ; I'm happy to have Asian user of my preset.

12 years agotablet detection: workaround for laptop touchpad
Martin Renold [Sat, 5 Nov 2011 18:26:30 +0000 (19:26 +0100)]
tablet detection: workaround for laptop touchpad

Don't enable pressure if the device is called "touchpad".
Gtk+ screws up if we do.

12 years agorename default brush groups
Martin Renold [Wed, 2 Nov 2011 20:10:12 +0000 (21:10 +0100)]
rename default brush groups

Don't use artist's name, use neutral "set#1", "set#2", etc. as
proposed on the mailing list.

12 years agomenu: download brushes (in web browser)
Martin Renold [Sun, 30 Oct 2011 20:28:52 +0000 (21:28 +0100)]
menu: download brushes (in web browser)

12 years agowindows: swap button2/3 default binding
Martin Renold [Sun, 30 Oct 2011 16:27:29 +0000 (17:27 +0100)]
windows: swap button2/3 default binding

The linux wacom driver inverts the button numbers of the
pen flip button. Let's not have the color history on the
button that is commonly hit by accident (on wacom tablets).

12 years agoupdate Indonesian translation
Tumagonx [Sun, 30 Oct 2011 15:46:12 +0000 (16:46 +0100)]
update Indonesian translation

12 years agofix unittest
Martin Renold [Fri, 28 Oct 2011 17:48:48 +0000 (19:48 +0200)]
fix unittest

My previous commit did change the stroke of the testing brush
used for performance measurement. The color differences are below
3 levels of 256 which is not visible by the naked eye :-)

12 years agobrushlib: fix bug with smudge_length=0
Martin Renold [Fri, 28 Oct 2011 17:25:17 +0000 (19:25 +0200)]
brushlib: fix bug with smudge_length=0

For brushes with smudge_length=0 (eg. in Ramon's concept art brushset)
smudging was broken by my optimization 5dd46ce. For performance reasons
we force smudge_length to be greater than 0.01 now.

Ramon's concept art brushset uses a tiny smudge radius, so neither
this commit nor my previous one affects their performance.

Reminder to brush creators: increasing smudge_length does improve
brush performance with the new code. Instead of using a tiny
smudge radius (which can result in faster-than-expected smudge
color changes) you can use a normal smudge radius and increase
smudge_length instead to get performance.

12 years agoupdate README about icon path
Martin Renold [Thu, 27 Oct 2011 20:07:39 +0000 (22:07 +0200)]
update README about icon path

According to:
http://forum.intilinux.com/mypaint-development-and-suggestions/icons-problem-with-install-to-usrlocal-fixed

12 years agoadd back original v0.6.0 "wash" colorchanger
Martin Renold [Sun, 23 Oct 2011 19:50:40 +0000 (21:50 +0200)]
add back original v0.6.0 "wash" colorchanger

The one without the horizontal/vertical stripes.

12 years agoadd back previous color changer
Martin Renold [Sun, 23 Oct 2011 19:17:02 +0000 (21:17 +0200)]
add back previous color changer

Rename current color changer to "crossed bowl".
Add back previous color changer under the name "wash".
Why does everything have to have a name again?

https://gna.org/bugs/?17764

12 years agooptimization for watercolor/smudge brushes
Martin Renold [Sun, 23 Oct 2011 13:21:17 +0000 (15:21 +0200)]
optimization for watercolor/smudge brushes

Watercolor/smudge brushes will profit from this, reducing the number
of get_color() calls. The price is a slightly slower reaction to
color gradients on the canvas, but it's very hard to notice.

brushengine_paint_hires 25% speedup

12 years agofix unittests
Martin Renold [Sun, 23 Oct 2011 10:29:14 +0000 (12:29 +0200)]
fix unittests

related to layer.save_as_png() changes

12 years agobrushes: fix pixel brushes
Martin Renold [Sat, 22 Oct 2011 22:01:02 +0000 (00:01 +0200)]
brushes: fix pixel brushes

disable anti-aliasing for pixel brushes

12 years agobrushlib basic anti-aliasing
Martin Renold [Sat, 22 Oct 2011 21:18:11 +0000 (23:18 +0200)]
brushlib basic anti-aliasing

Automatically adjust the dab hardness to prevent aliasing.

Most current ink brushes use a low hardness to prevent aliasing, and
are only suitable (fine-tuned) for a given resolution. With this new
code, many brushes can now just set hardness to the maximum (1.0).

Some advanced ink brushes make the hardness depend on speed or pressure,
in order to get better anti-aliasing when the radius changes with
speed or pressure. This is no longer needed and should be disabled
to prevent blur.

Anti-aliasing is enabled by default for all brushes. Existing pixel
brushes and erasers that want to erase 100% and not just 99.9% will
have to disable it.

This is not the perfect anti-aliasing implementation of course; thin
strokes (with radius close to 1px and below) tend to disappear because
of the hardness implementation. This is because the math used in the
implementation is correct mainly for large dabs with high hardness.

12 years agoscratchpad: always use white background
Martin Renold [Fri, 21 Oct 2011 17:39:58 +0000 (19:39 +0200)]
scratchpad: always use white background

The problem was that the colors mixed on the scratchpad
look different depending on your background. There was no way
to change the scratchpad background independent of the main
canvas.

https://gna.org/bugs/?18520

12 years agobrushlib: docu
Martin Renold [Fri, 21 Oct 2011 17:23:24 +0000 (19:23 +0200)]
brushlib: docu

12 years agorelease.sh: add .xz format
Martin Renold [Mon, 10 Oct 2011 18:37:41 +0000 (20:37 +0200)]
release.sh: add .xz format

12 years agodocu: brushlib figures
Martin Renold [Sat, 8 Oct 2011 15:21:13 +0000 (17:21 +0200)]
docu: brushlib figures

used for http://wiki.mypaint.info/Brushlib

12 years agotileddrawsurface: Fix a wrongly named attribute, mark_mipmap_dirty
Ariful Bhuiyan [Wed, 5 Oct 2011 21:27:09 +0000 (23:27 +0200)]
tileddrawsurface: Fix a wrongly named attribute, mark_mipmap_dirty

12 years agolayer: minor fix for missing argument
Andrew Chadwick [Tue, 4 Oct 2011 00:58:29 +0000 (01:58 +0100)]
layer: minor fix for missing argument

12 years agoMove stroke_to() implementation into Layer
Jon Nordby [Mon, 3 Oct 2011 22:56:12 +0000 (00:56 +0200)]
Move stroke_to() implementation into Layer

Lets it handle the details as it sees fit.

12 years agoMove COMPOSITE_OPT definitions to lib/layer.py
Jon Nordby [Mon, 3 Oct 2011 19:08:30 +0000 (21:08 +0200)]
Move COMPOSITE_OPT definitions to lib/layer.py

Not tiledsurface specific.

12 years agoMake TiledSurface an internal member of Layer
Jon Nordby [Mon, 3 Oct 2011 18:35:22 +0000 (20:35 +0200)]
Make TiledSurface an internal member of Layer

Most part of the code should not care about
the surface implementation used. Provide wrappers
on layer for common things, and let the exotic
things call layer._surface to make it clear they
are dealing with internals.
In order to make it easier to swap out TiledSurface
with another surface implementation.

12 years agoglade stuff: add README, move launch script
Andrew Chadwick [Sun, 2 Oct 2011 17:34:26 +0000 (18:34 +0100)]
glade stuff: add README, move launch script

Add a README explaining the current status of the emerging Glade support
and what our vague goaals are with it. Move the launch script so that
developers don't trip over it or assume we're using Glade right now.

12 years agoglade: fix missing; wrap hsv-compat & dropdowns
Andrew Chadwick [Mon, 19 Sep 2011 03:47:00 +0000 (04:47 +0100)]
glade: fix missing; wrap hsv-compat & dropdowns

Add missing gui/spinbox.py from last commit: oops.

Separate out HSV compatibility widget and add to the Glade catalogue.

Separate out dropdown panels and wrap that for Glade too. Allow setting
the dropdown panel's content widget to any toplevel non-window GtkWidget
via a property on the dropdown button.

12 years agoglade: separate out & wrap the item-spinbox widget
Andrew Chadwick [Sun, 18 Sep 2011 16:29:54 +0000 (17:29 +0100)]
glade: separate out & wrap the item-spinbox widget

The usual drill, but the slight wrinkle is that because it's a
derivative of a Box subclass, Glade would normall ask for a size each
time it's added. Override the setting and hide it since we always need 3
items exactly and the constructor will do that for us.

12 years agoglade: extract and wrap curve widget
Andrew Chadwick [Sun, 18 Sep 2011 02:19:37 +0000 (03:19 +0100)]
glade: extract and wrap curve widget

Wrap the custom pressure/input curve widget for glade, and move it out
to a separate, independently testable module.

12 years agoelastic: fix resize bug
Andrew Chadwick [Sun, 18 Sep 2011 01:55:05 +0000 (02:55 +0100)]
elastic: fix resize bug

Fix UI clunkiness whereby elastic windows wouldn't shrink again if their
elastic expanders had been triggered once.

12 years agoglade: wrap concrete elastic container/content
Andrew Chadwick [Sat, 17 Sep 2011 00:25:17 +0000 (01:25 +0100)]
glade: wrap concrete elastic container/content

Factor elastic containers and components out to their own module and add
a trivial ElasticWindow that can be built on later. Add the concrete
classes we have to the glade library, though it's mostly the expander /
window relationship we really care about.

12 years agoglade: wrap pixbuflist for glade
Andrew Chadwick [Fri, 16 Sep 2011 16:45:25 +0000 (17:45 +0100)]
glade: wrap pixbuflist for glade

I'd prefer we move to GtkIconView, but wrapping our own version is
trivial. Icons are from Glade and tweaked for a slightly different
appearance.

12 years agoglade: tileddrawwidget support for glade projects
Andrew Chadwick [Fri, 16 Sep 2011 04:02:45 +0000 (05:02 +0100)]
glade: tileddrawwidget support for glade projects

The TiledDrawWidget is a fairly simple canvas, so nothing much needs to
be changed to support using it within glade projects. It has a slightly
dubious need to refer to a zoom quality setting, and a standalone model
needs to be wired in to support drawing within glade (very minimally :)
but that's about it.

12 years agoglade dev infrastructure, no widgets yet
Andrew Chadwick [Fri, 16 Sep 2011 04:01:06 +0000 (05:01 +0100)]
glade dev infrastructure, no widgets yet

Includes a script for running Glade using the local widget catalog.

12 years agobrush settings dropdown: clarify reset language
Andrew Chadwick [Fri, 30 Sep 2011 16:02:37 +0000 (17:02 +0100)]
brush settings dropdown: clarify reset language

Make the setting reset terminology clearer, explain in terms of "this
brush" and "saved values", "saved settings".

https://gna.org/bugs/?18762

12 years agotoolbar: LnF tweaks, add an arrow
Andrew Chadwick [Thu, 29 Sep 2011 21:32:23 +0000 (22:32 +0100)]
toolbar: LnF tweaks, add an arrow

Make the dropdown main menu button's function a little more obvious. No
longer accept focus or the default since it makes the button rather
glaring in some themes, and there's always the menu key. Reduce font
weight; PANGO_WEIGHT_HEAVY is too chunky.

12 years agodoc: fix a hardcoded composite op name
Andrew Chadwick [Thu, 29 Sep 2011 14:35:18 +0000 (15:35 +0100)]
doc: fix a hardcoded composite op name

The name was also incompatible with the ORA spec. Didn't see it in
testing because we're tolerant about unrecognised input. Oops.

12 years agoprefs: make undo and redo bindable to buttons
Andrew Chadwick [Mon, 26 Sep 2011 16:50:10 +0000 (17:50 +0100)]
prefs: make undo and redo bindable to buttons

Simple enough wishlist item; https://gna.org/bugs/?18741

12 years agodropdowns: remove assertion
Andrew Chadwick [Mon, 26 Sep 2011 16:48:12 +0000 (17:48 +0100)]
dropdowns: remove assertion

Remove an assertion that breaks Ubuntu Lucid's version of PyGTK. It's
not really needed anyway.

https://gna.org/bugs/?18735

12 years agocredits update
Andrew Chadwick [Sat, 24 Sep 2011 19:32:08 +0000 (20:32 +0100)]
credits update

Add sigetch to the about box's credits list.

12 years agolayer modes: remove redundant CLAMP, add regression test
Martin Renold [Sat, 24 Sep 2011 15:53:51 +0000 (17:53 +0200)]
layer modes: remove redundant CLAMP, add regression test

Add a regression test that checks some corner cases of all
layer modes to make sure the result is within a valid range.

Revert the introduction of CLAMP in the "over" blending mode,
it is not necessary and will only hide previous errors and
hurt performance slightly.

12 years agotiledsurface: remove some code duplication
Andrew Chadwick [Fri, 23 Sep 2011 22:18:42 +0000 (23:18 +0100)]
tiledsurface: remove some code duplication

12 years agocomposite ops: fixups and gui stuff
Andrew Chadwick [Fri, 23 Sep 2011 20:18:34 +0000 (21:18 +0100)]
composite ops: fixups and gui stuff

Declare supported composite ops in a single place and make their display
names translatable.

More validity checks, and establish sane behaviour if we try to load a
mode we don't understand.

Docstring fixups.

12 years agolayer compositing: give set-op cmd a display name
sigetch [Thu, 22 Sep 2011 15:01:25 +0000 (00:01 +0900)]
layer compositing: give set-op cmd a display name

Add display_name for SetLayerCompositeOp command.

12 years agolayer compositing: op naming: use "svg:src-over"
sigetch [Wed, 21 Sep 2011 12:16:56 +0000 (21:16 +0900)]
layer compositing: op naming: use "svg:src-over"

Change composite-op attribution of normal mode from "svg:over" to
"svg:src-over".

12 years agolayer compositing: bugfix
sigetch [Wed, 21 Sep 2011 11:35:22 +0000 (20:35 +0900)]
layer compositing: bugfix

Bugfix: implement layer composition properly. Now each layer data is
treated as premultiplied pixel data.

12 years agolayer compositing: svg op naming, rgba-on-rgba
sigetch [Mon, 19 Sep 2011 15:56:31 +0000 (00:56 +0900)]
layer compositing: svg op naming, rgba-on-rgba

Change composite-op name to be compatible with SVG spec. name.

Initial import of layer composition for RGBA x RGBA operation (some are
not implemented properly.)

12 years agolayer compositing: add dodge
sigetch [Sat, 10 Sep 2011 16:59:35 +0000 (01:59 +0900)]
layer compositing: add dodge

Color-dodge operation is implemented.

12 years agolayer compositing: fix exception in burn op
sigetch [Wed, 7 Sep 2011 22:31:34 +0000 (07:31 +0900)]
layer compositing: fix exception in burn op

Fix a bug of burn operation implementation which causes floating exception.

12 years agolayer composite ops: initial implementation
sigetch [Wed, 7 Sep 2011 03:11:00 +0000 (12:11 +0900)]
layer composite ops: initial implementation

Initial implementation of layer composite-ops. Color-dodge is not
implemented yet.

12 years agozooming updates: add an extra zoom level
sigetch [Fri, 23 Sep 2011 17:38:49 +0000 (18:38 +0100)]
zooming updates: add an extra zoom level

* 1/16 and 16 zoom level is added.
* Mipmap level is changed to 4.

(Amended to remove patch for ending undo stack strokes at the end of
input strokes -- achadwick)

12 years agodropdowns: behavioural fixes for tablets
Andrew Chadwick [Sat, 24 Sep 2011 14:06:29 +0000 (15:06 +0100)]
dropdowns: behavioural fixes for tablets

Extended input events (tablet) may be reported outside the widget's
allocation even if non-extended ones (mouse) would not. This was
interfering badle with other widgets in the same dropdown window as the
brush list, so don't ask for extended events where it isn't really
needed, and refine the PixbufList hit tests a bit.

Fix accidental dabbing when using the brush selector dropdown by closing
the panel after the mouse button or stylus nib is released, not when
pressed down. The problem is more apparent with tablets than mice since
it's harder to separate clicks from clicks-with-motion.

Adjusting the dropdown brush setting sliders now causes the dropdown
panel to close when the pointer leaves it, like the colour triangle's
pattern of interaction.

12 years agowhen clearing the last layer, don't reset the filename
Martin Renold [Sat, 24 Sep 2011 12:10:21 +0000 (14:10 +0200)]
when clearing the last layer, don't reset the filename

https://gna.org/bugs/?18545

12 years agoundo: decrease minimum stroke duration slightly
Martin Renold [Sat, 24 Sep 2011 00:08:35 +0000 (02:08 +0200)]
undo: decrease minimum stroke duration slightly

User feedback indicates that we tend to make too few splits.

12 years agoupdated german translation
Till Hartmann [Thu, 22 Sep 2011 12:56:14 +0000 (14:56 +0200)]
updated german translation

12 years agodropdowns: less flickery initial placement
Andrew Chadwick [Thu, 22 Sep 2011 02:26:41 +0000 (03:26 +0100)]
dropdowns: less flickery initial placement

Try to fix dropdown panels flickering briefly at (0, 0) before they're
moved to their intended locations. Hopefully this won't reintroduce the
inconsistencies mentioned in 8434621.

12 years agofix loading strokemap brushes w/ unknown parents
Andrew Chadwick [Wed, 21 Sep 2011 00:21:48 +0000 (01:21 +0100)]
fix loading strokemap brushes w/ unknown parents

Fix for a pair of related exceptions raised when trying to load toolbar
previews for brushes whose parent is no longer on disk.

This can happen when loading old files or files from other people whose
strokemaps contain brush settings whose stored parent name is no longer
in the user's collection.

12 years agoundo/redo: smart menu items and toolitems
Andrew Chadwick [Tue, 20 Sep 2011 19:12:35 +0000 (20:12 +0100)]
undo/redo: smart menu items and toolitems

Explain what's going to happen if you select Undo or Redo by updating
the action texts. "Painting" is admittedly pretty lame; it'd be nicer
still to give a count of input brushstrokes in each un/redoable combined
Stroke action, or a number of seconds of painting.

12 years agofullscreen: update action toggled
Andrew Chadwick [Tue, 20 Sep 2011 18:45:00 +0000 (19:45 +0100)]
fullscreen: update action toggled

Display more meaningful texts and icons when the Fullscreen action is
toggled.

12 years agotoolbar: menu for selecting which tools are wanted
Andrew Chadwick [Tue, 20 Sep 2011 18:13:19 +0000 (19:13 +0100)]
toolbar: menu for selecting which tools are wanted

Add a right-mouse-button menu on the toolbar for choosing which sets of
tools are required. Settings are saved in the preferences.

Reinstate blend modes on the toolbar (and the "cute pink eraser" icon
:-) for those who want them. They're off by default.

Add buttons for scrapbook saving and Prev/Next Scrap to the toolbar,
switched off by default. Interim icons for Save/Prev/Next Scrap. They're
from stock, and could probably be improved.

Trying fullscreen/unfullscreen on the top-right. It feels like a nice
place to put things that make major but reversible changes to the gui,
and it's a nice Fitts's-compliant use of the space.

No togglability for the dropdowns yet, given the fiddly setup
post-construction.

12 years agoreadme: explain install-prefix's role better
Andrew Chadwick [Wed, 14 Sep 2011 20:33:53 +0000 (21:33 +0100)]
readme: explain install-prefix's role better

Explain the constraints on --install-prefix more clearly, and supply a
workaround for packagers doing strange things.

12 years agotoolbar: convert colour dropdown menu to panel
Andrew Chadwick [Tue, 13 Sep 2011 22:24:28 +0000 (23:24 +0100)]
toolbar: convert colour dropdown menu to panel

The colour toolbar item is now a dropdown panel like the two nearby
entries. It now offers a GTK colour triangle directly rather than via a
dialog. The colour history, a monopixel eye dropper and the two colour
changer floating subwindows are available too.

Using a colour triangle may be temporary: would a palette plus an
optional colour triangle foldout work just as well? Palettes are
faster...

12 years agowidgets: general borderless & thinborder styles
Andrew Chadwick [Tue, 13 Sep 2011 22:22:05 +0000 (23:22 +0100)]
widgets: general borderless & thinborder styles

Use wildcards for the names of styled widgets (since each widget should
almost certainly have a unique name). Fix appearance bug with the the
borderless style and consider it general, and add a hairline border
style wildcard too.

12 years agodrawwindow: add action for colour details dialog
Andrew Chadwick [Tue, 13 Sep 2011 22:18:35 +0000 (23:18 +0100)]
drawwindow: add action for colour details dialog

Expose the colour details dialog as a gtk.Action. No menu entry for it
yet, since it's quite a bulky and flow-breaking dialog, but this allows
it to be parked on panel buttons in a simple way.

12 years agocolorselection(window): neaten ransacking hack
Andrew Chadwick [Tue, 13 Sep 2011 22:09:02 +0000 (23:09 +0100)]
colorselection(window): neaten ransacking hack

Wrap the "compatible" HSV widget specially so that it can be used a
little more neatly from multiple places.

12 years agodropdown panels: behaviour/appearance improvements
Andrew Chadwick [Tue, 13 Sep 2011 21:58:12 +0000 (22:58 +0100)]
dropdown panels: behaviour/appearance improvements

Tweaks to panel behaviour and button appearance.

* More padding to the left of the button icon. Evens things up a bit.
* Keyboard grab to prevent workspace switching with keys (more like a menu)
* (Related) close panel by pressing Escape.
* Fix inconsistent initial placement bug visible in Ubuntu 10.10-
* Improve multi-head positioning of the dropped panel.

12 years agofrench translation update
Ferry Jérémie [Sun, 11 Sep 2011 16:01:17 +0000 (18:01 +0200)]
french translation update

12 years agoduplicate layer button
Ferry Jérémie [Sun, 11 Sep 2011 16:01:17 +0000 (18:01 +0200)]
duplicate layer button

12 years agotoolbar: quick brush chooser on dropdown & default
Andrew Chadwick [Sun, 11 Sep 2011 19:02:25 +0000 (20:02 +0100)]
toolbar: quick brush chooser on dropdown & default

The quick brush chooser is now exposed on the panel directly as part of
a new dropdown panel. The brush dropdown button is no longer in two
parts: testing showed that people didn't really understand the reason
for having it in two bits, so let's simplify it.

Convert the quick brush chooser's brush list combobox to a custom
spinner-like widget; done for pointer grab related reasons in the
dropdown. Hopefully it's a fairly understandable control and easy to hit
with a stylus.

Expose the brush chooser as an Action, and make it the primary method of
choosing a brush; the default binding for "b". This is intended to bring
it closer in feel to a popup chooser like those for colour, which makes
sense to me since its functionality is beginning to approach that of a
popup menu (and we should probably go further).

The existing Brush List has moved to "<shift>b" by default and is
renamed to "Brush List Editor": you can still use it as as a permanent
fixture for choosing brushes though. Rename the settings editor for
consistency too, but don't change its default "<control>b" binding.

Testers were complaining about the height of the toolbar, so drop it back
to the usual GTK_ICON_SIZE_LARGE_TOOLBAR size. The new graphical
tooltips should help make the brush preview useful.

12 years agotoolbar: image tooltips for brush previews
Andrew Chadwick [Sun, 11 Sep 2011 17:58:45 +0000 (18:58 +0100)]
toolbar: image tooltips for brush previews

Show big images in tooltips for brush previews in the toolbar.
Abstract out getting a sensible display name for a ManagedBrush.

12 years agobrush manager: abstract out getting parent brush
Andrew Chadwick [Sun, 11 Sep 2011 17:47:05 +0000 (18:47 +0100)]
brush manager: abstract out getting parent brush

Rather than requiring other modules to fumble around with parent brush
names, export a method for getting a fully initialized parent based on a
BrushInfo or ManagedBrush object.

We should really do something about the number of repetitions of "load
this MangedBrush if it's on disk and hasn't been loaded yet" that are
becoming increasingly scattered around the code. That may involve
reworking/incorporating the existing reload-if-changed method. Mark as
dubious/XXX for now.

12 years agodropdown panels: minor grab tweaks, many comments
Andrew Chadwick [Tue, 6 Sep 2011 18:03:11 +0000 (19:03 +0100)]
dropdown panels: minor grab tweaks, many comments

Support - to the extent we can - but do not condone use of sub-widgets
in the drop-down panels that pop up their own menus. Explain why it's a
Bad Thing.

12 years agoCorrect a missing rc setting. Seems it is needed.
Andrew Chadwick [Mon, 5 Sep 2011 04:14:19 +0000 (05:14 +0100)]
Correct a missing rc setting. Seems it is needed.

Certain themes look kinda huge without it too.

12 years agotoolbar: add dropdown panel for brush settings
Andrew Chadwick [Mon, 5 Sep 2011 02:33:30 +0000 (03:33 +0100)]
toolbar: add dropdown panel for brush settings

Add a dropdown with sliders for some common brush settings to the
toolbar. Reset buttons, and better access to brush editor and the brush
blend modes too.

12 years agoadd copyright boilerplate, correct a comment
Andrew Chadwick [Mon, 5 Sep 2011 02:36:40 +0000 (03:36 +0100)]
add copyright boilerplate, correct a comment

12 years agoicons: add a blank SVG icon template
Andrew Chadwick [Mon, 5 Sep 2011 02:23:08 +0000 (03:23 +0100)]
icons: add a blank SVG icon template