Blog after Posterous? - ClickClick

Moving

As you can see, I'm slowly moving my posts out of Posterous to a new 'haven'. Posthaven did a great job importing the blogs with not too much work left to me. It is still in beta, so not everything is styled as I want, and tags cannot be added yet. But the articles at least are safe now, will not disappear in the cloud with Posterous' death. In the future, articles will be accessible from my site, once I can manage to set it up to my wish. Due to the many reactions of Captivate users, I wanted first of all to have a solution for the blog articles. And I try to get them all available ASAP.


Intro

Since a while I get a lot of worried messages by all channels: on Adobe forums, by Linkedin, comment on this blog, mail... And they all ask the same question: what will happen to your blog when Posterous is closing down? I do find it a bit strange, that such a crisis situation leads to more contact with readers then normally. This blog seems to be useful to a quite a bunch of users. When I started, about 2,5 years ago, never imagined those articles would find their way to users all over the world. And they are useful to me as well: I spare a lot of time, just pointing to a post instead of having to repeat the same answers again and again on the user forums.

Must confess that I hesitate to search for another host. I really want to keep all rights on the content (which is not the case for a lot of blogging hosts), even though some rare readers feel they are entitled to 'take over' my ideas and propagate them as their own, without any reference. 'Since it is distributed for free, it is public, no need to point to the original author in that case' must be their way of thinking. Not very ethical, but that is only my personal opinion. 

For the moment, I do not have a final solution. I already concluded that I need to look for a non-free host in the future. Keep an eye on this blog, if I take a decision about another host, will post the link here.

If you are just plunging into advanced actions, keep on reading. I describe a rather simple use case, suited for novices in advanced actions. The only problem could be the expression 'Mimicked standard action' in the conditonal action Bt_Click. For more info about that, read this article.

ClickClick

I used this name for a small cptx-file, built as an example for yet another use case.:

'I am trying to use a button to toggle between 3 images. I created a variable, initially set to 0. The button triggers a conditional advanced action, where I check that variable, change it and show the next image. But it always shows the first image'

Screening the conditional action I detected that the user was trapped by the fact that in a conditional action, all decisions are always evaluated in sequence. Captivate will never stop evaluating when a correct condition has been reached, but goes on with the rest of the decisions and statements. 

Learning from mistakes is very efficient, here is a description of the original conditional action; the first image Image1 is originally visible:

Decision1 

  • IF var is equal to 0
  • Assign var with 1
  • Show Image2
  • Hide Image1

Decision2 

  • IF var is equal to 1
  • Assign var with 2
  • Show Image3
  • Hide Image2

Decision3

  • IF var is equal to 2
  • Assign var with 0
  • Show Image1
  • Hide Image3

If you evaluate all decisions, you will indeed end up with always having Image1 to show up: first decision results in true, but variable is changed to 1. That means that the second decision is also true, and the variable is changed again. Ultimately the last decision will also be true because of that change, so Image 1 is shown again. 

Example movie

In this one slide movie I have a version of my answer to this use case. Here you will be toggling four images, and to make it a bit playful, when you have viewed all the photos, you can play a little game pressing the Guess-button.

If you want to see the entire movie, you'll have to download it from this link: ClickClickClick. Posterous is not supporting an interactive PDF. In the SWF embedded here, you'll not see the Hangman widget, not be able to play. The Guess button will appear, but is not able to show the interaction, sorry about that. Download the interactive pdf if you are curious about the Hangman interaction.


Slide objects - variable

On this unique slide you'll see from bottom to top on the Timeline:

  1. A group with 4 photos, labeled GrFoto; will be set to invisible on entering the slide
  2. The button BtClick that will let you toggle the images, visible and will trigger the conditional advanced action Bt_Click (it is possible to have the same name, if you define the button name before the name of the action)
  3. The button BtGuess, will be hidden on entering the slide. This button will trigger the standard advanced action Bt_Guess
  4. An instance of the Hangman interaction, initially invisible.

Only one variable was needed, v_click, with a default value of 0.

Advanced actions - events

EnterSlide

This is a standard advanced action - triggered by the On Enter event. It will hide the group GrFoto, the button BtGuess and the interaction.

Bt_Click

This conditional advanced action - triggered On Success by the button BtClick - has 5 decisions:

  1. Always: a mimicked standard action to increment the variable v_click and to hide the group with photos. I preferred to hide the group with this first decision to save time. It is only necessary to hide the previous shown image, but if you want to do that with an advanced action you need more statements. Because all statements are always executed, I can hide the group (same statement for each click) and afterwards show the appropriate image, depending on the click number. 
     
  2. Click1: checks if the variable is set to 1 (which will happen due to decision Always after the first click), and shows the first photo.
  3. Click2: similar to Click1, checks if v_click is set to 2 (after second click) and shows second photo in that case.
  4. Click3: similar to Click1, checks if v_click is set to 3 (after third click) and shows third photo in that case.
  5. Click4: has more statements than the other 3 conditions. It checks if v_click is set to 4, shows the fourth image. But because all photos now have been viewed, the button Bt_Guess is shown and v_click is reset to its initial value 0. The last statement allows the user to toggle the photos again if wanted. But the button Bt_Guess will remain visible all the time from now on.
     

Bt_Guess

Rather simple standard advanced action - triggered On Success by the button BtGuess. It will hide the photos GrFoto, and show the interaction that was hidden. Because the interaction is on top of the buttons, it is not necessary to hide those buttons, although if you are a perfectionist, you could hide them of course.

Learned something?

If you take time to compare the original conditional action with my proposal, you'll see how important the sequence of the decisions is, and the fact that CP never stops with evaluation when a correct condition is met. I did increment the variable with a mimicked standard action, not within the real conditional decisions. This means that the variable will not change when CP is executing all the statements. 

Some timesaver tips are concealed in the actions as well: grouping of the fotos will allow to show/hide them with one statement (see EnterSlide, Always in Bt_Click and Bt_Guess). 

Using the Expression statement to increment v_click (Always in Bt_Click) is more efficient, compared with conditions + Assign combinations.

As usual, please feel free to comment. This means a lot to me, will help me to decide about accepting the transfer work to another host.