Customizing Review Messages in Captivate 5.5 or 5.0

Intro

This is the first post since the release of Captivate 5.5 and eLS 2.5. For this reason I worked out an example for both versions. I suppose the work flow used for 5.0 will also be functional for 4.0 but honestly I did not try it out. As you probably already know, the default Question slides did change with 5.5 but are the same for 4.0 and 5.0.

This post is (again) meant as an answer on yet another question on the user forum that pops up regularly: 'How can I have an individual Review message per slide?' Indeed, whereas it is perfectly possible to customize the Success and Failure captions for each question, this is not the case by for the Review Messages. The only control you have are the small sentences (see screenshot Review Messsages for CP5.0 in the Gallery), but with the exception of the mentioned given answer and correct answer for incorrect results the phrasing will be always the same on each question slide.

I will have to use advanced actions to achieve this goal, but they are very simple standard actions. You really do not need programming skills, be reassured.

Control of Question slides: what is (not) possible?

You are perhaps aware of the limited control concerning Question slides: if you watch its timeline quite a lot is contained in that single gray line! Let's try to enumerate:

  1. all the necessary text captions (you can format them after selecting on the stage but they do not appear separately on the timeline) for title, question, answers
  2. buttons you choose (Clear, Back, Skip, Submit)
  3. success/failure/hint captions
  4. functionality to show the proper captions when the user clicks on Submit and to pause the slide until
  5. user clicks again on the slide or enters Y
  6. this last action triggers the Success or Failure actions you'll find in the Quiz Properties (see screenshot 3 in the Gallery), default setting is to Continue

The playhead will only be released by the last user's activity (6), and execute the action set in the Quiz Properties based on Success or Failure. All other activities are before that pausing point, set by default at 1,5secs.

If you delete the Success/Failure captions, 3-5 will be skipped, and the click on the Submit button will immediately release the playhead and execute the proper action set in the Quiz Properties. In this thread on the user forums, I explained how you can use this possibility to show images instead of the Success/failure captions during the remaining time after the pausing point:

Using custom correct/incorrect images

For normal slides one has the possibility to execute an advanced action on Enter and on Exit of the slide. For Question slides this is only possible on Enter (used that in previous blog posts). But you can execute an advanced action both on Success and on Failure, that will be executed either:

  • on clicking the slide or pressing Y if the Success/Failure captions are present and will be shown
  • on clicking the Submit button is there are no Success/Failure captions.

This last functionality will be used in my work flow, both for CP5.0 and CP5.5.


Work flow - general

I did not use the Success/Failure captions to simplify the work flow but deleted them for both versions in the example Quizzes. But everything will functional as well if you keep those captions.

  1. On each question slide create two Text Captions (or Shapes with text), initially set to invisible in the Properties panel; those are the customized review messages on Success/Failure. I preserved the default Review Message for skipped or uncomplete answers. I used the labels OK1, NOK1 (for Question 1),OK2, NOK2, OK3,NOK3
  2. Setup the Quiz preferences: be sure to check the Review possibility
  3. Do not show the Back button (because in this simple work flow, the review messages are set to be visible on when exiting the question slide, going back by the user would show them before reviewing); that is also the reason why I did not use a playbar.
  4. Set up the Review messages - different tips for the 2 versions, look below in the specific work flows
  5. Create two Advanced actions for each question slide, I labeled them Correct1, Incorrect1 (for question 1), Correct2, Incorrect2, Correct3, Incorrect3
  6. In the Quiz Properties, Actions accordion (screenshot 3) replace Continue by those advanced actions

Work flow - Captivate 5.5

Please, play this movie to see the result. Be sure to click the Review button on the last slide to see the customized review messages.

I used a customized Radial gradient as background on the master slide, with 4 stop colors, Reflect as Pattern and I edited the Gradient handle. Shadows are applied to the Captivate title and all buttons in this movie.

Typical settings here, referring to the steps described in the General workflow

  • Step 1: I used a rounded rectangle with a radial, customized gradient fill (two color stops and Reflect as pattern) and inserted Text for step 1

  • Step 4: In Default Review settings, the correct/wrong answers are indicated by checkmarks, not by a Review message like in previous versions, with the exception of the Incomplete message. I kept the default settings here.

  • Step 5: Both advanced actions are visible in the Gallery: Correct1 and Incorrect1. The first statement shows the appropriate shape (OK# or NOK#). The second statement is 'Go to Next Slide'. If you do not include this statement, on executing this action, the playhead would continue through the rest of the slide timeline after the pausing point. The user would then see the Review message during that time, which is not what is wanted.

  • Step 6: This step is illustrated in screenshot 3 of the Gallery.


Work flow - Captivate 5.0

Play the movie to see the result, please. Be sure to click the Review button on the last slide to see the customized review messages.

I used one of the default Background Images 'DryPaint' but changed its Hue and Transparency. I replicated the shadow feature from the previous movie by applying the Dropshadow effect to the title Captivate on the intro-slide.

All steps are similar to those for 5.5 with these exceptions, be sure to check my discovery for step 4!

  • Step 1: Used the Ivory Text Captions here. 

  • Step 4: Contrary to version 5.5 review messages are now displayed in all circumstances. But I didn't want to display the default Correct message, since I already had a better Text Caption. And this is where I discovered something about 5.0 that I want to share!
    I deleted the Correct Message in the Review Messages (screenshot 4 in the Gallery) and what happened? When reviewing all questions and answers disappeared, only my proper Review Text Captions and the Skip button were visible! I thought the project became corrupt, and recreated it, with the same result. The solution is to enter at least one space in the Review message you do not want to show up. You are warned, do learn from my problem, please.

NEVER DELETE A REVIEW MESSAGE, USE SPACES


Conclusion 

Why didn't I use the On Enter event on the next slide to trigger an action to show the message on the previous slide? This is not possible, you can only show objects with an action on the slide where this object is really.

If you want to allow Backwards movement, the situation will be a little bit more complicated, because you will need conditional actions to show the messages. I wanted to keep this solution as simple as possible. And it allowed me to illustrate the difference in Review between versions 5.0 and 5.5

As always, I really would appreciate feedback. Is this post too basic, do you like it, do you want me to extend it with possibility to have Backwards navigation enabled, please let me know!


Extended TextArea Widget: more functionality

Intro

 
A couple of days ago, I "talked" about the TextArea widget coming for free with Captivate 5 for creating custom Fill-in-the-Blank and Short Answer Question slides. At that moment I told you that I did regret that it was not possible to change the associated user variable by an advanced action and have this visible in the TextArea Widget. Just when I was wondering if I would dare to ask some of the Widget princes of the Captivate Community to extend the functionality of this widget, Jim Leichliter simply offered such an extended version on his website: TextArea Widget with variables. It is a wonderful example of our dynamic community, and I'm so grateful to be part of it.
 
In this blog post I will show the added possibilities for the same Quiz as in the previous post. The changes to the advanced actions and the new to be created variables are be explained in this article published with the Adobe Community Publishing app. Please check my conclusion:


 

Example movie

Play this movie with the same 4 Question slides, described in the previous movie. It has an extra slide after the score slide with new functionalities:  3 possibilities to Retry the quiz, please try them out. This was not possible with the original CP-widget. And I remember questions on the user forum: is it possible to have users only retaking the incorrect questions? That is possibility 3 in this movie.
 

Extension of the widget

This extension allowed me to manipulate the content of the TextArea visible on the slides. With the standard Widget, the text entered in the TextArea is stored in the associated user variable, but if you change that user variable this will not be reflected on the slide. If you watched the movie in the previous blog post, and tested the Retry work flow, you'll have noticed that the answers introduced before remained on the slides. You were able to change them manually, but I couldn't clear the text or replace it.
 
With the extension this is possible. Here is my work flow for each of the 3 possibilities for Retrying:
 

Possibility 1:

The answer given the first time remain on the slides, the user can edit them - this was the only workflow possible with the default TextArea Widget, the user variable has not been changed.
 

Possibility 2:

All answers are cleared. I created extra user variables:
  • v_pos: will store the value 1, 2, 3 corresponding with the Retry possibility chosen, will be used in a conditional action
  • Start: has the text 'My answer: ' as content; in an advanced action the variables associated with the Short Answer TextArea widgets on the first 3 question slides will get this content, replacing the text input by the user, thus clearing the previous answer
  • Null:  is a user variable that is empty: in an advanced action the variables associated with the 3 widgets in the FIB Question will get this content, thus creating empty fields again.

Possibility 3:

Only incorrect answers are cleared, using the same user variables and technique as in possibility 2; correct answers with the given score will remain, using similar statements as for the Review work flow.
 

What next - Ideas?

One comment was about possibility to report to a LMS with custom questions: this is partly possible, will try to post my experiences shortly. But there are more widgets in the treasure box coming with Captivate to explore too. Please do not hesitate to comment or let me know your ideas.

Widgets and Custom Questions - part 2

Intro

As promised, here is the second but not last part of my soap about using (free) widgets to create customized questions. One of the most versatile widgets for this goal is the TextArea widget, it will be the only 'star' today. Not only is it a very fine alternative for Text Entry Boxes because it allows for better formatting, text wrapping and if necessary the appearance of a vertical scroll bar, but it can be associated with a variable, which makes it accessible ...for advanced actions!

I will illustrate the use of the TextArea widget for Short Answer questions with a lot more scoring options than the default Short Answer question and for Fill-in-the-Blank questions.

In this blog post I will explain how to use this widget and its possibilities, In detail explanation of the advanced actions can be found in this article

Using TextArea widget for Custom Questions 

Example movie

Explore the TextArea widget by playing this movie. It has and intro-slide, 4 question slides and a score slide:
  1. Short answer question (roundtripping): score will be based on keywords, all keywords have to be in the answer to get the score.
  2. Short answer question (languages): partial scoring but also on keywords, each correct keyword adds to the score
  3. Short answer question (web apps): only one out of 2 keywords needed to get the score
  4. Fill-in-the-Blank question (twitter): with partial scoring, each correct word adds to the score

On the score slide you will be able either to Review the questions or to Retry all questions and increment your score.

TextArea widget

This widget can be associated with a user variable, but you will have to define that variable separately (Project, Variables), same way I described for the Radiobuttons and Checkboxes widgets in part 1 (Widgets and Custom Questions - part 1). The first image of the Gallery shows the properties of the widget used on the first question slide (about roundtripping), WidgetRound, . Those properties are easy to configure, and the user variable is v_roundtrip. When exploring this widget I was excited by the fact that this variable will store the complete text that is entered. This looked like a promise for multiple possibilities in Short Answer questions. I never used the default Short Answer question because the score can only be attributed if the Short Answer is totally correct! And this is rarely necessary as I heard as well from other users on the forum. Usually the short answer should get a score when it mentions some keywords, not when it is exactly the same as the "correct entry".

Tip: while exploring this widget I detected that it will only be functional if it has its place in the Z-order (stack order) on the timeline above all interactive objects. In the Gallery the second image shows the Timeline of the first question slide about roundtripping. On this slide ShortAn1 you'll see the stack order from bottom to top:
  • TitleSA1 = title of the slide (text caption)
  • Quest1 = question (text caption)
  • BtSubmitRT = button Submit (interactive)
  • BtContRT = button Continue (interactive)
  • WidgetRound = TextArea Widget
  • RTFeedback = text caption with Feedback (non interactive)
  • ScoreRT = text caption showing the score (non interactive)
  • RetryRT = text caption that will show up if the question is retaken (non interactive)

If you switch the place of the Widget with one of the buttons, it will not be functional! I had to put the three last captions on top of the widget because they are partially covering up the widget's text box when they appear. They do not interfere with the widget's functionality because they are not interactive.


Question slides - description 

1. Short answer - all keywords necessary

This question has a score of 5 points. This score will be attributed if the answer contains both the keywords Photoshop AND Soundbooth. Probably some users will also add Powerpoint, but this will not be taken into account for the score.  It is annoying that not only the names of user variables are case sensitive but also the values! I assumed that users could type both Soundbooth and soundbooth, Photoshop and photoshop to create the unique but complex condition for the Submit button. You can see the settings for the Widget and the objects on the timeline in the Gallery.
The Buttons Submit and Continue are timed, the Continue button will only appear after the Submit button has been clicked, same setup as described for the custom questions in Part 1.


2. Short answer- partial scoring

Up to 4 keywords can result in a score, each keyword adds 2 points, the max. score thus being 8 points.
Setup of the widget and the objects on the timeline are the same as for the first question. The big difference is of course the advanced conditional action attached to the Submit button. Here it is a combination of 4 different decisions, one for each keyword.


3. Short answer - one out of two keywords

Two possible correct keywords (Flash + Dreamweaver), but the user needs only to have one mentioned in his short answer. The situation is the same as for the first Short Answer, with one condition in the setting 'Any of the conditions true', but again taking into account the case sensitivity. Widget Properties and objects on the timeline are similar to the first question.


4. Fill-in-the-Blank - 3 fields with partial scoring

In the third image of the Gallery you will see the Timeline of this slide, that uses 3 instances of the TextArea Widget. Perhaps you wonder why I prefer TextArea to Text Entry boxes? The user input in a TEB has to be confirmed, either by  a Submit button or by a shortcut, which is not the case for TextArea. The user can change his input if he wants and the value of the associated user variable will be adapted in real time.
Possible issues: you'll have to try a little bit to have the right size and position for the widgets. I first typed the correct terms and positioned the widget on top of those, but had to adapt the position even with the same font/fontsize.
In this FIB you cannot give the user the possibility to choose from a dropdown list, only to type the answer.

Partial scoring is however possible, the advanced conditional action attached to the Submit button is rather similar to the one used for the second question (Short answer with partial scoring). Again you have to take into account the case sensitivity.


Results Slide

The results slide has the same setup as described in my first blog post about Widgets and custom questions. To allow the Review/Retry I used a user variable v_try that will have 3 possible values:
  • v_try = 0  is inital value, when the user takes the quiz for the first time
  • v_try = 1  when he retakes the quiz
  • v_try = 2  when he reviews the quiz

Those values will be used to re-initialize each question slide (see article).

One drawback of the used widget: it is not possible to reset the value of the variable to void/null/empty! You can reset the associated variable to a Null value, but this will not be reflected in the display of the TextArea on the slides. Once the user has entered something, it will stay there until he changes it himself. You can watch this with the Retry functionality in the sample SWF.

Timer widget... to stress your learners

Intro

Perhaps a coincidence, but I answered this week twice a question about having a timer for a learner while taking a Quiz. It is possible to have a time limit and appropriate action set up in a LMS, but with the Timer widget that you get out of the box you can also provide this (stressful) information. Once I wrote about using the system variable cpInfoElapsedTimeMS (Quiz showing elapsed time) to display info about time spent on a slide. In this post I will try to explain the possible uses of the Timer widget. It is a small but useful widget that is associated with a user variable which allows to create advanced actions.
  

Use cases for Timer widget 

As is the case for most of the widgets coming with Captivate, the Timer is a static widget. As I explained in the post about the Button widget (Using the button widget) this is great news, because you can use the widget on master slides and on question slides. In the example movie you will that I used the widget twice:

  1. In its digital appearance (left at the bottom) it is counting down from the maximum allowed time for the total time on the question slides
  2. In its analog appearance (right at the bottom) it is counting up to the maximum time allowed per question slide
I will explain the workflow for both timers. Watch the movie first, I provided 10 sec for each question slide, but without any consequence if this limit is passed. For the total time the limit is 30sec and once you pass that limit you will not be able to continue with the next question but will be navigated immediately to the score slide. I re-used the questions described in the blog post (link).

Timer for total time - workflow

  • Create a user variable, I labeled it v_time;  it is not possible to create this from the dialog box with the widget properties.

  • Insert the widget on the first question slide and configure it as in the first picture of the Gallery: digital version, count down, with a message when count gets to zero and I formatted the characters;I labeled this widget 'TimerWidget'

  • Set the timing of this widget to diplay for the rest of the project (Properties panel, Timing accordion)

Because I do not want this Timer widget to stay visible on the last slide, the score slide, I created an advanced action EnterScore (screenshot in Gallery) that is executed on entering this slide with 3 statements.
Hide TimerWidget        (digital countdown timer for total Quiz time)
Hide TextTime             (text caption before the digital timer)
Assign v_time with 0    (to reset the variable and allow the user to review the quiz)
Limitation: it is impossible to restart the timer widget  Since I did hide this TimerWidget (total quiz time) the widget will be invisible during review.
  

Timer for individual Question time - workflow

Since  I did not want to have an action based on this second timer in this example, it is not necessary to create a user variable, nor to point to such a variable in the Properties dialog box.

  • Insert a second instance of the widget on the master slide that is used for the question slides
  • I configured this widget to be analog, to count up (to the maximum of 10sec) and changed the colors (see third screenshot)
I did not hide this timer during review. You cannot hide an object that is on the applied master slide. If you want to hide it, you will have to insert this widget on each question slide and use a condtional action to test and hide the widget on second visit. Remember: you can execute an advanced action on entering a default question slide, but not on exiting that slide. Moreover you cannot trigger advanced actions by the buttons on the default question slides. If you create custom question slides you do not have those limitations, but in this post I only want to demonstrate the use of the Timer widget.
  

Advanced action TimeCheck

Each advanced action has to be triggered by an event. Here I chose to have this action triggered on entering each question slide. This is not really necessary for the first question slide, because the timer sits on that slide and the user variable will always be set to 0 (False). This is a real simple conditional action: if the user variable contains the value 0, the user will be navigated immediately to the scored slide (see fourth screenshot in the gallery), if not (Else action - no screenshot) the statement Continue is executed.
  
This means that the learner gets a little bonus: his time is not exactly limited to 30secs, if he has entered a question slide before the counter got to 0, he will be able to answer that question, but the message will pop up. 
  
Mystery of the user variable: Want to warn you that the associated user variable doesn't store the time left, but only boolean values 0 or 1. And it took me a while to discover this. If you show the value of the user variable in a text caption (my way of debugging) it will show 'false' as long as the timer did not reach its limit and the value 'true' when time is up. So I tried out the condition 'If v_time is equal to true' but this did not work. You have to use the numerical values 1 (true) or 0 (false). This explains the decision:
if v_time is equal to 1
  


Captivate 6 users - warning

If you use the described work flow in version 6, there are possibly some problems:

  • when trying to associate a variable to the widget, not all characters will be accepted (like underscore) and some characters will be turned automatically into capitals; be sure to check that the defined variable has exactly the same name as the one you enter in the widget properties: Vtime will be accepted, but v_time not;
  • the values to check for the user variable Vtime are not 0 and 1 but true and false
  • having an action that on exceeding time will jump to another slide will not be functional if you use the new feature 'Submit all'

And for 6.1 users:  try using the new Countdown widget, it allows you to have an action immediately after the countdown reaches 0, contrary to the Timer widget that needs an extra event (like On Enter slide) to trigger an action. Will blog soon about the new widgets in 6.1.

More ideas?

Try this out with customized question slides, gives you a lot more control.
You can also create a more complex condition: if a user exceeds the time allowed for one question slide, jump immediately to the score slide or skip one or more question slides.

 

Articles on Advanced actions

Sorry, this is not a 'normal' blog post!

One of the reasons I started with this blog (September 2010) was my frustration that the articles I published with the Adobe Community Publishing did not reach users easily. Those articles try to explain in depth the basic rules of variables and advanced actions in Adobe Captivate 5 (and sometimes also for version 4) and mostly I offer a practice file. In this blog you will find some links to those articles.

Perhaps this list with links to all the published articles, and a small explanation could be useful. The list is posted on workspaces.acrobat.com, I published it and you can download it anonymously. As usual, I appreciate any comment or suggestion:

Lilybiri

Using the button widget: some ideas

The button widget is no longer available in later versions of Captivate, but can be replaced almost in all use cases described in this article by a shape button.


Intro

This is not the promised second part of the use of widgets for customized questions. You know that I find some inspiration in the user forums, and last week I discovered another hidden gem, coming for free with Adobe Captivate 5: the deceptively simple 'Button'-widget. The Adobe team seem to like hiding their gems, and always wonder why? Few people, except the widget wizards of course, do realize that this Button-widget is not an interactive widget at all, but a static widget. Check it out for yourself: in the Widget panel, set the filter to Static and you will be able to verify my statement ((first image in the Gallery). I'm used to tell my students always to verify teacher's statements
 

Non-interactive button?

A lot has already been written about the difference between static, interactive and question widgets (a few links on the blog get you to those Widget kings), will not bother you with it. But want to explain why it is great news that this button is a static widget. Being static doesn't mean that the user cannot interact. If you have read the blog post about the use of the (static) widgets for custom questions you will know that. But the fact that is a static widget will allow you:
  • to use it on question slides, where interactive objects cannot be inserted
  • to use it on master slides, that have the same restrictions as question slides
Isn't that great news?
 

Configuring the widget

There are quite a lot of configuration possibilities as you can see in the second image of the Gallery that shows the settings of the buttons I used for the example of the Menu on the master slides. It is pretty straightforward to use, I only lost some time finding out how to put in more than 4 characters on the button. You have to click in the Preview space on the button and you'll see the text box appearing (is visible on the screenshot). There are a lot of small arrows of all kinds that allow you to move the text box, to increase its size and even to increase the size of the text itself. In the list of actions that can be performed you'll find navigation, open File/URL and send email (here I used Jump to slide).
 
 

Use on Question slides

Lot of users get frustrated because it is not possible to insert any interactive object on a question slide or on the score slide. If the action you want to trigger by this object is a navigation action, or opening a URL/file, or sending an e-mail than you can use the same Button-widget as used on the Master slide example.
 
Some ideas:
  • to allow user to get back to an instruction slide when failing on a question
  • to open another file on success/failure of a quiz

Example Menu on Master slides

In the example that you can watch here, I used the button widget on a Knockout Master slide (see blog post Create and Use a Knockout Master slide) to create a menu. I do have 2 very similar master slides, the first is used for the introduction slide, the second has also a button (same widget) to go back to the first slide and is used for all other slides.
I would love to hear how you do use this widget!
 
 
 

 

 

Template for reusing script?

Since we are now in version 11 (2019), free templates are no longer available. It is not necessary anymore to have a template for reusing variables and advanced actions since the appearance of shared actions and the possibility to copy/paste an object with an attached advanced action.

Intro

If you are familiar with creating advanced actions, you will certainly have been frustrated by the fact that you cannot re-use the actions you carefully constructed and tested out. There is no way to export/import them in another project, even just printing them is a lot of trouble. And I'm dreaming about the possibility of having a library of actions available all the time, with an easy way to edit and adapt them to the specific ID's of the objects in a new project. OK, I already hear the Widget Kings, Princes and Wizards calling out: create widgets... but you have to learn ActionScript and be familiar with Flash which is certainly not the case for all Captivate-users that I try to convince to have a look at advanced actions to enhance their projects. From the success of my last posting (Controlling the score slide) I deduct that I'm not the only non-Flash expert around that wants more control :-)
 
Being a woman I do trust my intuition, and so I tried out this idea: creating a template with advanced actions, while providing an easy way to edit objects, could enable re-using those actions. And one of the recurring questions on the user forum provided me with an example: 'How can I display a checkmark or/and grey out the menu item when it is completed?'

Goal

The template has a menu slide with buttons to navigate to 5 other slides that represent 5 menu items. After visiting an item the user can navigate back to the menu slide with a simple button. The 7th slide is an End slide.
 
For this example I worked out two possible use cases:

  1. When returning to the menu slide the visited item will be dimmed, have a checkmark and the button will be disabled; this means that the user can only visit each item once; when all items have been visited the user is navigated automatically to the End slide.
  2. When returning to the menu slide the visited item will be dimmed, have a checkmark but the button will not be disabled; the user can visit the item multiple times; when all items have been visited at least once an End button will appear on the menu slide that allows the user to get to the End slide.

You can play these SWF's to have an idea of the workflow. Both have been based on the template, but with different lay-out. I will explain editing possibilities later.
 


Variables - actions

I created 5 user variables, one for each menu item, labeled v_item1, v_item2, v_item3, v_item4, v_item5. Originally they have a value=0 but will get the value=1 when an item has been clicked.
 
When a button on the Menu slide is clicked, a simple standard action is executed that changes the value of the user variable and jumps to the proper slide.
 
On entering the Menu slide two possible conditional actions can be assigned, corresponding with the use cases:

  1. EnterMenu for the first use case, will dim and add a checkmark to the items that have been visited, button will be disabled; if all items have been viewed will jump to the end slide.
  2. EnterMenuRetry for the second use case, will dim and add a checkmark to the items that have been visited; if all items have been viewed at least once will show the End button.

Depending on which use case you want, assign the appropriate action. 

 
Changing Layout

I used a master slide that has the background and is applied to all slides, so this is easy to change.
Example: first SWF has the original master slide, in the second one I applied another background image and added some lines.
 
It is important that the ID's of the objects that are referred to in the advanced actions do not change to avoid issues. Have a look at the timeline of the menu slide. From top to bottom you will see these objects that are in the advanced actions, so be sure not to change their labels:

  • 5 images, labeled Done1... Done5 (highlighted in green); those are the checkmarks, and all instances of one image in the library; if you want another image, use the option "Edit with...' from the library and after saving in the image processing app all instances will be updated automatically. For those using the eLearning Suite: you can of course use the option Edit Source file.
    Example: for the second SWF I used Edit Source file to change the color of the checkmark
  • 3 objects for each item 'button' (highlighted in yellow for the button for item 1): a transparent button (Bt1), a rectangle (Rc1) that serves as background for the button before dimming and a second rectangle (RcDim1) that is behind the first one and has a text in it 'Item 1' to make it possible to change the color of the text after dimming. You can edit: the text on the buttons Bt (formatting inc.), the color and rounding of both rectangles and the text on the second rectangle (formatting inc.)
    Example:  I changed colors and corner rounding for the rectangles, changed text color of the buttons by changing the default button style.

  


Limitations

The template was created in a resolution 640x480.
There are only 5 menu items: you can easily delete decisions in the advanced conditional actions EnterMenu and EnterMenuEntry, creating more items will be a little bit more work.
I did not provide the possibility to have only checkmarks or only dimming for the moment, but would also be simple to achieve.

 
Offer

This week my 6-months young (old?) blog passed the milestone of 25000 hits, which is incredible! I cannot offer you a cake or chocolate (Belgian of course) to celebrate, but want to offer you this template to play with. If you send me an e-mail address by Direct Message with Twitter (@Lilybiri) or post it using a Private message on the Captivate user forums (the thread I'm referring to is http://forums.adobe.com/thread/806123?tstart=0) and I will be glad to send you the link to this template. You can also post a comment, but I do want to avoid you having spam! With the blog service I'm using for the moment I do not see another way, sorry.
And please, let me know what you think about this idea of using templates?


Update

Kevin Siegel published a great tip today: you can turn a project into a template by simply changing the extension from cptl to cptx. This is the link: http://iconlogic.blogs.com/weblog/2011/05/adobe-captivate-5-one-quick-way-to-a-project-template.html

I did check it out and that can be an easy way to exchange advanced actions between projects:

  • Duplicate the project from which you want to export the advanced actions
  • Rename the extension for the duplicate from cptx to cptl
  • Create a new project from template and navigate to the just renamed file
  • A new project, labeled 'Untitled' is created and it has all advanced actions in it

 In Captivate 6 you can finally publish an existing file as a template, which makes the workflow even easier.

 

Widgets and Custom Questions - part 1

Intro

No, I did not start creating widgets, we have great Widget Kings/Wizards/Princes in the Captivate community. Since a while I planned to create some examples with the widgets, created by the Adobe team and provided (free) with Captivate 5. I also promised users on the forum to give a step-by-step explanation how to create custom question slides. And then I remember a user who wanted to have multiple True/False questions on one question slide.
And this is the first posting: how to use the widgets 'radiobuttons' and 'checkboxes' to create MultiChoice questions or to have multiple True/False questions on one slide. In this post I will describe the use of the widgets and their associated variables. Detailed explanation of the advanced actions has been published in this article.
 

Quiz - example

Play with this quiz to see three question slides: a slide with 4 True/False questions, a Multiple Choice Question with one correct answer and a Multiple Choice Question with multiple correct answers. The scoring is explained by rollover Text Captions. After clicking the Submit button, a Feedback caption and the score will pop up, and the Continue button appears. The quiz ends with a Results slide, on which you can choose to Review or to Retry the Quiz.
 

Widgets and variables - tips

Both widgets, "Radiobuttons" as well as "Checkboxes" need user variables. For Radio buttons one variable is needed, for Checkboxes as many as you have checkboxes. Those variables will not be automatically created when you type the in the Widget Properties! You will have to create them using Project, Variables, which is not the case for all Captivate widgets : for the Certificate widget the needed user variable is created automatically.
 
You probably know already about the 3 widget types: Static, Interactive and Question. At first I was confused by the difference between Static and Interactive Widgets, but found a clear explanation in the blog post of Tristan Ward, the Widget King (Static/Interactive Widgets). The two widgets used in this post are Static Widgets. That means that they are not scoreable, but doesn't mean that an interaction is impossible: the user is able to choose a radiobutton or tick a checkbox, and the result will be stored in variables. There is a restriction: you cannot reset a widget, as is possible with a Question slide (using the Retake button), once a radiobutton is clicked or a checkbox is ticked it will remain that way until the user changes it.
 
For both widgets you will have to list options and variables in a list separated by commas: be sure not to put a space after a comma. You can have spaces in item names however. Some examples:
Question1 - comma separated values  True,False   is OK       but True, False   is not OK (has a space before False)
Question2 - comma separated values  Soundbooth,Photoshop,Dreamweaver,Flash
Question3 - comma separated values    Captivate 5,Soundbooth CS5,Photoshop CS5,RoboHelp 9,Acrobat X
                 - variables                           CP,SB,PS,RH,Ac  
 
Do not forget that variables are case sensitive!
 

Question slides - description

1. Multiple T/F questions

This slide is created with the widget 'Radiobuttons'. It is used in a horizontal way, with only 2 values True/False, but I used the widget 4 times, labeled them Radio1, Radio2, Radio3 and Radio4. Each widget instance has a user variable associated: TF1, TF2, TF3 and TF4. When the user has chosen an answer, this answer will be stored in the variable, in this case 'True' or 'False'. You can watch the settings fror the first widget Radio1 in the first picture of the Gallery. The elements on this question slide:
  • Title with a Rollover Text Caption explaining the scoring and providing tip for correct answers

  • 4 Text Captions with questions

  • 4 'Radiobuttons' Widgets, labeled Radio1, Radio2, Radio3, Radio4 (first picture in Gallery shows settings for Radio1)

  • 1 Text Caption with Feedback that is initially hidden (it is possible to have multiple captions, but wanted to keep it simple), labeled TFFeedback

  • 1 Text Caption with the score, initially hidden, labeled ScoreTF

  • 1 Submit button (BtSubmitTF), that will trigger an Advanced action to calculate the score, show TFFeedback and ScoreTF, this button is timed so that it will disappear when the Continue button appears

  • 1 Continue button (BtContTF), that is timed to appear when then the Submit button disappears, and has as action 'Go to Next Slide' 

2. Multiple Choice question with one correct answer

I used the widget 'Radiobuttons' again , but now in vertical way (see second picture in the Gallery) and with 4 values. Its associated variable is MCQ1Answer. This variable will store the chosen answer literally (Soundbooth, Photoshop, Dreamweaver or Flash).  The elements on this question slide:
  • Title with a Rollover Text Caption explaining the scoring and providing tip for correct answers

  • 1 'Radiobuttons' Widget, labeled MCQ1 (look at the settings in the second picture of the Gallery)

  • 1 Text Caption with Feedback that is initially hidden (it is possible to have multiple captions, but wanted to keep it simple), labeled MCQ1Feedback

  • 1 Text Caption with the score, initially hidden, labeled ScoreMCQ1

  • 1 Submit button (BtSubmitMCQ1), that will trigger an Advanced action to calculate the score, show MCQ1Feedback and ScoreMCQ1; this button is timed so that it will disappear when the Continue button appears

  • 1 Continue button (BtContMCQ1), that is timed to appear when then the Submit button disappears, and has as action 'Go to Next Slide' 

3. Multiple Choice question with multiple correct answers

The widget "Checkboxes" was used. It has 5 values and 5 associated variables. The settings are visible in the third picture of the Gallery. Each variable will be empty at the start, and will get as content the value if the user has checked that checkbox. Example: if user ticked the boxes "Soundbooth CS5" and "Acrobat X", the variable SB will have "Soundbooth CS5" as content, variable Ac will have "Acrobat X" as content, whereas the three other variables will remain empty. You could also assign a default value to the variables (such as 'NoCheck') but I left the value empty while defining the user variables. The elements on this question slide are:
  • Title with a Rollover Text Caption explaining the scoring and providing tip for correct answers

  • 1 'CheckBoxes' Widget, labeled MCQM  (look at the settings in the third picture of the Gallery)

  • 1 Text Caption with Feedback that is initially hidden (it is possible to have multiple captions, but wanted to keep it simple), labeled MCQMFeedback

  • 1 Text Caption with the score, initially hidden, labeled ScoreMCQM

  • 1 Submit button (BtSubmitMCQM), that will trigger an Advanced action to calculate the score, show MCQ1Feedback and ScoreMCQ1, hide the button Submit and show button Continue; this button is timed so that it will disappear when the Continue button appears

  • 1 Continue button (BtContMCQM), that is timed to appear when then the Submit button disappears, and has as action 'Go to Next Slide' 

4. Results Slide

When entering the results slide, the total score and percentage are calculated using an advanced action. The text captions are self-explanatory. On the slide you will find two buttons:
Review: will allow the user to re-visit the question slides and read the text captions again
Retry?: will allow the user to make corrections to the answers, all scores will be reset, but as I explained before the previously chosen radio buttons/check boxes cannot be reset.
  

Some Reasons for Labeling in Adobe Captivate

Before plunging into this subject, I want to thank those who commented, tweeted, e-mailed as a reaction to my previous blog post 'To blog or not to blog?' A lot of those reactions really touched me, and they provided me with the energy needed to get on with the blog. Please, feel free to suggest new subjects or react to the postings, I would appreciate it a lot.

 

If  you have been reading one or more of my articles, you already know  that I'm addicted to labeling all kind of objects in Captivate. This is partly but not only due to my playing a lot with Advanced actions. I will try to explain the reasons for spending "precious" developing time to label master slides, slides, objects, effects, audio etc. Although the screenshot in this posting are from Captivate 5, a lot of the reasons mentioned are also valid for earlier versions of Captivate. Where necessary I will indicate that it is only valid for version 5.

Screenshots are in a Gallery at the end of this post.

 

1. Why do I label slides?

First of all, it is so much easier to find a particular slide in the Filmstrip and in the Branching view.
For complex projects I use the Branching view a lot and  as you can see on this first screenshot if feels more comfortable to judge the different workflows in the project when meaningful labels are visible. If I'm working with slide groups I may just label the slides within a group with the group name followed by a number, especially if the slides are the result of capturing some software process.

Tip for CP5 users:  do you know that it is possible to label slides in this Branching view using the HUD (Heads Up Display)? In this HUD you can also define the action 'Jump to'. Do not forget to confirm either labeling and/or jump action with the positive tick.

Since I'm often using a Table of Contents in my projects, the navigation for the user will be facilitated by labeling the slides as you can see in this second screenshot. 

For navigation in a non-linear project assigning the action 'Jump to slide X' is often necessary, and it is so much easier to jump to a labeled slide than having to search for the right number of a slide one wants to jump to. This is even more the case when inserting this kind of action in the Advanced Actions dialog box.

And, more specific for reporting reasons, the Advanced Interaction view will show the slide labels as well.
  

2. Why do I label objects?

Let us start with Non-interactive objects (that cannot be scored by default): Text Caption, Rollover Caption, Rollover Image,  Highlight Box, Zoom object, Image, Drawing objects. Labeling those objects is interesting in all CP-versions if those objects are used in actions like Hiding/Showing and certainly if those actions are in Advanced actions (CP4 and CP5 only).

Only for CP5 users: did you see that object labels are visible on the timeline? This should be stimulating to label them, at least when you have a lot of objects on a slide. Try to select one out of all those Click boxes (see screenshot) if they are indicated by their default names Click_Box_x!  Only Text Captions  are by default easily recognizable on the Timeline because the text (or part of it) is visible.

Same reasons are valid for Interactive objects (that can be scored by default).

Only for CP5 users: extra advantage is objects labels will be visible in the Advanced Interaction view!


3. How do I label Advanced actions and variables?

Here you have no choice: each advanced action and each variable has to be labeled. Some tips? I will always start a variable name with v_ to make it clear that this is not a simple object. In dropdown lists where system and user variables are mixed up, all user variables will then be grouped together.
Advanced actions have to be triggered by an even like Entering a slide, clicking on a button or a click box. Since Advanced actions will have to be assigned to the 'trigger' for the action, I will often put an indication to the trigger in the action label. This is very useful when you need similar actions to be triggered by similar events (where you will use duplicate functionality and editing). I believe this will better be explained by a couple of examples:

  • If the action is to be triggered when entering a slide labeled 'Menu', this advanced action I'll label 'EnterMenu'
  • If the action is to be triggered as a success action for a Click Box and there are different Click Boxes with similar actions, I will choose a similar name for the Click Boxes (such as Yes1, Yes2,...) and the corresponding actions are labeled CB_Yes1, CB_Yes2,... Attributing the correct action to the corresponding Click Box is then a lot easier.

 

If you are not yet persuaded that labeling has a lot of advantages, I give up ;-) But you have to know that for most project I will also label master slides, decisions in advanced conditional actions, voice over clips, customized effects and object styles.

Here is the image gallery: Branching view, TOC, Timeline and Advanced Interactions view.


 

 

 

 

 

 

Some Ideas for Photoshop Roundtripping with Captivate in eLearning Suite 2

I really do like the new feature in the eLearning Suite 2 that allows you to edit the source file in Photoshop from Captivate. In Captivate 4 you had already the possibility to import a layered Photoshop file, indicate which layers you wanted to use. But after import each layer was converted to a PNG-image. If you wanted to change an image, you did have roundtripping to Photoshop and it worked fine. But if you had to change multiple images, that were all imported from the same Photoshop file, you had to repeat this 'trip' for each of those images separately.

In Captivate 5 you can edit all layers at once using the 'Edit Source PSD file'. If you never used this possibility I created a small demonstration to show the workflow. In one of the Photoshop-files I created with reusable objects I have two buttons, using five layers as you can see in this screenshot. When imported in Captivate, as you'll see in the demonstration I can create each of the buttons using three images: an Text image (Nee or Ja), a background color (RoodNee or BlauwJa) and the Overlay (which I use for both buttons). Both text and background color have to be changed.

Similarly I created Photoshop files with all kind of arrows, with text balloons etc. The idea is to be able to reuse those items, and when necessary to change quickly the color by using the roundtripping feature I described in the demo.