// // Purposes.. This progressbar is one in the style of Internet explorer. // You can see it used in wizards. // // Author.... Peter H. van Wijk // Date...... 02/10-2007 // Support... Not available // // Revision History: Use cProgressBar.pkg Define PBS_MARQUEE for |CI08 Define PBS_SMOOTHREVERSE for |CI10 Define PBM_SETMARQUEE for (WM_USER+10) Class cWExProgressBar is a cProgressBar Procedure Construct_Object Forward Send Construct_Object // Define new Properties: { MethodType=Property } { InitialValue=False } { Category=X-Org } Property Boolean pbMarquee False { MethodType=Property } { InitialValue=100 } { Category=X-Org } Property Integer piMarqueeUpdate 100 // Create child objects: // Set property values: End_Procedure Procedure End_Construct_Object Forward Send End_Construct_Object // Add your code that needs to be executed at the end of the object construction here: End_Procedure // Create and augment procedures and functions Procedure doStartMarquee Integer iMarqueeUpdate Get piMarqueeUpdate to iMarqueeUpdate Send Windows_Message PBM_SETMARQUEE True iMarqueeUpdate Send Page True Set pbMarquee to True End_Procedure // doStartMarquee Procedure doStopMarquee Send Windows_Message PBM_SETMARQUEE False 0 Send Page True Set pbMarquee to False End_Procedure // doStopMarquee Procedure doToggleMarquee Boolean bMarquee Integer iMarqueeUpdate Get pbMarquee to bMarquee Get piMarqueeUpdate to iMarqueeUpdate Send Windows_Message PBM_SETMARQUEE bMarquee iMarqueeUpdate Send Page True End_Procedure // doMarquee { NoDoc=True } Procedure Page_Object Integer iState Handle hWnd Get Window_Handle to hWnd If (hWnd=0 and iState) Begin Set Window_Style to PBS_VERTICAL False Set Window_Style to PBS_SMOOTH True Set Window_Style to PBS_MARQUEE True Set Window_Style to PBS_SMOOTHREVERSE True Forward Send Page_Object True End Else Forward Send Page_Object iState End_Procedure End_Class //cWExProgressBar