module DECW$CDPLAYER
    names = case_sensitive

object
!***VUIT_Generate_Callback_Tags ***
    MainBulletinBoard: XmBulletinBoard 
        {
        arguments
            {
            XmNx = 0;
            XmNy = 1;
            XmNwidth = 548;
            XmNheight = 355;
            XmNborderWidth = 1;
            XmNresizePolicy = XmRESIZE_NONE;
            XmNnoResize = true;
            };
        controls
            {
            XmPushButton BackspaceButton;
            XmPushButton ForwardspaceButton;
            XmPushButton PlayPauseButton;
            XmPushButton StopButton;
            XmScale TrackSelectSlider;
            XmLabel MainTitleLabel;
            XmLabel TrackSelectLabel;
            XmPushButton OffButton;
            XmBulletinBoard DisplayBulletinBoard;
            };
        };
    TotalTracks: XmLabel 
        {
        arguments
            {
            XmNx = 438;
            XmNy = 19;
            XmNlabelString = 
            compound_string("00");
            };
        callbacks
            {
            MrmNcreateCallback = procedures
                {
                WidgetCreateCallback(TotalTracksWidgetID);
                };
            };
        };
    TrackPlaying: XmLabel 
        {
        arguments
            {
            XmNx = 280;
            XmNy = 20;
            XmNlabelString = 
            compound_string("00");
            };
        callbacks
            {
            MrmNcreateCallback = procedures
                {
                WidgetCreateCallback(TrackPlayingWidgetID);
                };
            };
        };
    PlayingIndicator: XmLabel 
        {
        arguments
            {
            XmNx = 278;
            XmNy = 109;
            XmNlabelString = 
            compound_string("Playing");
            XmNfontList = font_table(font('-*-ITC AVANT GARDE GOTHIC-DEMI-R-*--*-120-*-*-*-*-ISO8859-1'));
            };
        callbacks
            {
            MrmNcreateCallback = procedures
                {
                WidgetCreateCallback(PlayingIndicatorWidgetID);
                };
            };
        };
    PausedIndicator: XmLabel 
        {
        arguments
            {
            XmNx = 350;
            XmNy = 110;
            XmNlabelString = 
            compound_string("Paused");
            XmNfontList = font_table(font('-*-ITC AVANT GARDE GOTHIC-DEMI-R-*--*-120-*-*-*-*-ISO8859-1'));
            };
        callbacks
            {
            MrmNcreateCallback = procedures
                {
                WidgetCreateCallback(PausedIndicatorWidgetID);
                };
            };
        };
    StoppedIndicator: XmLabel 
        {
        arguments
            {
            XmNx = 420;
            XmNy = 110;
            XmNlabelString = 
            compound_string("Stopped");
            XmNfontList = font_table(font('-*-ITC AVANT GARDE GOTHIC-DEMI-R-*--*-120-*-*-*-*-ISO8859-1'));
            XmNwidth = 76;
            };
        callbacks
            {
            MrmNcreateCallback = procedures
                {
                WidgetCreateCallback(StoppedIndicatorWidgetID);
                };
            };
        };
    BackspaceButton: XmPushButton 
        {
        arguments
            {
            arguments Button_ResourceList;
            XmNx = 220;
            XmNy = 215;
            XmNlabelPixmap = icon(color_table=icon_ct,
                '                ',
                '                ',
                '**      *      *',
                '**     **     **',
                '**    ***    ***',
                '**   ****   ****',
                '**  *****  *****',
                '** ****** ******',
                '****************',
                '** ****** ******',
                '**  *****  *****',
                '**   ****   ****',
                '**    ***    ***',
                '**     **     **',
                '**      *      *',
                '                ');
            };
        callbacks
            {
            XmNactivateCallback = procedures
                {
                ButtonPressCallback(BackButtonWidgetID);
                };
            };
        };
    ForwardspaceButton: XmPushButton 
        {
        arguments
            {
            arguments Button_ResourceList;
            XmNx = 300;
            XmNy = 215;
            XmNlabelPixmap = icon(color_table=icon_ct,
                '                ',
                '                ',
                '*      *      **',
                '**     **     **',
                '***    ***    **',
                '****   ****   **',
                '*****  *****  **',
                '****** ****** **',
                '****************',
                '****** ****** **',
                '*****  *****  **',
                '****   ****   **',
                '***    ***    **',
                '**     **     **',
                '*      *      **',
                '                ');
            };
        callbacks
            {
            XmNactivateCallback = procedures
                {
                ButtonPressCallback(ForwButtonWidgetID);
                };
            };
        };
    PlayPauseButton: XmPushButton 
        {
        arguments
            {
            arguments Button_ResourceList;
            XmNx = 380;
            XmNy = 215;
            XmNlabelPixmap = icon(color_table=icon_ct,
                '                                ',
                '                                ',
                ' **                   **  **    ',
                ' ****                 **  **    ',
                ' ******               **  **    ',
                ' **  ****             **  **    ',
                ' **    ****           **  **    ',
                ' **      ****         **  **    ',
                ' **        ****       **  **    ',
                ' **      ****         **  **    ',
                ' **    ****           **  **    ',
                ' **  ****             **  **    ',
                ' ******               **  **    ',
                ' ****                 **  **    ',
                ' **                   **  **    ',
                '                                ');
            };
        callbacks
            {
            XmNactivateCallback = procedures
                {
                ButtonPressCallback(PlayPauseButtonWidgetID);
                };
            };
        };
    StopButton: XmPushButton 
        {
        arguments
            {
            arguments Button_ResourceList;
            XmNx = 460;
            XmNy = 215;
            XmNlabelPixmap = icon(color_table=icon_ct,
                '                ',
                '                ',
                '  **************',
                '  **************',
                '  **          **',
                '  **          **',
                '  **          **',
                '  **          **',
                '  **          **',
                '  **          **',
                '  **          **',
                '  **          **',
                '  **          **',
                '  **************',
                '  **************',
                '                ');
            };
        callbacks
            {
            XmNactivateCallback = procedures
                {
                ButtonPressCallback(StopButtonWidgetID);
                };
            };
        };
    TrackSelectSlider: XmScale 
        {
        arguments
            {
            XmNx = 10;
            XmNy = 262;
            XmNborderWidth = 0;
            XmNwidth = 520;
            XmNheight = 40;
            XmNprocessingDirection = XmMAX_ON_RIGHT;
            XmNorientation = XmHORIZONTAL;
            XmNmaximum = 100;
            XmNshowValue = true;
            XmNvalue = 1;
            XmNminimum = 0;
            };
        callbacks
            {
            MrmNcreateCallback = procedures
                {
                WidgetCreateCallback(TrackSelectSliderWidgetID);
                };
            XmNvalueChangedCallback = procedures
                {
                ButtonPressCallback(TrackSelectSliderWidgetID);
                };
            };
        };
    TrackSelectLabel: XmLabel 
        {
        arguments
            {
            XmNx = 10;
            XmNy = 306;
            XmNlabelString = 
            compound_string("Track Select");
            XmNfontList = font_table(font('-*-ITC AVANT GARDE GOTHIC-DEMI-R-*--*-180-*-*-*-*-ISO8859-1'));
            };
        };
    MainTitleLabel: XmLabel 
        {
        arguments
            {
            XmNx = 97;
            XmNy = 7;
            XmNlabelString = 
            compound_string("Compact Disc Player");
            XmNfontList = font_table(font('-*-ITC AVANT GARDE GOTHIC-DEMI-O-*--*-240-*-*-*-*-ISO8859-1'));
            XmNwidth = 347;
            };
        };
    TrackPlayingLabel: XmLabel 
        {
        arguments
            {
            arguments Label_ResourceList;
            XmNx = 180;
            XmNy = 10;
            XmNlabelString = 
            compound_string("Track",separate=true) &
                compound_string("Playing",separate=true);
            };
        };
    TotalTracksLabel: XmLabel 
        {
        arguments
            {
            arguments Label_ResourceList;
            XmNx = 340;
            XmNy = 10;
            XmNlabelString = 
            compound_string("Total",separate=true) &
                compound_string("Tracks",separate=true);
            };
        };
    DisplayBulletinBoard: XmBulletinBoard 
        {
        arguments
            {
            XmNx = 10;
            XmNy = 62;
            XmNwidth = 520;
            XmNheight = 143;
            XmNborderWidth = 1;
            XmNresizePolicy = XmRESIZE_NONE;
            XmNshadowThickness = 4;
            };
        controls
            {
            XmLabel TrackPlayingLabel;
            XmLabel TrackPlaying;
            XmLabel TotalTracksLabel;
            XmLabel TotalTracks;
            XmLabel PlayingIndicator;
            XmLabel PausedIndicator;
            XmLabel StoppedIndicator;
            XmLabel TimerLEDWidget;
            };
        };
    TimerLEDWidget: XmLabel 
        {
        arguments
            {
            XmNx = 12;
            XmNy = 85;
            XmNlabelString = 
            compound_string("00:00");
            };
        callbacks
            {
            MrmNcreateCallback = procedures
                {
                WidgetCreateCallback(TimerLEDWidgetID);
                };
            };
        };
    OffButton: XmPushButton 
        {
        arguments
            {
            arguments PowerButtonResourceList;
            XmNx = 10;
            XmNlabelString = 
            compound_string("Off");
            XmNy = 215;
            };
        callbacks
            {
            XmNactivateCallback = procedures
                {
                ButtonPressCallback(OffButtonWidgetID);
                };
            };
        };

list
    Button_ResourceList: arguments
        {
        XmNlabelType = XmPIXMAP;
        XmNheight = 25;
        XmNwidth = 75;
        };

list
    Label_ResourceList: arguments
        {
        XmNfontList = font_table(font('-*-ITC AVANT GARDE GOTHIC-DEMI-R-*--*-180-*-*-*-*-ISO8859-1'));
        };
    PowerButtonResourceList: arguments
        {
        XmNlabelType = XmSTRING;
        XmNheight = 25;
        XmNwidth = 75;
        };

procedure
!***VUIT_Action UserProc PerformWidgetCreateWork ***

    WidgetCreateCallback(integer);
!***VUIT_Action UserProc PerformButtonPressWork ***

    ButtonPressCallback(integer);
    grunge;

value

    icon_ct   :color_table(background color = ' ',foreground color = '*');

!***VUIT_Generate ***

    TrackPlayingWidgetID: exported 0;
!***VUIT_Generate ***

    TotalTracksWidgetID: exported 1;
!***VUIT_Generate ***

    PlayingIndicatorWidgetID: exported 2;
!***VUIT_Generate ***

    PausedIndicatorWidgetID: exported 3;
!***VUIT_Generate ***

    StoppedIndicatorWidgetID: exported 4;
!***VUIT_Generate ***

    TrackSelectSliderWidgetID: exported 5;
!***VUIT_Generate ***

    BackButtonWidgetID: exported 6;
!***VUIT_Generate ***

    ForwButtonWidgetID: exported 7;
!***VUIT_Generate ***

    PlayPauseButtonWidgetID: exported 8;
!***VUIT_Generate ***

    StopButtonWidgetID: exported 9;

value
    ICON_PIXMAP_17X17: exported icon(color_table=icon_ct,
        '                 ',
        '              ** ',
        '              ** ',
        '              ** ',
        '              ** ',
        '  *****   ****** ',
        ' ******* ******* ',
        ' **   ** **   ** ',
        ' **   ** **   ** ',
        ' **      **   ** ',
        ' **      **   ** ',
        ' **   ** **   ** ',
        ' **   ** **   ** ',
        ' ******* ******* ',
        '  *****   ****** ',
        '                 ',
        '                 ');

value
    ICON_PIXMAP_32X32: exported icon(color_table=icon_ct,
        '* * * * * * * * * * * * * * * * ',
        ' * * * * * * * * * * * *     ***',
        '* * * * * * * * * * * * *    ** ',
        ' * * * * * * * * * * * *   * ***',
        '* * * * * * * * * * * * *   *** ',
        ' * * * * * * * * * * * *   * ***',
        '* * * * * * * * * * * * *   *** ',
        ' * * * * * * * * * * * *   * ***',
        '* * * * * * * * * * * * *   *** ',
        ' * * * * * * * * * * * *   * ***',
        '* * * * * * * * * * * * *   *** ',
        ' * * * * * * * * * * * *   * ***',
        '*            ** *           *** ',
        '             ***           * ***',
        '*   * * * * ***     * * * * *** ',
        '   * * * * * ***   * * * * * ***',
        '*   * ***** ***   * ******* *** ',
        '   * ******* ***   ********* ***',
        '*   *** * * ***   * *** *   *** ',
        '   * *** * *****   *** *   * ***',
        '*   *** * *****   * *** *   *** ',
        '   * *** * *   *   *** *   * ***',
        '*   *** * *   *   * *** *   *** ',
        '   * *** *   ***   *** *   * ***',
        '*   ***      **   * **      *** ',
        '   * **    * ***   **      * ***',
        '*   * * * * ***   * * * * * *** ',
        '   * * * * * ***   * * * * * ***',
        '*************** *  ************ ',
        ' *************** * *************',
        '* * * * * * * * * * * * * * * * ',
        ' * * * * * * * * * * * * * * * *');

value
    ICON_PIXMAP_50X50: exported icon(color_table=icon_ct,
        '* * * * * * * * * * * * * * * * * * * * * * * * * ',
        ' * * * * * * * * * * * * * * * * * * * * * * * * *',
        '* * * * * * * * * * * * * * * * * * * * * * * * * ',
        ' * * * * * * * * * * * * * * * * * * * *       * *',
        '* * * * * * * * * * * * * * * * * * * * *       * ',
        ' * * * * * * * * * * * * * * * * * * * *   * *** *',
        '* * * * * * * * * * * * * * * * * * * * *   *** * ',
        ' * * * * * * * * * * * * * * * * * * * *   * *** *',
        '* * * * * * * * * * * * * * * * * * * * *   *** * ',
        ' * * * * * * * * * * * * * * * * * * * *   * *** *',
        '* * * * * * * * * * * * * * * * * * * * *   *** * ',
        ' * * * * * * * * * * * * * * * * * * * *   * *** *',
        '* * * * * * * * * * * * * * * * * * * * *   *** * ',
        ' * * * * * * * * * * * * * * * * * * * *   * *** *',
        '* * * * * * * * * * * * * * * * * * * * *   *** * ',
        ' * * * * * * * * * * * * * * * * * * * *   * *** *',
        '* * * * * * * * * * * * * * * * * * * * *   *** * ',
        ' * *                  ** * *               * *** *',
        '* *                   *** *                 *** * ',
        ' * *   * * * * * * * *** *   * * * * * * * * *** *',
        '* *   * * * * * * * * *** *   * * * * * * * *** * ',
        ' * *   * *********** *** *   * **********  * *** *',
        '* *   * ************* *** *   ***********   *** * ',
        ' * *   *** * * * *   *** *   * *** * * *   * *** *',
        '* *   * *** * * *   * *** *   *** * * * *   *** * ',
        ' * *   *** * * * *   *** *   * *** * * *   * *** *',
        '* *   * *** * * *   * *** *   *** * * * *   *** * ',
        ' * *   *** * * * ******* *   * *** * * *   * *** *',
        '* *   * *** * * * ******* *   *** * * * *   *** * ',
        ' * *   *** * * * * * * * *   * *** * * *   * *** *',
        '* *   * *** * * * * * * * *   *** * * * *   *** * ',
        ' * *   *** * * * * * * * *   * *** * * *   * *** *',
        '* *   * *** * * * * * * * *   *** * * * *   *** * ',
        ' * *   *** * * * * * * * *   * *** * * *   * *** *',
        '* *   * *** * * * *     * *   *** * * * *   *** * ',
        ' * *   *** * * * *     * *   * *** * * *   * *** *',
        '* *   * *** * * *   * *** *   *** * * * *   *** * ',
        ' * *   *** * * * *   *** *   * *** * * *   * *** *',
        '* *   * *** * * *   * *** *   *** * * * *   *** * ',
        ' * *   *** * * * *   *** *   * *** * * *   * *** *',
        '* *   * **          * *** *   ***           *** * ',
        ' * *   ***           *** *   * **          * *** *',
        '* *   * * * * * * * * *** *   * * * * * * * *** * ',
        ' * *   * * * * * * * *** *   * * * * * * * * *** *',
        '* *   ******************* *  ****************** * ',
        ' * *  ****************** * * ******************* *',
        '* * * * * * * * * * * * * * * * * * * * * * * * * ',
        ' * * * * * * * * * * * * * * * * * * * * * * * * *',
        '* * * * * * * * * * * * * * * * * * * * * * * * * ',
        ' * * * * * * * * * * * * * * * * * * * * * * * * *');

value
    ICON_PIXMAP_75X75: exported icon(color_table=icon_ct,
        '* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *',
        ' * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ',
        '* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *',
        ' * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ',
        '* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *',
        ' * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ',
        '* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *',
        ' * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ',
        '* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *',
        ' * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ',
        '* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *',
        ' * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ',
        '* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *',
        ' * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *      ** * * ',
        '* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *       *** * *',
        ' * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *   * *** * * ',
        '* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *   * * *** * *',
        ' * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *   * *** * * ',
        '* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *   * * *** * *',
        ' * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *   * *** * * ',
        '* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *   * * *** * *',
        ' * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *   * *** * * ',
        '* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *   * * *** * *',
        ' * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *   * *** * * ',
        '* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *   * * *** * *',
        ' * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *   * *** * * ',
        '* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *   * * *** * *',
        ' * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *   * *** * * ',
        '* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *   * * *** * *',
        ' * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *   * *** * * ',
        '* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *   * * *** * *',
        ' * * *                           * * * *                         * *** * * ',
        '* * *                             *** *                         * * *** * *',
        ' * *     * * * * * * * * * * * * *** *   * * * * * * * * * * * * * *** * * ',
        '* * *   * * * * * * * * * * * * * *** *   * * * * * * * * * * * * * *** * *',
        ' * *   * * * * * * * * * * * * * *** *   * * * * * * * * * * * * * *** * * ',
        '* * *   * * * * * * * * * * * * * *** *   * * * * * * * * * * * * * *** * *',
        ' * *   * * ******************* * *** *   * * *****************   * *** * * ',
        '* * *   * ********************* * *** *   * ******************  * * *** * *',
        ' * *   * * *** * * * * * * *   * *** *   * * *** * * * * * * *   * *** * * ',
        '* * *   * *** * * * * * * *   * * *** *   * *** * * * * * * *   * * *** * *',
        ' * *   * * *** * * * * * * *   * *** *   * * *** * * * * * * *   * *** * * ',
        '* * *   * *** * * * * * * *   * * *** *   * *** * * * * * * *   * * *** * *',
        ' * *   * * *** * * * * * * *   * *** *   * * *** * * * * * * *   * *** * * ',
        '* * *   * *** * * * * * * *   * * *** *   * *** * * * * * * *   * * *** * *',
        ' * *   * * *** * * * * * * *   * *** *   * * *** * * * * * * *   * *** * * ',
        '* * *   * *** * * * * * * *   * * *** *   * *** * * * * * * *   * * *** * *',
        ' * *   * * *** * * * * * * ********* *   * * *** * * * * * * *   * *** * * ',
        '* * *   * *** * * * * * * * ********* *   * *** * * * * * * *   * * *** * *',
        ' * *   * * *** * * * * * * * * * * * *   * * *** * * * * * * *   * *** * * ',
        '* * *   * *** * * * * * * * * * * * * *   * *** * * * * * * *   * * *** * *',
        ' * *   * * *** * * * * * * * * * * * *   * * *** * * * * * * *   * *** * * ',
        '* * *   * *** * * * * * * * * * * * * *   * *** * * * * * * *   * * *** * *',
        ' * *   * * *** * * * * * * * * * * * *   * * *** * * * * * * *   * *** * * ',
        '* * *   * *** * * * * * * * * * * * * *   * *** * * * * * * *   * * *** * *',
        ' * *   * * *** * * * * * * *      ** *   * * *** * * * * * * *   * *** * * ',
        '* * *   * *** * * * * * * *       *** *   * *** * * * * * * *   * * *** * *',
        ' * *   * * *** * * * * * * *   * *** *   * * *** * * * * * * *   * *** * * ',
        '* * *   * *** * * * * * * *   * * *** *   * *** * * * * * * *   * * *** * *',
        ' * *   * * *** * * * * * * *   * *** *   * * *** * * * * * * *   * *** * * ',
        '* * *   * *** * * * * * * *   * * *** *   * *** * * * * * * *   * * *** * *',
        ' * *   * * *** * * * * * * *   * *** *   * * *** * * * * * * *   * *** * * ',
        '* * *   * *** * * * * * * *   * * *** *   * *** * * * * * * *   * * *** * *',
        ' * *   * * *** * * * * * * *   * *** *   * * *** * * * * * * *   * *** * * ',
        '* * *   * ***                 * * *** *   * ***                 * * *** * *',
        ' * *   * * **                  * *** *   * * **                  * *** * * ',
        '* * *   * * * * * * * * * * * * * *** *   * * * * * * * * * * * * * *** * *',
        ' * *   * * * * * * * * * * * * * *** *   * * * * * * * * * * * * * *** * * ',
        '* * *   * * * * * * * * * * * * * *** *   * * * * * * * * * * * * * *** * *',
        ' * *   * * * * * * * * * * * * * *** * *   * * * * * * * * * * * * *** * * ',
        '* * * ***************************** * * * ***************************** * *',
        ' * * * *************************** * * * ***************************** * * ',
        '* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *',
        ' * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ',
        '* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *');

    OffButtonWidgetID: exported 10;
    TimerLEDWidgetID: 11;

end module;

