Archive for the 'CpGears' Category
Friday, 19 August 2011Posted by Whyves
I realized today that I posted the first release of CpGears on Google Code about six months ago. Can’t believe that my baby is already 6 months old. I use it to develop all of my widgets and really like it.
I know that Jim at CaptivateDev.com is also using it, has always nice comments about it and even blogged about it. I couldn’t ask for a more dedicated user! However, I would really like to know if other people are finding it useful and what they think about it. Did it help you create widgets faster? What do you like and what don’t you like?
If you use or have used CpGears, I would really appreciate if you could leave a comment. And if you never used it, then what are you waiting for, download it now!
Posted in CpGears | 1 Comment »
Friday, 01 July 2011Posted by Whyves
The CpXray Widget has been updated to work in conjunction with the DeMonster Debugger 3. This new version of the widget is now based on CpGears and is also working in both Captivate 5 and 5.5 (I realized lately that CpXray was not functioning under Captivate 5.5).
DeMonster 3 has some nice improvements over the last version and it seems a lot more stable and fast. So have fun debugging your widgets with CpXray and DeMonster Debugger!
Posted in CpGears, Widget | No Comments »
Monday, 27 June 2011Posted by Whyves
While working on my Jumbled Words Widget, I came across some problems with the QuestionWidgetView in CpGears. Some methods where actually missing in order for Captivate to completely control the widget. So, version 1.2 has these new methods added (resetAnswer() and questionState) and I also took the time to add a new method on the InteractiveWidget class to reset the interaction. The method is called resetInteraction().
As usual, I hope you will have fun with CpGears and if you have any suggestion or comments about it, please let me know.
Posted in CpGears | No Comments »
Tuesday, 29 March 2011Posted by Whyves

It seems that CpGears users have the wrong impression that CpGears doesn’t handle native Captivate events such as CPSlideEnterEvent and CPMovieStartEvent. Actually, CpGears offers a way for monitoring all native Captivate events and I decided to create a small article on the CpGears site to demonstrate how. I have also included a sample project that monitors the changing of slides as well as when the presentation is playing or paused.
Since all widgets containing code that monitors such events need to be compiled, I took the liberty of compiling all native Captivate events in a single captivate.swc file. This way, you can add it to your FlashDevelop project and not worry about where the event classes are located on you PC. You can find the SWC file in the downloads section of the CpGears site or just by clicking here.
By the way, I would like to hear from those that tried CpGears and have them give me their impressions …
Posted in Captivate, CpGears | 3 Comments »
Thursday, 03 March 2011Posted by Whyves
Just wrote a new article on another very powerful feature of CpGears: the eventing mechanism. In CpGears, you can know when a widget has changed its visibility. Even more powerful is to know when a Captivate Variable has changed its value. Check it out on google code!
And if you attend my presentation on widgets at the ALS 2011, just make sure to let me know if you like CpGears or not!

Posted in CpGears | 2 Comments »
Sunday, 27 February 2011Posted by Whyves
Well, I guess it has been long enough since I last promised I would release CpGears. In fact, CpGears has always been available on Google Code but it never had any documentation showing how to use it. Today, I spent a big portion of my day writing articles on how to use CpGears.
So, the Wiki section contains an Article showing you how to create a Static Widget in CpGears and another one on how to use its logging mechanism. In the Downloads section, you can find the CpGears SWC component as well as a demo project for a Static Widget.
Finally, for the brave ones, I also published the CpGears API.
CpGears is in essence functional but keep in mind that it’s still under development and that it may have a few bugs here and there. I have tried it on many widgets I built in the last few months and I think that the workflow is solid.
If you have questions or suggestions, please make sure to post them here or on the Google Site. That will be the only way the API will progress and be useful to more and more developers.
Looking forward to you comments!
Posted in CpGears | No Comments »
Thursday, 25 November 2010Posted by Whyves
Funny, it seems that question widgets are this week’s topic of choice. First Tristan wrote a very nice article about how to create one and now I will ask your collaboration on the same topic. I am currently working on providing a Question Widget template in CpGears. I found out that the best way to test these templates are by creating a widget that will use it. That’s what I did with the Image Zoom Widget and the Static Widget template. So, I want to create some type of Question widget. I think there are so many things that I can do, starting with improving the current question types available in Captivate. However, I would like to hear from you on the subject. I know some suggestions have been made through the Wish List but I would like to have more ideas.
So, what type of question widget would you like to see created? Or what type of extension would you like to see added to the existing question types? I’m also curious to hear what types of question you use most when creating a quiz? I was thinking of creating a more jazzed up version of some question types. Would that be helpful? So, please feel free to express yourself!
Posted in Captivate, CpGears, Widget | 1 Comment »
Wednesday, 20 October 2010Posted by Whyves
I had an e-mail yesterday regarding some specific AS3 question on how to lock the playbar’s progress bar. Micheal already created such a widget in AS2 and made it available on his blog. However, he didn’t find the time yet to create an AS3 version. So, with that in mind, I decided to take a look at it and investigated the issue. I will post the new AS3 Playbar Lock Widget in a subsequent post as I’m not totally finished with it yet.
To create the widget, I chose to give a dry run to the static widget class in CpGears. In essence, I was eating my own dog food. Turns out that some chunks were really sweet while others left a bitter taste in my mouth. Fortunately, the bitterness will be very easy to correct and I’m already adding some sweeteners.
One of the new feature of CpGears is the handling of the life cycle of the different widget views (Runtime, Edit, Stage and Preview). I think that it will be a very much appreciated feature but it does require a little bit of fine tuning. On the other hand, one of the sweet spot was using the integrated logger. That did help me a lot! So, stay tune for the official release of CpGears but it will take more time as it’s a lot of work!
Posted in Captivate, CpGears | 4 Comments »
Sunday, 03 October 2010Posted by Whyves
I have been very quiet for the last few weeks. So, I decided to break radio silence and let you in on what I’m actually working on. I’m currently working on creating my own Captivate Widget API that will be called CpGears. As you read this, I’m sure that one question will come to mind: “Why are you doing this? Tristan already created his very good WidgetFactory API” Well, that’s true; Tristan did an amazing job with his API but I want to do mine for specific reasons:
- Personal challenge and accomplishment
- Tristan wants his API to be accessible to developers of every caliber while I want mine targetted to more advanced users.
- Having more than one option is always a good thing. Just take a look at all the similar AS3 libraries out there.
I’m almost done with the Static widget and I will soon start working on the other two types: Interactive and Question. Some of the things that I’m adding with my API are:
- A logger interface so you can log and trace messages from your widgets.
- A different way for handling the widget flow/lifecycle.
- A more object oriented approach to accessing the widget data. I don’t like the CpMovieHandle, CpSlideHandle, CpSlideProperties and other native widget classes. So, I offer a more structured interface for accessing that data.
The API will be developed under a MIT Open Source License and be hosted on Google Code. In order to make sure that I don’t directly compete with Tristan and his API, I will make mine only Cp5 compatible so people that want to develop widgets for both the Cp4 and Cp5 plateforms will still have to rely on Widget Factory. By the way, Tristan is aware of this and we have discussed that a few months ago.
So, come back and visit us in 2 or 3 weeks. I’m actually advancing at a turtle pace since I don’t have that much free time on my hands.
Posted in AS3, Captivate, Cp5, CpGears | 14 Comments »