// **************************************************************************** // // ** ** // // ** Class : cMenuButton ** // // ** ** // // ** Purpose : cToolbarButton subclass for use with rebar ** // // ** ** // // ** Author : Ulbe Stellema ** // // ** Data Access Worldwide ** // // ** ** // // ** Date : March 1, 2000 ** // // ** ** // // **************************************************************************** // Use cToolbarButton.pkg Use cMenu.pkg Register_Function Private.TrackingState Returns Integer Class cMenuButton Is A cToolbarButton Procedure Construct_Object Forward Send Construct_Object Set phmOnDropDown To msg_DoTrackPopup // Public properties Property String psStatusHelp Property String psShadowStatusHelp "(unavailable)" Property Handle phoMenu End_Procedure // Construct_Object Procedure OnHotItemEntering Integer hoOldButton Returns Integer Integer iStatusBar String sHelp If (Private.TrackingState(Self) <> 0) Begin Delegate Get StatusBar_Id To iStatusBar If (iStatusBar <> 0) Begin Send Initialize_Menu To iStatusBar Get psStatusHelp To sHelp If (sHelp <> "" And (Not(pbEnabled(Self)))) Move (sHelp * psShadowStatusHelp(Self)) To sHelp Send Show_Status_Help To iStatusBar sHelp End // If (iStatusBar <> 0) Begin End // If (Private.TrackingState(Self) <> 0) Begin End_Procedure // OnHotItemEntering Procedure OnClick Integer iButton iStatusBar String sHelp Delegate Get StatusBar_Id To iStatusBar If (iStatusBar <> 0) Begin Send Initialize_Menu To iStatusBar Get psStatusHelp To sHelp If (sHelp <> "" And (Not(pbEnabled(Self)))) Move (sHelp * psShadowStatusHelp(Self)) To sHelp Send Show_Status_Help To iStatusBar sHelp End // If (iStatusBar <> 0) Begin Move (SendMessage(Window_Handle(Self),TB_GETHOTITEM,0,0)) To iButton Send TrackPopup iButton End_Procedure // OnClick End_Class // cMenuButton