[Libreoffice-ux-advise] Re-sizing handles ...

Michael Meeks michael.meeks at suse.com
Mon Nov 7 03:09:44 PST 2011


Hi Astron,

On Sun, 2011-11-06 at 00:45 +0100, Astron wrote:
> So, I've been working tirelessly (enough hyperbole for now) to create
> new handles. Attached are a screenshot and modified versions of
> markers.png, cropmarkers.png [0].

	Wow - looks lovely :-) really great to see it prettier.

>  They are still work in progress and I am not 100 percent sure
> all handles in use are covered.

	I think we should leave the handles that we're not certain about in
their original position and/or do some code auditing to find / consider
where they are used. The good news is that Tim (a new SUSE intern on
LibreOffice) is looking into this code right now - after doing some
cleanup to remove the duplicate code paths there, hopefully fixing the
horror 1 pixel scaling / redux that mangles your nice pixels ;-)

> ** Make sure to enable "Simple handles" and "Large handles" in all
> applications you want to try (small handles will also work, but will
> look extremely small).

	Heh ;-)

> * There is a 1px translucent white border around most handles, so you
> can easily see them on similarly coloured backgrounds (this sadly
> makes all handles look smaller than they are -- I hope this is not too
> much of a problem)

	Nice.

> * Most handles are themselves translucent, so e.g. when modifying
> curves you can see the nodes through the handles.

	Much cooler :-)

> * The handles use Tango colours (so they should be well integrated
> into our default theme).

	Lovely.

> * There is a little blue cross that appears when moving glue points. I
> have no idea how that can be themed.

	A pain to find as well ;-) in the end I chased it down via:

$ git grep -10 GetGluePointList
svx/source/sdr/contact/viewcontactofsdrobj.cxx-        drawinglayer::primitive2d::Primitive2DSequence ViewContactOfSdrObj::createGluePointPrimitive2DSequence() const
..
                        const basegfx::BColor aBackPen(1.0, 1.0, 1.0);
                        const basegfx::BColor aRGBFrontColor(0.0, 0.0, 1.0); // COL_LIGHTBLUE
                        const drawinglayer::primitive2d::Primitive2DReference xReference(new drawinglayer::primitive2d::MarkerArrayPrimitive2D(
                            aGluepointVector,
                            drawinglayer::primitive2d::createDefaultGluepoint_7x7(aBackPen, aRGBFrontColor)));

	And to some code I never imagined:

http://cgit.freedesktop.org/libreoffice/core/tree/svx/source/sdr/primitive2d/sdrprimitivetools.cxx#n85

	Which draws this baby by ~50 explicit set-pixel calls [ urgh ! ].

	On the way I even found some nice ascii-art (in German) in the tree ;-)

	http://cgit.freedesktop.org/libreoffice/core/tree/svx/source/svdraw/svdmrkv1.cxx#n40
	
> * All handles are resized to (n-1)px * (n-1)px of their nominal size
> for an unknown reason. (Happens with all handles old as much as new.)

	Hopefully Tim will nail this.

>  Feedback very welcome.

	Looks lovely; I'm tempted to push the crop images immediately (into
tango right?) - though we prefer everything under MPL/LGPLv3+ I think
(if we can get it). The other handles would prolly require the legacy
pixels being retained & overlayed just in case of problems - but we can
get those in soon too; feature freeze coming Dec 5th so ... ;-)

	For the Anchor images - at least, in writer the anchor is almost a
cursor (on the left hand side), (nice to have it transparent too BTW),
but perhaps for the other apps, it's more of a top-left point, and/or
showing that semantic might be confusing.

	Anyhow - really encouraging work.

	Thanks !

		Michael.

-- 
michael.meeks at suse.com  <><, Pseudo Engineer, itinerant idiot



More information about the Libreoffice-ux-advise mailing list