Tinderbox User-to-User Forum (for formal tech support please email: info@eastgate.com)
Tinderbox Users >> Moving to Tinderbox 6 >> Changing the appearance of timeline view

Message started by jasonromney on Nov 9th, 2014, 4:35am

Title: Changing the appearance of timeline view
Post by jasonromney on Nov 9th, 2014, 4:35am

I've created a list of $Events that I want to display in a timeline view in bands, and assign a color to each band. Is the most efficient way to do this with an agent that finds $Events with $TimelineBand setting 1 (or 2 or 3 etc) and then makes the $TimelineBandLabelColor set to the color I want? Just experimenting, I've created $TimelineBandLabelColor as an attribute of my $Event note, and set the color to yellow, but the Timeline view does not seem to have a hint of new color in it in the Note's corresponding band. I'd be grateful if someone could explain please:

1. the most efficient way to assign unique colors to each of multiple TimelineBands

2. whether Timeline-related attributes should only be included as Key Attributes of the container for the timeline events, or entered somewhere else (eg in an inspector field)

3. the best way to visually distinguish the events that relate to different $Projects in a mixed project ie a program-wide, timeline view. The goal is to show the $Project attribute in the timeline along with each event's $Name.

4. where a $Event in the timeline has a user attribute such as $EventOwner, how to make the $EventOwner attribute appear with the $Name in the timeline (so it is possible to see the event/task's name, as well as the initials of the person who owns that event/task

5. the way to stop the left hand column of unassigned notes from being visible in the timeline view

(I realise this is a rather long list of questions...Thanks in advance to anyone kind - and intrepid - enough to respond)

Title: Re: Changing the appearance of timeline view
Post by Mark Anderson on Nov 9th, 2014, 7:29am

$TimelineBandLabelcolor, as the name implies controls the colout of the text label applied to the band, not to the band itself.  The latter is simply drawn in alternating bands of tint and no tint. See here for a summary of timeline band controls (as at v6.1.0).

#1. You can't, see above.

#2. They don't have to be be key attributes anywhere. I think you're confusing two issues. KA are simply an affordance to make it possible to view/edit a custom subset of all a note's attributes. Separately, you are partially correct re where timeline settings are done. As a timeline shows all descendants, you want to configure your timeline attibutes in the ancestor container whose contents you'll view in timeline.  The point is that a map shows the children of the container; a timeline view of the same container shows descendants. Assuming you've now chosen the correct container to configure, in v6's timeline view right-click the view for a pop-over menu that offers controls for all the pertinent timeline attributes.

#3.  Use $Color or a $Color/$Color2 $Pattern. Or use a different $Badge per item. You can use a display expression to append the project name or code the the notes actual name. TB is deliberately not closed ended in approach so there's no one right way do do this.  Pick the affordances that best suit your project.

#4. Use a display expression.

#5. I don't believe this is possible; there is no specific control for toggling sidebar visibility. I'm not 100% certain but sidebars may not show if there are no out-of scope items such as would display in them. So, that's probably a feature request (which should be made direct to Eastgate, not here).

Title: Re: Changing the appearance of timeline view
Post by jasonromney on Nov 10th, 2014, 12:49am

Thanks Mark.
When you say in item 4 above, use a $DisplayExpression, can you elaborate please? What I am wondering is:
1. Does this need to only go in the container note, or in every note inside the container note?
2. What is the syntax for what goes in $DisplayExpression to show both the existing $Name and, after a space is left, the $EventOwner (or some other attribute)?

Apologies if these answers are obvious. I'm trying to find out myself. For example, I have read http://www.acrobatfaq.com/atbref5/index/MiscUserInterfaceAspects/DisplayExpressions.html but, as I often find to be the case in the FAQ, the examples given there do not provide enough grist to the mill for me to extrapolate to the use case I'm trying to solve. For example, their emphasis is often on achieving numeric goals, rather than text-based basics... Not a complaint, just an observation.

Regards and thanks.

Title: Re: Changing the appearance of timeline view
Post by Mark Anderson on Nov 10th, 2014, 3:38am

1. A display expression is a note attribute, stored in $DisplayExpression. It is either set per-note or can be inherited via a prototype - i.e. set in the prototype's $DisplayExpression. Therefore every note needing to use your desired display expression must either have it set in that note or inherit it.

To set a $DisplayExpression use the (Text Inspector). That is the best method to use but you can also use the quickstamp or edit the attribute directly in Get Info or as a key attribute.

2. You want the note title ($Name) then a space then $EventOwner. In action code a literal space is just a quote-enclosed space: " ". So what you enter into the box on the Inspector is:

$Name+" "+$EventOwner

White space around operators doesn't matter so this is fine too:

$Name + " " + $EventOwner

This is essentially a simple variation (no parentheses) on example #1 on the aTbRef page you cited. Using you attributes that example would be:

$Name + " (" + $EventOwner + ")"

The nature of TB means it's not possible to explore every case in my aTbRef notes. As I'm about to embark on a v6 update to the doc I'd welcome understanding why the example in the page you cited of

$Name +" (" + $WordCount + ")"

gives insufficient clues to be able to figure out your solution of:

$Name + " " + $EventOwner

You don't need the closing literal string (the closing parenthesis), so you omit that. You do want the middle padding string, but again no parenthesis - so delete the latter. Change $WordCount to $EventOwner and you're there.

If you're worried about experimenting in your live doc, the advice is unchanging - make a small test doc and try the solution there. Then use the tested code in your main doc. This breaks the cycle of neither being confident in your code solution nor in just trying it out to see if it works. A test doc takes the risk away.

The aTbRef article cited starts by explaining these expressions use $DisplayExpression. That attribute name links to a fuller explanation of what that attribute does (which couldn't fit in the main article). I sense the problem is a lack of comfort with action code syntax as a whole. As the same time there a people saying the articles are too long. I'm genuinely unsure how to fix this in a way that suits all (or most) readers. Input welcomed (though ideally via email or a different thread).

Tinderbox User-to-User Forum (for formal tech support please email: info@eastgate.com) » Powered by YaBB 2.2.1!
YaBB © 2000-2008. All Rights Reserved.