Improve anchor selection inside the Modify Annotation panel + other suggestions

I am struggling a bit with the Modify Annotation panel and have some improvements which would make my (and hopefully many other people's) workflow easier. Before I start I would like to say that I mostly use the default behavior; I only usually change the frame to 'none', background to 'transparent' and change the anchor to a different position. I make great use of the anchor, as I like to have my annotations aligned and scale properly when I change the graph size. Changing the anchor in a consistent manner when things have to go quick is a real pain. The default is 'middle center' with x, y set to 5. This is almost never the right position for me, so I change it (if I remember at the time of creating the annotation). Now, if the setting was wrong the first time, I need to go back to the panel, click the Position tab, read the description of the anchor and choose the one I actually want (I need surprisingly good concentration for this) and finally set the x and y offsets back to 5 (since they change with changing the anchor, of course). Here are my suggestions to improve this:

- Have 9 check boxes / buttons to select the anchor, positioned in a way which immediately shows their effect (see attached sketch) instead of the drop-down list.

- Have a button to 'reset X/Y to default' which resets the offsets to 5 or whatever the user chooses as default.

- Introduce a right click menu for the annotation to change its style (e.g. quickly toggle the frame style etc.) and cast the position to a new anchor quickly (i.e., selecting 'right-top' in this quick menu send the annotation into the default top-right corner)

As a side note, I think the Modify dialogues in Igor have too many tabs which often make them a clickfest. While I don't anticipate that changes will be made here, I just have some more suggestions: I think it would be easy to merge the Frame and Symbols tabs into one (just call this tabs 'Style' or even 'Frame/Symbols' would go). Also, I am generally in favor of presenting check boxes instead of a popup dialog for 2 (or maybe even 3) options. The Position Fixed/Moveable setting comes to mind here. This reduces the number of clicks and presents the options right away. Much easier to work with.

 

sketch of a 9 position selection

- Have 9 check boxes / buttons to select the anchor, positioned in a way which immediately shows their effect (see attached sketch) instead of the drop-down list.

Something like this? 

One concern with this approach is that it makes it more difficult to use the dialog from the keyboard, as this adds 8 additional controls to tab through.

I do agree that it takes a lot of thought to correctly pick an anchor mode. An alternative to this button grid would be to put the same icons in the popup menu next to the corresponding items, like this:

This is much easier to implement in the several places where this popup is used.

 

- Have a button to 'reset X/Y to default' which resets the offsets to 5 or whatever the user chooses as default.

How would the user choose the default?

 

The anchor point selection looks great! I see the point with the increased difficulty for keyboard-only manipulation. Does Qt allow to highlight the whole 9-point selector with one tab press? Then I could image tabbing only once and then selecting the anchor point with the numpad or number keys as a fast operation.

I didn't know the popup was used in several places. Is it possible to have both? I would really be in favor of the 9-point selector inside the Annotation panel. Then the pupup with the symbols included could be used in other places.

How would the user choose the default?

OK, I see the problem here. Instead, how about this: The functionality I want in the end is the possibility to move the annotation to the new edge/side of the graph when selecting a different anchor point, instead of just a recalculation of the X/Y offsets. For example, if the annotation is in the top-left corner with an offset of maybe 10 pt each from the sides, then switching to the Right Top anchor would move the annotation to the right-top corner, but keeping the relative distance to (now the right) sides of again 10 pt.

This is exactly the behavior I get when executing TextBox/C/N=myAnnot/A=NewAchor, i.e., the named annotation flips to the new anchor with the same X/Y offsets. Maybe a checkbox 'Move Annotation with Anchor Point' or 'Keep Relative X/Y Distance' or something would work. A common use case I have is that I flip the bottom axis rather often after setting the graph up. Of course I want to flip sides for the annotation as well. Currently I have to use the command line for this.

In reply to by chozo

chozo wrote:

The anchor point selection looks great! I see the point with the increased difficulty for keyboard-only manipulation. Does Qt allow to highlight the whole 9-point selector with one tab press? Then I could image tabbing only once and then selecting the anchor point with the numpad or number keys as a fast operation.

That should be possible but is a lot more work. I'm also not sure what the best way would be to make it obvious to a user that pressing a number key will activate one of the buttons. Probably putting the number in the button itself, but it may be challenging to get that to look good and not be too large.

chozo wrote:

I didn't know the popup was used in several places. Is it possible to have both? I would really be in favor of the 9-point selector inside the Annotation panel. Then the pupup with the symbols included could be used in other places.

It's currently in the Draw Text, Add Annotation, and Text Markers dialog. The Draw Text dialog is already kind of large, so it might be hard to use the 9 button control there.

 

Rather than numbers for the various anchor points, once the anchor selector is chosen, could the selection of the actual anchor position be triggered by a quick input of the key sequences?

tab to anchor selector + lt --> left top

tab to anchor selector + mc --> middle center