I’m thinking of complicated content that we don’t interact with frequently. A short note, or a full description, can ensure that data entry is made easy and accurate.
In the following examples I’m using HTML comment markers situated between the full colon label delimiter and the field definition.
Author Info: <!-- 200 word limit, or set class to Long Form --><longtext>
This would display as:
Author Info: 200 word limit, or set class to Long Form
[ data entry area ]
A nice option would be to choose whether the caption is displayed above or below the field. This display option would allow users to get fussy with the layout in a way that pleases them.
For example
Author Info: <!--/below/ 200 word limit, or set class to Long Form --><longtext>
This would display as:
Author Info: [ data entry area ] 200 word limit, or set class to Long Form
Here’s what I’m currently thinking in terms of an implementation.
The “caption” would be specified in the template file by simply entering an exclamation point, followed by the text of the caption, just before the closing right angle bracket that would normally conclude the definition of a field.
For example:
Date: <date ! The due date for an action item >
But then I’m thinking that the “caption” would be made available as a Tooltip on the edit field, such that it would only be displayed when the user hovers over the field.
The disadvantage of tooltips is that they only show up when the user hovers over a field.
The advantages of tooltips are:
They don’t take up any space on the editing tab;
They will appear the same way for any field type, no matter how the editing view appears;
They avoid the complication of figuring out where to put the text (above, below, or within);
They can be easily and consistently implemented for all field types.
I can see that a frequently used collection with captions would mean that we read the captions many more times than we want to and they take up display space.
How about an icon/button signalling that the collection contains captions and use that to toggle on/off the display of the captions.
Can you say more about what you have against Tooltips? From my point of view, the advantages seem pretty compelling. Also, they’re a pretty universal convention. All of the other options we’re discussing seem very… fiddly.
@ThePrinter: Yes, putting the helper text inside the field, before the user starts typing, seems like an attractive option. But it’s only implemented in macOS AppKit for basic string fields — not for longer text fields, and not for other sorts of input fields (drop-downs, etc.) So at best it would be a partial solution which, again, makes the total implementation very fiddly.
That makes sense. I was under the impression that Notenik uses SwiftUI (and I had no idea that Apple had three different GUI toolkits). I also took for granted the variety of input fields that Notenik provides.
Tooltips make sense. At best they can be a fallback indication of a field’s caption. The collection template can be the primary reference.
Basically it boils down to hidden UI, the need for skilled users, and the use case.
My feature request arose from the idea of displaying instructions. The use case for instructions and hints are different. Hints provided on a frequently used form are helpful initially, subsequently they are redundant. Instructions usually provide information and caveats needed for the user to complete the form completely and correctly.
Instructions are best seen at all times.
Tooltips are not typically used for instructions.
Instructions tend to be longer than tooltips.
Which fields have a tooltip and which will leave you hovering pointlessly hoping for advice? So there are two hurdles: you have to know that hovering is a “maybe” option and you have to hover. Admittedly in Notenik the creator is the consumer so the friction of this is much reduced.
How long do you hover for? Developer determined lag time + per use case as the machine queues and performs the task.
When do you want that toolip to popup in the middle of your workflow? (Clippy!)
Can you turn tooltips off? Maybe
Can you hover over two fields at once to compare 2 or more tooltips? No.
Tooltips are often rendered in smaller font sizes, so legibility is an issue.
@Malcolm: Thanks for the additional info. That really helps me understand what you are looking for.
What about flagging fields with available instructions with a little button with an i on it, and then showing the instructions in a pop-up window, but only after the user presses on the button? The user could then position and size the window any way they wanted to, and then dismiss it when no longer needed.
Let me see what I can do. It may take a bit, since I’ve got some travel plans coming up.
Also, FYI, the Notenik Display tab is built using HTML and CSS, but the other tabs (including the Edit tab) are built with macOS AppKit.
Apple is really focused on SwiftUI right now, so that’s all you hear about, but SwiftUI was very new when I started work on the native version of Notenik, and so I stuck to AppKit, which had been around for a while and was pretty stable.
The big advantages of SwiftUI would be if I was developing Notenik for the other Apple platforms, but the Notenik storage architecture does not really lend itself to anything other than the Mac, and so SwiftUI was not really attractive to me.
Also, I’m not sure there would be any way in SwiftUI to dynamically format the Edit tab, which is obviously a key feature of Notenik.
Thanks for the explanation. That makes a lot of sense. My impression is that AppKit lends itself better to developing for desktop environments. Apple’s current interest in making everything cross-platform (at least within their own ecosystem) is pretty obvious. Poking around elsewhere it appears that there’s still much to be desired out of SwiftUI among developers.