First task

Ok, the first target: smart tangents linking. Generally it is pita to link red tangent to yellow. You should use scale(-1) convert to achieve that. The goal is to make this handled with grace.

I found what even if I implement that, converting tangent to Scale makes it unmoveable. There is no reverse manipulations supported for scale converts. So here’s my plan:

  1. Find a way to make scale convert support reverse manipulations.
  2. Find a way to insert additional converts in special cases at the moment of invoking “Link” command.
  3. Find a way to insert “Link inverse” menu item to context menu.

K, let’s start from the first item. I found no references to reverse manipulations inside of core/src/valuenode_scale.cpp. I’ve started to inspect commit 80031a8a28bb53f89ad750ec94a1b447b419d616.

It seems I will need to add

ValueNode_Scale::Handle::cast_dynamic(value_node)

to synfig-studio/trunk/src/synfigapp/instance.cpp.

Scale convert have two parameters. I need to set which one to change during reverse manipulation. Looks like a hint how to do that is here.

Advertisements

1 Comment »

  1. […] of all, as I planned, I have changed synfig-studio/trunk/src/synfigapp/instance.cpp by adding a […]

RSS feed for comments on this post · TrackBack URI

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: