[31m------------------------------------------------------------------------------[m
[31m-- Gmface-Gm_Application-Gtk_Interface : GtkAda Gm interface of Gmface.     --[m
[31m------------------------------------------------------------------------------[m

[01;34mwith[m Gmface[31m.[mGm_Virtual[31m.[mGmface[31m.[mGmface_Work[31m;[m
[01;34muse[m Gmface[31m.[mGm_Virtual[31m.[mGmface[31m.[mGmface_Work[31m;[m
[01;34mwith[m Gmface[31m.[mGm_Virtual[31m.[mGmidi[31m.[mGmidi_Work[31m;[m
[01;34muse[m Gmface[31m.[mGm_Virtual[31m.[mGmidi[31m.[mGmidi_Work[31m;[m

[01;34mwith[m Gmface[31m.[mGm_Common[31m;[m                  [01;34muse[m Gmface[31m.[mGm_Common[31m;[m 
[01;34mwith[m Gmface[31m.[mGm_Virtual[31m.[mGmface[31m.[mGmface_Plugins[31m;[m
[01;34muse[m Gmface[31m.[mGm_Virtual[31m.[mGmface[31m.[mGmface_Plugins[31m;[m
[01;34mwith[m Gmface[31m.[mGm_Processing[31m.[mGm_Common[31m;[m    [01;34muse[m Gmface[31m.[mGm_Processing[31m.[mGm_Common[31m;[m
[01;34mwith[m Gmface[31m.[mGm_Processing[31m.[mGmface[31m.[mWork_Processing[31m;[m
[01;34muse[m Gmface[31m.[mGm_Processing[31m.[mGmface[31m.[mWork_Processing[31m;[m

[01;34mwith[m Gmface[31m.[mGm_Application[31m.[mGtk_Plugins_Initialization[31m;[m
[01;34muse[m Gmface[31m.[mGm_Application[31m.[mGtk_Plugins_Initialization[31m;[m

[01;34mwith[m Gmface[31m.[mGm_Midi[31m.[mDrivers[31m;[m            [01;34muse[m Gmface[31m.[mGm_Midi[31m.[mDrivers[31m;[m

[01;34mwith[m Gmface[31m.[mGm_Application[31m.[mPreferences[31m;[m [01;34muse[m Gmface[31m.[mGm_Application[31m.[mPreferences[31m;[m

[01;34mwith[m Glib[31m.[mApplication[31m;[m                  [01;34muse[m Glib[31m.[mApplication[31m;[m
[01;34mwith[m Glib[31m;[m                              [01;34muse[m Glib[31m;[m
[01;34mwith[m Glib[31m.[mConvert[31m;[m                      [01;34muse[m Glib[31m.[mConvert[31m;[m
[01;34mwith[m Glib[31m.[mError[31m;[m                        [01;34muse[m Glib[31m.[mError[31m;[m
[01;34mwith[m Glib[31m.[mValues[31m;[m                       [01;34muse[m Glib[31m.[mValues[31m;[m
[01;34mwith[m Glib[31m.[mObject[31m;[m                       [01;34muse[m Glib[31m.[mObject[31m;[m

[01;34mwith[m Gtk[31m.[mWidget[31m;[m                        [01;34muse[m Gtk[31m.[mWidget[31m;[m
[01;34mwith[m Gtk[31m.[mDialog[31m;[m                        [01;34muse[m Gtk[31m.[mDialog[31m;[m
[01;34mwith[m Gtk[31m.[mAbout_Dialog[31m;[m                  [01;34muse[m Gtk[31m.[mAbout_Dialog[31m;[m


[01;34mwith[m Gtk[31m.[mHandlers[31m;[m                      
[01;34mpragma[m [01;30mElaborate_All[m [31m([mGtk[31m.[mHandlers[31m);[m
[01;34muse[m Gtk[31m.[mHandlers[31m;[m

[01;34mwith[m GNAT[31m.[mStrings[31m;[m

[01;34mwith[m Gtk[31m.[mArguments[31m;[m                     [01;34muse[m Gtk[31m.[mArguments[31m;[m


[01;34mwith[m Gtk[31m.[mEnums[31m;[m                         [01;34muse[m Gtk[31m.[mEnums[31m;[m
[01;34mwith[m Gtk[31m.[mStock[31m;[m                         [01;34muse[m Gtk[31m.[mStock[31m;[m


[01;34mwith[m Gtk[31m.[mTree_Selection[31m;[m                [01;34muse[m Gtk[31m.[mTree_Selection[31m;[m
[01;34mwith[m Gtk[31m.[mTree_Sortable[31m;[m                 [01;34muse[m Gtk[31m.[mTree_Sortable[31m;[m
[01;34mwith[m Gtk[31m.[mTree_View_Column[31m;[m              [01;34muse[m Gtk[31m.[mTree_View_Column[31m;[m
[01;34mwith[m Gtk[31m.[mCell_Renderer_Text[31m;[m            [01;34muse[m Gtk[31m.[mCell_Renderer_Text[31m;[m
[01;34mwith[m Gtk[31m.[mCell_Renderer_Toggle[31m;[m          [01;34muse[m Gtk[31m.[mCell_Renderer_Toggle[31m;[m

[01;34mwith[m Gtk[31m.[mAdjustment[31m;[m                    [01;34muse[m Gtk[31m.[mAdjustment[31m;[m
[01;34mwith[m Gtk[31m.[mScrolled_Window[31m;[m               [01;34muse[m Gtk[31m.[mScrolled_Window[31m;[m

[01;34mwith[m Gtk[31m.[mMain[31m;[m                          [01;34muse[m Gtk[31m;[m

[01;34mwith[m Gtkada[31m.[mFile_Selection[31m;[m             [01;34muse[m Gtkada[31m.[mFile_Selection[31m;[m
[01;34mwith[m Gtk[31m.[mFile_Chooser[31m;[m                  [01;34muse[m Gtk[31m.[mFile_Chooser[31m;[m
[01;34mwith[m Gtk[31m.[mFile_Chooser_Dialog[31m;[m           [01;34muse[m Gtk[31m.[mFile_Chooser_Dialog[31m;[m


[01;34mwith[m Ada[31m.[mCalendar[31m.[mFormatting[31m;[m           [01;34muse[m Ada[31m.[mCalendar[31m;[m

[01;34mwith[m Ada[31m.[mStrings[31m.[mFixed[31m;[m                 [01;34muse[m Ada[31m.[mStrings[31m;[m

[01;34mwith[m Text_Io[31m;[m                           [01;34muse[m Text_Io[31m;[m

[01;34mpackage[m [01;34mbody[m Gmface[31m.[mGm_Application[31m.[mGtk_Interface [01;34mis[m
   
   [01;34muse[m Gtk[31m;[m
   [01;34mfunction[m [01;30mGmface_Initialize[m[31m([mWork          [31m:[m [01;34min[m Work_Access[31m;[m
			      Work_Id       [31m:[m [01;34min[m Work_Num[31m;[m
			      Process       [31m:[m [01;34min[m Work_Processing_Access[31m;[m
			      Gtk_Interface [31m:[m [01;34min[m Gtk_Interface_Pointer[31m)[m 
			     [01;34mreturn[m Gtk_Work_Window_Pointer[31m;[m
   
   [01;34mfunction[m [01;30mGmidi_Initialize[m[31m([mWork          [31m:[m [01;34min[m Work_Access[31m;[m
			     Work_Id       [31m:[m [01;34min[m Work_Num[31m;[m
			     Process       [31m:[m [01;34min[m Work_Processing_Access[31m;[m
			     Gtk_Interface [31m:[m [01;34min[m Gtk_Interface_Pointer[31m)[m 
			    [01;34mreturn[m Gtk_Work_Window_Pointer[31m;[m
         
   [31m------------------------------------------------------------------[m
   [31m--                Main action menu of Application               --[m
   [31m------------------------------------------------------------------[m
   
   [01;34mprocedure[m [01;30mNew_Action[m [31m([mAction[31m,[m Application [31m:[m [01;34min[m System[31m.[mAddress[31m);[m
   [01;34mpragma[m [01;30mConvention[m [31m([mC[31m,[m New_Action[31m);[m
   [31m--  Called when Main->New actions has been selected[m
   
   [01;34mprocedure[m [01;30mOpen_Action[m [31m([mAction[31m,[m Main_Window [31m:[m [01;34min[m System[31m.[mAddress[31m);[m
   [01;34mpragma[m [01;30mConvention[m [31m([mC[31m,[m Open_Action[31m);[m
   [31m--  Called when Main->Open actions has been selected   [m
   
   
   [01;34mprocedure[m [01;30mQuit_Action[m [31m([mAction[31m,[m Gtk_Interface [31m:[m [01;34min[m System[31m.[mAddress[31m);[m
   [01;34mpragma[m [01;30mConvention[m [31m([mC[31m,[m Quit_Action[31m);[m
   [31m--  Called when Main->Quit actions has been selected[m
   
   [01;34mprocedure[m [01;30mPreferences_Action[m [31m([mAction[31m,[m Gtk_Interface [31m:[m System[31m.[mAddress[31m);[m
   [01;34mpragma[m [01;30mConvention[m [31m([mC[31m,[m Preferences_Action[31m);[m
   [31m--  Called when Options->Preferences actions has been selected[m
   
   [01;34mprocedure[m [01;30mAbout_Action[m [31m([mAction[31m,[m Main_Window [31m:[m System[31m.[mAddress[31m);[m
   [01;34mpragma[m [01;30mConvention[m [31m([mC[31m,[m About_Action[31m);[m
   [31m--  Called when Help->About actions has been selected[m
   
   [01;34mfunction[m [01;30mClose_Window[m[31m([mWindow [31m:[m [01;34maccess[m Gtk_Window_Record'Class[31m;[m
			 App    [31m:[m Gtk_Interface_Pointer[31m)[m [01;34mreturn[m [32mBoolean[m[31m;[m
   [31m--  Called when delete-event signal is sended[m
   
   
   [01;34mprocedure[m [01;30mFocus_Window[m[31m([mWindow [31m:[m [01;34maccess[m Gtk_Window_Record'Class[31m;[m
			  App    [31m:[m Gtk_Interface_Pointer[31m);[m
   [31m--  Called when activate-focus signal is sended[m
   
   
   [01;34mprocedure[m [01;30mClose_Action[m [31m([mAction[31m,[m Application [31m:[m [01;34min[m System[31m.[mAddress[31m);[m
   [01;34mpragma[m [01;30mConvention[m [31m([mC[31m,[m Close_Action[31m);[m
   [31m--  Called when Main->Close actions has been selected[m
   
   
   [01;34mprocedure[m [01;30mFocus_Window[m[31m([mWindow [31m:[m [01;34maccess[m Gtk_Window_Record'Class[31m;[m
			 App    [31m:[m Gtk_Interface_Pointer[31m)[m [01;34mis[m
      
      
   [01;34mbegin[m
      
      [01;34mfor[m Id [01;34min[m App[31m.[mGtk_Works_Windows'[01;34mRange[m [01;34mloop[m
	 [01;34mif[m App[31m.[m[01;30mGtk_Works_Windows[m[31m([mId[31m).[mwindow [31m=[m Window [01;34mthen[m      
	    App[31m.[mCur_Window [31m:=[m Id[31m;[m
	 [01;34mend[m [01;34mif[m[31m;[m
      [01;34mend[m [01;34mloop[m[31m;[m
      
   [01;34mend[m Focus_Window[31m;[m
   
   [01;34mprocedure[m [01;30mInputs_Finalization[m[31m([mInt [31m:[m [01;34min[m Gtk_Interface_Pointer[31m)[m [01;34mis[m

   [01;34mbegin[m
      [31m--Put_Line("CUCU 0.0.0");[m
      [01;34mfor[m Device_Id [01;34min[m Int[31m.[mBandmaster[31m.[mOrchester'[01;34mRange[m [01;34mloop[m
      	 [01;34mif[m Int[31m.[mBandmaster[31m.[m[01;30mOrchester[m[31m([mDevice_Id[31m)[m [31m/=[m [01;34mnull[m [01;34mthen[m
   	    [31m--Put_Line("CUCU 0.1.0");[m
   	    [01;34mif[m Int[31m.[mBandmaster[31m.[m[01;30mOrchester[m[31m([mDevice_Id[31m).[mInput_Device_Driver [31m/=[m [01;34mnull[m [01;34mthen[m
   	       [01;34mdeclare[m
   		  Dialog [31m:[m Gtk_Dialog[31m;[m
   		  Ok    [31m:[m Gtk[31m.[mWidget[31m.[mGtk_Widget[31m;[m
   		  Label  [31m:[m Gtk_Label[31m;[m
   		  Vbox   [31m:[m Gtk_Box[31m;[m

   	       [01;34mbegin[m
   		  [31m--Put_Line("CUCU 0.1.1");[m
   		  Gtk[31m.[mDialog[31m.[m[01;30mGtk_New[m[31m([mDialog[31m,[m [31m"Halting drivers..."[m[31m,[m Int[31m.[mWindow[31m,[m Gtk[31m.[mdialog[31m.[mmodal[31m);[m
   		  [01;30mSet_Decorated[m[31m([mDialog[31m,[m False[31m);[m
   		  Vbox [31m:=[m [01;30mGet_content_area[m[31m([mDialog[31m);[m
   		  [31m--Put_Line("CUCU 0.1.1.1");[m
   		  [01;30mGtk_New[m[31m([mLabel[31m,[m [31m"Please action some controler of device named : "[m [31m&[m
   			    Int[31m.[mBandmaster[31m.[m[01;30mOrchester[m[31m([mDevice_Id[31m).[mInput_Device_Driver[31m.[mDevice_Info[31m.[mName[31m.[m[01;34mall[m[31m);[m
   		  [01;30mPack_Start[m[31m([mVbox[31m,[m Label[31m);[m
   		  [31m--Put_Line("CUCU 0.1.1.2");[m
   		  Ok [31m:=[m Gtk[31m.[mDialog[31m.[m[01;30mAdd_button[m[31m([mDialog[31m,[m [31m"Ok"[m[31m,[m Gtk[31m.[mDialog[31m.[mGtk_Response_Ok[31m);[m
   		  [01;30mSet_Response_Sensitive[m[31m([mDialog[31m,[m Gtk[31m.[mDialog[31m.[mGtk_Response_Ok[31m,[m False[31m);[m
   		  [01;30mShow_All[m[31m([mVbox[31m);[m
   		  [31m--Put_Line("CUCU 0.1.2");[m
   		  [01;34mdeclare[m
   		     [01;34mtask[m End_Message_Type [01;34mis[m


   		     [01;34mend[m End_Message_Type[31m;[m

   		     [01;34mtask[m [01;34mbody[m End_Message_Type [01;34mis[m
   		     [01;34mbegin[m


   			[31m--if Int.Bandmaster.Orchester(Device_Id).Input_Device_Driver.Device_Info.Id /= -1 then[m
   			   [01;34mif[m Int[31m.[mBandmaster[31m.[m[01;30mOrchester[m[31m([mDevice_Id[31m).[mInput_Device_Driver [31m/=[m [01;34mnull[m [01;34mthen[m
   			      [31m--Put_Line("CUCU 0.1.2.1");[m
   			      [01;30mPut_Line[m[31m([m[31m"Stopping input driver..."[m[31m);[m
   			      Int[31m.[mBandmaster[31m.[m[01;30mOrchester[m[31m([mDevice_Id[31m).[mInput_Device_Driver[31m.[mInput_Driver[31m.[mHalt[31m;[m
   			      [31m--Put_Line("CUCU 0.1.2.2");[m
   			      [01;30mPut_Line[m[31m([m[31m"Stopping tempo sync..."[m[31m);[m
   			      int[31m.[mBandmaster[31m.[m[01;30mOrchester[m[31m([mDevice_Id[31m).[mTempo_Sync[31m.[mHalt[31m;[m
   			      [31m--Put_Line("CUCU 0.1.2.3");[m
   			      [01;30mPut_Line[m[31m([m[31m"Stopping mod sequencer..."[m[31m);[m
   			      Int[31m.[mBandmaster[31m.[m[01;30mOrchester[m[31m([mDevice_Id[31m).[mMod_Seq[31m.[mHalt[31m;[m
   			      [31m--Put_Line("CUCU 0.1.2.4");[m

   			   [01;34mend[m [01;34mif[m[31m;[m
   			[31m--end if;[m
   			[01;30mSet_Response_Sensitive[m[31m([mDialog[31m,[m Gtk[31m.[mDialog[31m.[mGtk_Response_Ok[31m,[m True[31m);[m
   		     [01;34mend[m End_Message_Type[31m;[m
   		  [01;34mbegin[m
   		     [31m--Put_Line("CUCU 0.1.3");[m
   		     [01;34mcase[m Gtk[31m.[mDialog[31m.[m[01;30mRun[m[31m([mDialog[31m)[m [01;34mis[m
   			[01;34mwhen[m [01;34mothers[m [31m=>[m
   			   [31m--Text_Io.Put_Line("Destroy Dialog");[m
   			   Gtk[31m.[mDialog[31m.[m[01;30mDestroy[m[31m([mDialog[31m);[m
   		     [01;34mend[m [01;34mcase[m[31m;[m
   		     [31m--Put_Line("CUCU 0.1.3");[m
   		  [01;34mend[m[31m;[m
   	       [01;34mend[m[31m;[m
   	    [01;34mend[m [01;34mif[m[31m;[m
   	 [01;34mend[m [01;34mif[m[31m;[m
      [01;34mend[m [01;34mloop[m[31m;[m
      [01;30mPut_Line[m[31m([m[31m"Input finalization done."[m[31m);[m
   [01;34mend[m Inputs_Finalization[31m;[m

   [01;34muse[m Gtk_Work_Window_Conversions[31m;[m
   
   [01;34mfunction[m [01;30mClose_window[m[31m([mWindow [31m:[m [01;34maccess[m Gtk_Window_Record'Class[31m;[m
			 App    [31m:[m Gtk_Interface_Pointer[31m)[m [01;34mreturn[m [32mBoolean[m [01;34mis[m
      
      Only_One [31m:[m Natural [31m:=[m [35m0[m[31m;[m
      
   [01;34mbegin[m
      [31m--Put_Line("Close 0.0.0");[m
      [01;34mfor[m Id [01;34min[m [35m1[m[31m..[m[01;30mWork_Num[m[31m([mApp[31m.[mWork_Last[31m)[m [01;34mloop[m
	 [31m--Put_Line("Close 0.0.1");[m
	 [01;34mif[m App[31m.[m[01;30mGtk_Works_Windows[m[31m([mId[31m)[m [31m/=[m [01;34mnull[m [01;34mand[m [01;34mthen[m 	   
	   App[31m.[m[01;30mGtk_Works_Windows[m[31m([mId[31m).[mWindow [31m/=[m [01;34mnull[m [01;34mthen[m	    	    
	    [31m--Put_Line("Close 0.0.2");[m
	    [01;34mif[m App[31m.[m[01;30mGtk_Works_Windows[m[31m([mId[31m).[mWindow [31m=[m Window [01;34mthen[m
	       [31m--Put_Line("Close 0.0.3");[m
	       
	       [01;30mGmface_Work_Processing[m[31m([mApp[31m.[m[01;30mGtk_Works_Windows[m[31m([mId[31m).[mProcess[31m.[m[01;34mall[m[31m).[mProcess[31m.[mStop[31m;[m
	       [01;30mPut_Line[m[31m([m[31m"Processes stopped"[m[31m);[m	       
	       [01;30mGmface_Work_Processing[m[31m([mApp[31m.[m[01;30mGtk_Works_Windows[m[31m([mId[31m).[mProcess[31m.[m[01;34mall[m[31m).[mProcess[31m.[mHalt[31m;[m
	       App[31m.[m[01;30mGtk_Works_Windows[m[31m([mId[31m).[mProcess[31m.[mBox[31m.[mHalt[31m;[m
	       [01;30mPut_Line[m[31m([m[31m"Processes halted"[m[31m);[m	  
	       
	       [01;34mif[m [01;30mGtk_Gmface_Work_Window_Record[m[31m([mApp[31m.[m[01;30mGtk_Works_Windows[m[31m([mId[31m).[m[01;34mall[m[31m).[mFlow_Control [31m/=[m Glib[31m.[mMain[31m.[mNo_Source_Id [01;34mthen[m
		  
	       	  Glib[31m.[mMain[31m.[m[01;30mRemove[m[31m([m[01;30mGtk_Gmface_Work_Window_Record[m[31m([mApp[31m.[m[01;30mGtk_Works_Windows[m[31m([mId[31m).[m[01;34mall[m[31m).[mFlow_Control[31m);[m
	       	  [01;30mGtk_Gmface_Work_Window_Record[m[31m([mApp[31m.[m[01;30mGtk_Works_Windows[m[31m([mId[31m).[m[01;34mall[m[31m).[mFlow_Control [31m:=[m Glib[31m.[mMain[31m.[mNo_Source_Id[31m;[m
	       [01;34mend[m [01;34mif[m[31m;[m
	       [01;34mif[m [01;30mGtk_Gmface_Work_Window_Record[m[31m([mApp[31m.[m[01;30mGtk_Works_Windows[m[31m([mId[31m).[m[01;34mall[m[31m).[mState_Control [31m/=[m Glib[31m.[mMain[31m.[mNo_Source_Id [01;34mthen[m

	       	  Glib[31m.[mMain[31m.[m[01;30mRemove[m[31m([m[01;30mGtk_Gmface_Work_Window_Record[m[31m([mApp[31m.[m[01;30mGtk_Works_Windows[m[31m([mId[31m).[m[01;34mall[m[31m).[mState_Control[31m);[m
	       	  [01;30mGtk_Gmface_Work_Window_Record[m[31m([mApp[31m.[m[01;30mGtk_Works_Windows[m[31m([mId[31m).[m[01;34mall[m[31m).[mState_Control [31m:=[m Glib[31m.[mMain[31m.[mNo_Source_Id[31m;[m
	       [01;34mend[m [01;34mif[m[31m;[m
	       [31m---------------------------------------[m
	       [31m-- Free(App.Gtk_Works_Windows(Id));  --[m
	       [31m---------------------------------------[m
	       	       
	       [01;30mRemove_Window[m[31m([mApp[31m.[mApplication[31m,[m App[31m.[m[01;30mGtk_Works_Windows[m[31m([mId[31m).[mWindow[31m);[m
	       [01;30mDestroy[m[31m([mWindow[31m);[m
	       [01;34mif[m id [31m<[m [01;30mWork_Num[m[31m([mApp[31m.[mWork_Last[31m)[m [01;34mthen[m
		  [01;34mfor[m Work [01;34min[m Id[31m..[m[01;30mWork_Num[m[31m([mApp[31m.[mWork_Last[31m-[m[35m1[m[31m)[m [01;34mloop[m
		     App[31m.[m[01;30mWorks[m[31m([mWork[31m)[m [31m:=[m App[31m.[m[01;30mWorks[m[31m([mWork[31m+[m[35m1[m[31m);[m
		     App[31m.[m[01;30mWorks_processes[m[31m([mWork[31m)[m [31m:=[m App[31m.[m[01;30mWorks_processes[m[31m([mWork[31m+[m[35m1[m[31m);[m
		     App[31m.[m[01;30mGtk_Works_Windows[m[31m([mWork[31m)[m [31m:=[m App[31m.[m[01;30mGtk_Works_Windows[m[31m([mWork[31m+[m[35m1[m[31m);[m		     
		  [01;34mend[m [01;34mloop[m[31m;[m		  		  
	       [01;34mend[m [01;34mif[m[31m;[m
	       App[31m.[mWork_Last [31m:=[m App[31m.[mWork_Last [31m-[m [35m1[m[31m;[m
	    [01;34mend[m [01;34mif[m[31m;[m
	 [01;34mend[m [01;34mif[m[31m;[m
      [01;34mend[m [01;34mloop[m[31m;[m
      
      [01;30mPut_Line[m[31m([m[31m"Work_last = "[m [31m&[m [32mInteger[m'[01;30mImage[m [31m([mApp[31m.[mWork_Last[31m));[m
      [01;34mif[m App[31m.[mWork_Last [31m=[m [35m0[m  [01;34mthen[m	 	 	 
	 
	 [01;34mif[m App[31m.[mMain_Automation [31m/=[m Glib[31m.[mMain[31m.[mNo_Source_Id [01;34mthen[m
	    Glib[31m.[mMain[31m.[m[01;30mRemove[m[31m([mApp[31m.[mMain_Automation[31m);[m
	 [01;34mend[m [01;34mif[m[31m;[m
	 
	 
	 [01;30mInputs_Finalization[m[31m([mApp[31m.[m[01;34mall[m'[01;34maccess[m[31m);[m
	 [01;30mFinalize[m[31m([mApp[31m.[mBandmaster[31m);[m
	 [01;30mDestroy[m[31m([mApp[31m.[mWindow[31m);[m

	 
	 [01;34mreturn[m True[31m;[m	 
      [01;34mend[m [01;34mif[m[31m;[m      
      [01;34mreturn[m False[31m;[m      
   [01;34mend[m Close_Window[31m;[m
   
   
   [01;34mprocedure[m [01;30mQuit_Action[m [31m([mAction[31m,[m Gtk_Interface [31m:[m [01;34min[m System[31m.[mAddress[31m)[m [01;34mis[m
      
      [01;34mpragma[m [01;30mUnreferenced[m[31m([mAction[31m);[m
      
      Gtk_Int [31m:[m [01;34mconstant[m Gtk_Interface_Pointer [31m:=[m
	Gtk_Interface_Conversions[31m.[m[01;30mTo_Pointer[m[31m([mGtk_Interface[31m);[m
      
      End_Of_Application [31m:[m [32mBoolean[m [31m:=[m False[31m;[m
      
   [01;34mbegin[m
      [01;34mif[m Gtk_Int[31m.[mWork_Last [31m>[m [35m0[m [01;34mthen[m	 	 	 
	 [31m--  -- Halting all process[m
	 [01;30mPut_Line[m[31m([m[31m"Halting all process..."[m[31m);[m
	 	 
	 [01;34mfor[m Work [01;34min[m [35m1[m[31m..[m[01;30mWork_Num[m[31m([mGtk_Int[31m.[mWork_Last[31m)[m [01;34mloop[m	    
	    End_Of_Application [31m:=[m [01;30mClose_Window[m[31m([mGtk_Int[31m.[m[01;30mGtk_Works_Windows[m[31m([mWork[31m).[mWindow[31m,[m Gtk_Int[31m);[m
	 [01;34mend[m [01;34mloop[m[31m;[m
	 
      [01;34mend[m [01;34mif[m[31m;[m
      [01;34mif[m End_Of_Application [01;34mthen[m
	 [01;30mPut_Line[m[31m([m[31m"End of Program."[m[31m);[m
	 Glib[31m.[mApplication[31m.[m[01;30mQuit[m[31m([m[01;30mGapplication[m[31m([mGtk_Int[31m.[mApplication[31m));[m
      [01;34mend[m [01;34mif[m[31m;[m
   [01;34mend[m Quit_Action[31m;[m
   
   [01;34mprocedure[m [01;30mSet_Input_Device[m [31m([mCombo [31m:[m [01;34maccess[m Gtk_Combo_Box_Text_record'Class[31m;[m
			       Gtk_Int [31m:[m [01;34min[m Gtk_Interface_Pointer[31m)[m [01;34mis[m
      
           
   [01;34mbegin[m
      [01;34mif[m Gtk_Int[31m.[mGm_Application[31m.[m[01;30mDevices_Info[m[31m([mGtk_Int[31m.[mCur_Page[31m+[m[35m1[m[31m)[m [31m/=[m [01;34mnull[m [01;34mthen[m
	 Gtk_Int[31m.[mGm_Application[31m.[m[01;30mDevices_Info[m[31m([mGtk_Int[31m.[mCur_Page[31m+[m[35m1[m[31m).[mInput[31m.[mId [31m:=[m 
	   [32mInteger[m[31m([m[01;30mGet_Active[m[31m([mCombo[31m)+[m[35m1[m[31m);[m
	 Gtk_Int[31m.[mGm_Application[31m.[m[01;30mDevices_Info[m[31m([mGtk_Int[31m.[mCur_Page[31m+[m[35m1[m[31m).[mInput[31m.[mname [31m:=[m 
	   [01;34mnew[m [32mString[m ' [31m([m[01;30mGet_Active_Text[m[31m([mCombo[31m));[m
      [01;34mend[m [01;34mif[m[31m;[m
      [01;30mInputs_Devices[m[31m([mGtk_Int[31m.[mCur_Page[31m+[m[35m1[m[31m)[m [31m:=[m
	Gtk_Int[31m.[mGm_Application[31m.[m[01;30mDevices_Info[m[31m([mGtk_Int[31m.[mCur_Page[31m+[m[35m1[m[31m).[mInput[31m.[mId[31m;[m
   [01;34mend[m Set_Input_Device[31m;[m
   
   [01;34mprocedure[m [01;30mSet_Output_Device[m [31m([mCombo [31m:[m [01;34maccess[m Gtk_Combo_Box_Text_record'Class[31m;[m
			       Gtk_Int [31m:[m [01;34min[m Gtk_Interface_Pointer[31m)[m [01;34mis[m
      
           
   [01;34mbegin[m
      [01;34mif[m Gtk_Int[31m.[mGm_Application[31m.[m[01;30mDevices_Info[m[31m([mGtk_Int[31m.[mCur_Page[31m+[m[35m1[m[31m)[m [31m/=[m [01;34mnull[m [01;34mthen[m
	 Gtk_Int[31m.[mGm_Application[31m.[m[01;30mDevices_Info[m[31m([mGtk_Int[31m.[mCur_Page[31m+[m[35m1[m[31m).[mOutput[31m.[mId [31m:=[m 
	   [32mInteger[m[31m([m[01;30mGet_Active[m[31m([mCombo[31m)+[m[35m1[m[31m);[m
	 Gtk_Int[31m.[mGm_Application[31m.[m[01;30mDevices_Info[m[31m([mGtk_Int[31m.[mCur_Page[31m+[m[35m1[m[31m).[mOutput[31m.[mname [31m:=[m 
	   [01;34mnew[m [32mString[m ' [31m([m[01;30mGet_Active_Text[m[31m([mCombo[31m));[m
      [01;34mend[m [01;34mif[m[31m;[m	 
      [01;30mOutputs_Devices[m[31m([mGtk_Int[31m.[mCur_Page[31m+[m[35m1[m[31m)[m [31m:=[m
	Gtk_Int[31m.[mGm_Application[31m.[m[01;30mDevices_Info[m[31m([mGtk_Int[31m.[mCur_Page[31m+[m[35m1[m[31m).[mOutput[31m.[mId[31m;[m
   [01;34mend[m Set_Output_Device[31m;[m

   
   [01;34mpackage[m Devices_User_Callback [01;34mis[m
      [01;34mnew[m Handlers[31m.[mUser_Callback
     [31m([mGtk_Combo_Box_Text_Record[31m,[m Gtk_Interface_Pointer[31m);[m      

   
   [31m-------------------------------------------------------------------------------[m
   [31m-- Create device page : (add and remove device(s)                            --[m
   [31m-------------------------------------------------------------------------------   [m
   [01;34mprocedure[m [01;30mCreate_Device_Page[m[31m([mNotebook      [31m:[m [01;34maccess[m Gtk_Notebook_Record'Class[31m;[m
				Gtk_Interface [31m:[m [01;34min[m Gtk_Interface_Pointer[31m;[m
				Device_Num    [31m:[m [01;34min[m positive[31m)[m [01;34mis[m
      
      Vbox [31m:[m Gtk_Vbox[31m;[m
      
      Hbox [31m:[m Gtk_Hbox[31m;[m
      
      Page_Num [31m:[m [01;34mconstant[m Gint [31m:=[m [01;30mGet_N_Pages[m[31m([mNotebook[31m);[m      
      Label    [31m:[m Gtk_Label[31m;[m
      
      Input_Label  [31m:[m Gtk_Label[31m;[m
      Output_Label [31m:[m Gtk_Label[31m;[m
      
      Input_List [31m:[m [01;34mconstant[m Devices_List_Access [31m:=[m Inputs_List[31m;[m
      Output_List [31m:[m [01;34mconstant[m Devices_List_Access [31m:=[m Outputs_List[31m;[m
   [01;34mbegin[m
      
      [01;30mPut_Line[m[31m([m[31m"Create :: page num = "[m [31m&[m Gint'[01;30mImage[m[31m([mPage_Num[31m));[m
      
      [01;30mGtk_New_Vbox[m [31m([mVbox[31m,[m False[31m,[m [35m0[m[31m);[m
      [01;30mGtk_New[m[31m([mLabel[31m,[m [31m"Device Id :"[m [31m&[m Gint'[01;30mImage[m[31m([mPage_Num[31m+[m[35m1[m[31m));[m                  
      
      [01;34mif[m Gtk_Interface[31m.[mGm_Application[31m.[m[01;30mDevices_Info[m[31m([mDevice_Num[31m)[m [31m=[m [01;34mnull[m [01;34mthen[m
	 Gtk_Interface[31m.[mGm_Application[31m.[m[01;30mDevices_Info[m[31m([mDevice_Num[31m)[m [31m:=[m [01;34mnew[m Device_Record[31m;[m
      [01;34mend[m [01;34mif[m[31m;[m
      
      Gtk_Interface[31m.[m[01;30mDevices_Pages[m[31m([m[01;30mPositive[m[31m([mPage_Num[31m+[m[35m1[m[31m))[m [31m:=[m [01;34mnew[m Device_Page_Record[31m;[m
            
      Gtk[31m.[mCombo_Box_text[31m.[m[01;30mGtk_New[m[31m([mGtk_Interface[31m.[m[01;30mDevices_Pages[m[31m([m[01;30mPositive[m[31m([mPage_Num[31m+[m[35m1[m[31m)).[mInput_Device[31m);[m
      [31m--[m
      [01;34mfor[m Input [01;34min[m Input_List'[01;34mRange[m [01;34mloop[m
	 [01;34mif[m [01;30mInput_List[m[31m([mInput[31m).[mName [31m/=[m [01;34mnull[m [01;34mthen[m
	    Gtk[31m.[mCombo_Box_text[31m.[mAppend_Text
	      [31m([mGtk_Interface[31m.[m[01;30mDevices_Pages[m[31m([m[01;30mPositive[m[31m([mPage_Num[31m+[m[35m1[m[31m)).[mInput_Device[31m,[m
	       [01;30mInput_List[m[31m([mInput[31m).[mName[31m.[m[01;34mall[m[31m);[m
	 [01;34mend[m [01;34mif[m[31m;[m
      [01;34mend[m [01;34mloop[m[31m;[m
      [01;30mPut_Line[m[31m([m[31m"Device num : "[m [31m&[m [32mInteger[m'[01;30mImage[m[31m([mDevice_Num[31m));[m
      [01;30mPut_Line[m[31m([m[31m"Active Input : "[m [31m&[m [32mInteger[m'[01;30mImage[m[31m([m[01;30mInputs_Devices[m[31m([mDevice_Num[31m)));[m
      [01;34mif[m [01;30mInputs_Devices[m[31m([mDevice_Num[31m)[m [31m>[m [31m(-[m[35m1[m[31m)[m [01;34mthen[m
	 Gtk[31m.[mCombo_Box_text[31m.[mSet_Active
	   [31m([mGtk_Interface[31m.[m[01;30mDevices_Pages[m[31m([m[01;30mPositive[m[31m([mPage_Num[31m+[m[35m1[m[31m)).[mInput_Device[31m,[m
	    [01;30mGint[m[31m([m[01;30mInputs_Devices[m[31m([mDevice_Num[31m))-[m[35m1[m[31m);[m
      [01;34mend[m [01;34mif[m[31m;[m
	    
      Devices_User_Callback[31m.[mConnect
	[31m([mGtk_Interface[31m.[m[01;30mDevices_Pages[m[31m([m[01;30mPositive[m[31m([mPage_Num[31m+[m[35m1[m[31m)).[mInput_Device[31m,[m
	 [31m"changed"[m[31m,[m
	 Devices_User_Callback[31m.[m[01;30mTo_Marshaller[m[31m([mSet_Input_Device'[01;34mAccess[m[31m),[m
	 Gtk_Interface[31m);[m
				           
      Gtk[31m.[mCombo_Box_text[31m.[m[01;30mGtk_New[m[31m([mGtk_Interface[31m.[m[01;30mDevices_Pages[m[31m([m[01;30mPositive[m[31m([mPage_Num[31m+[m[35m1[m[31m)).[mOutput_Device[31m);[m
      [31m--[m
      [01;34mfor[m Output [01;34min[m Output_List'[01;34mRange[m [01;34mloop[m
	 [01;34mif[m [01;30mOutput_List[m[31m([mOutput[31m).[mName [31m/=[m [01;34mnull[m [01;34mthen[m
	    Gtk[31m.[mCombo_Box_Text[31m.[mAppend_Text
	      [31m([mGtk_Interface[31m.[m[01;30mDevices_Pages[m[31m([m[01;30mPositive[m[31m([mPage_Num[31m+[m[35m1[m[31m)).[mOutput_Device[31m,[m
	       [01;30mOutput_List[m[31m([mOutput[31m).[mName[31m.[m[01;34mall[m[31m);[m
	 [01;34mend[m [01;34mif[m[31m;[m
      [01;34mend[m [01;34mloop[m[31m;[m
      [01;30mPut_Line[m[31m([m[31m"Active Output : "[m [31m&[m [32mInteger[m'[01;30mImage[m[31m([m[01;30mInputs_Devices[m[31m([mDevice_Num[31m)));[m
      [01;34mif[m [01;30mOutputs_Devices[m[31m([mDevice_Num[31m)[m [31m>[m [31m(-[m[35m1[m[31m)[m [01;34mthen[m
	 Gtk[31m.[mCombo_Box_text[31m.[mSet_Active
	   [31m([mGtk_Interface[31m.[m[01;30mDevices_Pages[m[31m([m[01;30mPositive[m[31m([mPage_Num[31m+[m[35m1[m[31m)).[mOutput_Device[31m,[m
	    [01;30mGint[m[31m([m[01;30mOutputs_Devices[m[31m([mDevice_Num[31m))-[m[35m1[m[31m);[m
      [01;34mend[m [01;34mif[m[31m;[m

      Devices_User_Callback[31m.[mConnect
	[31m([mGtk_Interface[31m.[m[01;30mDevices_Pages[m[31m([m[01;30mPositive[m[31m([mPage_Num[31m+[m[35m1[m[31m)).[mOutput_Device[31m,[m
	 [31m"changed"[m[31m,[m
	 Devices_User_Callback[31m.[m[01;30mTo_Marshaller[m[31m([mSet_Output_Device'[01;34mAccess[m[31m),[m
	 Gtk_Interface[31m);[m

      
      
      
      [01;30mGtk_New[m[31m([mInput_Label[31m,[m [31m"Input  : "[m[31m);[m
      [01;30mGtk_New[m[31m([mOutput_Label[31m,[m [31m"Output : "[m[31m);[m
      
      [01;30mGtk_New_Hbox[m[31m([mHbox[31m,[m False[31m,[m [35m0[m[31m);[m
      [01;30mPack_Start[m[31m([mHbox[31m,[m Input_Label[31m);[m      
      [01;30mPack_Start[m[31m([mHbox[31m,[m Gtk_Interface[31m.[m[01;30mDevices_Pages[m[31m([m[01;30mPositive[m[31m([mPage_Num[31m+[m[35m1[m[31m)).[mInput_Device[31m);[m
      
      [01;30mPack_Start[m[31m([mVbox[31m,[m Hbox[31m);[m
      
      [01;30mGtk_New_Hbox[m[31m([mHbox[31m,[m False[31m,[m [35m0[m[31m);[m
      [01;30mPack_Start[m[31m([mHbox[31m,[m Output_Label[31m);[m      
      [01;30mPack_Start[m[31m([mHbox[31m,[m Gtk_Interface[31m.[m[01;30mDevices_Pages[m[31m([m[01;30mPositive[m[31m([mPage_Num[31m+[m[35m1[m[31m)).[mOutput_Device[31m);[m
      
      [01;30mPack_Start[m[31m([mVbox[31m,[m Hbox[31m);[m
      
      [01;30mAppend_Page[m [31m([mNotebook[31m,[m Vbox[31m,[m Label[31m);[m
      [01;30mShow_All[m[31m([mNotebook[31m);[m
      [01;34mif[m Page_Num [31m>=[m [35m0[m [01;34mthen[m
	 [01;34mfor[m I [01;34min[m [01;30mGet_Current_Page[m[31m([mNotebook[31m)[m [31m..[m [01;30mGet_N_Pages[m[31m([mNotebook[31m)+[m[35m1[m [01;34mloop[m
	    [01;30mNext_Page[m[31m([mNotebook[31m);[m
	 [01;34mend[m [01;34mloop[m[31m;[m	 
      [01;34mend[m [01;34mif[m[31m;[m      
      [01;34mif[m [01;30mGet_Current_Page[m[31m([mNotebook[31m)[m [31m>=[m [35m0[m [01;34mthen[m
	 Gtk_Interface[31m.[mCur_Page [31m:=[m [32mInteger[m[31m([m[01;30mGet_Current_Page[m[31m([mNotebook[31m));[m      
      [01;34mend[m [01;34mif[m[31m;[m
   [01;34mend[m Create_Device_Page[31m;[m      
   
   [01;34mprocedure[m [01;30mRemove_Device_Page[m[31m([mNotebook [31m:[m [01;34maccess[m Gtk_Notebook_Record'Class[31m;[m
				Gtk_Interface [31m:[m [01;34min[m Gtk_Interface_Pointer[31m)[m [01;34mis[m
      
      Page_Num [31m:[m [01;34mconstant[m Gint [31m:=[m [01;30mGet_Current_Page[m[31m([mNotebook[31m);[m
      
   [01;34mbegin[m
      [01;34mif[m Page_Num [31m<[m [35m0[m [01;34mthen[m
	 [01;34mreturn[m[31m;[m
      [01;34mend[m [01;34mif[m[31m;[m
      [01;30mPut_Line[m[31m([m[31m"Remove page num : "[m [31m&[m Gint'[01;30mImage[m[31m([mPage_Num[31m));[m
      [01;30mInputs_Devices[m[31m([m[01;30mPositive[m[31m([mPage_num[31m+[m[35m1[m[31m))[m [31m:=[m [31m(-[m[35m1[m[31m);[m
      [01;30mOutputs_Devices[m[31m([m[01;30mPositive[m[31m([mPage_num[31m+[m[35m1[m[31m))[m [31m:=[m [31m(-[m[35m1[m[31m);[m
      
      
      
      Gtk_Interface[31m.[mGm_Application[31m.[m[01;30mDevices_info[m[31m([m[01;30mPositive[m[31m([mPage_Num [31m+[m [35m1[m[31m))[m [31m:=[m [01;34mnull[m[31m;[m
      
      Gtk_Interface[31m.[m[01;30mDevices_Pages[m[31m([m[01;30mPositive[m[31m([mPage_Num [31m+[m [35m1[m[31m))[m [31m:=[m [01;34mnull[m[31m;[m
      [01;34mif[m Page_Num [31m>=[m [35m0[m [01;34mthen[m
	 [01;34mfor[m Page [01;34min[m Page_Num[31m..[m[01;30mGet_N_Pages[m[31m([mNotebook[31m)[m [31m-[m [35m1[m [01;34mloop[m
	    Gtk_Interface[31m.[mGm_Application[31m.[m[01;30mDevices_info[m[31m([m[01;30mPositive[m[31m([mPage [31m+[m [35m1[m[31m))[m [31m:=[m 
	      Gtk_Interface[31m.[mGm_Application[31m.[m[01;30mDevices_info[m[31m([m[01;30mPositive[m[31m([mPage [31m+[m [35m2[m[31m));[m	 	    
	 [01;34mend[m [01;34mloop[m[31m;[m
      [01;34mend[m [01;34mif[m[31m;[m      
      [01;30mRemove_Page[m [31m([mNotebook[31m,[m Page_Num[31m);[m
      [01;34mif[m [01;30mGet_N_Pages[m[31m([mNotebook[31m)[m [31m>[m [35m0[m [01;34mthen[m
	 [01;34mif[m Page_Num [31m<[m [01;30mGet_N_Pages[m[31m([mNotebook[31m)[m [01;34mthen[m	    	    
	    [01;30mSet_Current_Page[m[31m([mNotebook[31m,[m [01;30mGet_N_Pages[m[31m([mNotebook[31m));[m
	 [01;34melse[m
	    [01;30mSet_Current_Page[m[31m([mNotebook[31m,[m Page_Num [31m-[m [35m1[m[31m);[m
	 [01;34mend[m [01;34mif[m[31m;[m
      [01;34mend[m [01;34mif[m[31m;[m
      Gtk_Interface[31m.[mCur_Page [31m:=[m [32mInteger[m[31m([m[01;30mGet_Current_Page[m[31m([mNotebook[31m));[m      
      
      
      [01;34mfor[m Page [01;34min[m [01;34mreverse[m Page_Num[31m..[m[01;30mGet_N_Pages[m[31m([mNotebook[31m)[m [31m-[m[35m1[m [01;34mloop[m
	 
	 [01;30mInputs_Devices[m[31m([m[01;30mPositive[m[31m([mPage[31m+[m[35m1[m[31m))[m [31m:=[m [01;30mInputs_Devices[m[31m([m[01;30mPositive[m[31m([mPage[31m+[m[35m2[m[31m));[m
	 [01;30mOutputs_Devices[m[31m([m[01;30mPositive[m[31m([mPage[31m+[m[35m1[m[31m))[m [31m:=[m [01;30mOutputs_Devices[m[31m([m[01;30mPositive[m[31m([mPage[31m+[m[35m2[m[31m));[m
	 [01;30mInputs_Devices[m[31m([m[01;30mPositive[m[31m([mPage[31m+[m[35m2[m[31m))[m [31m:=[m [31m(-[m[35m1[m[31m);[m
	 [01;30mOutputs_Devices[m[31m([m[01;30mPositive[m[31m([mPage[31m+[m[35m2[m[31m))[m [31m:=[m [31m(-[m[35m1[m[31m);[m      
      [01;34mend[m [01;34mloop[m[31m;[m
      [01;30mShow_All[m[31m([mNotebook[31m);[m
      
   [01;34mend[m Remove_Device_Page[31m;[m
   
   [01;34mprocedure[m Page_Switch
     [31m([mNotebook [31m:[m [01;34maccess[m Gtk_Notebook_Record'Class[31m;[m      
      Params   [31m:[m Gtk[31m.[mArguments[31m.[mGtk_Args[31m)[m [01;34mis[m
      Page_Num [31m:[m [01;34mconstant[m Gint [31m:=[m [01;30mGint[m [31m([m[01;30mTo_Guint[m [31m([mParams[31m,[m [35m2[m[31m));[m      
      [01;34mpragma[m [01;30mUnreferenced[m [31m([mNotebook[31m);[m
   [01;34mbegin[m      
      [01;30mPut_Line[m[31m([m[31m"Switch page to device page Id : "[m [31m&[m Gint'[01;30mImage[m[31m([mPage_Num[31m));[m
   [01;34mend[m Page_Switch[31m;[m
     
   
   Gtk_Response_Add [31m:[m [01;34mconstant[m Gtk_Response_Type [31m:=[m [31m-[m[35m12[m[31m;[m
   Gtk_Response_Remove [31m:[m [01;34mconstant[m Gtk_Response_Type [31m:=[m [31m-[m[35m13[m[31m;[m
   
   [01;34mpackage[m Notebook_Callback [01;34mis[m
      [01;34mnew[m Handlers[31m.[mCallback
     [31m([mGtk_Notebook_Record[31m);[m      
   
   [01;34mprocedure[m [01;30mPreferences_Action[m [31m([mAction[31m,[m Gtk_Interface [31m:[m System[31m.[mAddress[31m)[m [01;34mis[m
      
      [01;34mpragma[m [01;30mUnreferenced[m[31m([mAction[31m);[m
      
      Gtk_Int [31m:[m [01;34mconstant[m Gtk_Interface_Pointer [31m:=[m
	Gtk_Interface_Conversions[31m.[m[01;30mTo_Pointer[m[31m([mGtk_Interface[31m);[m
      [31m------------[m
      [31m-- Dialog --[m
      [31m------------[m
      Dialog [31m:[m Gtk_Dialog[31m;[m
      Widget [31m:[m Gtk_Widget[31m;[m
      Vbox   [31m:[m Gtk_Vbox[31m;[m
      
      [31m---------------------------------------[m
      [31m-- Devices notebook :                --[m
      [31m---------------------------------------            [m
      
      
	
   [01;34mbegin[m
      
      
      [01;34mloop[m
	 
	 [01;34mdeclare[m
	    Device_Num [31m:[m Positive [31m:=[m [35m1[m[31m;[m
	 [01;34mbegin[m
	    
	    [01;30mGtk_New[m[31m([mDialog[31m,[m [31m"Preferences"[m[31m,[m Gtk_Int[31m.[mWindow[31m,[m Gtk[31m.[mdialog[31m.[mModal[31m);[m
	    [01;30mSet_Default_Size[m[31m([m[01;30mGtk_Window[m[31m([mDialog[31m),[m [35m450[m[31m,[m [35m150[m[31m);[m
	    [01;30mSet_Decorated[m[31m([mDialog[31m,[m False[31m);[m
	    Vbox [31m:=[m [01;30mGet_Content_Area[m[31m([mDialog[31m);[m                  
	    
	    [31m---------------------------------[m
	    [31m--   Orchester construction    --[m
	    [31m---------------------------------[m
	    [01;30mGtk_New[m [31m([mGtk_Int[31m.[mNotebook[31m);[m      
	    
	    [01;30mSet_Scrollable[m[31m([mGtk_Int[31m.[mNotebook[31m,[m True[31m);[m
	    
	    
	    [01;34mfor[m Num [01;34min[m Gtk_Int[31m.[mGm_Application[31m.[mDevices_Info'[01;34mRange[m [01;34mloop[m
	       [01;34mif[m Gtk_Int[31m.[mGm_Application[31m.[m[01;30mDevices_Info[m[31m([mDevice_Num[31m)[m [31m/=[m [01;34mnull[m [01;34mthen[m
		  [01;30mCreate_Device_Page[m[31m([mGtk_Int[31m.[mNotebook[31m,[m Gtk_Int[31m,[m Device_num[31m);[m
		  Device_Num [31m:=[m Device_Num [31m+[m [35m1[m[31m;[m
	       [01;34melsif[m [01;30mInputs_Devices[m[31m([mDevice_Num[31m)[m [31m/=[m [31m(-[m[35m1[m[31m)[m [01;34mor[m
		 [01;30mOutputs_Devices[m[31m([mDevice_Num[31m)[m [31m/=[m [31m(-[m[35m1[m[31m)[m [01;34mthen[m
		  [01;30mCreate_Device_Page[m[31m([mGtk_Int[31m.[mNotebook[31m,[m Gtk_Int[31m,[m Device_num[31m);[m
		  Device_Num [31m:=[m Device_Num [31m+[m [35m1[m[31m;[m
	       [01;34melse[m
		  [01;34mexit[m[31m;[m
	       [01;34mend[m [01;34mif[m[31m;[m
	    [01;34mend[m [01;34mloop[m[31m;[m
	    
	    Notebook_Callback[31m.[mConnect
	      [31m([mGtk_Int[31m.[mNotebook[31m,[m
	       [31m"switch_page"[m[31m,[m
	       Page_Switch'[01;34mAccess[m[31m);[m
	    
	    [01;30mPack_Start[m[31m([mVbox[31m,[m Gtk_Int[31m.[mNotebook[31m);[m
	    
	    
	    [31m---------------------------------[m
	    [31m-- End orchester construction  --[m
	    [31m---------------------------------[m
	    Widget [31m:=[m Gtk[31m.[mDialog[31m.[m[01;30mAdd_button[m[31m([mDialog[31m,[m [31m"Add"[m[31m,[m Gtk_Response_Add[31m);[m
	    Widget [31m:=[m Gtk[31m.[mDialog[31m.[m[01;30mAdd_button[m[31m([mDialog[31m,[m [31m"Remove"[m[31m,[m Gtk_Response_Remove[31m);[m	    
	    Widget [31m:=[m Gtk[31m.[mDialog[31m.[m[01;30mAdd_button[m[31m([mDialog[31m,[m [31m"Ok"[m[31m,[m Gtk_Response_Ok[31m);[m
	    
	    
	    [01;30mShow_All[m[31m([mDialog[31m);[m
	    [01;34mcase[m Gtk[31m.[mDialog[31m.[m[01;30mRun[m[31m([mDialog[31m)[m [01;34mis[m
	       [01;34mwhen[m Gtk_Response_Ok [31m=>[m
		  Gtk[31m.[mDialog[31m.[m[01;30mDestroy[m[31m([mDialog[31m);[m
		  [01;34mexit[m[31m;[m
	       [01;34mwhen[m Gtk_Response_Add [31m=>[m
		  [01;30mCreate_Device_Page[m[31m([mGtk_Int[31m.[mNotebook[31m,[m Gtk_Int[31m,[m Device_Num[31m);[m
		  Gtk[31m.[mDialog[31m.[m[01;30mDestroy[m[31m([mDialog[31m);[m	       
	       [01;34mwhen[m Gtk_Response_Remove [31m=>[m
		  [01;30mRemove_Device_Page[m[31m([mGtk_Int[31m.[mNotebook[31m,[m Gtk_Int[31m);[m
		  Gtk[31m.[mDialog[31m.[m[01;30mDestroy[m[31m([mDialog[31m);[m
	       [01;34mwhen[m [01;34mothers[m [31m=>[m
		  Gtk[31m.[mDialog[31m.[m[01;30mDestroy[m[31m([mDialog[31m);[m
		  [01;34mexit[m[31m;[m
	    [01;34mend[m [01;34mcase[m[31m;[m
	 [01;34mend[m[31m;[m
      [01;34mend[m [01;34mloop[m[31m;[m
   [01;34mend[m Preferences_Action[31m;[m
   
   
   [01;34mprocedure[m [01;30mAbout_Action[m [31m([mAction[31m,[m Main_Window [31m:[m System[31m.[mAddress[31m)[m [01;34mis[m

      [01;34mpragma[m [01;30mUnreferenced[m [31m([mAction[31m);[m

      Frame [31m:[m Gtk_Frame[31m;[m
      About_Help [31m:[m Gtk_About_Dialog[31m;[m
   [01;34mbegin[m

      [01;30mGtk_New[m[31m([mFrame[31m);[m
      [01;30mSet_Label[m [31m([mFrame[31m,[m [31m"About dialog"[m[31m);[m

      [01;30mGtk_New[m[31m([mAbout_Help[31m);[m
      [01;30mSet_Transient_For[m [31m([mAbout_Help[31m,[m Gtk_interface_Conversions[31m.[m[01;30mTo_Pointer[m[31m([mMain_Window[31m).[mWindow[31m);[m
      [01;30mSet_Destroy_With_Parent[m [31m([mAbout_Help[31m,[m True[31m);[m
      [01;30mSet_Modal[m [31m([mAbout_Help[31m,[m True[31m);[m



      [01;30mSet_Artists[m[31m([mAbout_Help[31m,[m [31m([m[35m1[m [31m=>[m [01;34mnew[m [32mString[m ' [31m([m[31m"localghost"[m[31m)));[m
      [01;30mSet_Authors[m[31m([mAbout_Help[31m,[m [31m([m[35m1[m [31m=>[m [01;34mnew[m [32mString[m ' [31m([m[31m"E. Sens"[m[31m)));[m
      [01;30mSet_Comments[m[31m([mAbout_Help[31m,[m Glib[31m.[mConvert[31m.[m[01;30mLocale_To_UTF8[m[31m([m[31m"General MIDI Interface"[m[31m));[m
      [01;30mSet_Copyright[m[31m([mAbout_Help[31m,[m Glib[31m.[mConvert[31m.[m[01;30mLocale_To_UTF8[m[31m([m[31m"Copyright (C) 2018 Manuel De Girardi"[m[31m));[m
      [01;30mSet_Documenters[m[31m([mAbout_Help[31m,[m [31m([m[35m1[m [31m=>[m [01;34mnew[m [32mString[m ' [31m([m[31m""[m[31m)));[m
      Set_License
      	[31m([mAbout_Help[31m,[m Glib[31m.[mConvert[31m.[mLocale_To_UTF8
      	   [31m([m[31m"This program is free software; you can redistribute it and/or modify"[m [31m&[m [32mCharacter[m'[01;30mVal[m[31m([m[35m10[m[31m)[m [31m&[m
      	      [31m"It Under The Terms of The GNU General Public License As Published By"[m [31m&[m [32mCharacter[m'[01;30mVal[m[31m([m[35m10[m[31m)[m [31m&[m
      	      [31m"The Free Software Foundation; Either Version 2 of The License, or"[m  [31m&[m [32mCharacter[m'[01;30mVal[m[31m([m[35m10[m[31m)[m [31m&[m
      	      [31m"(at Your Option) Any Later Version."[m [31m&[m [32mCharacter[m'[01;30mVal[m[31m([m[35m10[m[31m)[m
      	      [31m&[m [32mCharacter[m'[01;30mVal[m[31m([m[35m10[m[31m)[m [31m&[m
      	      [31m"This Program is Distributed in The Hope That It Will Be Useful,"[m  [31m&[m [32mCharacter[m'[01;30mVal[m[31m([m[35m10[m[31m)[m [31m&[m
      	      [31m"But WITHOUT ANY WARRANTY; Without Even The Implied Warranty of"[m  [31m&[m [32mCharacter[m'[01;30mVal[m[31m([m[35m10[m[31m)[m [31m&[m
      	      [31m"MERCHANTABILITY or FITNESS for A PARTICULAR PURPOSE.  See The"[m  [31m&[m [32mCharacter[m'[01;30mVal[m[31m([m[35m10[m[31m)[m [31m&[m
      	      [31m"GNU General Public License for More Details."[m[31m));[m
      [31m--Set_Logo(About_Help,[m
      [01;30mSet_Program_Name[m[31m([mAbout_Help[31m,[m Glib[31m.[mConvert[31m.[m[01;30mLocale_To_UTF8[m[31m([m[31m"Gmface"[m[31m));[m
      [31m--Set_translator_credits(About_Help,[m
      [01;30mSet_Version[m[31m([mAbout_Help[31m,[m Glib[31m.[mConvert[31m.[m[01;30mLocale_To_UTF8[m[31m([mGmface[31m.[mVersion[31m));[m

      [01;34mif[m [01;30mRun[m [31m([mAbout_Help[31m)[m [31m/=[m Gtk_Response_Close [01;34mthen[m
         [01;34mnull[m[31m;[m
      [01;34mend[m [01;34mif[m[31m;[m
      [01;30mDestroy[m [31m([mAbout_Help[31m);[m
   [01;34mend[m About_Action[31m;[m

   
   [31m---------------------------------------------------[m
   [31m--             Main menu aplication              --[m
   [31m---------------------------------------------------[m
   App_Main_Entries [31m:[m [01;34mconstant[m Action_Entry_Array [31m:=[m
     [31m([m[35m1[m [31m=>[m [01;30mCreate[m [31m([mName [31m=>[m [31m"MainMenu"[m[31m,[m        Label [31m=>[m [31m"_Main"[m[31m),[m
      [35m2[m [31m=>[m [01;30mCreate[m [31m([mName [31m=>[m [31m"Close"[m[31m,[m
      		   Stock_Id    [31m=>[m Stock_Close[31m,[m
      		   Label       [31m=>[m [31m"_Close Window"[m[31m,[m
      		   Accelerator [31m=>[m [31m"<control>N"[m[31m,[m
      		   Tooltip     [31m=>[m [31m"Close"[m[31m,[m
      		   Callback    [31m=>[m Close_action'[01;34mAccess[m[31m),[m
      [35m3[m [31m=>[m [01;30mCreate[m [31m([mName [31m=>[m [31m"New"[m[31m,[m
      		   Stock_Id    [31m=>[m Stock_New[31m,[m
      		   Label       [31m=>[m [31m"_New"[m[31m,[m
      		   Accelerator [31m=>[m [31m"<control>N"[m[31m,[m
      		   Tooltip     [31m=>[m [31m"New"[m[31m,[m
      		   Callback    [31m=>[m New_action'[01;34mAccess[m[31m),[m
      [35m4[m [31m=>[m [01;30mCreate[m [31m([mName [31m=>[m [31m"Open"[m[31m,[m
      		   Stock_Id    [31m=>[m Stock_Open[31m,[m
      		   Label       [31m=>[m [31m"_Open"[m[31m,[m
      		   Accelerator [31m=>[m [31m"<control>O"[m[31m,[m
      		   Tooltip     [31m=>[m [31m"Open"[m[31m,[m
      		   Callback    [31m=>[m Open_Action'[01;34mAccess[m[31m),[m
      
      [35m5[m [31m=>[m [01;30mCreate[m [31m([mName [31m=>[m [31m"Quit"[m[31m,[m
      		   Stock_Id    [31m=>[m Stock_Quit[31m,[m
      		   Label       [31m=>[m [31m"_Quit"[m[31m,[m
      		   Accelerator [31m=>[m [31m"<control>Q"[m[31m,[m
      		   Tooltip     [31m=>[m [31m"Quit"[m[31m,[m
      		   Callback    [31m=>[m Quit_Action'[01;34mAccess[m[31m),[m
      
      
      
      [35m6[m [31m=>[m [01;30mCreate[m [31m([mName [31m=>[m [31m"OptionsMenu"[m[31m,[m        Label [31m=>[m [31m"_Options"[m[31m),[m
      [35m7[m [31m=>[m [01;30mCreate[m [31m([mName [31m=>[m [31m"Preferences"[m[31m,[m
      		   Stock_Id    [31m=>[m Stock_Preferences[31m,[m
      		   Label       [31m=>[m [31m"Preferences"[m[31m,[m
      		   Accelerator [31m=>[m [31m"<control>F"[m[31m,[m
      		   Tooltip     [31m=>[m [31m"Preferences"[m[31m,[m
      		   Callback    [31m=>[m Preferences_Action'[01;34mAccess[m[31m),[m
      [35m8[m [31m=>[m [01;30mCreate[m [31m([mName [31m=>[m [31m"HelpMenu"[m[31m,[m        Label [31m=>[m [31m"_Help"[m[31m),[m
      [35m9[m [31m=>[m [01;30mCreate[m [31m([mName [31m=>[m [31m"About"[m[31m,[m
      		   Stock_Id    [31m=>[m Stock_About[31m,[m
      		   Label       [31m=>[m [31m"About"[m[31m,[m
      		   Accelerator [31m=>[m [31m"<control>B"[m[31m,[m
      		   Tooltip     [31m=>[m [31m"About"[m[31m,[m
      		   Callback    [31m=>[m About_Action'[01;34mAccess[m[31m)[m
     [31m);[m
   
   
   App_Main_UI_Info [31m:[m [01;34mconstant[m [32mString[m [31m:=[m
     [31m"<ui>"[m
     [31m&[m [31m"  <menubar name='MenuBar'>"[m
     [31m&[m [31m"    <menu action='MainMenu'>"[m  
     [31m&[m [31m"      <menuitem action='Close'/>"[m
     [31m&[m [31m"      <menuitem action='New'/>"[m
     [31m&[m [31m"      <menuitem action='Open'/>"[m
     [31m&[m [31m"      <menuitem action='Quit'/>"[m
     [31m&[m [31m"    </menu>"[m
     [31m&[m [31m"    <menu action='OptionsMenu'>"[m          
     [31m&[m [31m"      <menuitem action='Preferences'/>"[m
     [31m&[m [31m"    </menu>"[m 
     [31m&[m [31m"    <menu action='HelpMenu'>"[m          
     [31m&[m [31m"      <menuitem action='About'/>"[m
     [31m&[m [31m"    </menu>"[m          
     [31m&[m [31m"  </menubar>"[m
     [31m&[m [31m"</ui>"[m[31m;[m
   [31m--                                                  --[m
   [31m------------------------------------------------------         [m
   [31m------------------------------------------------------[m
   [31m--[m
   
   [31m--  ------------------------------------------------------[m
   [31m--  --            Window menu actions                   --[m
   [31m--  ------------------------------------------------------[m
   
   [01;34mprocedure[m [01;30mSave_Action[m [31m([mAction[31m,[m Main_Window [31m:[m [01;34min[m System[31m.[mAddress[31m);[m
   [01;34mpragma[m [01;30mConvention[m [31m([mC[31m,[m Save_Action[31m);[m
   [31m--  Called when Save actions has been selected         [m
      
   [01;34mprocedure[m [01;30mStart_Action[m[31m([mAction[31m,[m Main_Window [31m:[m [01;34min[m System[31m.[mAddress[31m);[m
   [01;34mpragma[m [01;30mConvention[m [31m([mC[31m,[m Start_Action[31m);[m
   [31m--  Called when start actions has been selected[m

   [01;34mprocedure[m [01;30mStop_Action[m [31m([mAction[31m,[m Main_Window [31m:[m [01;34min[m System[31m.[mAddress[31m);[m
   [01;34mpragma[m [01;30mConvention[m [31m([mC[31m,[m Stop_Action[31m);[m
   [31m--  Called when stop actions has been selected[m

   [01;34mprocedure[m [01;30mPlay_On_Action[m[31m([mAction[31m,[m Main_Window [31m:[m [01;34min[m System[31m.[mAddress[31m);[m
   [01;34mpragma[m [01;30mConvention[m [31m([mC[31m,[m Play_On_Action[31m);[m
   [31m--  Called when Play_on actions has been selected[m

   [01;34mprocedure[m [01;30mRec_On_Action[m [31m([mAction[31m,[m Main_Window [31m:[m [01;34min[m System[31m.[mAddress[31m);[m
   [01;34mpragma[m [01;30mConvention[m [31m([mC[31m,[m Rec_On_Action[31m);[m
   [31m--  Called when Rec_on actions has been selected[m

   [01;34mprocedure[m [01;30mPlay_Off_Action[m[31m([mAction[31m,[m Main_Window [31m:[m [01;34min[m System[31m.[mAddress[31m);[m
   [01;34mpragma[m [01;30mConvention[m [31m([mC[31m,[m Play_Off_Action[31m);[m
   [31m--  Called when Play_Off actions has been selected[m

   [01;34mprocedure[m [01;30mRec_Off_Action[m [31m([mAction[31m,[m Main_Window [31m:[m [01;34min[m System[31m.[mAddress[31m);[m
   [01;34mpragma[m [01;30mConvention[m [31m([mC[31m,[m Rec_Off_Action[31m);[m
   [31m--  Called when Rec_off actions has been selected[m
     
   
   [31m--  ---------------------------------------------------[m
   [31m--  --               Window(s) menu                  --[m
   [31m--  ---------------------------------------------------[m
   Win_Main_Entries [31m:[m [01;34mconstant[m Action_Entry_Array [31m:=[m
     [31m([m[35m1[m [31m=>[m [01;30mCreate[m [31m([mName [31m=>[m [31m"FileMenu"[m[31m,[m        Label [31m=>[m [31m"_File"[m[31m),[m      
      [35m2[m [31m=>[m [01;30mCreate[m [31m([mName [31m=>[m [31m"Save"[m[31m,[m
      		   Stock_Id    [31m=>[m Stock_Save[31m,[m
      		   Label       [31m=>[m [31m"_Save"[m[31m,[m
      		   Accelerator [31m=>[m [31m"<control>S"[m[31m,[m
      		   Tooltip     [31m=>[m [31m"Save"[m[31m,[m
      		   Callback    [31m=>[m Save_Action'[01;34mAccess[m[31m),[m      
      
      [35m3[m [31m=>[m [01;30mCreate[m [31m([mName [31m=>[m [31m"TransportMenu"[m[31m,[m        Label [31m=>[m [31m"_Transport"[m[31m),[m
      [35m4[m [31m=>[m [01;30mCreate[m [31m([mName [31m=>[m [31m"Start"[m[31m,[m
   		    Stock_Id    [31m=>[m Stock_Media_Play[31m,[m
      		    Label       [31m=>[m [31m"Start"[m[31m,[m
      		    Accelerator [31m=>[m [31m"<alt>P"[m[31m,[m
      		    Tooltip     [31m=>[m [31m"Start"[m[31m,[m
      		    Callback    [31m=>[m Start_Action'[01;34mAccess[m[31m),[m
      [35m5[m [31m=>[m [01;30mCreate[m [31m([mName [31m=>[m [31m"Stop"[m[31m,[m
      		    Stock_Id    [31m=>[m Stock_media_Stop[31m,[m
      		    Label       [31m=>[m [31m"Stop"[m[31m,[m
      		    Accelerator [31m=>[m [31m"<Control>P"[m[31m,[m
      		    Tooltip     [31m=>[m [31m"Stop"[m[31m,[m
      		    Callback    [31m=>[m Stop_Action'[01;34mAccess[m[31m),[m
      [35m6[m [31m=>[m [01;30mCreate[m [31m([mName [31m=>[m [31m"Rec_on"[m[31m,[m
      		    Stock_Id    [31m=>[m Stock_Media_Record[31m,[m
      		    Label       [31m=>[m [31m"Rec on"[m[31m,[m
      		    Accelerator [31m=>[m [31m"<alt>C"[m[31m,[m
      		    Tooltip     [31m=>[m [31m"Rec_on"[m[31m,[m
      		    Callback    [31m=>[m Rec_On_Action'[01;34mAccess[m[31m),[m
      [35m7[m [31m=>[m [01;30mCreate[m [31m([mName [31m=>[m [31m"Play_on"[m[31m,[m
      		    Stock_Id    [31m=>[m Stock_Media_Play[31m,[m
      		    Label       [31m=>[m [31m"Play on"[m[31m,[m
      		    Accelerator [31m=>[m [31m"<alt>P"[m[31m,[m
      		    Tooltip     [31m=>[m [31m"Play_on"[m[31m,[m
      		    Callback    [31m=>[m Play_On_Action'[01;34mAccess[m[31m),[m
      [35m8[m [31m=>[m [01;30mCreate[m [31m([mName [31m=>[m [31m"Rec_off"[m[31m,[m
      		    Stock_Id    [31m=>[m Stock_Media_stop[31m,[m
      		    Label       [31m=>[m [31m"Rec off"[m[31m,[m
      		    Tooltip     [31m=>[m [31m"Rec_off"[m[31m,[m
		   Callback    [31m=>[m Rec_Off_Action'[01;34mAccess[m[31m),[m
      [35m9[m [31m=>[m [01;30mCreate[m [31m([mName [31m=>[m [31m"Play_off"[m[31m,[m
      		    Stock_Id    [31m=>[m Stock_Media_Play[31m,[m
      		    Label       [31m=>[m [31m"Play off"[m[31m,[m
      		    Tooltip     [31m=>[m [31m"Play_off"[m[31m,[m
      		    Callback    [31m=>[m Play_Off_Action'[01;34mAccess[m[31m));[m
   

   Win_Main_UI_Info [31m:[m [01;34mconstant[m [32mString[m [31m:=[m
     [31m"<ui>"[m
     [31m&[m [31m"  <menubar name='MenuBar'>"[m
     [31m&[m [31m"    <menu action='FileMenu'>"[m
     [31m&[m [31m"      <menuitem action='Save'/>"[m     
     [31m&[m [31m"    </menu>"[m     
     [31m&[m [31m"    <menu action='TransportMenu'>"[m
     [31m&[m [31m"      <menuitem action='Start'/>"[m
     [31m&[m [31m"      <menuitem action='Stop'/>"[m
     [31m&[m [31m"      <menuitem action='Rec_on'/>"[m
     [31m&[m [31m"      <menuitem action='Play_on'/>"[m
     [31m&[m [31m"      <menuitem action='Rec_off'/>"[m
     [31m&[m [31m"      <menuitem action='Play_off'/>"[m
     [31m&[m [31m"    </menu>"[m     
     [31m&[m [31m"  </menubar>"[m
     [31m&[m [31m"</ui>"[m[31m;[m


   
   [31m--[m
   [31m------------------------------------------------------[m
   
   [01;34mtype[m Gtk_Gmface_Work_Window_Access [01;34mis[m [01;34maccess[m [01;34mall[m Gtk_Gmface_Work_Window_Record[31m;[m
   
   [01;34mprocedure[m [01;30mLoad_Window[m [31m([mWork_Window [31m:[m Gtk_Gmface_Work_Window_Access[31m;[m
			  Gtk_Int     [31m:[m [01;34min[m Gtk_Interface_Pointer[31m);[m
   
   [01;34mpackage[m Gmface_Window_User_Return_Callback [01;34mis[m 
      [01;34mnew[m Handlers[31m.[mUser_Return_Callback
     [31m([mGtk_Window_Record[31m,[m [32mBoolean[m[31m,[m Gtk_Interface_Pointer[31m);[m
   
   [01;34mpackage[m Gmface_Window_User_Callback [01;34mis[m 
      [01;34mnew[m Handlers[31m.[mUser_Callback
     [31m([mGtk_Window_Record[31m,[m Gtk_Interface_Pointer[31m);[m
   
   
   [31m------------------------------------------------------------------[m
   [31m--                Initialize Gmface work Window                 --[m
   [31m------------------------------------------------------------------[m
   
   [01;34mfunction[m [01;30mGmface_Initialize[m[31m([mWork          [31m:[m [01;34min[m Work_Access[31m;[m
			      Work_Id       [31m:[m [01;34min[m Work_Num[31m;[m
			      Process       [31m:[m [01;34min[m Work_Processing_Access[31m;[m
			      Gtk_Interface [31m:[m [01;34min[m Gtk_Interface_Pointer[31m)[m 
		      [01;34mreturn[m Gtk_Work_Window_Pointer [01;34mis[m
      
      Work_Window [31m:[m [01;34mconstant[m Gtk_Work_Window_Pointer [31m:=[m
	[01;34mnew[m [01;30mGtk_Gmface_Work_Window_Record[m[31m([mWork[31m,[m Work_Id[31m);[m
      
      Gmface_Window [31m:[m [01;34mconstant[m Gtk_Gmface_Work_Window_access [31m:=[m
	[01;30mGtk_Gmface_Work_Window_Record[m[31m([mWork_Window[31m.[m[01;34mall[m[31m)[m'[01;34mAccess[m[31m;[m
      
      Error [31m:[m [01;34maliased[m Gerror[31m;[m
   [01;34mbegin[m
      
      [31m--Put_Line("TITI 0.0");[m
      Work_Window[31m.[mProcess [31m:=[m Process[31m;[m
      [31m--Put_Line("TITI 0.0.0");[m
      [01;30mGmface_Work_Processing[m[31m([mWork_Window[31m.[mProcess[31m.[m[01;34mall[m[31m).[mProcess[31m.[mInitialize[31m;[m      
      [31m--Put_Line("TITI 0.0.1");[m
      
      
      Application_Window[31m.[m[01;30mGtk_New[m[31m([mWork_Window[31m.[mWindow[31m,[m Gtk_Interface[31m.[mApplication[31m);[m
      Application_Window[31m.[m[01;30mSet_Default_Size[m[31m([mWork_Window[31m.[mWindow[31m,[m [35m1024[m[31m,[m [35m768[m[31m);[m
      Application_Window[31m.[m[01;30mSet_Title[m[31m([mWork_Window[31m.[mWindow[31m,[m [31m"Gmface [ "[m [31m&[m Work[31m.[mFilename[31m.[m[01;34mall[m [31m&[m[31m" ]"[m[31m);[m
      Application_Window[31m.[m[01;30mSet_Position[m[31m([mWork_window[31m.[mWindow[31m,[m Win_Pos_Center_always[31m);[m
      
      [31m---------------------------------------------------[m
      [31m-- Global initialization :[m
      [31m---------------------------------------------------[m
      [01;30mGtk_New[m [31m([mGmface_Window[31m.[mMaster_Frame[31m,[m [31m"Band Master"[m[31m);[m
      [31m--Put_Line("TITI 0.2");[m
      [01;30mGtk_New_hbox[m[31m([mGmface_Window[31m.[mMain_Hbox[31m);[m

      [01;30mGtk_New[m[31m([mGmface_Window[31m.[mPlugins_Frame[31m,[m [31m"Plugins"[m[31m);[m



      [31m--Put_Line("TITI 0.4");[m
      [01;30mGtk_New[m [31m([mGmface_Window[31m.[mFlow_Frame[31m,[m [31m"Flow"[m[31m);[m
      
      [01;30mGtk_New[m [31m([mGmface_Window[31m.[mDevices_Frame[31m,[m [31m"Devices"[m[31m);[m
      [31m--Put_Line("TITI 0.5");[m
      [01;30mGtk_New_Vpaned[m [31m([mGmface_Window[31m.[mMain_paned[31m);[m
      [01;30mGtk_New_Hpaned[m [31m([mGmface_Window[31m.[mFlow_Paned[31m);[m
      [01;30mPack1[m [31m([mGmface_Window[31m.[mFlow_Paned[31m,[m Gmface_Window[31m.[mFlow_Frame[31m);[m
      [01;30mAdd2[m [31m([mGmface_Window[31m.[mflow_Paned[31m,[m Gmface_Window[31m.[mDevices_Frame[31m);[m
      [01;30mSet_Position[m [31m([mGmface_Window[31m.[mFlow_Paned[31m,[m [35m600[m[31m);[m
      [31m--Put_Line("TITI 0.6");[m
      [01;30mGtk_New[m [31m([mGmface_Window[31m.[mState_Frame[31m,[m [31m"State"[m[31m);[m
      [31m--Put_Line("TITI 0.7");[m
      [01;30mGtk_New_Vpaned[m [31m([mGmface_Window[31m.[mMain_Paned[31m);[m
      [01;30mPack1[m [31m([mGmface_Window[31m.[mMain_Paned[31m,[m Gmface_Window[31m.[mPlugins_Frame[31m);[m
      [01;30mAdd2[m [31m([mGmface_Window[31m.[mMain_Paned[31m,[m Gmface_Window[31m.[mFlow_Paned[31m);[m
      [01;30mSet_Position[m [31m([mGmface_Window[31m.[mMain_Paned[31m,[m [35m350[m[31m);[m
      [31m--                                               --[m
      [31m---------------------------------------------------[m
      
      
      
      
      [31m--Put_Line("TITI 0.8");[m
      [31m---------------------------------------------------[m
      [31m--             Main menu application             --[m
      [31m---------------------------------------------------[m
      [01;30mGtk_New[m [31m([mWork_Window[31m.[mApp_Action_Group[31m,[m [31m"Actions"[m[31m);[m
      [01;30mAdd_Actions[m [31m([mWork_Window[31m.[mApp_Action_Group[31m,[m App_Main_Entries[31m,[m
		   Gtk_Interface_Conversions[31m.[m[01;30mTo_Address[m [31m([mGtk_Interface[31m));[m
      
      [01;30mGtk_New[m [31m([mWork_Window[31m.[mApp_UI[31m);[m
      [31m--Put_Line("TITI 0.9");[m
      [01;30mInsert_Action_Group[m [31m([mWork_Window[31m.[mApp_UI[31m,[m Work_Window[31m.[mApp_Action_Group[31m,[m [35m0[m[31m);[m

      Add_Accel_Group
	[31m([mWork_Window[31m.[mWindow[31m,[m [01;30mGet_Accel_Group[m [31m([mWork_Window[31m.[mApp_UI[31m));[m

      [01;34mif[m Add_UI_From_String
      	[31m([mWork_Window[31m.[mApp_UI[31m,[m App_Main_UI_Info[31m,[m Error'Unchecked_Access[31m)[m [31m=[m [35m0[m [01;34mthen[m
      	 Put_Line
      	   [31m([m[31m"Building menus failed: "[m [31m&[m [01;30mGet_Message[m [31m([mError[31m));[m
      	 [01;30mError_Free[m [31m([mError[31m);[m
      [01;34mend[m [01;34mif[m[31m;[m            
      [01;30mGtk_New_Hbox[m[31m([mWork_Window[31m.[mMenus_Hbox[31m,[m False[31m,[m [35m0[m[31m);[m
      [31m--Put_Line("TITI 0.10");[m
      Gtk[31m.[mBox[31m.[mPack_Start
	[31m([mWork_Window[31m.[mMenus_Hbox[31m,[m
	 [01;30mGet_Widget[m [31m([mWork_Window[31m.[mApp_UI[31m,[m [31m"/MenuBar"[m[31m),[m
	 Expand [31m=>[m False[31m,[m Padding [31m=>[m [35m0[m[31m);[m
      
      [01;30mGtk_New_Vbox[m[31m([mWork_Window[31m.[mMain_Vbox[31m,[m False[31m,[m [35m0[m[31m);[m
      
      [01;30mPack_Start[m[31m([mWork_Window[31m.[mMain_Vbox[31m,[m Work_Window[31m.[mMenus_Hbox[31m,[m false[31m);[m
      [31m--                                                             --[m
      [31m-----------------------------------------------------------------[m
      
      [31m-- Window app menu.[m
      [31m--  --------------------------------------------------[m
      [31m--  --             Window(s) menu                   --[m
      [31m--  --------------------------------------------------[m
      [31m--Put_Line("TITI 0.11");[m
      [01;30mGtk_New[m [31m([mWork_Window[31m.[mWin_Action_Group[31m,[m [31m"Actions"[m[31m);[m
      [01;30mAdd_Actions[m [31m([mWork_Window[31m.[mWin_Action_Group[31m,[m Win_Main_Entries[31m,[m Gtk_Work_Window_Conversions[31m.[m[01;30mTo_Address[m [31m([mWork_Window[31m));[m
      [01;30mGtk_New[m [31m([mWork_Window[31m.[mWin_UI[31m);[m

      [01;30mInsert_Action_Group[m [31m([mWork_Window[31m.[mWin_UI[31m,[m Work_Window[31m.[mWin_Action_Group[31m,[m [35m0[m[31m);[m

      Add_Accel_Group
      	[31m([mWork_Window[31m.[mWindow[31m,[m [01;30mGet_Accel_Group[m [31m([mWork_Window[31m.[mWin_UI[31m));[m

      [01;34mif[m Add_UI_From_String
      	[31m([mWork_Window[31m.[mWin_UI[31m,[m Win_Main_UI_Info[31m,[m Error'Unchecked_Access[31m)[m [31m=[m [35m0[m [01;34mthen[m
      	 Put_Line
      	   [31m([m[31m"Building menus failed: "[m [31m&[m [01;30mGet_Message[m [31m([mError[31m));[m
      	 [01;30mError_Free[m [31m([mError[31m);[m
      [01;34mend[m [01;34mif[m[31m;[m                  
      
      Gtk[31m.[mBox[31m.[mPack_Start
      	[31m([mWork_Window[31m.[mMenus_Hbox[31m,[m
      	 [01;30mGet_Widget[m [31m([mWork_Window[31m.[mWin_UI[31m,[m [31m"/MenuBar"[m[31m),[m
      	 Expand [31m=>[m False[31m,[m Padding [31m=>[m [35m0[m[31m);[m
      [31m-------------------------------------------------------[m
      [31m--             End of All menus.                     --[m
      [31m-------------------------------------------------------[m
      
      
      [31m-----------------------------------------------------------------    [m
      [31m--                                                             --            [m
      [31m--Put_Line("TITI 0.12");[m
      [01;30mPack_Start[m [31m([mGmface_Window[31m.[mMain_Hbox[31m,[m Gmface_Window[31m.[mMaster_Frame[31m,[m False[31m,[m False[31m,[m [35m0[m[31m);[m
      [01;30mPack_Start[m [31m([mGmface_Window[31m.[mMain_Vbox[31m,[m Gmface_Window[31m.[mMain_Hbox[31m,[m False[31m,[m False[31m,[m [35m0[m[31m);[m
      [01;30mPack_Start[m [31m([mGmface_Window[31m.[mMain_Vbox[31m,[m Gmface_Window[31m.[mMain_Paned[31m,[m True[31m,[m True[31m,[m [35m0[m[31m);[m
      [01;30mPack_Start[m [31m([mGmface_Window[31m.[mMain_Vbox[31m,[m Gmface_Window[31m.[mState_Frame[31m,[m False[31m,[m False[31m,[m [35m0[m[31m);[m


      [31m--Put_Line("TITI 0.13");[m

      [01;30mTrue_Table_Initialize[m[31m([m[01;30mGmface_Work_Record[m[31m([mwork[31m.[m[01;34mall[m[31m).[mOptions[31m.[mTrue_Table[31m);[m
      
      [01;30mLoad_Window[m [31m([mGmface_Window[31m,[m Gtk_Interface[31m);[m
      [31m--Put_Line("TITI 0.14");[m
      Gmface_Window_User_Return_Callback[31m.[mConnect
	[31m([mWork_Window[31m.[mWindow[31m,[m [31m"delete-event"[m[31m,[m
	 Gmface_Window_User_Return_Callback[31m.[m[01;30mTo_Marshaller[m[31m([mClose_Window'[01;34mAccess[m[31m),[m
	 Gtk_Interface[31m);[m
      
      Gmface_Window_User_Callback[31m.[mConnect
	[31m([mWork_Window[31m.[mWindow[31m,[m [31m"activate-focus"[m[31m,[m
	 Gmface_Window_User_Callback[31m.[m[01;30mTo_Marshaller[m[31m([mFocus_Window'[01;34mAccess[m[31m),[m
	 Gtk_Interface[31m);[m
      
      
      [31m--Put_Line("TITI 0.15");[m
      [31m------------------------------------------------[m
      [31m--                                            --[m
      [01;30mAdd[m [31m([mWork_Window[31m.[mWindow[31m,[m Work_Window[31m.[mMain_Vbox[31m);[m
      
      Application_Window[31m.[m[01;30mShow_All[m[31m([mWork_window[31m.[mWindow[31m);[m
      [31m--Put_Line("TITI 0.16");[m
      [01;34mreturn[m Work_Window[31m;[m
   [01;34mend[m Gmface_Initialize[31m;[m
   
   [01;34mpackage[m Object_Callback [01;34mis[m [01;34mnew[m Gtk[31m.[mHandlers[31m.[m[01;30mUser_Callback[m [31m([mGObject_Record[31m,[m Gtk_Gmface_Work_Window_Record[31m);[m
   
   
   
   
   [01;34mpackage[m Gmface_Work_Window_Conversions
   [01;34mis[m [01;34mnew[m System[31m.[mAddress_To_Access_Conversions
     [31m([mGtk_Gmface_Work_Window_Record[31m);[m
   
   
   [01;34mpackage[m Pointer_Object_Callback [01;34mis[m [01;34mnew[m Gtk[31m.[mHandlers[31m.[m[01;30mUser_Callback[m [31m([mGObject_Record[31m,[m Gtk_Gmface_Work_Window_Access[31m);[m
   
   
   [01;34mprocedure[m Text_Edited_Callback
     [31m([mModel  [31m:[m [01;34maccess[m GObject_Record'Class[31m;[m
      Params [31m:[m Glib[31m.[mValues[31m.[mGValues[31m;[m
      User_Data [31m:[m Gtk_Gmface_Work_Window_Record[31m);[m
      
   [31m-----------------[m
   [31m-- Custom_Sort --[m
   [31m-----------------[m

   [01;34mfunction[m Custom_Sort
     [31m([mModel [31m:[m Gtk_Tree_Model[31m;[m
      A[31m,[m B  [31m:[m Gtk_Tree_Iter[31m)[m [01;34mreturn[m Gint
   [01;34mis[m
      Text_A [31m:[m [01;34mconstant[m [32mString[m [31m:=[m [01;30mGet_String[m [31m([mModel[31m,[m A[31m,[m Text_Column[31m);[m
      Text_B [31m:[m [01;34mconstant[m [32mString[m [31m:=[m [01;30mGet_String[m [31m([mModel[31m,[m B[31m,[m Text_Column[31m);[m
   [01;34mbegin[m

      [01;34mif[m Text_A [31m/=[m [31m""[m [01;34mand[m [01;34mthen[m
	Text_A [31m<[m Text_B [01;34mthen[m
         [01;34mreturn[m [31m-[m[35m1[m[31m;[m  [31m--  A first[m
      [01;34melsif[m Text_B [31m/=[m [31m""[m [01;34mand[m [01;34mthen[m
	Text_A [31m>[m Text_B [01;34mthen[m
         [01;34mreturn[m [35m1[m[31m;[m   [31m--  Same[m
      [01;34melse[m
         [01;34mreturn[m [35m0[m[31m;[m   [31m--  B first[m
      [01;34mend[m [01;34mif[m[31m;[m
   [01;34mend[m Custom_Sort[31m;[m


   [01;34mfunction[m Add_Line
     [31m([mModel    [31m:[m [01;34maccess[m Gtk_Tree_Store_Record'Class[31m;[m
      names    [31m:[m [32mString[m[31m;[m
      Ids      [31m:[m [32mstring[m[31m;[m
      Types    [31m:[m [32mString[m[31m;[m
      Editable [31m:[m [32mBoolean[m [31m:=[m False[31m;[m
      Muttable  [31m:[m [32mBoolean[m [31m:=[m False[31m;[m
      Active   [31m:[m [32mBoolean[m [31m:=[m False[31m;[m
      Parent   [31m:[m Gtk_Tree_Iter [31m:=[m Null_Iter[31m)[m [01;34mreturn[m Gtk_Tree_Iter[31m;[m

   
   [01;34mprocedure[m [01;30mLoad_Devices[m [31m([mWork_Window [31m:[m [01;34maccess[m Gtk_Gmface_Work_Window_Record[31m;[m
   			   Devices     [31m:[m [01;34min[m Bandmaster_Record[31m)[m [01;34mis[m
                  
      
      
      Scrolled   [31m:[m Gtk_Scrolled_Window[31m;[m
      
      [31m-- Comon Tree[m
      Col      [31m:[m Gtk_Tree_View_Column[31m;[m
      Num      [31m:[m Gint[31m;[m
      Text_Render   [31m:[m Gtk_Cell_Renderer_Text[31m;[m
      Toggle_Render [31m:[m Gtk_Cell_Renderer_Toggle[31m;[m
      Edit_Toggle_Render [31m:[m Gtk_Cell_Renderer_Toggle[31m;[m

      Parent[31m,[m Iter  [31m:[m Gtk_Tree_Iter[31m;[m
      [01;34mpragma[m [01;30mUnreferenced[m [31m([mNum[31m);[m
      [01;34mpragma[m [01;30mWarnings[m [31m([mOff[31m,[m Iter[31m);[m



      Input_Device           [31m:[m Gtk_Combo_Box_Text[31m;[m
      Output_Device          [31m:[m Gtk_Combo_Box_Text[31m;[m
      Devices_Lists          [31m:[m Devices_List_Access[31m;[m
      
      
      Devices_Names [31m:[m String_Access [31m:=[m [01;34mnew[m [32mString[m ' [31m([m[31m""[m[31m);[m

      Num_Devices [31m:[m [32minteger[m [31m:=[m [31m-[m[35m1[m[31m;[m
      
   [01;34mbegin[m

      [01;30mGtk_New[m [31m([mWork_Window[31m.[mDevices_Model[31m,[m
   	       [31m([mText_Column       [31m=>[m GType_String[31m,[m
                Id_Column         [31m=>[m GType_String[31m,[m
   		Type_Column       [31m=>[m GType_String[31m,[m
                Editable_Column   [31m=>[m GType_Boolean[31m,[m
                Active_Column     [31m=>[m GType_Boolean[31m,[m
                Foreground_Column [31m=>[m GType_String[31m,[m
   		Printable_Column  [31m=>[m GType_Boolean[31m,[m
   		Muttable_Column   [31m=>[m GType_Boolean[31m));[m

      [01;30mGtk_New[m [31m([mWork_Window[31m.[mDevices_Tree[31m,[m Work_Window[31m.[mDevices_Model[31m);[m
      [01;30mSet_Grid_Lines[m [31m([mWork_Window[31m.[mDevices_Tree[31m,[m Grid_Lines_Vertical[31m);[m
      [01;30mSet_Enable_Tree_Lines[m [31m([mWork_Window[31m.[mDevices_Tree[31m,[m True[31m);[m
      [01;30mSet_Rubber_Banding[m [31m([mWork_Window[31m.[mDevices_Tree[31m,[m True[31m);[m
      [01;30mSet_Mode[m [31m([m[01;30mGet_Selection[m [31m([mWork_Window[31m.[mDevices_Tree[31m),[m Selection_Multiple[31m);[m
      [01;30mGtk_New[m [31m([mScrolled[31m);[m
      [01;30mSet_Policy[m [31m([mScrolled[31m,[m Policy_Always[31m,[m Policy_Always[31m);[m
      [01;30mAdd[m [31m([mScrolled[31m,[m Work_Window[31m.[mDevices_Tree[31m);[m

      [01;30mAdd[m [31m([mWork_Window[31m.[mDevices_Frame[31m,[m Scrolled[31m);[m

      [01;30mGtk_New[m [31m([mText_Render[31m);[m

      [01;30mGtk_New[m [31m([mCol[31m);[m
      Num [31m:=[m [01;30mAppend_Column[m [31m([mWork_Window[31m.[mDevices_Tree[31m,[m Col[31m);[m
      [01;30mSet_Sort_Column_Id[m [31m([mCol[31m,[m Text_Column[31m);[m
      [01;30mSet_Title[m [31m([mCol[31m,[m [31m"Name"[m[31m);[m
      [01;30mPack_Start[m [31m([mCol[31m,[m Text_Render[31m,[m True[31m);[m
      [01;30mSet_Sizing[m [31m([mCol[31m,[m Tree_View_Column_Autosize[31m);[m
      [01;30mAdd_Attribute[m [31m([mCol[31m,[m Text_Render[31m,[m [31m"text"[m[31m,[m Text_Column[31m);[m
      [01;30mAdd_Attribute[m [31m([mCol[31m,[m Text_Render[31m,[m [31m"editable"[m[31m,[m Editable_Column[31m);[m
      Object_Callback[31m.[mObject_Connect
        [31m([mText_Render[31m,[m [31m"edited"[m[31m,[m Text_Edited_Callback'[01;34mAccess[m[31m,[m
   	 Slot_Object [31m=>[m Work_Window[31m.[mDevices_Model[31m,[m
   	 User_Data [31m=>[m Work_Window[31m.[m[01;34mall[m[31m);[m


      [01;30mGtk_New[m [31m([mText_Render[31m);[m
      [01;30mGtk_New[m [31m([mCol[31m);[m
      Num [31m:=[m [01;30mAppend_Column[m [31m([mWork_Window[31m.[mDevices_Tree[31m,[m Col[31m);[m

      [01;30mSet_Title[m [31m([mCol[31m,[m [31m"Id"[m[31m);[m
      [01;30mPack_Start[m [31m([mCol[31m,[m Text_Render[31m,[m True[31m);[m
      [01;30mSet_Sizing[m [31m([mCol[31m,[m Tree_View_Column_Autosize[31m);[m
      [01;30mAdd_Attribute[m [31m([mCol[31m,[m Text_Render[31m,[m [31m"text"[m[31m,[m Id_Column[31m);[m

      [01;30mGtk_New[m [31m([mText_Render[31m);[m
      [01;30mGtk_New[m [31m([mCol[31m);[m
      Num [31m:=[m [01;30mAppend_Column[m [31m([mWork_Window[31m.[mDevices_Tree[31m,[m Col[31m);[m

      [01;30mSet_Title[m [31m([mCol[31m,[m [31m"Type"[m[31m);[m
      [01;30mPack_Start[m [31m([mCol[31m,[m Text_Render[31m,[m True[31m);[m
      [01;30mSet_Sizing[m [31m([mCol[31m,[m Tree_View_Column_Autosize[31m);[m
      [01;30mAdd_Attribute[m [31m([mCol[31m,[m Text_Render[31m,[m [31m"text"[m[31m,[m Type_Column[31m);[m


      [01;30mGtk_New[m [31m([mToggle_Render[31m);[m
      [01;30mGtk_New[m [31m([mCol[31m);[m
      [01;30mSet_Sort_Column_Id[m [31m([mCol[31m,[m [31m-[m[35m1[m[31m);[m  [31m--  unsortable[m
      Num [31m:=[m [01;30mAppend_Column[m [31m([mWork_Window[31m.[mDevices_Tree[31m,[m Col[31m);[m
      [01;30mSet_Title[m [31m([mCol[31m,[m [31m"Print"[m[31m);[m
      [01;30mPack_Start[m [31m([mCol[31m,[m Toggle_Render[31m,[m False[31m);[m
      [01;30mAdd_Attribute[m [31m([mCol[31m,[m Toggle_Render[31m,[m [31m"active"[m[31m,[m Printable_Column[31m);[m



      [01;30mGtk_New[m [31m([mToggle_Render[31m);[m
      [01;30mGtk_New[m [31m([mCol[31m);[m
      [01;30mSet_Sort_Column_Id[m [31m([mCol[31m,[m [31m-[m[35m1[m[31m);[m  [31m--  unsortable[m
      Num [31m:=[m [01;30mAppend_Column[m [31m([mWork_Window[31m.[mDevices_Tree[31m,[m Col[31m);[m
      [01;30mSet_Title[m [31m([mCol[31m,[m [31m"Mute"[m[31m);[m
      [01;30mPack_Start[m [31m([mCol[31m,[m Toggle_Render[31m,[m False[31m);[m
      [01;30mAdd_Attribute[m [31m([mCol[31m,[m Toggle_Render[31m,[m [31m"active"[m[31m,[m Muttable_Column[31m);[m
      

      [01;30mSet_Headers_Clickable[m [31m([mWork_Window[31m.[mDevices_Tree[31m,[m True[31m);[m
      [01;30mSet_Sort_Func[m [31m(+[mWork_Window[31m.[mDevices_Model[31m,[m Text_Column[31m,[m Custom_Sort'[01;34mAccess[m[31m);[m


      Parent [31m:=[m Null_Iter[31m;[m
      [01;34mif[m Devices[31m.[mInst_Last [31m>[m [35m0[m [01;34mthen[m
	 [01;34mfor[m Device_Id [01;34min[m [35m1[m[31m..[m[01;30mInstrument_Id[m[31m([mDevices[31m.[mInst_Last[31m)[m [01;34mloop[m	 
	    [01;34mdeclare[m
	       Devices_Names [31m:[m [01;34mconstant[m [32mString[m [31m:=[m
		 [31m"Input  : "[m [31m&[m Devices[31m.[m[01;30mOrchester[m[31m([mDevice_Id[31m).[mInput_Device_Driver[31m.[mDevice_Info[31m.[mName[31m.[m[01;34mall[m [31m&[m [32mCharacter[m'[01;30mVal[m[31m([m[35m10[m[31m)[m [31m&[m
		 [31m"Output : "[m [31m&[m Devices[31m.[m[01;30mOrchester[m[31m([mDevice_Id[31m).[mOutput_Device_Driver[31m.[mDevice_Info[31m.[mName[31m.[m[01;34mall[m[31m;[m
	    [01;34mbegin[m	      	 	 
	       Iter [31m:=[m Add_Line
		 [31m([mWork_Window[31m.[mDevices_Model[31m,[m [31m""[m[31m,[m Positive'[01;30mimage[m [31m([m[01;30mPositive[m[31m([mDevice_Id[31m)),[m Devices_names[31m,[m
		  Editable [31m=>[m False[31m,[m Muttable [31m=>[m False[31m,[m Active [31m=>[m False[31m,[m Parent [31m=>[m parent[31m);[m
	    [01;34mend[m[31m;[m
	 [01;34mend[m [01;34mloop[m[31m;[m      
	 
	 
      [01;34mend[m [01;34mif[m[31m;[m

      [31m-- Show_All(Work_Window.Window);[m
      [31m-- End Devices View[m

   [01;34mend[m Load_Devices[31m;[m
   
   
   
   [01;34mpackage[m Window_Cb [01;34mis[m [01;34mnew[m Gtk[31m.[mHandlers[31m.[mUser_Callback
     [31m([mGtk[31m.[mWidget[31m.[mGtk_Widget_Record[31m,[m
      Gtk_Gmface_Work_Window_Access[31m);[m
   
   
   [01;34mprocedure[m Set_Tempo_Callback
     [31m([mModel  [31m:[m [01;34maccess[m Gtk_Widget_Record'Class[31m;[m
      User_Data [31m:[m Gtk_Gmface_Work_Window_Access[31m);[m

   [01;34mprocedure[m Set_Signature_Callback
     [31m([mModel  [31m:[m [01;34maccess[m Gtk_Widget_Record'Class[31m;[m
      User_Data [31m:[m Gtk_Gmface_Work_Window_Access[31m);[m

   [01;34mprocedure[m Track_Length_Callback
     [31m([mWidget  [31m:[m [01;34maccess[m Gtk_Widget_Record'Class[31m;[m
      User_Data [31m:[m Gtk_Gmface_Work_Window_Access[31m);[m

   
   [01;34mprocedure[m [01;30mSet_Master_Form[m [31m([mWidget [31m:[m [01;34maccess[m Gtk_Widget_Record'class[31m;[m
			      Work_Window [31m:[m Gtk_Gmface_Work_Window_Access[31m);[m

   
   
   
   
   [01;34mprocedure[m [01;30mLoad_Master[m [31m([mWork_Window [31m:[m Gtk_Gmface_Work_Window_Access[31m;[m
			  Options  [31m:[m [01;34min[m Gmface_Options_Record[31m)[m [01;34mis[m
      Form_Label [31m:[m Gtk_Label[31m;[m
   [01;34mbegin[m
      [31m--Put_Line("TOTO 1.10.1");[m
      [01;30mGtk_New_Vbox[m [31m([mWork_Window[31m.[mState_Box[31m);[m
      [01;30mGtk_New_Hbox[m [31m([mWork_Window[31m.[mTools_Box[31m);[m
      [31m--Put_Line("TOTO 1.10.2");[m

      [01;30mGtk_New[m [31m([mWork_Window[31m.[mState_Label[31m,[m [31m"Tempo :"[m[31m);[m
      [01;30mGtk_New[m [31m([mWork_Window[31m.[mTempo_Button[31m,[m [35m1.0[m[31m,[m [35m240.0[m[31m,[m [35m0.1[m[31m);[m
      [01;30mSet_value[m [31m([mWork_Window[31m.[mTempo_Button[31m,[m [01;30mGdouble[m[31m([mOptions[31m.[mTempo[31m));[m
      [31m--Put_Line("TOTO 1.10.3");[m
      Window_Cb[31m.[mConnect
        [31m([mWork_Window[31m.[mTempo_Button[31m,[m [31m"value_changed"[m[31m,[m Window_Cb[31m.[m[01;30mTo_Marshaller[m[31m([mSet_Tempo_Callback'[01;34mAccess[m[31m),[m
	 User_Data [31m=>[m Work_Window[31m);[m
      [01;30mPack_Start[m [31m([mWork_Window[31m.[mTools_Box[31m,[m Work_Window[31m.[mState_Label[31m,[m Expand [31m=>[m false[31m);[m
      [01;30mPack_Start[m [31m([mWork_Window[31m.[mTools_Box[31m,[m Work_Window[31m.[mTempo_Button[31m,[m Expand [31m=>[m false[31m);[m
      [31m-- Time Signature.[m
      [01;30mGtk_New[m [31m([mWork_Window[31m.[mSignature[31m);[m
      [31m--Put_Line("TOTO 1.10.4");[m
      [01;30mSet_Text[m [31m([mWork_Window[31m.[mSignature[31m,[m [01;30mImage[m [31m([mOptions[31m.[mSignature[31m));[m
      [01;30mSet_Editable[m [31m([mWork_Window[31m.[mSignature[31m,[m True[31m);[m
      Gtk[31m.[mBox[31m.[m[01;30mPack_Start[m [31m([mWork_Window[31m.[mTools_Box[31m,[m Work_Window[31m.[mSignature[31m,[m Expand [31m=>[m False[31m,[m Padding [31m=>[m [35m0[m[31m);[m
      Window_Cb[31m.[mConnect
        [31m([mWork_Window[31m.[mSignature[31m,[m [31m"activate"[m[31m,[m Window_Cb[31m.[m[01;30mTo_Marshaller[m[31m([mSet_Signature_Callback'[01;34mAccess[m[31m),[m
	 User_Data [31m=>[m Work_Window[31m);[m
      [31m--Put_Line("TOTO 1.10.7");[m
      [01;30mGtk_New[m [31m([mWork_Window[31m.[mState_Label[31m,[m [31m"Track length : "[m[31m);[m
      [01;30mGtk_New[m [31m([mWork_Window[31m.[mTrack_Length_Button[31m,[m [35m1.0[m[31m,[m [35m65537.0[m[31m,[m [35m1.0[m[31m);[m
      [01;30mSet_value[m [31m([mWork_Window[31m.[mTrack_Length_Button[31m,[m [01;30mGdouble[m[31m([mOptions[31m.[mTrack_Length[31m));[m
      [01;30mPack_Start[m [31m([mWork_Window[31m.[mTools_Box[31m,[m Work_Window[31m.[mState_Label[31m,[m Expand [31m=>[m false[31m);[m
      [01;30mPack_Start[m [31m([mWork_Window[31m.[mTools_Box[31m,[m Work_Window[31m.[mTrack_Length_Button[31m,[m Expand [31m=>[m false[31m);[m
      Window_Cb[31m.[mConnect
        [31m([mWork_Window[31m.[mTrack_Length_Button[31m,[m [31m"value_changed"[m[31m,[m Window_Cb[31m.[m[01;30mTo_Marshaller[m[31m([mTrack_Length_Callback'[01;34mAccess[m[31m),[m
	 User_Data [31m=>[m Work_Window[31m);[m
      [31m--Put_Line("TOTO 1.10.8");[m


      Gtk[31m.[mCombo_Box_text[31m.[m[01;30mGtk_New[m[31m([mWork_Window[31m.[mPlayed_Form[31m);[m
      [01;34mfor[m I [01;34min[m [35m0[m [31m..[m Options[31m.[mForms_Names'Length[31m-[m[35m1[m [01;34mloop[m
      	 Gtk[31m.[mCombo_Box_text[31m.[mInsert_Text
	   [31m([mWork_Window[31m.[mPlayed_Form[31m,[m Glib[31m.[m[01;30mGint[m[31m([mI[31m),[m
	    Glib[31m.[mConvert[31m.[m[01;30mLocale_To_UTF8[m[31m([mOptions[31m.[m[01;30mForms_names[m[31m([m[01;30mForm_Index_Type[m[31m([mI[31m+[m[35m1[m[31m)).[m[01;34mall[m[31m));[m
      [01;34mend[m [01;34mloop[m[31m;[m
      [31m--Put_Line("TOTO 1.10.9");[m
      Gtk[31m.[mCombo_Box_text[31m.[m[01;30mSet_Active[m[31m([mWork_Window[31m.[mPlayed_Form[31m,[m [01;30mGint[m[31m([mOptions[31m.[mCurrent_Form[31m-[m[35m1[m[31m));[m
      Gtk[31m.[mLabel[31m.[m[01;30mGtk_New[m[31m([mForm_label[31m,[m [31m"Played form     : "[m[31m);[m
      Gtk[31m.[mBox[31m.[m[01;30mPack_Start[m[31m([mWork_Window[31m.[mTools_Box[31m,[m Form_Label[31m,[m False[31m,[m False[31m,[m [35m0[m[31m);[m
      Gtk[31m.[mBox[31m.[m[01;30mPack_Start[m[31m([mWork_Window[31m.[mTools_Box[31m,[m Work_Window[31m.[mPlayed_Form[31m,[m False[31m,[m False[31m,[m [35m0[m[31m);[m
      [31m--Put_Line("TOTO 1.10.10");[m
      Window_Cb[31m.[m[01;30mConnect[m[31m([mWork_Window[31m.[mPlayed_Form[31m,[m [31m"changed"[m[31m,[m
			Window_Cb[31m.[m[01;30mTo_Marshaller[m[31m([mSet_Master_Form'[01;34mAccess[m[31m),[m
			Work_Window[31m);[m
      [31m--Put_Line("TOTO 1.10.14");[m
      [01;30mPack_Start[m [31m([mWork_Window[31m.[mState_Box[31m,[m Work_Window[31m.[mTools_Box[31m,[m Expand [31m=>[m False[31m);[m
      [31m--Put_Line("TOTO 1.10.15");[m
      [01;30mAdd[m [31m([mWork_Window[31m.[mMaster_Frame[31m,[m Work_Window[31m.[mState_Box[31m);[m
      [31m--Put_Line("TOTO 1.10.16");[m
   [01;34mend[m Load_Master[31m;[m
   
   
   [01;34mprocedure[m Set_Tempo_Callback
     [31m([mModel  [31m:[m [01;34maccess[m Gtk_Widget_Record'Class[31m;[m

      User_Data [31m:[m Gtk_Gmface_Work_Window_Access[31m)[m [01;34mis[m
   [01;34mbegin[m
      [01;30mGmface_Work_Record[m[31m([mUser_Data[31m.[mWork[31m.[m[01;34mall[m[31m).[mOptions[31m.[mTempo [31m:=[m [01;30mTempo_Type[m[31m([m[01;30mGet_Value[m[31m([m[01;30mGtk_Spin_Button[m[31m([mModel[31m)));[m
      
      [01;30mSet_Focus[m [31m([mUser_Data[31m.[mWindow[31m,[m [01;30mGtk_Widget[m [31m([mUser_Data[31m.[mMedia_Play[31m));[m
   [01;34mexception[m
      [01;34mwhen[m [01;34mothers[m [31m=>[m
	 [01;34mnull[m[31m;[m
   [01;34mend[m Set_Tempo_Callback[31m;[m


   [01;34mprocedure[m Set_Signature_Callback
     [31m([mModel  [31m:[m [01;34maccess[m Gtk_Widget_Record'Class[31m;[m

      User_Data [31m:[m Gtk_Gmface_Work_Window_Access[31m)[m [01;34mis[m

      Number [31m:[m Time_Number_Type   [31m:=[m [35m4[m[31m;[m
      Unit   [31m:[m Time_unit_Type [31m:=[m [35m4[m[31m;[m

      Separator [31m:[m [01;34mconstant[m Natural [31m:=[m
	Fixed[31m.[mIndex
	[31m([mGlib[31m.[mConvert[31m.[m[01;30mLocale_From_UTF8[m [31m([m[01;30mGet_Text[m [31m([m[01;30mGtk_Gentry[m [31m([mModel[31m))),[m [31m"/"[m[31m);[m
      Last      [31m:[m [01;34mconstant[m Natural [31m:=[m
	Fixed[31m.[mIndex_Non_Blank
	[31m([mGlib[31m.[mConvert[31m.[m[01;30mLocale_From_UTF8[m [31m([m[01;30mGet_Text[m [31m([m[01;30mGtk_Gentry[m [31m([mModel[31m))),[m backward[31m);[m
   [01;34mbegin[m
      [01;34mif[m Separator [31m/=[m [35m0[m [01;34mthen[m
      	 Number [31m:=[m Time_Number_Type'Value
	   [31m([mGlib[31m.[mConvert[31m.[m[01;30mLocale_From_UTF8[m [31m([m[01;30mGet_Text[m [31m([m[01;30mGtk_Gentry[m [31m([mModel[31m)))[m [31m([m[35m1[m[31m..[mSeparator[31m-[m[35m1[m[31m));[m
      	 Unit [31m:=[m Time_Unit_Type'Value
	   [31m([mGlib[31m.[mConvert[31m.[m[01;30mLocale_From_UTF8[m [31m([m[01;30mGet_Text[m [31m([m[01;30mGtk_Gentry[m [31m([mModel[31m)))[m [31m([mSeparator[31m+[m[35m1[m[31m..[mlast[31m));[m
      	 [01;30mGmface_Work_Record[m[31m([mUser_Data[31m.[mWork[31m.[m[01;34mall[m[31m).[mOptions[31m.[mSignature [31m:=[m [31m([mNumber[31m,[m Unit[31m);[m
	 
      	 [01;30mSet_Focus[m [31m([mUser_Data[31m.[mWindow[31m,[m [01;30mGtk_Widget[m [31m([mUser_Data[31m.[mMedia_Play[31m));[m
      [01;34mend[m [01;34mif[m[31m;[m
   [01;34mexception[m
      [01;34mwhen[m [01;34mothers[m [31m=>[m
	 [01;34mnull[m[31m;[m
   [01;34mend[m Set_Signature_Callback[31m;[m


   [01;34mprocedure[m Track_Length_Callback
     [31m([mWidget  [31m:[m [01;34maccess[m Gtk_Widget_Record'Class[31m;[m
      User_Data [31m:[m Gtk_Gmface_Work_Window_Access[31m)[m [01;34mis[m
   [01;34mbegin[m
      [01;30mPut_Line[m[31m([m[31m"Track length set..."[m[31m);[m
      [01;30mGmface_Work_Record[m[31m([mUser_Data[31m.[mWork[31m.[m[01;34mall[m[31m).[mOptions[31m.[mTrack_Length [31m:=[m
	[32mInteger[m[31m([m[01;30mGet_Value[m[31m([m[01;30mGtk_Spin_Button[m[31m([mWidget[31m)));[m
      [01;30mPut_Line[m[31m([m[31m"Track length set to vale "[m [31m&[m Positive'[01;30mImage[m[31m([m[01;30mGmface_Work_Record[m[31m([mUser_Data[31m.[mWork[31m.[m[01;34mall[m[31m).[mOptions[31m.[mTrack_Length[31m));[m
      [01;30mSet_Focus[m [31m([mUser_Data[31m.[mWindow[31m,[m [01;30mGtk_Widget[m [31m([mUser_Data[31m.[mMedia_Play[31m));[m
   [01;34mexception[m
      [01;34mwhen[m [01;34mothers[m [31m=>[m
	 [01;34mnull[m[31m;[m
   [01;34mend[m Track_Length_Callback[31m;[m

   [01;34mprocedure[m [01;30mSet_Master_Form[m [31m([mWidget [31m:[m [01;34maccess[m Gtk_Widget_Record'class[31m;[m
			      Work_Window [31m:[m Gtk_Gmface_Work_Window_Access[31m)[m [01;34mis[m
   [01;34mbegin[m

      [01;30mGmface_Work_Record[m[31m([mWork_Window[31m.[mWork[31m.[m[01;34mall[m[31m).[mOptions[31m.[mCurrent_Form [31m:=[m
	[01;30mForm_Index_Type[m[31m([mGtk[31m.[mCombo_Box_text[31m.[m[01;30mGet_Active[m[31m([m[01;30mGtk_Combo_Box_text[m[31m([mwidget[31m))+[m[35m1[m[31m);[m
   [01;34mend[m Set_Master_Form[31m;[m

   [31m--[m
   [31m-----------------------------------------------------------------------------[m
   
   [31m-----------------------------------------------------------------------------[m
   [31m--[m
   [01;34mprocedure[m [01;30mLoad_Flow[m [31m([mWork_Window [31m:[m [01;34maccess[m Gtk_Gmface_Work_Window_record[31m)[m [01;34mis[m
      [31m--                 Buffer  : in Flow_Buffer_Type) is[m

      Scrolled   [31m:[m Gtk_Scrolled_Window[31m;[m

      [31m-- Comon Tree[m
      Col      [31m:[m Gtk_Tree_View_Column[31m;[m
      Num      [31m:[m Gint[31m;[m
      Text_Render   [31m:[m Gtk_Cell_Renderer_Text[31m;[m
      Toggle_Render [31m:[m Gtk_Cell_Renderer_Toggle[31m;[m

      Parent[31m,[m Iter  [31m:[m Gtk_Tree_Iter[31m;[m
      [01;34mpragma[m [01;30mUnreferenced[m [31m([mNum[31m);[m
      [01;34mpragma[m [01;30mWarnings[m [31m([mOff[31m,[m Iter[31m);[m
   [01;34mbegin[m
      [31m------------------------------------------------[m
      [31m-- Flow begin.[m
      [01;30mGtk_New[m [31m([mScrolled[31m);[m
      [01;30mSet_Border_Width[m [31m([mScrolled[31m,[m [35m5[m[31m);[m
      [01;30mSet_Policy[m [31m([mScrolled[31m,[m Policy_Automatic[31m,[m Policy_Automatic[31m);[m

      [01;30mGtk_New[m [31m([mWork_Window[31m.[mFlow_Model[31m,[m
               [31m([mText_Column       [31m=>[m GType_String[31m,[m
                Text_Column[31m+[m[35m1[m       [31m=>[m GType_String[31m,[m
		Text_Column[31m+[m[35m2[m       [31m=>[m GType_String[31m,[m
		Text_Column[31m+[m[35m3[m       [31m=>[m GType_String[31m,[m
		Text_Column[31m+[m[35m4[m       [31m=>[m GType_String[31m,[m
		Text_Column[31m+[m[35m5[m       [31m=>[m GType_String[31m,[m
		Text_Column[31m+[m[35m6[m       [31m=>[m GType_String[31m,[m
		Text_Column[31m+[m[35m7[m       [31m=>[m GType_String[31m,[m
		Text_Column[31m+[m[35m8[m       [31m=>[m GType_String[31m));[m

      [01;30mGtk_New[m [31m([mWork_Window[31m.[mFlow_Tree[31m,[m Work_Window[31m.[mFlow_Model[31m);[m

      [01;30mSet_Grid_Lines[m [31m([mWork_Window[31m.[mFlow_Tree[31m,[m Grid_Lines_Vertical[31m);[m
      [01;30mGtk_New[m [31m([mScrolled[31m);[m
      [01;30mSet_Policy[m [31m([mScrolled[31m,[m Policy_Always[31m,[m Policy_Always[31m);[m
      [01;30mAdd[m [31m([mScrolled[31m,[m Work_Window[31m.[mFlow_Tree[31m);[m

      [01;30madd[m [31m([mWork_Window[31m.[mFlow_Frame[31m,[m Scrolled[31m);[m

      [01;30mGtk_New[m [31m([mText_Render[31m);[m
      [01;30mGtk_New[m [31m([mCol[31m);[m
      Num [31m:=[m [01;30mAppend_Column[m [31m([mWork_Window[31m.[mFlow_Tree[31m,[m Col[31m);[m

      [01;30mSet_Title[m [31m([mCol[31m,[m [31m"Source"[m[31m);[m
      [01;30mPack_Start[m [31m([mCol[31m,[m Text_Render[31m,[m True[31m);[m
      [01;30mSet_Sizing[m [31m([mCol[31m,[m Tree_View_Column_Autosize[31m);[m
      [01;30mAdd_Attribute[m [31m([mCol[31m,[m Text_Render[31m,[m [31m"text"[m[31m,[m Text_Column[31m);[m

      [01;30mGtk_New[m [31m([mText_Render[31m);[m
      [01;30mGtk_New[m [31m([mCol[31m);[m
      Num [31m:=[m [01;30mAppend_Column[m [31m([mWork_Window[31m.[mFlow_Tree[31m,[m Col[31m);[m

      [01;30mSet_Title[m [31m([mCol[31m,[m [31m"Destination"[m[31m);[m
      [01;30mPack_Start[m [31m([mCol[31m,[m Text_Render[31m,[m True[31m);[m
      [01;30mSet_Sizing[m [31m([mCol[31m,[m Tree_View_Column_Autosize[31m);[m
      [01;30mAdd_Attribute[m [31m([mCol[31m,[m Text_Render[31m,[m [31m"text"[m[31m,[m Text_Column[31m+[m[35m1[m[31m);[m

      [01;30mGtk_New[m [31m([mText_Render[31m);[m
      [01;30mGtk_New[m [31m([mCol[31m);[m
      Num [31m:=[m [01;30mAppend_Column[m [31m([mWork_Window[31m.[mFlow_Tree[31m,[m Col[31m);[m

      [01;30mSet_Title[m [31m([mCol[31m,[m [31m"Type"[m[31m);[m
      [01;30mPack_Start[m [31m([mCol[31m,[m Text_Render[31m,[m True[31m);[m
      [01;30mSet_Sizing[m [31m([mCol[31m,[m Tree_View_Column_Autosize[31m);[m
      [01;30mAdd_Attribute[m [31m([mCol[31m,[m Text_Render[31m,[m [31m"text"[m[31m,[m Text_Column[31m+[m[35m2[m[31m);[m

      [01;30mGtk_New[m [31m([mText_Render[31m);[m
      [01;30mGtk_New[m [31m([mCol[31m);[m
      Num [31m:=[m [01;30mAppend_Column[m [31m([mWork_Window[31m.[mFlow_Tree[31m,[m Col[31m);[m

      [01;30mSet_Title[m [31m([mCol[31m,[m [31m"Channel"[m[31m);[m
      [01;30mPack_Start[m [31m([mCol[31m,[m Text_Render[31m,[m True[31m);[m
      [01;30mSet_Sizing[m [31m([mCol[31m,[m Tree_View_Column_Autosize[31m);[m
      [01;30mAdd_Attribute[m [31m([mCol[31m,[m Text_Render[31m,[m [31m"text"[m[31m,[m Text_Column[31m+[m[35m3[m[31m);[m


      [01;30mGtk_New[m [31m([mText_Render[31m);[m
      [01;30mGtk_New[m [31m([mCol[31m);[m
      Num [31m:=[m [01;30mAppend_Column[m [31m([mWork_Window[31m.[mFlow_Tree[31m,[m Col[31m);[m

      [01;30mSet_Title[m [31m([mCol[31m,[m [31m"Data1"[m[31m);[m
      [01;30mPack_Start[m [31m([mCol[31m,[m Text_Render[31m,[m True[31m);[m
      [01;30mSet_Sizing[m [31m([mCol[31m,[m Tree_View_Column_Autosize[31m);[m
      [01;30mAdd_Attribute[m [31m([mCol[31m,[m Text_Render[31m,[m [31m"text"[m[31m,[m Text_Column[31m+[m[35m4[m[31m);[m

      [01;30mGtk_New[m [31m([mText_Render[31m);[m
      [01;30mGtk_New[m [31m([mCol[31m);[m
      Num [31m:=[m [01;30mAppend_Column[m [31m([mWork_Window[31m.[mFlow_Tree[31m,[m Col[31m);[m

      [01;30mSet_Title[m [31m([mCol[31m,[m [31m"Data2"[m[31m);[m
      [01;30mPack_Start[m [31m([mCol[31m,[m Text_Render[31m,[m True[31m);[m
      [01;30mSet_Sizing[m [31m([mCol[31m,[m Tree_View_Column_Autosize[31m);[m
      [01;30mAdd_Attribute[m [31m([mCol[31m,[m Text_Render[31m,[m [31m"text"[m[31m,[m Text_Column[31m+[m[35m5[m[31m);[m

      [01;30mGtk_New[m [31m([mText_Render[31m);[m
      [01;30mGtk_New[m [31m([mCol[31m);[m
      Num [31m:=[m [01;30mAppend_Column[m [31m([mWork_Window[31m.[mFlow_Tree[31m,[m Col[31m);[m

      [01;30mSet_Title[m [31m([mCol[31m,[m [31m"Time"[m[31m);[m
      [01;30mPack_Start[m [31m([mCol[31m,[m Text_Render[31m,[m True[31m);[m
      [01;30mSet_Sizing[m [31m([mCol[31m,[m Tree_View_Column_Autosize[31m);[m
      [01;30mAdd_Attribute[m [31m([mCol[31m,[m Text_Render[31m,[m [31m"text"[m[31m,[m Text_Column[31m+[m[35m6[m[31m);[m



      [01;30mSet_Sort_Column_Id[m [31m([mCol[31m,[m Text_Column[31m+[m[35m6[m[31m);[m
      [01;30mSet_Headers_Clickable[m [31m([mWork_Window[31m.[mFlow_Tree[31m,[m True[31m);[m
      [01;30mSet_Sort_Func[m [31m(+[mWork_Window[31m.[mFlow_Model[31m,[m Text_Column[31m,[m Custom_Sort'[01;34mAccess[m[31m);[m


      [01;30mGtk_New[m [31m([mText_Render[31m);[m
      [01;30mGtk_New[m [31m([mCol[31m);[m
      Num [31m:=[m [01;30mAppend_Column[m [31m([mWork_Window[31m.[mFlow_Tree[31m,[m Col[31m);[m

      [01;30mSet_Title[m [31m([mCol[31m,[m [31m"Hexa"[m[31m);[m
      [01;30mPack_Start[m [31m([mCol[31m,[m Text_Render[31m,[m True[31m);[m
      [01;30mSet_Sizing[m [31m([mCol[31m,[m Tree_View_Column_Autosize[31m);[m
      [01;30mAdd_Attribute[m [31m([mCol[31m,[m Text_Render[31m,[m [31m"text"[m[31m,[m Text_Column[31m+[m[35m7[m[31m);[m

      [01;30mGtk_New[m [31m([mText_Render[31m);[m
      [01;30mGtk_New[m [31m([mCol[31m);[m
      Num [31m:=[m [01;30mAppend_Column[m [31m([mWork_Window[31m.[mFlow_Tree[31m,[m Col[31m);[m

      [01;30mSet_Title[m [31m([mCol[31m,[m [31m"Long"[m[31m);[m
      [01;30mPack_Start[m [31m([mCol[31m,[m Text_Render[31m,[m True[31m);[m
      [01;30mSet_Sizing[m [31m([mCol[31m,[m Tree_View_Column_Autosize[31m);[m
      [01;30mAdd_Attribute[m [31m([mCol[31m,[m Text_Render[31m,[m [31m"text"[m[31m,[m Text_Column[31m+[m[35m8[m[31m);[m
      [31m-- End Flow.[m
      [31m------------------------------------------------[m
   [01;34mend[m Load_Flow[31m;[m
   [31m---------------------------------------------------[m
   [31m--[m
   
   [31m--------------[m
   [31m-- Add_Line --[m
   [31m--------------[m

   [01;34mfunction[m Add_Line
     [31m([mModel            [31m:[m [01;34maccess[m Gtk_Tree_Store_Record'Class[31m;[m
      Source           [31m:[m [32mString[m[31m;[m
      Destination      [31m:[m [32mstring[m[31m;[m
      Types            [31m:[m [32mString[m[31m;[m
      Channel          [31m:[m [32mString[m[31m;[m
      Data1            [31m:[m [32mString[m[31m;[m
      Data2            [31m:[m [32mstring[m[31m;[m
      Hour             [31m:[m [32mString[m[31m;[m
      Hexa             [31m:[m [32mString[m[31m;[m
      Long             [31m:[m [32mString[m[31m;[m
      Parent   [31m:[m Gtk_Tree_Iter [31m:=[m Null_Iter[31m)[m [01;34mreturn[m Gtk_Tree_Iter

   [01;34mis[m
      Verax [31m:[m [32mBoolean[m [31m:=[m False[31m;[m

      Iter   [31m:[m Gtk_Tree_Iter[31m;[m
   [01;34mbegin[m

      [01;30mAppend[m [31m([mModel[31m,[m iter[31m,[m Parent[31m);[m

      [01;30mSet[m [31m([mModel[31m,[m Iter[31m,[m Text_Column[31m,[m Source[31m);[m
      [01;30mSet[m [31m([mModel[31m,[m Iter[31m,[m Text_Column[31m+[m[35m1[m[31m,[m Destination[31m);[m
      [01;30mSet[m [31m([mModel[31m,[m Iter[31m,[m Text_Column[31m+[m[35m2[m[31m,[m Types[31m);[m
      [01;30mSet[m [31m([mModel[31m,[m Iter[31m,[m Text_Column[31m+[m[35m3[m[31m,[m channel[31m);[m
      [01;30mSet[m [31m([mModel[31m,[m Iter[31m,[m Text_Column[31m+[m[35m4[m[31m,[m data1[31m);[m
      [01;30mSet[m [31m([mModel[31m,[m Iter[31m,[m Text_Column[31m+[m[35m5[m[31m,[m data2[31m);[m
      [01;30mSet[m [31m([mModel[31m,[m Iter[31m,[m Text_Column[31m+[m[35m6[m[31m,[m hour[31m);[m
      [01;30mSet[m [31m([mModel[31m,[m Iter[31m,[m Text_Column[31m+[m[35m7[m[31m,[m hexa[31m);[m
      [01;30mSet[m [31m([mModel[31m,[m Iter[31m,[m Text_Column[31m+[m[35m8[m[31m,[m long[31m);[m

      Iter [31m:=[m [01;30mGet_Iter_First[m[31m([mModel[31m);[m



      [01;34mreturn[m Iter[31m;[m
   [01;34mend[m Add_Line[31m;[m

   [01;34mfunction[m [01;30mFlow_Print[m [31m([mWork_Window [31m:[m Gtk_Gmface_Work_Window_Access[31m)[m [01;34mreturn[m [32mBoolean[m [01;34mis[m
      


      Message [31m:[m Printed_Message_Access[31m;[m
      Parent [31m:[m Gtk_Tree_Iter [31m:=[m Null_Iter[31m;[m
      Adj         [31m:[m Gtk_Adjustment[31m;[m

      Verax [31m:[m [32mBoolean[m [31m:=[m False[31m;[m

   [01;34mbegin[m


      [01;34mloop[m
	 Work_Window[31m.[mProcess[31m.[mBox[31m.[m[01;30mSend[m[31m([mMessage[31m);[m
	 [01;34mif[m [31m([mMessage [31m/=[m [01;34mnull[m[31m)[m [01;34mand[m [01;34mthen[m
	   Message[31m.[mSource [31m/=[m [01;34mnull[m [01;34mthen[m
	    Work_Window[31m.[mIter [31m:=[m Add_Line
	      [31m([mWork_Window[31m.[mFlow_Model[31m,[m
	       Message[31m.[mSource[31m.[m[01;34mall[m[31m,[m
	       Message[31m.[mDestination[31m.[m[01;34mall[m[31m,[m
	       Message[31m.[mData_Type[31m.[m[01;34mall[m[31m,[m
	       Message[31m.[mChannel[31m.[m[01;34mall[m[31m,[m
	       Message[31m.[mData1[31m.[m[01;34mall[m[31m,[m
	       Message[31m.[mData2[31m.[m[01;34mall[m[31m,[m
	       Message[31m.[mHour[31m.[m[01;34mall[m[31m,[m
	       Message[31m.[mHexa_Sum[31m.[m[01;34mall[m[31m,[m
	       Message[31m.[mLong_Sum[31m.[m[01;34mall[m[31m,[m
	       Parent [31m=>[m parent[31m);[m
	    Work_Window[31m.[mLine_Counter [31m:=[m Work_Window[31m.[mLine_Counter [31m+[m [35m1[m[31m;[m

	    [01;30mFree[m[31m([mMessage[31m.[mSource[31m);[m
	    [01;30mFree[m[31m([mMessage[31m.[mDestination[31m);[m
	    [01;30mFree[m[31m([mMessage[31m.[mData_Type[31m);[m
	    [01;30mFree[m[31m([mMessage[31m.[mChannel[31m);[m
	    [01;30mFree[m[31m([mMessage[31m.[mData1[31m);[m
	    [01;30mFree[m[31m([mMessage[31m.[mData2[31m);[m
	    [01;30mFree[m[31m([mMessage[31m.[mHour[31m);[m
	    [01;30mFree[m[31m([mMessage[31m.[mHexa_Sum[31m);[m
	    [01;30mFree[m[31m([mMessage[31m.[mLong_Sum[31m);[m
	    
	    [01;30mFree[m[31m([mMessage[31m);[m
	 [01;34melse[m
	    [01;34mexit[m[31m;[m
	 [01;34mend[m [01;34mif[m[31m;[m
      [01;34mend[m [01;34mloop[m[31m;[m
      Work_Window[31m.[mIter [31m:=[m [01;30mGet_Iter_First[m[31m([mWork_Window[31m.[mFlow_Model[31m);[m
      [01;34mif[m Work_Window[31m.[mLine_Counter [31m>[m [35m64[m [01;34mthen[m
	 [01;34mfor[m I [01;34min[m [35m32[m[31m..[mWork_Window[31m.[mLine_Counter [01;34mloop[m

	    Parent [31m:=[m Work_Window[31m.[mIter[31m;[m
	    [01;30mNext[m[31m([mWork_Window[31m.[mFlow_Model[31m,[m Work_Window[31m.[miter[31m);[m
	    [01;30mRemove[m[31m([mWork_Window[31m.[mFlow_Model[31m,[m parent[31m);[m
	    Work_Window[31m.[mLine_Counter [31m:=[m Work_Window[31m.[mLine_Counter [31m-[m [35m1[m[31m;[m


	 [01;34mend[m [01;34mloop[m[31m;[m
      [01;34mend[m [01;34mif[m[31m;[m            
      [01;34mwhile[m Gtk[31m.[mMain[31m.[mEvents_Pending [01;34mloop[m
      	 Verax [31m:=[m Gtk[31m.[mMain[31m.[mMain_Iteration[31m;[m
      [01;34mend[m [01;34mloop[m[31m;[m
      
      Adj [31m:=[m [01;30mGet_Vadjustment[m[31m([mWork_Window[31m.[mFlow_Tree[31m);[m
      
      [01;30mSet_Value[m[31m([mAdj[31m,[m [01;30mGet_Upper[m[31m([mAdj[31m)[m [31m-[m [01;30mGet_Page_Size[m[31m([mAdj[31m));[m
      [01;30mSet_Vadjustment[m[31m([mWork_Window[31m.[mFlow_Tree[31m,[m Adj[31m);[m
      [01;34mreturn[m True[31m;[m
   [01;34mend[m Flow_Print[31m;[m
   
   [31m--[m
   
   [31m--[m
   
   [01;34mfunction[m [01;30mWork_State_Update[m [31m([mWork_Window [31m:[m [01;34min[m Gtk_Gmface_Work_Window_Access[31m)[m [01;34mreturn[m [32mBoolean[m[31m;[m

   [01;34mfunction[m [01;30mWork_State_Update[m [31m([mWork_Window [31m:[m [01;34min[m Gtk_Gmface_Work_Window_Access[31m)[m [01;34mreturn[m [32mBoolean[m [01;34mis[m

      Verax [31m:[m [32mBoolean[m [31m:=[m False[31m;[m


      Years    [31m:[m Natural[31m;[m
      Months   [31m:[m Natural[31m;[m
      Days     [31m:[m Natural[31m;[m
      Houres   [31m:[m Natural[31m;[m
      Minutes  [31m:[m Natural[31m;[m
      Second   [31m:[m Natural[31m;[m
      Rest     [31m:[m [32mDuration[m[31m;[m

      Timer_Hour [31m:[m [32mDuration[m [31m:=[m [35m0.0[m[31m;[m
   [01;34mbegin[m

      [01;30mDifference_In_Years[m[31m([m[01;30mGmface_Work_Record[m[31m([mWork_Window[31m.[mWork[31m.[m[01;34mall[m[31m).[mStates[31m.[mStart_time[31m,[m
			  clock[31m,[m
			  Years[31m,[m
			  Months[31m,[m
			  Days[31m,[m
			  Houres[31m,[m
			  Minutes[31m,[m
			  Second[31m,[m
			  Rest[31m);[m

      Timer_Hour [31m:=[m Formatting[31m.[m[01;30mSeconds_Of[m[31m([mHoures[31m,[m Minutes[31m,[m Second[31m,[m Rest[31m);[m

      [01;30mSet_Text[m[31m([mWork_Window[31m.[mElapsed[31m,[m [01;30mInteger_Image[m[31m([mDays[31m)[m [31m&[m [31m"d, "[m [31m&[m Formatting[31m.[m[01;30mImage[m[31m([mTimer_Hour[31m,[m true[31m));[m


      [01;30mSet_Text[m [31m([mWork_Window[31m.[mPosition[31m,[m [01;30mImage[m [31m([m[01;30mGmface_Work_Record[m[31m([mWork_Window[31m.[mWork[31m.[m[01;34mall[m[31m).[mStates[31m.[mBar_Beat[31m));[m

      [01;34mreturn[m True[31m;[m
   [01;34mend[m Work_State_Update[31m;[m
   
   
   [31m----------[m
   [31m-- Play --[m
   [31m----------[m
   [01;34mprocedure[m [01;30mPlay[m [31m([mWidget [31m:[m [01;34maccess[m Gtk_Widget_Record'class[31m;[m
                   Main_Window [31m:[m [01;34min[m Gtk_Gmface_Work_Window_Access[31m);[m

   [31m----------[m
   [31m-- Stop --[m
   [31m----------[m
   [01;34mprocedure[m [01;30mStop[m [31m([mWidget [31m:[m [01;34maccess[m Gtk_Widget_Record'class[31m;[m
                   Main_Window [31m:[m [01;34min[m Gtk_Gmface_Work_Window_Access[31m);[m

   [01;34mprocedure[m [01;30mPlay_On[m [31m([mWidget [31m:[m [01;34maccess[m Gtk_Widget_Record'class[31m;[m
		      Main_Window [31m:[m [01;34min[m Gtk_Gmface_Work_Window_Access[31m);[m
   [01;34mprocedure[m [01;30mPlay_Off[m [31m([mWidget [31m:[m [01;34maccess[m Gtk_Widget_Record'class[31m;[m
		       Main_Window [31m:[m [01;34min[m Gtk_Gmface_Work_Window_Access[31m);[m
   [01;34mprocedure[m [01;30mReset[m [31m([mWidget [31m:[m [01;34maccess[m Gtk_Widget_Record'class[31m;[m
		    Main_Window [31m:[m [01;34min[m Gtk_Gmface_Work_Window_Access[31m);[m

   [01;34mprocedure[m [01;30mRec_On[m [31m([mWidget [31m:[m [01;34maccess[m Gtk_Widget_Record'class[31m;[m
		     Main_Window [31m:[m [01;34min[m Gtk_Gmface_Work_Window_Access[31m);[m
   [01;34mprocedure[m [01;30mRec_Off[m [31m([mWidget [31m:[m [01;34maccess[m Gtk_Widget_Record'class[31m;[m
		      Main_Window [31m:[m [01;34min[m Gtk_Gmface_Work_Window_Access[31m);[m

   
   [01;34mprocedure[m [01;30mLoad_State[m [31m([mWork_Window [31m:[m Gtk_Gmface_Work_Window_Access[31m)[m [01;34mis[m
			 [31m--State  : in Work_State_Type) is[m
   [01;34mbegin[m
      [31m-- Transport begin.[m
      [01;30mGtk_New_Vbox[m [31m([mWork_Window[31m.[mState_Box[31m);[m

      [31m---------------[m
      [31m-- Main Tools box --[m
      [31m---------------[m
      [01;30mGtk_New_Hbox[m [31m([mWork_Window[31m.[mTools_Box[31m);[m
      [01;30mGtk_New_From_stock[m [31m([mWork_Window[31m.[mMedia_Play[31m,[m Stock_Media_Play[31m);[m

      Window_Cb[31m.[mConnect
        [31m([mWork_Window[31m.[mMedia_Play[31m,[m [31m"clicked"[m[31m,[m Window_Cb[31m.[m[01;30mTo_Marshaller[m [31m([mPlay'[01;34maccess[m[31m),[m Work_Window[31m);[m
      
      [01;30mGtk_New_From_stock[m [31m([mWork_Window[31m.[mMedia_Stop[31m,[m Stock_Media_Stop[31m);[m
      
      Window_Cb[31m.[mConnect
	[31m([mWork_Window[31m.[mMedia_Stop[31m,[m [31m"clicked"[m[31m,[m Window_Cb[31m.[m[01;30mTo_Marshaller[m [31m([mStop'[01;34maccess[m[31m),[m Work_Window[31m);[m


      
      [01;30mPack_Start[m [31m([mWork_Window[31m.[mTools_Box[31m,[m Work_Window[31m.[mMedia_Play[31m,[m Expand [31m=>[m false[31m);[m
      [01;30mPack_Start[m [31m([mWork_Window[31m.[mTools_Box[31m,[m Work_Window[31m.[mMedia_Stop[31m,[m Expand [31m=>[m false[31m);[m


      [31m-- Modulation[m

      [31m--------------------------[m
      [31m-- Modulation Tools box --[m
      [31m--------------------------[m


      Gtk[31m.[mButton[31m.[m[01;30mGtk_New[m [31m([mWork_Window[31m.[mModulation_Play_On[31m,[m [31m"Play on"[m[31m);[m
      Window_Cb[31m.[mConnect
        [31m([mWork_Window[31m.[mModulation_Play_On[31m,[m [31m"clicked"[m[31m,[m Window_Cb[31m.[m[01;30mTo_Marshaller[m[31m([mPlay_On'[01;34mAccess[m[31m),[m
	 User_Data [31m=>[m Work_Window[31m);[m


      Gtk[31m.[mButton[31m.[m[01;30mGtk_New[m [31m([mWork_Window[31m.[mModulation_Play_Off[31m,[m [31m"Play off"[m[31m);[m
      Window_Cb[31m.[mConnect
        [31m([mWork_Window[31m.[mModulation_Play_Off[31m,[m [31m"clicked"[m[31m,[m Window_Cb[31m.[m[01;30mTo_Marshaller[m[31m([mPlay_Off'[01;34mAccess[m[31m),[m
	 User_Data [31m=>[m Work_Window[31m);[m


      Gtk[31m.[mButton[31m.[m[01;30mGtk_New[m [31m([mWork_Window[31m.[mModulation_Record_On[31m,[m [31m"Rec on"[m[31m);[m
      Window_Cb[31m.[mConnect
        [31m([mWork_Window[31m.[mModulation_Record_On[31m,[m [31m"clicked"[m[31m,[m Window_Cb[31m.[m[01;30mTo_Marshaller[m[31m([mRec_On'[01;34mAccess[m[31m),[m
	 User_Data [31m=>[m Work_Window[31m);[m



      Gtk[31m.[mButton[31m.[m[01;30mGtk_New[m [31m([mWork_Window[31m.[mModulation_Record_Off[31m,[m [31m"Rec off"[m[31m);[m
      Window_Cb[31m.[mConnect
        [31m([mWork_Window[31m.[mModulation_Record_off[31m,[m [31m"clicked"[m[31m,[m Window_Cb[31m.[m[01;30mTo_Marshaller[m[31m([mRec_Off'[01;34mAccess[m[31m),[m
	 User_Data [31m=>[m Work_Window[31m);[m



      Gtk[31m.[mBox[31m.[m[01;30mPack_Start[m [31m([mWork_Window[31m.[mTools_Box[31m,[m Work_Window[31m.[mModulation_Play_on[31m,[m Expand [31m=>[m false[31m);[m
      Gtk[31m.[mBox[31m.[m[01;30mPack_Start[m [31m([mWork_Window[31m.[mTools_Box[31m,[m Work_Window[31m.[mModulation_Play_off[31m,[m Expand [31m=>[m false[31m);[m

      Gtk[31m.[mBox[31m.[m[01;30mPack_Start[m [31m([mWork_Window[31m.[mTools_Box[31m,[m Work_Window[31m.[mModulation_Record_on[31m,[m Expand [31m=>[m false[31m);[m
      Gtk[31m.[mBox[31m.[m[01;30mPack_Start[m [31m([mWork_Window[31m.[mTools_Box[31m,[m Work_Window[31m.[mModulation_Record_off[31m,[m Expand [31m=>[m false[31m);[m

      [31m-- Mod reset --[m

      Gtk[31m.[mButton[31m.[m[01;30mGtk_New_From_Stock[m [31m([mWork_Window[31m.[mMod_Reset[31m,[m Stock_delete[31m);[m
      Window_Cb[31m.[mConnect
        [31m([mWork_Window[31m.[mMod_Reset[31m,[m [31m"clicked"[m[31m,[m Window_Cb[31m.[m[01;30mTo_Marshaller[m[31m([mReset'[01;34mAccess[m[31m),[m
	 User_Data [31m=>[m Work_Window[31m);[m


      Gtk[31m.[mBox[31m.[m[01;30mPack_Start[m [31m([mWork_Window[31m.[mTools_Box[31m,[m Work_Window[31m.[mMod_Reset[31m,[m Expand [31m=>[m False[31m);[m

      [01;30mPack_Start[m [31m([mWork_Window[31m.[mState_Box[31m,[m Work_Window[31m.[mTools_Box[31m,[m Expand [31m=>[m False[31m);[m


      [31m-- Timers --[m
      [31m-- Tools box.[m

      [01;30mGtk_New_Hbox[m [31m([mWork_Window[31m.[mTools_Box[31m);[m



      [31m-- bar_beat.[m
      [01;30mGtk_New[m [31m([mWork_Window[31m.[mPosition[31m);[m
      [01;30mSet_Text[m [31m([mWork_Window[31m.[mPosition[31m,[m [01;30mImage[m [31m([m[01;30mGmface_Work_Record[m[31m([mWork_Window[31m.[mWork[31m.[m[01;34mall[m[31m).[mStates[31m.[mBar_Beat[31m));[m
      [01;30mSet_Editable[m [31m([mWork_Window[31m.[mPosition[31m,[m False[31m);[m
      Gtk[31m.[mBox[31m.[m[01;30mPack_Start[m [31m([mWork_Window[31m.[mTools_Box[31m,[m Work_Window[31m.[mPosition[31m,[m Expand [31m=>[m False[31m,[m Padding [31m=>[m [35m2[m[31m);[m


      [31m-- Elapsed.[m

      [01;30mGtk_New[m [31m([mWork_Window[31m.[mElapsed[31m);[m
      [01;30mSet_Text[m[31m([mWork_Window[31m.[mElapsed[31m,[m [01;30mInteger_Image[m[31m([m[35m0[m[31m)[m [31m&[m [31m"d, "[m [31m&[m Formatting[31m.[m[01;30mImage[m[31m([m[35m0.0[m[31m,[m true[31m));[m
      [01;30mSet_Editable[m [31m([mWork_Window[31m.[mElapsed[31m,[m False[31m);[m
      Gtk[31m.[mBox[31m.[m[01;30mPack_Start[m [31m([mWork_Window[31m.[mTools_Box[31m,[m Work_Window[31m.[mElapsed[31m,[m Expand [31m=>[m False[31m,[m Padding [31m=>[m [35m0[m[31m);[m
      
      
      [31m--  Gtk_New (Work_Window.In_Loop);[m
      [31m--  Gtk_New (Work_Window.State_Label, "In loop : ");[m
      [31m--  Gtk.Box.Pack_Start (Work_Window.Tools_Box, Work_Window.State_Label, Expand => False, Padding => 0);[m
      [31m--  Gtk.Box.Pack_Start (Work_Window.Tools_Box, Work_Window.In_Loop, Expand => False, Padding => 0);[m

      [31m--  Set_Active (Work_Window.In_Loop, False);[m
      [31m--  Window_Cb.Connect[m
      [31m--    (Work_Window.In_Loop, "toggled", Window_Cb.To_Marshaller(Set_In_loop'Access),[m
      [31m--  	 User_Data => Work_Window,[m
      [31m--  	 After => false);[m

      [01;30mPack_Start[m [31m([mWork_Window[31m.[mState_Box[31m,[m Work_Window[31m.[mTools_Box[31m,[m Expand [31m=>[m False[31m,[m Padding [31m=>[m [35m2[m[31m);[m
      [31m--Put_Line("TOTO 2.2");[m
      [01;30mAdd[m [31m([mWork_Window[31m.[mState_Frame[31m,[m Work_Window[31m.[mState_Box[31m);[m
   [01;34mend[m Load_State[31m;[m
   
   [31m---------------------------------------------------------[m
   [31m--[m
   
   [01;34mpackage[m Gmface_G_Source [01;34mis[m [01;34mnew[m Glib[31m.[mMain[31m.[m[01;30mGeneric_Sources[m[31m([mGtk_Gmface_Work_Window_Access[31m);[m
   
   [01;34mprocedure[m [01;30mPlay[m [31m([mWidget [31m:[m [01;34maccess[m Gtk_Widget_Record'class[31m;[m
                   Main_Window [31m:[m [01;34min[m Gtk_Gmface_Work_Window_Access[31m)[m [01;34mis[m
      
      [01;34mpragma[m [01;30mUnreferenced[m [31m([mWidget[31m);[m
   [01;34mbegin[m

      [01;34mif[m Main_Window[31m.[mFlow_Control [31m=[m Glib[31m.[mMain[31m.[mNo_Source_Id [01;34mthen[m
	 Main_Window[31m.[mFlow_Control [31m:=[m
	   Gmface_G_Source[31m.[mTimeout_Add
	   [31m([m[35m1[m[31m,[m
	    Flow_Print'[01;34mAccess[m[31m,[m
	    Main_Window[31m);[m
      [01;34mend[m [01;34mif[m[31m;[m
      [01;34mif[m Main_Window[31m.[mState_Control [31m=[m Glib[31m.[mMain[31m.[mNo_Source_Id [01;34mthen[m
	 Main_Window[31m.[mState_Control [31m:=[m
	   Gmface_G_Source[31m.[mTimeout_Add
	   [31m([m[35m100[m[31m,[m
	    Work_State_Update'[01;34mAccess[m[31m,[m
	    Main_Window[31m);[m
      [01;34mend[m [01;34mif[m[31m;[m
      [01;30mGmface_Work_Processing[m[31m([mMain_Window[31m.[mProcess[31m.[m[01;34mall[m[31m).[mProcess[31m.[mStart[31m;[m
   [01;34mend[m Play[31m;[m

   [01;34mprocedure[m [01;30mStop[m [31m([mWidget [31m:[m [01;34maccess[m Gtk_Widget_Record'class[31m;[m
                   Main_Window [31m:[m [01;34min[m Gtk_Gmface_Work_Window_Access[31m)[m [01;34mis[m

      [01;34mpragma[m [01;30mUnreferenced[m [31m([mWidget[31m);[m

   [01;34mbegin[m      
      [01;34mif[m Main_Window[31m.[mFlow_Control [31m/=[m Glib[31m.[mMain[31m.[mNo_Source_Id [01;34mthen[m
	 
	 Glib[31m.[mMain[31m.[m[01;30mRemove[m[31m([mMain_Window[31m.[mFlow_Control[31m);[m
	 Main_Window[31m.[mFlow_Control [31m:=[m Glib[31m.[mMain[31m.[mNo_Source_Id[31m;[m
      [01;34mend[m [01;34mif[m[31m;[m
      [01;34mif[m Main_Window[31m.[mState_Control [31m/=[m Glib[31m.[mMain[31m.[mNo_Source_Id [01;34mthen[m
	 
	 Glib[31m.[mMain[31m.[m[01;30mRemove[m[31m([mMain_Window[31m.[mState_Control[31m);[m
	 Main_Window[31m.[mState_Control [31m:=[m Glib[31m.[mMain[31m.[mNo_Source_Id[31m;[m
      [01;34mend[m [01;34mif[m[31m;[m
      [01;30mPut_Line[m[31m([m[31m"Stopping work process..."[m[31m);[m
      
      [01;30mGmface_Work_Processing[m[31m([mMain_Window[31m.[mProcess[31m.[m[01;34mall[m[31m).[mProcess[31m.[mStop[31m;[m

      [01;30mPut_Line[m[31m([m[31m"Work process stopped."[m[31m);[m      
   [01;34mend[m Stop[31m;[m

   
   [31m-------------------------------------------------------[m
   [31m-- Modulation Sequencer :                            --[m
   [31m-------------[m
   [31m-- Play On --[m
   [31m-------------[m
   [01;34mprocedure[m [01;30mPlay_On[m [31m([mWidget [31m:[m [01;34maccess[m Gtk_Widget_Record'class[31m;[m
		      Main_Window [31m:[m [01;34min[m Gtk_Gmface_Work_Window_Access[31m)[m [01;34mis[m
   [01;34mbegin[m
      
      [01;30mGmface_Work_Processing[m[31m([mMain_Window[31m.[mProcess[31m.[m[01;34mall[m[31m).[mProcess[31m.[m[01;30mMod_Play[m[31m([mTrue[31m);[m
   [01;34mend[m Play_On[31m;[m

   [31m--------------[m
   [31m-- Play Off --[m
   [31m--------------[m
   [01;34mprocedure[m [01;30mPlay_Off[m [31m([mWidget [31m:[m [01;34maccess[m Gtk_Widget_Record'class[31m;[m
		       Main_Window [31m:[m [01;34min[m Gtk_Gmface_Work_Window_Access[31m)[m [01;34mis[m
   [01;34mbegin[m

      [01;30mGmface_Work_Processing[m[31m([mMain_Window[31m.[mProcess[31m.[m[01;34mall[m[31m).[mProcess[31m.[m[01;30mMod_Play[m[31m([mFalse[31m);[m
   [01;34mend[m Play_Off[31m;[m

   [31m---------------[m
   [31m-- Record On --[m
   [31m---------------[m
   [01;34mprocedure[m [01;30mRec_On[m [31m([mWidget [31m:[m [01;34maccess[m Gtk_Widget_Record'class[31m;[m
		     Main_Window [31m:[m [01;34min[m Gtk_Gmface_Work_Window_Access[31m)[m [01;34mis[m
   [01;34mbegin[m

      [01;30mGmface_Work_Processing[m[31m([mMain_Window[31m.[mProcess[31m.[m[01;34mall[m[31m).[mProcess[31m.[m[01;30mMod_Rec[m[31m([mTrue[31m);[m
   [01;34mend[m Rec_On[31m;[m

   [31m----------------[m
   [31m-- Record Off --[m
   [31m----------------[m
   [01;34mprocedure[m [01;30mRec_Off[m [31m([mWidget [31m:[m [01;34maccess[m Gtk_Widget_Record'class[31m;[m
		      Main_Window [31m:[m [01;34min[m Gtk_Gmface_Work_Window_Access[31m)[m [01;34mis[m
   [01;34mbegin[m

      [01;30mGmface_Work_Processing[m[31m([mMain_Window[31m.[mProcess[31m.[m[01;34mall[m[31m).[mProcess[31m.[m[01;30mMod_Rec[m[31m([mFalse[31m);[m
   [01;34mend[m Rec_Off[31m;[m


   [31m-----------[m
   [31m-- Reset --[m
   [31m-----------[m
   [01;34mprocedure[m [01;30mReset[m [31m([mWidget [31m:[m [01;34maccess[m Gtk_Widget_Record'class[31m;[m
		    Main_Window [31m:[m [01;34min[m Gtk_Gmface_Work_Window_Access[31m)[m [01;34mis[m
   [01;34mbegin[m
      [01;30mGmface_Work_Processing[m[31m([mMain_Window[31m.[mProcess[31m.[m[01;34mall[m[31m).[mProcess[31m.[mMod_Reset[31m;[m
   [01;34mend[m Reset[31m;[m

   [31m--[m
   [31m---------------------------------------------------[m
   
   [31m---------------------------------------------------[m
   [31m--[m
   [01;34mprocedure[m Plugin_Printed_Callback
     [31m([mModel  [31m:[m [01;34maccess[m GObject_Record'Class[31m;[m
      Params [31m:[m Glib[31m.[mValues[31m.[mGValues[31m;[m
      User_Data [31m:[m Gtk_Gmface_Work_Window_Record
     [31m);[m

   [01;34mprocedure[m Plugin_Edited_Callback
     [31m([mModel  [31m:[m [01;34maccess[m GObject_Record'Class[31m;[m
            Params [31m:[m Glib[31m.[mValues[31m.[mGValues[31m;[m
	    User_Data [31m:[m Gtk_Gmface_Work_Window_access
     [31m);[m

   [01;34mprocedure[m Plugin_Mutted_Callback
     [31m([mModel  [31m:[m [01;34maccess[m GObject_Record'Class[31m;[m
      Params [31m:[m Glib[31m.[mValues[31m.[mGValues[31m;[m
      User_Data [31m:[m Gtk_Gmface_Work_Window_Record
     [31m);[m

   [01;34mprocedure[m [01;30mCreate_Plugin_Page[m [31m([mModel  [31m:[m [01;34maccess[m GObject_Record'Class[31m;[m
				 Params [31m:[m [01;34min[m Glib[31m.[mValues[31m.[mGValues[31m;[m
				 Work_Window [31m:[m [01;34min[m Gtk_Gmface_Work_Window_Access[31m;[m
				 Plugin [31m:[m [01;34min[m Abstract_Plugin_Access[31m;[m
				 Id [31m:[m [01;34min[m Plugin_Num[31m);[m


   [01;34mprocedure[m Name_Edited_Callback
     [31m([mModel  [31m:[m [01;34maccess[m GObject_Record'Class[31m;[m
      Params [31m:[m Glib[31m.[mValues[31m.[mGValues[31m;[m
      User_Data [31m:[m Gtk_Gmface_Work_Window_Record[31m)[m

   [01;34mis[m
      M           [31m:[m [01;34mconstant[m Gtk_Tree_Store [31m:=[m [01;30mGtk_Tree_Store[m [31m([mModel[31m);[m
      Path_String [31m:[m [01;34mconstant[m [32mString[m [31m:=[m [01;30mGet_String[m [31m([m[01;30mNth[m [31m([mParams[31m,[m [35m1[m[31m));[m
      Name_Value  [31m:[m [01;34mconstant[m GValue [31m:=[m [01;30mNth[m [31m([mParams[31m,[m [35m2[m[31m);[m
      Iter        [31m:[m [01;34mconstant[m Gtk_Tree_Iter [31m:=[m
	[01;30mGet_Iter_From_String[m [31m([mM[31m,[m Path_String[31m);[m

      Id [31m:[m Plugin_Num [31m:=[m [35m1[m[31m;[m

   [01;34mbegin[m
      Id [31m:=[m Plugin_Num'Value
	[31m([m[01;30mGet_String[m [31m([mM[31m,[m Get_Iter_From_String
		       [31m([mM[31m,[m [01;30mGet_String[m [31m([m[01;30mNth[m [31m([mParams[31m,[m [35m1[m[31m))),[m Id_Column[31m));[m

      [01;34mif[m User_Data[31m.[mWork[31m.[m[01;30mPlugins[m [31m([mId[31m)[m [31m/=[m [01;34mnull[m [01;34mthen[m
	 User_Data[31m.[mWork[31m.[m[01;30mPlugins[m [31m([mId[31m).[mName [31m:=[m [01;34mnew[m [32mString[m ' [31m([m[01;30mGet_String[m[31m([mName_Value[31m));[m
	 [01;30mSet_Value[m [31m([mM[31m,[m Iter[31m,[m Text_Column[31m,[m Name_Value[31m);[m
      [01;34mend[m [01;34mif[m[31m;[m
   [01;34mend[m Name_Edited_Callback[31m;[m

   
   [01;34mfunction[m Add_True_Line
     [31m([mModel    [31m:[m [01;34maccess[m Gtk_Tree_Store_Record'Class[31m;[m
      Id     [31m:[m [32mInteger[m[31m;[m
      Null_Break [31m:[m [32mBoolean[m[31m;[m
      Down_Break [31m:[m [32mBoolean[m[31m;[m
      Up_Break [31m:[m [32mBoolean[m[31m;[m
      Full_Break [31m:[m [32mBoolean[m[31m;[m
      Parent   [31m:[m Gtk_Tree_Iter [31m:=[m Null_Iter[31m)[m [01;34mreturn[m Gtk_Tree_Iter[31m;[m

   line_Column   [31m:[m [01;34mconstant[m [31m:=[m [35m0[m[31m;[m
   Null_Column [31m:[m [01;34mconstant[m [31m:=[m [35m1[m[31m;[m
   Down_Column [31m:[m [01;34mconstant[m [31m:=[m [35m2[m[31m;[m
   Up_Column [31m:[m [01;34mconstant[m [31m:=[m [35m3[m[31m;[m
   Full_Column [31m:[m [01;34mconstant[m [31m:=[m [35m4[m[31m;[m


   [01;34mfunction[m Add_True_Line
     [31m([mModel    [31m:[m [01;34maccess[m Gtk_Tree_Store_Record'Class[31m;[m
      Id     [31m:[m [32mInteger[m[31m;[m
      Null_Break [31m:[m [32mBoolean[m[31m;[m
      Down_Break [31m:[m [32mBoolean[m[31m;[m
      Up_Break [31m:[m [32mBoolean[m[31m;[m
      Full_Break [31m:[m [32mBoolean[m[31m;[m
      Parent   [31m:[m Gtk_Tree_Iter [31m:=[m Null_Iter[31m)[m [01;34mreturn[m Gtk_Tree_Iter [01;34mis[m
      Iter     [31m:[m Gtk_Tree_Iter[31m;[m
   [01;34mbegin[m
      [31m--Put_Line("Add true line 0.0");[m
      [01;30mAppend[m [31m([mModel[31m,[m Iter[31m,[m Parent[31m);[m
      [31m--Put_Line("Add true line 0.1");[m
      [01;30mSet[m [31m([mModel[31m,[m Iter[31m,[m line_Column[31m,[m Break_Type[31m'Image(Break_Type'[m[01;30mVal[m[31m([mId[31m)));[m
      [31m--Put_Line("Add true line 0.2");[m
      [01;30mSet[m [31m([mModel[31m,[m Iter[31m,[m Null_Column[31m,[m Null_break[31m);[m
      [31m--Put_Line("Add true line 0.3");[m
      [01;30mSet[m [31m([mModel[31m,[m Iter[31m,[m Down_Column[31m,[m Down_break[31m);[m
      [31m--Put_Line("Add true line 0.4");[m
      [01;30mSet[m [31m([mModel[31m,[m Iter[31m,[m Up_Column[31m,[m Up_break[31m);[m
      [31m--Put_Line("Add true line 0.5");[m
      [01;30mSet[m [31m([mModel[31m,[m Iter[31m,[m Full_Column[31m,[m Full_break[31m);[m
      [01;34mreturn[m Iter[31m;[m
   [01;34mend[m Add_True_Line[31m;[m


   [01;34mprocedure[m [01;30mLoad_True_Table[m [31m([mWork_Window [31m:[m [01;34min[m Gtk_Gmface_Work_Window_Access[31m;[m
			      Page [31m:[m [01;34min[m [01;34mout[m Plugin_Page_Type[31m;[m
			      Plugin [31m:[m [01;34min[m Abstract_Plugin_Access
			     [31m)[m [01;34mis[m

      Scrolled   [31m:[m Gtk_Scrolled_Window[31m;[m

      [31m-- Comon Tree[m
      Col      [31m:[m Gtk_Tree_View_Column[31m;[m
      Num      [31m:[m Gint[31m;[m
      Text_Render   [31m:[m Gtk_Cell_Renderer_Text[31m;[m
      Toggle_Render [31m:[m Gtk_Cell_Renderer_Toggle[31m;[m

      Parent[31m,[m Iter  [31m:[m Gtk_Tree_Iter[31m;[m
      [01;34mpragma[m [01;30mUnreferenced[m [31m([mNum[31m);[m
      [01;34mpragma[m [01;30mWarnings[m [31m([mOff[31m,[m Iter[31m);[m
   [01;34mbegin[m
      [31m--Put_Line("Load_table 1.0");[m
      [01;30mGtk_New[m [31m([mPage[31m.[mTrue_Table_Model[31m,[m
	       [31m([mline_Column          [31m=>[m GType_String[31m,[m
		Null_column         [31m=>[m GType_Boolean[31m,[m
		Down_Column         [31m=>[m GType_Boolean[31m,[m
		Up_Column         [31m=>[m GType_Boolean[31m,[m
		Full_Column       [31m=>[m GType_Boolean[31m)[m
	      [31m);[m

      [31m--Put_Line("Load_table 1.1");[m
      [01;30mGtk_New[m [31m([mPage[31m.[mTrue_Table_Tree[31m,[m Page[31m.[mTrue_Table_Model[31m);[m
      [31m--Put_Line("Load_table 1.1.1");[m
      [01;30mSet_Grid_Lines[m [31m([mPage[31m.[mTrue_Table_Tree[31m,[m Grid_Lines_Vertical[31m);[m
      [31m--Put_Line("Load_table 1.1.2");[m
      [01;30mSet_Enable_Tree_Lines[m [31m([mPage[31m.[mTrue_Table_Tree[31m,[m True[31m);[m
      [31m--Put_Line("Load_table 1.1.3");[m
      [01;30mSet_Rubber_Banding[m [31m([mPage[31m.[mTrue_Table_Tree[31m,[m True[31m);[m
      [31m--Put_Line("Load_table 1.1.4");[m
      [01;30mSet_Mode[m [31m([m[01;30mGet_Selection[m [31m([mPage[31m.[mTrue_Table_Tree[31m),[m Selection_Multiple[31m);[m
      [31m--Put_Line("Load_table 1.1.5");[m
      [01;30mGtk_New[m [31m([mScrolled[31m);[m
      [31m--Put_Line("Load_table 1.1.6");[m
      [01;30mSet_Policy[m [31m([mScrolled[31m,[m Policy_Always[31m,[m Policy_Always[31m);[m
      [31m--Put_Line("Load_table 1.1.7");[m
      [01;30mAdd_With_Viewport[m [31m([mScrolled[31m,[m Page[31m.[mTrue_Table_Tree[31m);[m
      [31m--Put_Line("Load_table 1.1.8");[m
      [01;30mAdd[m [31m([mPage[31m.[mTrue_Table_Frame[31m,[m Scrolled[31m);[m
      [31m--Add (Page.True_Table_Frame, Page.True_Table_Tree);[m


      [31m--Put_Line("Load_table 1.2");[m
      [01;30mGtk_New[m [31m([mText_Render[31m);[m
      [01;30mGtk_New[m [31m([mCol[31m);[m
      Num [31m:=[m [01;30mAppend_Column[m [31m([mPage[31m.[mTrue_Table_Tree[31m,[m Col[31m);[m
      [01;30mSet_Sort_Column_Id[m [31m([mCol[31m,[m Line_Column[31m);[m
      [01;30mSet_Title[m [31m([mCol[31m,[m [31m"Id"[m[31m);[m
      [01;30mPack_Start[m [31m([mCol[31m,[m Text_Render[31m,[m True[31m);[m
      [01;30mSet_Sizing[m [31m([mCol[31m,[m Tree_View_Column_Autosize[31m);[m
      [01;30mAdd_Attribute[m [31m([mCol[31m,[m Text_Render[31m,[m [31m"text"[m[31m,[m line_Column[31m);[m


      [31m--Put_Line("Load_table 1.3");[m
      [01;30mGtk_New[m [31m([mToggle_Render[31m);[m
      [01;30mGtk_New[m [31m([mCol[31m);[m
      [01;30mSet_Sort_Column_Id[m [31m([mCol[31m,[m [31m-[m[35m1[m[31m);[m  [31m--  unsortable[m
      Num [31m:=[m [01;30mAppend_Column[m [31m([mPage[31m.[mTrue_Table_Tree[31m,[m Col[31m);[m
      [01;30mSet_Title[m [31m([mCol[31m,[m [31m"null break"[m[31m);[m
      [01;30mPack_Start[m [31m([mCol[31m,[m Toggle_Render[31m,[m False[31m);[m
      [01;30mAdd_Attribute[m [31m([mCol[31m,[m Toggle_Render[31m,[m [31m"active"[m[31m,[m Null_Column[31m);[m


      [31m--Put_Line("Load_table 1.4");[m
      [01;30mGtk_New[m [31m([mToggle_Render[31m);[m
      [01;30mGtk_New[m [31m([mCol[31m);[m
      [01;30mSet_Sort_Column_Id[m [31m([mCol[31m,[m [31m-[m[35m1[m[31m);[m  [31m--  unsortable[m
      Num [31m:=[m [01;30mAppend_Column[m [31m([mPage[31m.[mTrue_Table_Tree[31m,[m Col[31m);[m
      [01;30mSet_Title[m [31m([mCol[31m,[m [31m"down break"[m[31m);[m
      [01;30mPack_Start[m [31m([mCol[31m,[m Toggle_Render[31m,[m False[31m);[m
      [01;30mAdd_Attribute[m [31m([mCol[31m,[m Toggle_Render[31m,[m [31m"active"[m[31m,[m Down_Column[31m);[m

      [01;30mGtk_New[m [31m([mToggle_Render[31m);[m
      [01;30mGtk_New[m [31m([mCol[31m);[m
      [01;30mSet_Sort_Column_Id[m [31m([mCol[31m,[m [31m-[m[35m1[m[31m);[m  [31m--  unsortable[m
      Num [31m:=[m [01;30mAppend_Column[m [31m([mPage[31m.[mTrue_Table_Tree[31m,[m Col[31m);[m
      [01;30mSet_Title[m [31m([mCol[31m,[m [31m"up break"[m[31m);[m
      [01;30mPack_Start[m [31m([mCol[31m,[m Toggle_Render[31m,[m False[31m);[m
      [01;30mAdd_Attribute[m [31m([mCol[31m,[m Toggle_Render[31m,[m [31m"active"[m[31m,[m Up_Column[31m);[m


      [01;30mGtk_New[m [31m([mToggle_Render[31m);[m
      [01;30mGtk_New[m [31m([mCol[31m);[m
      [01;30mSet_Sort_Column_Id[m [31m([mCol[31m,[m [31m-[m[35m1[m[31m);[m  [31m--  unsortable[m
      Num [31m:=[m [01;30mAppend_Column[m [31m([mPage[31m.[mTrue_Table_Tree[31m,[m Col[31m);[m
      [01;30mSet_Title[m [31m([mCol[31m,[m [31m"Full break"[m[31m);[m
      [01;30mPack_Start[m [31m([mCol[31m,[m Toggle_Render[31m,[m False[31m);[m
      [01;30mAdd_Attribute[m [31m([mCol[31m,[m Toggle_Render[31m,[m [31m"active"[m[31m,[m Full_Column[31m);[m


      [31m--------------------------------------------------------[m
      [31m-- READING FILE HERE.[m
      [31m-------------------------------------------------------[m
      Parent [31m:=[m Null_Iter[31m;[m

      [01;34mif[m Plugin [31m/=[m [01;34mnull[m [01;34mthen[m
	 [01;34mfor[m Prev_id [01;34min[m Break_Type [01;34mloop[m
	    [31m--Put_Line("Load_table 1.1");[m
	    Iter [31m:=[m Add_True_Line

	      [31m([m
	       Page[31m.[mTrue_Table_Model[31m,[m
	       Id [31m=>[m Break_Type'[01;30mPos[m[31m([mPrev_Id[31m),[m
	       Null_Break [31m=>[m [01;30mGmface_Work_Record[m[31m([mWork_Window[31m.[mWork[31m.[m[01;34mall[m[31m).[mOptions[31m.[m[01;30mTrue_Table[m[31m([mPlugin[31m.[mCat_Id[31m,[m Prev_Id[31m,[m Null_Break[31m),[m

	       Down_Break [31m=>[m [01;30mGmface_Work_Record[m[31m([mWork_Window[31m.[mWork[31m.[m[01;34mall[m[31m).[mOptions[31m.[m[01;30mTrue_Table[m[31m([mPlugin[31m.[mCat_Id[31m,[m Prev_Id[31m,[m Down_break[31m),[m

	       Up_Break [31m=>[m [01;30mGmface_Work_Record[m[31m([mWork_Window[31m.[mWork[31m.[m[01;34mall[m[31m).[mOptions[31m.[m[01;30mTrue_Table[m[31m([mPlugin[31m.[mCat_Id[31m,[m Prev_Id[31m,[m Up_break[31m),[m

	       Full_Break [31m=>[m [01;30mGmface_Work_Record[m[31m([mWork_Window[31m.[mWork[31m.[m[01;34mall[m[31m).[mOptions[31m.[m[01;30mTrue_Table[m[31m([mPlugin[31m.[mCat_Id[31m,[m Prev_Id[31m,[m Full_Break[31m),[m
	       Parent [31m=>[m Parent[31m);[m
	    [31m--Put_Line("Load_table 1.2");[m
	 [01;34mend[m [01;34mloop[m[31m;[m
      [01;34melse[m

	 [01;34mfor[m Prev_id [01;34min[m Break_Type [01;34mloop[m
	    [31m--Put_Line("Load_table 1.1");[m
	    Iter [31m:=[m Add_True_Line

	      [31m([m
	       Page[31m.[mTrue_Table_Model[31m,[m
	       Id [31m=>[m Break_Type'[01;30mPos[m[31m([mPrev_Id[31m),[m
	       Null_Break [31m=>[m [01;30mGmface_Work_Record[m[31m([mWork_Window[31m.[mWork[31m.[m[01;34mall[m[31m).[mOptions[31m.[m[01;30mTrue_Table[m[31m([m[35m1[m[31m,[m Prev_Id[31m,[m Null_Break[31m),[m

	       Down_Break [31m=>[m [01;30mGmface_Work_Record[m[31m([mWork_Window[31m.[mWork[31m.[m[01;34mall[m[31m).[mOptions[31m.[m[01;30mTrue_Table[m[31m([m[35m1[m[31m,[m Prev_Id[31m,[m Down_break[31m),[m

	       Up_Break [31m=>[m [01;30mGmface_Work_Record[m[31m([mWork_Window[31m.[mWork[31m.[m[01;34mall[m[31m).[mOptions[31m.[m[01;30mTrue_Table[m[31m([m[35m1[m[31m,[m Prev_Id[31m,[m Up_break[31m),[m

	       Full_Break [31m=>[m [01;30mGmface_Work_Record[m[31m([mWork_Window[31m.[mWork[31m.[m[01;34mall[m[31m).[mOptions[31m.[m[01;30mTrue_Table[m[31m([m[35m1[m[31m,[m Prev_Id[31m,[m Full_Break[31m),[m
	       Parent [31m=>[m Parent[31m);[m
	    [31m--Put_Line("Load_table 1.2");[m
	 [01;34mend[m [01;34mloop[m[31m;[m
      [01;34mend[m [01;34mif[m[31m;[m

      [31m--Put_Line("End True_Table View");[m


   [01;34mend[m Load_True_Table[31m;[m

   
   [01;34mpackage[m Plugin_CB [01;34mis[m [01;34mnew[m Gtk[31m.[mHandlers[31m.[mUser_Callback
     [31m([mGtk_Widget_Record[31m,[m
      Gmface_Plugin_Access[31m);[m
   
   [01;34mprocedure[m [01;30mSet_Form[m [31m([mWidget [31m:[m [01;34maccess[m Gtk_Widget_Record'class[31m;[m
   		       plugin [31m:[m Gmface_Plugin_Access[31m)[m [01;34mis[m
   [01;34mbegin[m
      [01;34mif[m Plugin [31m/=[m [01;34mnull[m [01;34mthen[m
   	 Plugin[31m.[mForm_Id [31m:=[m [01;30mForm_Index_Type[m[31m([mGtk[31m.[mCombo_Box_Text[31m.[m[01;30mGet_Active[m[31m([m[01;30mGtk_Combo_Box_text[m[31m([mwidget[31m))+[m[35m1[m[31m);[m
      [01;34mend[m [01;34mif[m[31m;[m
   [01;34mend[m Set_Form[31m;[m

   [01;34mprocedure[m [01;30mSet_Category[m [31m([mWidget [31m:[m [01;34maccess[m Gtk_Widget_Record'class[31m;[m
   			   Plugin [31m:[m Gmface_Plugin_Access[31m)[m [01;34mis[m
   [01;34mbegin[m
      [01;34mif[m Plugin [31m/=[m [01;34mnull[m [01;34mthen[m
   	 Plugin[31m.[mCat_Id [31m:=[m [01;30mCategory_Index_Type[m[31m([m[01;30mGet_Active[m[31m([m[01;30mGtk_Combo_Box_Text[m[31m([mwidget[31m))+[m[35m1[m[31m);[m
      [01;34mend[m [01;34mif[m[31m;[m
   [01;34mend[m Set_Category[31m;[m


   [01;34mprocedure[m [01;30mLoad_Plugin_Page[m [31m([mWork_Window [31m:[m [01;34min[m Gtk_Gmface_Work_Window_Access[31m;[m
			       Page [31m:[m [01;34min[m [01;34mout[m Plugin_Page_Type[31m;[m
			       Plugin [31m:[m [01;34min[m Abstract_Plugin_Access[31m;[m
			       Id [31m:[m [01;34min[m Plugin_Num[31m)[m [01;34mis[m
   [01;34mbegin[m
      Page[31m.[mPlugin_Id [31m:=[m Id[31m;[m
      [31m--Put_Line("Plug 2.1");[m
      [01;34mif[m Plugin [31m/=[m [01;34mnull[m [01;34mthen[m
	 Page[31m.[mPlugin_Spec [31m:=[m [01;30mInitialize[m[31m([mPlugin[31m.[mClass[31m,[m Plugin[31m,[m Id[31m);[m[31m--New Step_Seq_Specifications;[m
								  [31m--  case Plugin.Class is[m
      [01;34mend[m [01;34mif[m[31m;[m
      
      [01;30mLoad_True_Table[m [31m([mWork_Window[31m,[m Page[31m,[m [01;30mPlugin_Class[m[31m([mPlugin[31m.[m[01;34mall[m[31m)[m'[01;34maccess[m[31m);[m
      [31m--Put_Line("Plug 2.4");[m
   [01;34mend[m Load_Plugin_Page[31m;[m




   [01;34mprocedure[m [01;30mCreate_Plugin_Page[m [31m([mModel  [31m:[m [01;34maccess[m GObject_Record'Class[31m;[m
				 Params [31m:[m [01;34min[m Glib[31m.[mValues[31m.[mGValues[31m;[m
				 Work_Window [31m:[m [01;34min[m Gtk_Gmface_Work_Window_Access[31m;[m
				 Plugin [31m:[m [01;34min[m Abstract_Plugin_Access[31m;[m
				 Id [31m:[m [01;34min[m Plugin_Num[31m)[m [01;34mis[m

      M           [31m:[m [01;34mconstant[m Gtk_Tree_Store [31m:=[m [01;30mGtk_Tree_Store[m [31m([mModel[31m);[m
      Path_String [31m:[m [01;34mconstant[m [32mString[m [31m:=[m [01;30mGet_String[m [31m([m[01;30mNth[m [31m([mParams[31m,[m [35m1[m[31m));[m
      Iter        [31m:[m [01;34mconstant[m Gtk_Tree_Iter [31m:=[m
	[01;30mGet_Iter_From_String[m [31m([mM[31m,[m Path_String[31m);[m

      Value [31m:[m Gvalue[31m;[m

      Dialog  [31m:[m Gtk_Dialog[31m;[m
      Ok      [31m:[m Gtk[31m.[mWidget[31m.[mGtk_Widget[31m;[m
      Cancel  [31m:[m Gtk[31m.[mWidget[31m.[mGtk_Widget[31m;[m
      Label   [31m:[m Gtk_Label[31m;[m
      Vbox    [31m:[m Gtk_Box[31m;[m


      Class [31m:[m Plugin_Enum [31m:=[m Null_Plugin[31m;[m


      Hbox [31m:[m Gtk_Box[31m;[m
      Timbre_Category_Label [31m:[m Gtk_Label[31m;[m
      Channel_Label         [31m:[m Gtk_Label[31m;[m
      Form_Label            [31m:[m Gtk_Label[31m;[m
      Device_Label          [31m:[m Gtk_Label[31m;[m

   [01;34mbegin[m

      [01;34mdeclare[m

	 Class_Dialog [31m:[m Gtk_Dialog[31m;[m
	 Ok           [31m:[m Gtk[31m.[mWidget[31m.[mGtk_Widget[31m;[m
	 Cancel       [31m:[m Gtk[31m.[mWidget[31m.[mGtk_Widget[31m;[m
	 Vbox         [31m:[m Gtk_Box[31m;[m
	 Classes      [31m:[m Gtk_Combo_Box_text[31m;[m
      [01;34mbegin[m

	 Gtk[31m.[mDialog[31m.[m[01;30mGtk_New[m[31m([mClass_Dialog[31m,[m [31m"Plugin id"[m [31m&[m Plugin_Num'[01;30mImage[m[31m([mId[31m),[m [01;30mGtk_Window[m[31m([mWork_Window[31m.[mWindow[31m),[m Gtk[31m.[mDialog[31m.[mModal[31m);[m
	 [01;30mSet_Default_Size[m[31m([mClass_Dialog[31m,[m [35m200[m[31m,[m [35m75[m[31m);[m
	 Vbox [31m:=[m [01;30mGet_Content_area[m[31m([mClass_Dialog[31m);[m
	 Ok [31m:=[m Gtk[31m.[mDialog[31m.[m[01;30mAdd_button[m[31m([mClass_Dialog[31m,[m [31m"Ok"[m[31m,[m Gtk[31m.[mDialog[31m.[mGtk_Response_Ok[31m);[m
	 Cancel [31m:=[m Gtk[31m.[mDialog[31m.[m[01;30mAdd_button[m[31m([mClass_Dialog[31m,[m [31m"Cancel"[m[31m,[m Gtk[31m.[mDialog[31m.[mGtk_Response_Cancel[31m);[m
	 Gtk[31m.[mCombo_Box_Text[31m.[m[01;30mGtk_New[m[31m([mclasses[31m);[m
	 [01;34mfor[m I [01;34min[m [35m0[m[31m..[mPlugin_Enum[31m'Pos(Plugin_Enum'[mLast[31m)-[m[35m1[m [01;34mloop[m
	    Gtk[31m.[mCombo_Box_Text[31m.[mInsert_Text
	      [31m([mClasses[31m,[m Glib[31m.[m[01;30mGint[m[31m([mI[31m),[m Glib[31m.[mConvert[31m.[m[01;30mLocale_To_UTF8[m[31m([mPlugin_Enum[31m'Image(Plugin_Enum'[m[01;30mVal[m[31m([mI[31m))));[m
	 [01;34mend[m [01;34mloop[m[31m;[m
	 [01;34mif[m Plugin [31m=[m [01;34mnull[m [01;34mthen[m
	    Gtk[31m.[mCombo_Box_Text[31m.[m[01;30mSet_Active[m[31m([mClasses[31m,[m [01;30mGint[m[31m([m[35m0[m[31m));[m
	 [01;34melse[m
	    Gtk[31m.[mCombo_Box_Text[31m.[m[01;30mSet_Active[m[31m([mClasses[31m,[m Plugin_Enum'[01;30mPos[m[31m([mPlugin[31m.[mClass[31m));[m
	 [01;34mend[m [01;34mif[m[31m;[m
	 [01;30mPack_Start[m[31m([mVbox[31m,[m Classes[31m);[m
	 [01;30mShow_All[m[31m([mVbox[31m);[m
	 [01;34mcase[m [01;30mRun[m[31m([mClass_Dialog[31m)[m [01;34mis[m
	    [01;34mwhen[m Gtk_Response_Ok [31m=>[m
	       [31m--Put_Line("Plugin select 0.0.0");[m
	       Class [31m:=[m Plugin_Enum'[01;30mVal[m[31m([mGtk[31m.[mCombo_Box_Text[31m.[m[01;30mGet_Active[m[31m([mClasses[31m));[m
	       [31m--Put_Line("Plugin select 0.0.1");[m
	       [31m--if Class /= Null_Plugin then[m
		  [31m--Put_Line("Plugin select 0.0.2");[m
	       [01;34mif[m Work_Window[31m.[mWork[31m.[m[01;30mPlugins[m [31m([mId[31m)[m [31m=[m [01;34mnull[m [01;34mor[m [01;34melse[m
		    Work_Window[31m.[mWork[31m.[m[01;30mPlugins[m [31m([mId[31m).[mClass [31m/=[m Class [01;34mthen[m
		     [31m--Put_Line("Plugin select 0.0.3");[m
		  Work_Window[31m.[mWork[31m.[m[01;30mPlugins[m [31m([mId[31m)[m [31m:=[m
		    [01;30mInitialize[m[31m([mclass[31m,[m Id[31m,[m [35m1[m[31m,[m [35m1[m[31m,[m [35m1[m[31m,[m [35m1[m[31m);[m
		     [31m--Put_Line("Plugin select 0.0.4");[m
		  [01;34mend[m [01;34mif[m[31m;[m
		  [31m--Put_Line("Plugin select 0.0.5");[m
	       [31m--end if;[m
	       [31m--Put_Line("Plugin select 0.0.6");[m
	       Work_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m)[m [31m:=[m [01;34mnew[m Plugin_Page_Type[31m;[m
	       [31m--Load_Plugin_Page(Work_Window, Work_Window.Plugins_Pages(Id).all, Work_Window.Work.Plugins (Id), Id);[m
	       [31m--Put_Line("Plugin select 0.0.7");[m
	       [01;30mDestroy[m[31m([mClass_Dialog[31m);[m
	    [01;34mwhen[m Gtk_Response_Cancel [31m=>[m
	       [01;30mDestroy[m[31m([mClass_Dialog[31m);[m
	       [01;34mreturn[m[31m;[m
	    [01;34mwhen[m [01;34mothers[m [31m=>[m
	       [01;30mDestroy[m[31m([mClass_Dialog[31m);[m
	       [01;34mreturn[m[31m;[m
	 [01;34mend[m [01;34mcase[m[31m;[m
      [01;34mend[m[31m;[m
      [01;34mif[m Class [31m/=[m Null_Plugin [01;34mthen[m
	 [31m--Put_Line("CUCU 0.1.1");[m
	 Gtk[31m.[mDialog[31m.[m[01;30mGtk_New[m[31m([mDialog[31m,[m [31m"Plugin "[m [31m&[m Plugin_Num'[01;30mImage[m[31m([mId[31m),[m [01;30mGtk_Window[m[31m([mWork_Window[31m.[mWindow[31m),[m Gtk[31m.[mDialog[31m.[mModal[31m);[m
	 [01;30mSet_Default_Size[m[31m([mDialog[31m,[m [35m1024[m[31m,[m [35m768[m[31m);[m

	 Vbox [31m:=[m [01;30mGet_Content_area[m[31m([mDialog[31m);[m
	 [31m--Put_Line("CUCU 0.1.1.1");[m
	 [31m--Put_Line("CUCU 0.1.1.2");[m
	 Ok [31m:=[m Gtk[31m.[mDialog[31m.[m[01;30mAdd_button[m[31m([mDialog[31m,[m [31m"Ok"[m[31m,[m Gtk[31m.[mDialog[31m.[mGtk_Response_Ok[31m);[m
	 Cancel [31m:=[m Gtk[31m.[mDialog[31m.[m[01;30mAdd_button[m[31m([mDialog[31m,[m [31m"Cancel"[m[31m,[m Gtk[31m.[mDialog[31m.[mGtk_Response_Cancel[31m);[m



	 [31m--Put_Line("Plug 1.0");[m
	 [01;30mGtk_New[m [31m([mWork_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mPage_Handler[31m,[m [31m"N°"[m [31m&[m Plugin_Num'[01;30mImage[m [31m([mId[31m));[m
	 [31m--Put_Line("Plug 1.1");[m
	 [01;30mGtk_New[m [31m([mWork_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mPlugin_Frame[31m);[m
	 [31m--Put_Line("Plug 1.2");[m

	 [31m--Put_Line("Plug 1.3");[m
	 [01;30mGtk_New[m [31m([mWork_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mDetails_Frame[31m,[m [31m"Details"[m[31m);[m
	 [31m--Put_Line("Plug 1.4");[m
	 [01;30mGtk_New[m [31m([mWork_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mTrue_Table_Frame[31m,[m [31m"True Table"[m[31m);[m
	 [31m--Put_Line("Plug 1.5");[m
	 [01;30mGtk_New_Hpaned[m [31m([mWork_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mPlugin_Paned[31m);[m
	 [31m--Put_Line("Plug 1.6");[m
	 [01;30mGtk_New_Vpaned[m [31m([mWork_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mOptions_Paned[31m);[m
	 [31m--Put_Line("Plug 1.7");[m
	 [01;30mPack1[m [31m([mWork_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mOptions_Paned[31m,[m Work_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mDetails_Frame[31m);[m
	 [31m--Put_Line("Plug 1.8");[m
	 [01;30mAdd2[m [31m([mWork_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mOptions_Paned[31m,[m Work_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mTrue_Table_Frame[31m);[m
	 [31m--Put_Line("Plug 1.9");[m
	 [01;30mSet_Position[m [31m([mWork_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mOptions_Paned[31m,[m [35m350[m[31m);[m

	 [01;30mLoad_Plugin_Page[m[31m([mWork_Window[31m,[m Work_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[m[01;34mall[m[31m,[m Work_Window[31m.[mWork[31m.[m[01;30mPlugins[m [31m([mId[31m),[m Id[31m);[m
	 [31m--Put_Line("Plug 1.10");[m

	 [01;34mif[m Work_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mPlugin_Spec [31m/=[m [01;34mnull[m [01;34mthen[m
	    [01;30mPack1[m [31m([mWork_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mPlugin_Paned[31m,[m Work_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mPlugin_Spec[31m.[mSpecifications_Frame[31m);[m
	 [01;34mend[m [01;34mif[m[31m;[m
	 [31m--Put_Line("Plug 1.11");[m
	 [01;30mAdd2[m [31m([mWork_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mPlugin_Paned[31m,[m Work_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mOptions_Paned[31m);[m
	 [31m--Put_Line("Plug 1.12");[m
	 [01;30mSet_Position[m [31m([mWork_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mPlugin_Paned[31m,[m [35m550[m[31m);[m
	 [31m--Put_Line("Plug 1.13");[m
	 [01;30mPack_Start[m[31m([mVbox[31m,[m Work_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mPlugin_Paned[31m);[m
	 [31m--Append_Page (Work_Window.Plugins_Notebook, Work_Window.Plugins_Pages(Id).Plugin_Paned, Work_Window.Plugins_Pages(Id).Page_Handler);[m
	 [31m--Put_Line("Plug 1.14");[m

	 [31m---------------------------------------------------------------------------[m
	 [01;30mGtk_New_Vbox[m[31m([mWork_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mDetails_Box[31m);[m
	 [31m--Put_Line("Plug 1.15");[m

	 Gtk[31m.[mBox[31m.[m[01;30mGtk_New_Hbox[m[31m([mHbox[31m,[m Homogeneous [31m=>[m false[31m);[m
	 [31m--Put_Line("Plug 1.16");[m
	 Gtk[31m.[mCombo_Box_Text[31m.[m[01;30mGtk_New[m[31m([mWork_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mDevice_Id[31m);[m
	 [31m--Put_Line("Plug 2.2.0");[m
	 [01;34mfor[m I [01;34min[m [35m0[m[31m..[mDevice_num'Last[31m-[m[35m1[m [01;34mloop[m
	    Gtk[31m.[mCombo_Box_Text[31m.[m[01;30minsert_Text[m[31m([mWork_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mDevice_Id[31m,[m Glib[31m.[m[01;30mGint[m[31m([mI[31m),[m Natural'[01;30mImage[m[31m([m[01;30mNatural[m[31m([mI[31m+[m[35m1[m[31m)));[m
	 [01;34mend[m [01;34mloop[m[31m;[m

	 [01;34mif[m Plugin [31m/=[m [01;34mnull[m [01;34mthen[m
	    [31m--Put_Line("Plug 2.2.0.1 plugin full");[m
	    Gtk[31m.[mCombo_Box_Text[31m.[m[01;30mSet_Active[m[31m([mWork_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mDevice_Id[31m,[m [01;30mGint[m[31m([mPlugin[31m.[mDevice_id[31m-[m[35m1[m[31m));[m
	 [01;34melse[m
	    [31m--Put_Line("Plug 2.2.0.1 Plugin empty");[m
	    Gtk[31m.[mCombo_Box_Text[31m.[m[01;30mSet_Active[m[31m([mWork_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mDevice_Id[31m,[m [01;30mGint[m[31m([m[35m0[m[31m));[m
	 [01;34mend[m [01;34mif[m[31m;[m
	 Gtk[31m.[mLabel[31m.[m[01;30mGtk_New[m[31m([mDevice_Label[31m,[m [31m"Device Id             :             "[m[31m);[m
	 [31m--Put_Line("Plug 2.2.0.2");[m
	 Gtk[31m.[mBox[31m.[m[01;30mPack_Start[m[31m([mHbox[31m,[m Device_Label[31m,[m False[31m,[m False[31m,[m [35m0[m[31m);[m
	 Gtk[31m.[mBox[31m.[m[01;30mPack_Start[m[31m([mHbox[31m,[m Work_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mDevice_Id[31m,[m False[31m,[m False[31m,[m [35m0[m[31m);[m
	 [31m--Put_Line("Plug 2.2.0.3");[m
	 Gtk[31m.[mBox[31m.[m[01;30mPack_Start[m[31m([mWork_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mDetails_Box[31m,[m Hbox[31m,[m False[31m,[m False[31m,[m [35m0[m[31m);[m
	 [31m--Put_Line("Plug 2.2.0.4");[m
	 [31m--Plugin_Cb.Connect(Work_Window.Plugins_Pages(Id).Device_Id, "changed",[m
	 [31m--		Plugin_Cb.To_Marshaller(Set_Device_Id'Access),[m
	 [31m--		Plugin);[m
	 [31m--Put_Line("Plug 2.2.1");[m
	 Gtk[31m.[mBox[31m.[m[01;30mGtk_New_Hbox[m[31m([mHbox[31m,[m Homogeneous [31m=>[m false[31m);[m
	 Gtk[31m.[mCombo_Box_Text[31m.[m[01;30mGtk_New[m[31m([mWork_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mTimbre_Channel[31m);[m
	 [01;34mfor[m I [01;34min[m [35m0[m[31m..[m[35m15[m [01;34mloop[m
	    Gtk[31m.[mCombo_Box_Text[31m.[m[01;30minsert_Text[m[31m([mWork_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mTimbre_Channel[31m,[m Glib[31m.[m[01;30mGint[m[31m([mI[31m),[m Natural'[01;30mImage[m[31m([mI[31m+[m[35m1[m[31m));[m
	 [01;34mend[m [01;34mloop[m[31m;[m
	 [01;34mif[m Plugin [31m/=[m [01;34mnull[m [01;34mthen[m
	    Gtk[31m.[mCombo_Box_Text[31m.[m[01;30mSet_Active[m[31m([mWork_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mTimbre_Channel[31m,[m [01;30mGint[m[31m([mPlugin[31m.[mCh_Id[31m-[m[35m1[m[31m));[m
	 [01;34melse[m
	    Gtk[31m.[mCombo_Box_Text[31m.[m[01;30mSet_Active[m[31m([mWork_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mTimbre_Channel[31m,[m [01;30mGint[m[31m([m[35m0[m[31m));[m
	 [01;34mend[m [01;34mif[m[31m;[m


	 Gtk[31m.[mLabel[31m.[m[01;30mGtk_New[m[31m([mChannel_Label[31m,[m [31m"Num channel       :                "[m[31m);[m
	 Gtk[31m.[mBox[31m.[m[01;30mPack_Start[m[31m([mHbox[31m,[m Channel_Label[31m,[m False[31m,[m False[31m,[m [35m0[m[31m);[m
	 Gtk[31m.[mBox[31m.[m[01;30mPack_Start[m[31m([mHbox[31m,[m Work_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mTimbre_Channel[31m,[m False[31m,[m False[31m,[m [35m0[m[31m);[m
	 Gtk[31m.[mBox[31m.[m[01;30mPack_Start[m[31m([mWork_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mDetails_Box[31m,[m Hbox[31m,[m False[31m,[m False[31m,[m [35m0[m[31m);[m
	 [31m--  Plugin_Cb.Connect(Work_Window.Plugins_Pages(Id).Timbre_Channel, "changed",[m
	 [31m--  			Plugin_Cb.To_Marshaller(Set_Channel'Access),[m
	 [31m--  			Plugin);[m
	 [31m--Put_Line("Plug 2.2.2");[m
	 Gtk[31m.[mBox[31m.[m[01;30mGtk_New_Hbox[m[31m([mHbox[31m,[m Homogeneous [31m=>[m false[31m);[m
	 Gtk[31m.[mLabel[31m.[m[01;30mGtk_New[m[31m([mTimbre_Category_Label[31m,[m [31m"Timbre category :"[m[31m);[m
	 Gtk[31m.[mCombo_Box_Text[31m.[m[01;30mGtk_New[m[31m([mWork_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mTimbre_Category[31m);[m
	 [01;34mfor[m I [01;34min[m [35m0[m [31m..[m [01;30mGmface_Work_Record[m[31m([mWork_Window[31m.[mWork[31m.[m[01;34mall[m[31m).[mOptions[31m.[mCategories[31m.[mLast [31m-[m [35m1[m [01;34mloop[m
	    Gtk[31m.[mCombo_Box_Text[31m.[mInsert_Text
	      [31m([mWork_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mTimbre_Category[31m,[m
	       Glib[31m.[m[01;30mGint[m[31m([mI[31m),[m
	       [01;30mGmface_Work_Record[m[31m([mWork_Window[31m.[mwork[31m.[m[01;34mall[m[31m).[mOptions[31m.[mCategories[31m.[m[01;30mcategory[m[31m([mI [31m+[m [35m1[m[31m).[m[01;34mall[m[31m);[m
	 [01;34mend[m [01;34mloop[m[31m;[m
	 [01;34mif[m Plugin [31m/=[m [01;34mnull[m [01;34mthen[m
	    Gtk[31m.[mCombo_Box_Text[31m.[m[01;30mSet_Active[m[31m([mWork_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mTimbre_Category[31m,[m [01;30mGint[m[31m([mPlugin[31m.[mCat_Id[31m-[m[35m1[m[31m));[m
	 [01;34melse[m
	    Gtk[31m.[mCombo_Box_Text[31m.[m[01;30mSet_Active[m[31m([mWork_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mTimbre_Category[31m,[m [01;30mGint[m[31m([m[35m0[m[31m));[m
	 [01;34mend[m [01;34mif[m[31m;[m
	 Gtk[31m.[mBox[31m.[m[01;30mPack_Start[m[31m([mHbox[31m,[m Timbre_Category_label[31m,[m False[31m,[m False[31m);[m
	 Gtk[31m.[mBox[31m.[m[01;30mPack_Start[m[31m([mHbox[31m,[m Work_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mTimbre_Category[31m,[m False[31m,[m False[31m);[m
	 Gtk[31m.[mBox[31m.[m[01;30mPack_Start[m[31m([mWork_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mDetails_Box[31m,[m hbox[31m,[m False[31m,[m False[31m);[m
	 Plugin_Cb[31m.[m[01;30mConnect[m[31m([mWork_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mTimbre_Category[31m,[m [31m"changed"[m[31m,[m
			   Plugin_Cb[31m.[m[01;30mTo_Marshaller[m[31m([mSet_Category'[01;34mAccess[m[31m),[m
			   [01;30mGmface_Plugin_Class[m[31m([mPlugin[31m.[m[01;34mall[m[31m)[m'[01;34mAccess[m[31m);[m
	 [31m--  Window_Cb.Connect(Work_Window.Plugins_Pages(Id).Timbre_Category, "changed",[m
	 [31m--  			Window_Cb.To_Marshaller(True_Table_Changed'Access),[m
	 [31m--  			Work_Window);[m
	 [31m--Put_Line("Plug 2.2.3");[m
	 Gtk[31m.[mBox[31m.[m[01;30mGtk_New_Hbox[m[31m([mHbox[31m,[m Homogeneous [31m=>[m false[31m);[m
	 Gtk[31m.[mCombo_Box_Text[31m.[m[01;30mGtk_New[m[31m([mWork_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mPlayed_Form[31m);[m
	 [01;34mfor[m I [01;34min[m [35m0[m [31m..[m [01;30mGmface_Work_Record[m[31m([mWork_Window[31m.[mWork[31m.[m[01;34mall[m[31m).[mOptions[31m.[mForms_Names'Length[31m-[m[35m1[m [01;34mloop[m
	    Gtk[31m.[mCombo_Box_Text[31m.[mInsert_Text
	      [31m([mWork_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mPlayed_Form[31m,[m Glib[31m.[m[01;30mGint[m[31m([mI[31m),[m
	       Glib[31m.[mConvert[31m.[m[01;30mLocale_To_UTF8[m[31m([m[01;30mGmface_Work_Record[m[31m([mWork_Window[31m.[mwork[31m.[m[01;34mall[m[31m).[mOptions[31m.[m[01;30mForms_names[m[31m([m[01;30mForm_Index_Type[m[31m([mI[31m+[m[35m1[m[31m)).[m[01;34mall[m[31m));[m
	 [01;34mend[m [01;34mloop[m[31m;[m
	 [01;34mif[m Plugin [31m/=[m [01;34mnull[m [01;34mthen[m
	    Gtk[31m.[mCombo_Box_Text[31m.[m[01;30mSet_Active[m[31m([mWork_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mPlayed_Form[31m,[m [01;30mGint[m[31m([mPlugin[31m.[mForm_id[31m-[m[35m1[m[31m));[m
	 [01;34melse[m
	    Gtk[31m.[mCombo_Box_Text[31m.[m[01;30mSet_Active[m[31m([mWork_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mPlayed_Form[31m,[m [01;30mGint[m[31m([m[35m0[m[31m));[m
	 [01;34mend[m [01;34mif[m[31m;[m
	 Gtk[31m.[mLabel[31m.[m[01;30mGtk_New[m[31m([mForm_label[31m,[m [31m"Played form     : "[m[31m);[m
	 Gtk[31m.[mBox[31m.[m[01;30mPack_Start[m[31m([mHbox[31m,[m Form_Label[31m,[m False[31m,[m False[31m,[m [35m0[m[31m);[m
	 Gtk[31m.[mBox[31m.[m[01;30mPack_Start[m[31m([mHbox[31m,[m Work_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mPlayed_Form[31m,[m False[31m,[m False[31m,[m [35m0[m[31m);[m
	 Gtk[31m.[mBox[31m.[m[01;30mPack_Start[m[31m([mWork_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mDetails_Box[31m,[m Hbox[31m,[m False[31m,[m False[31m,[m [35m0[m[31m);[m
	 Plugin_Cb[31m.[m[01;30mConnect[m[31m([mWork_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mPlayed_Form[31m,[m [31m"changed"[m[31m,[m
	 			Plugin_Cb[31m.[m[01;30mTo_Marshaller[m[31m([mSet_Form'[01;34mAccess[m[31m),[m
	 			[01;30mGmface_Plugin_Class[m[31m([mPlugin[31m.[m[01;34mall[m[31m)[m'[01;34mAccess[m[31m);[m
	 [31m--  Window_Cb.Connect(Work_Window.Plugins_Pages(Id).Played_Form, "changed",[m
	 [31m--  			Window_Cb.To_Marshaller(True_Table_Changed'Access),[m
	 [31m--  			Work_Window);[m
	 [31m--Put_Line("Plug 2.2.4");[m
	 [31m--Gtk.Box.Gtk_New_Hbox(Hbox, Homogeneous => false);[m
	 [31m--  Gtk.Combo_Box_Text.Gtk_New(Work_Window.Plugins_Pages(Id).Algo_Combo_Box);[m
	 [31m--  for I in Algo_Type'Range loop[m
	 [31m--  	 Gtk.Combo_Box_Text.insert_Text(Work_Window.Plugins_Pages(Id).Algo_Combo_box, Glib.Gint(Algo_Type'Pos(I)), Algo_Type'Image(I));[m
	 [31m--  end loop;[m
	 [31m--  Gtk.Combo_Box_Text.Set_Active(Work_Window.Plugins_Pages(Id).Algo_Combo_Box, Gint(Algo_Type'Pos(Plugin.Algo)));[m
	 [31m--  Gtk.Label.Gtk_New(Form_label, "Algo :");[m

	 [31m--Gtk.Box.Pack_Start(Hbox, Work_Window.Plugins_Pages(Id).Algo_Combo_Box, False, False, 0);[m

	 [31m--Plugin_Cb.Connect(Work_Window.Plugins_Pages(Id).Algo_Combo_Box, "changed",[m
	 [31m--		Plugin_Cb.To_Marshaller(Set_Algo'Access),[m
	 [31m--		Plugin);[m

	 [31m--Put_Line("Plug 2.2.5");[m
	 [01;30mAdd[m[31m([mWork_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mDetails_Frame[31m,[m Work_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mDetails_Box[31m);[m
	 [31m--Put_Line("Plug 2.2.6");[m
	 [31m--                                                                        --[m
	 [31m----------------------------------------------------------------------------[m


	 [31m--Put_Line("Plug 2.10");[m
	 [31m--  Work_Window.Plugins_Pages(Id).Page_Num :=[m
	 [31m--  	Get_N_Pages (Work_Window.Plugins_Notebook);[m
	 [31m--Put_Line("Plug 2.11");[m
	 Work_Window[31m.[m[01;30mPlugins_pages[m [31m([mId[31m).[mOpened [31m:=[m True[31m;[m
	 [31m--Put_Line("Plug 2.12");[m

	 [31m--rk_Window.Work.Plugins (Id).Opened := True;[m
	 [31m--Put_Line("Plug 2.13");[m
	 [31m--Show_All (Work_Window.Plugins_Notebook);[m
	 [31m--Put_Line("Plug 2.14");[m

	 [01;30mShow_All[m[31m([mVbox[31m);[m
	 [01;34mcase[m [01;30mRun[m[31m([mDialog[31m)[m [01;34mis[m
	    [01;34mwhen[m Gtk_Response_Ok [31m=>[m
	       [01;34mif[m Work_Window[31m.[mWork[31m.[m[01;30mPlugins[m [31m([mId[31m)[m [31m/=[m [01;34mnull[m [01;34mthen[m
		  [31m--Put_Line("Plug 2.15");[m
		  Work_Window[31m.[mWork[31m.[m[01;30mPlugins[m [31m([mId[31m).[mDevice_Id [31m:=[m [01;30mDevice_num[m[31m([mGtk[31m.[mCombo_Box_Text[31m.[m[01;30mGet_Active[m[31m([mWork_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mDevice_Id[31m)+[m[35m1[m[31m);[m
		  [31m--Put_Line("Plug 2.15.1");[m
		  Work_Window[31m.[mWork[31m.[m[01;30mPlugins[m [31m([mId[31m).[mCh_Id [31m:=[m [01;30mChannel_Num[m[31m([mGtk[31m.[mCombo_Box_Text[31m.[m[01;30mGet_Active[m[31m([mWork_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mTimbre_Channel[31m)+[m[35m1[m[31m);[m
		  [31m--Put_Line("Plug 2.15.2");[m
		  Work_Window[31m.[mWork[31m.[m[01;30mPlugins[m [31m([mId[31m).[mCat_Id [31m:=[m [01;30mCategory_Index_Type[m[31m([mGtk[31m.[mCombo_Box_Text[31m.[m[01;30mGet_Active[m[31m([mWork_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mTimbre_Category[31m)+[m[35m1[m[31m);[m
		  [31m--Put_Line("Plug 2.15.3");[m
		  Work_Window[31m.[mWork[31m.[m[01;30mPlugins[m [31m([mId[31m).[mForm_Id [31m:=[m [01;30mForm_Index_Type[m[31m([mGtk[31m.[mCombo_Box_Text[31m.[m[01;30mGet_Active[m[31m([mWork_Window[31m.[m[01;30mPlugins_Pages[m[31m([mId[31m).[mPlayed_Form[31m)+[m[35m1[m[31m);[m
		  [31m--Put_Line("Plug 2.15.4");[m
	       [01;34mend[m [01;34mif[m[31m;[m
	       [01;30mInit[m[31m([mValue[31m,[m Gtype_boolean[31m);[m
	       [01;30mSet_boolean[m[31m([mValue[31m,[m false[31m);[m
	       [01;30mSet_Value[m [31m([mM[31m,[m Iter[31m,[m Printable_Column[31m,[m Value[31m);[m
	       [01;30mSet_Value[m [31m([mM[31m,[m Iter[31m,[m Muttable_Column[31m,[m Value[31m);[m
	       [01;30mInit[m[31m([mValue[31m,[m Gtype_String[31m);[m
	       [01;30mSet_String[m[31m([mValue[31m,[m Plugin_Enum'[01;30mImage[m[31m([mWork_Window[31m.[mWork[31m.[m[01;30mPlugins[m [31m([mId[31m).[mClass[31m));[m
	       [01;30mSet_Value[m [31m([mM[31m,[m Iter[31m,[m Type_Column[31m,[m Value[31m);[m
	       [01;30mDestroy[m[31m([mDialog[31m);[m
	    [01;34mwhen[m Gtk_Response_Cancel [31m=>[m
	       [01;30mDestroy[m[31m([mDialog[31m);[m
	    [01;34mwhen[m [01;34mothers[m [31m=>[m
	       [01;34mnull[m[31m;[m
	 [01;34mend[m [01;34mcase[m[31m;[m
      [01;34melse[m
	 [01;30mInit[m[31m([mValue[31m,[m Gtype_boolean[31m);[m
	 [01;30mSet_boolean[m[31m([mValue[31m,[m false[31m);[m
	 [01;30mSet_Value[m [31m([mM[31m,[m Iter[31m,[m Printable_Column[31m,[m Value[31m);[m
	 [01;30mSet_Value[m [31m([mM[31m,[m Iter[31m,[m Muttable_Column[31m,[m Value[31m);[m
	 [01;30mInit[m[31m([mValue[31m,[m Gtype_String[31m);[m
	 [01;30mSet_String[m[31m([mValue[31m,[m Plugin_Enum'[01;30mImage[m[31m([mWork_Window[31m.[mWork[31m.[m[01;30mPlugins[m [31m([mId[31m).[mClass[31m));[m
	 [01;30mSet_Value[m [31m([mM[31m,[m Iter[31m,[m Type_Column[31m,[m Value[31m);[m
      [01;34mend[m [01;34mif[m[31m;[m
   [01;34mend[m Create_Plugin_Page[31m;[m


   [31m---------------------[m
   [31m-- Printed_Callback --[m
   [31m---------------------[m
   
   [01;34mprocedure[m Plugin_Printed_Callback
     [31m([mModel  [31m:[m [01;34maccess[m GObject_Record'Class[31m;[m
      Params [31m:[m Glib[31m.[mValues[31m.[mGValues[31m;[m
      User_Data [31m:[m Gtk_Gmface_Work_Window_Record
     [31m)[m
   [01;34mis[m
      M           [31m:[m [01;34mconstant[m Gtk_Tree_Store [31m:=[m [01;30mGtk_Tree_Store[m [31m([mModel[31m);[m
      Path_String [31m:[m [01;34mconstant[m [32mString[m [31m:=[m [01;30mGet_String[m [31m([m[01;30mNth[m [31m([mParams[31m,[m [35m1[m[31m));[m
      Iter        [31m:[m [01;34mconstant[m Gtk_Tree_Iter [31m:=[m
	[01;30mGet_Iter_From_String[m [31m([mM[31m,[m Path_String[31m);[m


      Old_Value   [31m:[m [32mBoolean[m[31m;[m

      Id [31m:[m Plugin_num [31m:=[m [35m1[m[31m;[m

   [01;34mbegin[m
      Old_Value [31m:=[m [01;30mGet_Boolean[m [31m([mM[31m,[m Iter[31m,[m printable_Column[31m);[m

      Id [31m:=[m Plugin_Num'Value
	[31m([m[01;30mGet_String[m [31m([mM[31m,[m Get_Iter_From_String
		       [31m([mM[31m,[m [01;30mGet_String[m [31m([m[01;30mNth[m [31m([mParams[31m,[m [35m1[m[31m))),[m Id_Column[31m));[m

      [01;34mif[m User_Data[31m.[mWork[31m.[m[01;30mPlugins[m [31m([mId[31m)[m [31m/=[m [01;34mnull[m [01;34mthen[m
      	 [01;34mif[m [01;34mnot[m Old_Value [01;34mthen[m
      	    Text_Io[31m.[m[01;30mPut_Line[m [31m([m[31m"Printing plugin N° "[m [31m&[m Plugin_Num'[01;30mImage[m [31m([mId[31m));[m
      	    [01;30mSet[m [31m([mM[31m,[m Iter[31m,[m printable_Column[31m,[m [01;34mnot[m Old_Value[31m);[m
      	    User_Data[31m.[mWork[31m.[m[01;30mPlugins[m [31m([mId[31m).[mPrinted [31m:=[m True[31m;[m

      	    Text_Io[31m.[m[01;30mPut_Line[m [31m([m[31m"Done."[m[31m);[m
      	 [01;34melse[m
      	    Text_Io[31m.[m[01;30mPut_Line[m [31m([m[31m"Unprinting plugin N° "[m [31m&[m Plugin_Num'[01;30mImage[m [31m([mId[31m));[m
      	    [01;30mSet[m [31m([mM[31m,[m Iter[31m,[m printable_Column[31m,[m [01;34mnot[m Old_Value[31m);[m
      	    User_Data[31m.[mWork[31m.[m[01;30mPlugins[m [31m([mId[31m).[mPrinted [31m:=[m False[31m;[m
      	    Text_Io[31m.[m[01;30mPut_Line[m [31m([m[31m"Done."[m[31m);[m
      	 [01;34mend[m [01;34mif[m[31m;[m
      [01;34mend[m [01;34mif[m[31m;[m

   [01;34mend[m Plugin_Printed_Callback[31m;[m



   [01;34mprocedure[m Plugin_Mutted_Callback
     [31m([mModel  [31m:[m [01;34maccess[m GObject_Record'Class[31m;[m
      Params [31m:[m Glib[31m.[mValues[31m.[mGValues[31m;[m
      User_Data [31m:[m Gtk_Gmface_Work_Window_Record
     [31m)[m
   [01;34mis[m
      M           [31m:[m [01;34mconstant[m Gtk_Tree_Store [31m:=[m [01;30mGtk_Tree_Store[m [31m([mModel[31m);[m
      Path_String [31m:[m [01;34mconstant[m [32mString[m [31m:=[m [01;30mGet_String[m [31m([m[01;30mNth[m [31m([mParams[31m,[m [35m1[m[31m));[m
      Iter        [31m:[m [01;34mconstant[m Gtk_Tree_Iter [31m:=[m
	[01;30mGet_Iter_From_String[m [31m([mM[31m,[m Path_String[31m);[m
      Old_Value   [31m:[m [32mBoolean[m[31m;[m

      Id [31m:[m Plugin_Num [31m:=[m [35m1[m[31m;[m

   [01;34mbegin[m
      Old_Value [31m:=[m [01;30mGet_Boolean[m [31m([mM[31m,[m Iter[31m,[m Muttable_Column[31m);[m

      Id [31m:=[m Plugin_Num'Value
	[31m([m[01;30mGet_String[m [31m([mM[31m,[m Get_Iter_From_String
		       [31m([mM[31m,[m [01;30mGet_String[m [31m([m[01;30mNth[m [31m([mParams[31m,[m [35m1[m[31m))),[m Id_Column[31m));[m

      [01;34mif[m User_Data[31m.[mWork[31m.[m[01;30mPlugins[m [31m([mId[31m)[m [31m/=[m [01;34mnull[m [01;34mthen[m
      	 [01;34mif[m [01;34mnot[m Old_Value [01;34mthen[m
      	    Text_Io[31m.[m[01;30mPut_Line[m [31m([m[31m"Mutting plugin N° "[m [31m&[m Plugin_Num'[01;30mImage[m [31m([mId[31m));[m
      	    [01;30mSet[m [31m([mM[31m,[m Iter[31m,[m Muttable_Column[31m,[m [01;34mnot[m Old_Value[31m);[m
      	    User_Data[31m.[mWork[31m.[m[01;30mPlugins[m [31m([mId[31m).[mMutted [31m:=[m True[31m;[m
      	    Text_Io[31m.[m[01;30mPut_Line[m [31m([m[31m"Done."[m[31m);[m
      	 [01;34melse[m
      	    Text_Io[31m.[m[01;30mPut_Line[m [31m([m[31m"Unmutting plugin N° "[m [31m&[m Plugin_Num'[01;30mImage[m [31m([mId[31m));[m
      	    [01;30mSet[m [31m([mM[31m,[m Iter[31m,[m Muttable_Column[31m,[m [01;34mnot[m Old_Value[31m);[m
      	    User_Data[31m.[mWork[31m.[m[01;30mPlugins[m [31m([mId[31m).[mMutted [31m:=[m False[31m;[m
      	    Text_Io[31m.[m[01;30mPut_Line[m [31m([m[31m"Done."[m[31m);[m
      	 [01;34mend[m [01;34mif[m[31m;[m
      [01;34mend[m [01;34mif[m[31m;[m

   [01;34mend[m Plugin_Mutted_Callback[31m;[m

   [01;34mprocedure[m Plugin_Edited_Callback
     [31m([mModel  [31m:[m [01;34maccess[m GObject_Record'Class[31m;[m
      Params [31m:[m Glib[31m.[mValues[31m.[mGValues[31m;[m
      User_Data [31m:[m Gtk_Gmface_Work_Window_access
     [31m)[m
   [01;34mis[m
      M           [31m:[m [01;34mconstant[m Gtk_Tree_Store [31m:=[m [01;30mGtk_Tree_Store[m [31m([mModel[31m);[m
      Path_String [31m:[m [01;34mconstant[m [32mString[m [31m:=[m [01;30mGet_String[m [31m([m[01;30mNth[m [31m([mParams[31m,[m [35m1[m[31m));[m
      Iter        [31m:[m [01;34mconstant[m Gtk_Tree_Iter [31m:=[m
	[01;30mGet_Iter_From_String[m [31m([mM[31m,[m Path_String[31m);[m
      Old_Value   [31m:[m [32mBoolean[m[31m;[m

      Id [31m:[m Plugin_Num [31m:=[m [35m1[m[31m;[m

   [01;34mbegin[m
      Old_Value [31m:=[m [01;30mGet_Boolean[m [31m([mM[31m,[m Iter[31m,[m Active_Column[31m);[m
      Id [31m:=[m Plugin_Num'Value
	[31m([m[01;30mGet_String[m [31m([mM[31m,[m Get_Iter_From_String
		       [31m([mM[31m,[m [01;30mGet_String[m [31m([m[01;30mNth[m [31m([mParams[31m,[m [35m1[m[31m))),[m Id_Column[31m));[m
      [01;34mif[m [01;34mnot[m Old_Value [01;34mthen[m
	 [31m--  if User_Data.Work.Plugins (Id) = null then[m
	 [31m--     User_Data.Work.Plugins (Id) :=[m
	 [31m--       Initialize(Null_Plugin, Id, 1, 1, 1, 1);[m
	 [31m--  end if;[m

	 Text_Io[31m.[m[01;30mPut_Line[m [31m([m[31m"Editting plugin N° "[m [31m&[m Plugin_Num'[01;30mImage[m [31m([mId[31m));[m

	 Create_Plugin_Page
	   [31m([mModel[31m,[m
	    Params[31m,[m
	    User_Data[31m,[m
	    User_Data[31m.[mWork[31m.[m[01;30mPlugins[m [31m([mId[31m),[m id[31m);[m

	 [01;30mSet[m [31m([mM[31m,[m Iter[31m,[m Active_Column[31m,[m True[31m);[m
      [01;34melse[m
	 [31m--  if User_Data.Plugins_Pages(Id).Opened then[m
	 [31m--     if (User_Data.Work.Plugins (Id) /= null) then[m
	 [31m--        if (Get_N_Pages (User_Data.Plugins_Notebook) >=[m
	 [31m--  	     User_Data.Plugins_Pages(Id).Page_Num) then[m

	 [31m--  	  Text_Io.Put_Line ("Deletting plugin N° " & Plugin_Num'Image (Id));[m

	 [31m--  	  Remove_Page (User_Data.Plugins_Notebook,[m
	 [31m--  		       User_Data.Plugins_Pages(Id).Page_Num-1);[m

	 [31m--  	  for Page_Id in User_Data.Plugins_Pages'Range loop[m
	 [31m--  	     if (User_Data.Plugins_Pages(Page_Id).Page_Num /= (-1)) and[m
	 [31m--  	       User_Data.Plugins_Pages(Page_Id).Page_Num > User_Data.Plugins_Pages(Id).Page_Num then[m
	 [31m--  		User_Data.Plugins_Pages(Page_Id).Page_Num := User_Data.Plugins_Pages(Page_Id).Page_Num - 1;[m
	 [31m--  	     end if;[m
	 [31m--  	  end loop;[m
	 [31m--  	  User_Data.Plugins_Pages (Id).Page_Num := -1;[m
	 [31m--  	  User_Data.Plugins_Pages (Id).Opened := False;[m
	 [31m--  	  User_Data.Work.Plugins (Id).Opened := False;[m

	 [31m--  	  Set (M, Iter, Active_Column, False);[m
	 [31m--        end if;[m
	 [31m--     end if;[m
	 [31m--  end if;[m
	 [01;34mnull[m[31m;[m

      [01;34mend[m [01;34mif[m[31m;[m

      [01;30mSet[m [31m([mM[31m,[m Iter[31m,[m Active_Column[31m,[m Old_Value[31m);[m
   [01;34mend[m Plugin_Edited_Callback[31m;[m



   [01;34mprocedure[m [01;30mLoad_Plugins[m [31m([mWork_Window [31m:[m [01;34min[m Gtk_Gmface_Work_Window_Access[31m;[m
			   Plugins  [31m:[m [01;34min[m Plugin_set[31m)[m [01;34mis[m


      Scrolled   [31m:[m Gtk_Scrolled_Window[31m;[m
      Vbox       [31m:[m Gtk_Vbox[31m;[m
      
      
      [31m-- Comon Tree[m
      Col      [31m:[m Gtk_Tree_View_Column[31m;[m
      Num      [31m:[m Gint[31m;[m
      Text_Render   [31m:[m Gtk_Cell_Renderer_Text[31m;[m
      Toggle_Render [31m:[m Gtk_Cell_Renderer_Toggle[31m;[m

      Parent[31m,[m Iter  [31m:[m Gtk_Tree_Iter[31m;[m
      [01;34mpragma[m [01;30mUnreferenced[m [31m([mNum[31m);[m
      [01;34mpragma[m [01;30mWarnings[m [31m([mOff[31m,[m Iter[31m);[m
   [01;34mbegin[m

      [01;30mGtk_New[m [31m([mWork_Window[31m.[mPlugins_Model[31m,[m
	       [31m([mText_Column       [31m=>[m GType_String[31m,[m
                Id_Column         [31m=>[m GType_String[31m,[m
		Type_Column       [31m=>[m GType_String[31m,[m
                Editable_Column   [31m=>[m GType_Boolean[31m,[m
                Active_Column     [31m=>[m GType_Boolean[31m,[m
                Foreground_Column [31m=>[m GType_String[31m,[m
		Printable_Column  [31m=>[m GType_Boolean[31m,[m
		Muttable_Column   [31m=>[m GType_Boolean[31m));[m

      [01;30mGtk_New[m [31m([mWork_Window[31m.[mPlugins_Tree[31m,[m Work_Window[31m.[mPlugins_Model[31m);[m
      [01;30mSet_Grid_Lines[m [31m([mWork_Window[31m.[mPlugins_Tree[31m,[m Grid_Lines_Vertical[31m);[m
      [01;30mSet_Enable_Tree_Lines[m [31m([mWork_Window[31m.[mPlugins_Tree[31m,[m True[31m);[m
      [01;30mSet_Rubber_Banding[m [31m([mWork_Window[31m.[mPlugins_Tree[31m,[m True[31m);[m
      [01;30mSet_Mode[m [31m([m[01;30mGet_Selection[m [31m([mWork_Window[31m.[mPlugins_Tree[31m),[m Selection_Multiple[31m);[m
      [01;30mGtk_New[m [31m([mScrolled[31m);[m
      [01;30mSet_Policy[m [31m([mScrolled[31m,[m Policy_Always[31m,[m Policy_Always[31m);[m
      [01;30mAdd[m [31m([mScrolled[31m,[m Work_Window[31m.[mPlugins_Tree[31m);[m
      [01;30mGtk_New_Vbox[m[31m([mVbox[31m,[m Homogeneous [31m=>[m false[31m);[m
      [01;30mPack_Start[m[31m([mVbox[31m,[m Scrolled[31m,[m True[31m,[m True[31m);[m
      [01;30mAdd[m [31m([mWork_Window[31m.[mPlugins_frame[31m,[m vbox[31m);[m




      [01;30mGtk_New[m [31m([mText_Render[31m);[m

      [01;30mGtk_New[m [31m([mCol[31m);[m
      Num [31m:=[m [01;30mAppend_Column[m [31m([mWork_Window[31m.[mPlugins_Tree[31m,[m Col[31m);[m
      [01;30mSet_Sort_Column_Id[m [31m([mCol[31m,[m Text_Column[31m);[m
      [01;30mSet_Title[m [31m([mCol[31m,[m [31m"Name"[m[31m);[m
      [01;30mPack_Start[m [31m([mCol[31m,[m Text_Render[31m,[m True[31m);[m
      [01;30mSet_Sizing[m [31m([mCol[31m,[m Tree_View_Column_Autosize[31m);[m
      [01;30mAdd_Attribute[m [31m([mCol[31m,[m Text_Render[31m,[m [31m"text"[m[31m,[m Text_Column[31m);[m
      [01;30mAdd_Attribute[m [31m([mCol[31m,[m Text_Render[31m,[m [31m"editable"[m[31m,[m Editable_Column[31m);[m
      Object_Callback[31m.[mObject_Connect
	[31m([mText_Render[31m,[m [31m"edited"[m[31m,[m Name_Edited_Callback'[01;34mAccess[m[31m,[m
	 Slot_Object [31m=>[m Work_Window[31m.[mPlugins_Model[31m,[m
	 User_Data [31m=>[m Work_Window[31m.[m[01;34mall[m[31m);[m

      [01;30mGtk_New[m [31m([mText_Render[31m);[m
      [01;30mGtk_New[m [31m([mCol[31m);[m
      Num [31m:=[m [01;30mAppend_Column[m [31m([mWork_Window[31m.[mPlugins_Tree[31m,[m Col[31m);[m

      [01;30mSet_Title[m [31m([mCol[31m,[m [31m"Id"[m[31m);[m
      [01;30mPack_Start[m [31m([mCol[31m,[m Text_Render[31m,[m True[31m);[m
      [01;30mSet_Sizing[m [31m([mCol[31m,[m Tree_View_Column_Autosize[31m);[m
      [01;30mAdd_Attribute[m [31m([mCol[31m,[m Text_Render[31m,[m [31m"text"[m[31m,[m Id_Column[31m);[m

      [01;30mGtk_New[m [31m([mCol[31m);[m
      Num [31m:=[m [01;30mAppend_Column[m [31m([mWork_Window[31m.[mPlugins_Tree[31m,[m Col[31m);[m

      [01;30mGtk_New[m [31m([mText_Render[31m);[m
      [01;30mSet_Title[m [31m([mCol[31m,[m [31m"Type"[m[31m);[m
      [01;30mPack_Start[m [31m([mCol[31m,[m Text_Render[31m,[m True[31m);[m
      [01;30mSet_Sizing[m [31m([mCol[31m,[m Tree_View_Column_Autosize[31m);[m
      [01;30mAdd_Attribute[m [31m([mCol[31m,[m Text_Render[31m,[m [31m"text"[m[31m,[m Type_Column[31m);[m


      [01;30mGtk_New[m [31m([mToggle_Render[31m);[m
      [01;30mGtk_New[m [31m([mCol[31m);[m
      [01;30mSet_Sort_Column_Id[m [31m([mCol[31m,[m [31m-[m[35m1[m[31m);[m  [31m--  unsortable[m
      Num [31m:=[m [01;30mAppend_Column[m [31m([mWork_Window[31m.[mPlugins_Tree[31m,[m Col[31m);[m
      [01;30mSet_Title[m [31m([mCol[31m,[m [31m"Edit"[m[31m);[m
      [01;30mPack_Start[m [31m([mCol[31m,[m Toggle_Render[31m,[m False[31m);[m
      [01;30mAdd_Attribute[m [31m([mCol[31m,[m Toggle_Render[31m,[m [31m"active"[m[31m,[m Active_Column[31m);[m


      Pointer_Object_Callback[31m.[mObject_Connect
	[31m([mToggle_Render[31m,[m [31m"toggled"[m[31m,[m Plugin_Edited_Callback'[01;34mAccess[m[31m,[m
	 Slot_Object [31m=>[m Work_Window[31m.[mPlugins_Model[31m,[m
	 User_Data [31m=>[m Work_Window[31m);[m

      [01;30mGtk_New[m [31m([mToggle_Render[31m);[m
      [01;30mGtk_New[m [31m([mCol[31m);[m
      [01;30mSet_Sort_Column_Id[m [31m([mCol[31m,[m [31m-[m[35m1[m[31m);[m  [31m--  unsortable[m
      Num [31m:=[m [01;30mAppend_Column[m [31m([mWork_Window[31m.[mPlugins_Tree[31m,[m Col[31m);[m
      [01;30mSet_Title[m [31m([mCol[31m,[m [31m"Print"[m[31m);[m
      [01;30mPack_Start[m [31m([mCol[31m,[m Toggle_Render[31m,[m False[31m);[m
      [01;30mAdd_Attribute[m [31m([mCol[31m,[m Toggle_Render[31m,[m [31m"active"[m[31m,[m Printable_Column[31m);[m

      Object_Callback[31m.[mObject_Connect
	[31m([mToggle_Render[31m,[m [31m"toggled"[m[31m,[m Plugin_Printed_Callback'[01;34mAccess[m[31m,[m
	 Slot_Object [31m=>[m Work_Window[31m.[mPlugins_Model[31m,[m
	 User_Data [31m=>[m Work_Window[31m.[m[01;34mall[m[31m,[m
	 After [31m=>[m False[31m);[m


      [01;30mGtk_New[m [31m([mToggle_Render[31m);[m
      [01;30mGtk_New[m [31m([mCol[31m);[m
      [01;30mSet_Sort_Column_Id[m [31m([mCol[31m,[m [31m-[m[35m1[m[31m);[m  [31m--  unsortable[m
      Num [31m:=[m [01;30mAppend_Column[m [31m([mWork_Window[31m.[mPlugins_Tree[31m,[m Col[31m);[m
      [01;30mSet_Title[m [31m([mCol[31m,[m [31m"Mute"[m[31m);[m
      [01;30mPack_Start[m [31m([mCol[31m,[m Toggle_Render[31m,[m False[31m);[m
      [01;30mAdd_Attribute[m [31m([mCol[31m,[m Toggle_Render[31m,[m [31m"active"[m[31m,[m Muttable_Column[31m);[m

      Object_Callback[31m.[mObject_Connect
	[31m([mToggle_Render[31m,[m [31m"toggled"[m[31m,[m Plugin_Mutted_Callback'[01;34mAccess[m[31m,[m
	 Slot_Object [31m=>[m Work_Window[31m.[mPlugins_Model[31m,[m
	 User_Data [31m=>[m Work_Window[31m.[m[01;34mall[m[31m,[m
	 After [31m=>[m False[31m);[m


      [01;30mSet_Headers_Clickable[m [31m([mWork_Window[31m.[mPlugins_Tree[31m,[m True[31m);[m
      [01;30mSet_Sort_Func[m [31m(+[mWork_Window[31m.[mPlugins_Model[31m,[m Text_Column[31m,[m Custom_Sort'[01;34mAccess[m[31m);[m


      Parent [31m:=[m Null_Iter[31m;[m
      [01;34mfor[m Plugin_Id [01;34min[m Plugins'[01;34mRange[m [01;34mloop[m
	 [01;34mif[m [01;30mPlugins[m [31m([mPlugin_Id[31m)[m [31m/=[m [01;34mnull[m [01;34mand[m [01;34mthen[m 
	   [01;30mPlugins[m [31m([mPlugin_Id[31m).[mClass [31m/=[m Null_Plugin [01;34mthen[m

	    [01;30mPlugins[m[31m([mPlugin_Id[31m).[mId [31m:=[m Plugin_Id[31m;[m

	    [31m--if Plugins (Plugin_Id).Opened then[m
	    Iter [31m:=[m Add_Line
	      [31m([mWork_Window[31m.[mPlugins_Model[31m,[m [01;30mPlugins[m [31m([mPlugin_Id[31m).[mName[31m.[m[01;34mall[m[31m,[m Plugin_Num[31m'image (Plugin_Id), Plugin_Enum'[m[01;30mImage[m[31m([m[01;30mPlugins[m [31m([mPlugin_Id[31m).[mClass[31m),[m
	       Editable [31m=>[m True[31m,[m Muttable [31m=>[m [01;30mPlugins[m [31m([mPlugin_Id[31m).[mMutted[31m,[m Active [31m=>[m [01;30mPlugins[m [31m([mPlugin_Id[31m).[mPrinted[31m,[m Parent [31m=>[m parent[31m);[m
	 [01;34melse[m
	    [31m-- Add line without plugin : Null_Plugin[m
	    Iter [31m:=[m Add_Line
	   [31m([mWork_Window[31m.[mPlugins_Model[31m,[m [31m""[m[31m,[m Plugin_Num[31m'image (Plugin_Id), Plugin_Enum'[m[01;30mImage[m[31m([mPlugin_Enum'First[31m),[m
	    Editable [31m=>[m True[31m,[m Muttable [31m=>[m False[31m,[m Active [31m=>[m False[31m,[m Parent [31m=>[m parent[31m);[m
	 [01;34mend[m [01;34mif[m[31m;[m
      [01;34mend[m [01;34mloop[m[31m;[m


   [01;34mend[m Load_Plugins[31m;[m

   [31m--[m
   [31m---------------------------------------------------[m
   
   [01;34mprocedure[m [01;30mLoad_Window[m [31m([mWork_Window [31m:[m Gtk_Gmface_Work_Window_Access[31m;[m
			  Gtk_Int     [31m:[m [01;34min[m Gtk_Interface_Pointer[31m)[m [01;34mis[m
                  
   [01;34mbegin[m
      [01;34mnull[m[31m;[m
      
      [31m--Put_Line("TOTO 1.10");[m
      [01;30mLoad_Master[m [31m([mWork_Window[31m,[m [01;30mGmface_Work_Record[m[31m([mWork_Window[31m.[mWork[31m.[m[01;34mall[m[31m).[mOptions[31m.[m[01;34mall[m[31m);[m
      [31m--Put_Line("TOTO 1.12");[m
      [01;30mLoad_Devices[m [31m([mWork_Window[31m,[m
		    Gtk_Int[31m.[mbandmaster[31m);[m
      [31m--Put_Line("TOTO 1.13");[m
      [01;30mLoad_Plugins[m [31m([mWork_Window[31m.[m[01;34mall[m'Unrestricted_access[31m,[m Work_Window[31m.[mWork[31m.[mPlugins[31m);[m
      [31m--Put_Line("TOTO 1.14");[m
      [01;30mLoad_Flow[m [31m([mWork_Window[31m);[m
      [31m--Put_Line("TOTO 1.15");[m
      [01;30mLoad_State[m [31m([mWork_Window[31m);[m
      [31m--Put_Line("TOTO 1.17");[m
   [01;34mend[m Load_Window[31m;[m
   
   
   [31m-------------------------------------------------------------------[m
   [31m--                Devices callbacks                              --[m
   [31m-------------------------------------------------------------------[m
   [31m--------------[m
   [31m-- Add_Line --[m
   [31m--------------[m

   [01;34mfunction[m Add_Line
     [31m([mModel    [31m:[m [01;34maccess[m Gtk_Tree_Store_Record'Class[31m;[m
      names    [31m:[m [32mString[m[31m;[m
      Ids      [31m:[m [32mstring[m[31m;[m
      Types    [31m:[m [32mString[m[31m;[m
      Editable [31m:[m [32mBoolean[m [31m:=[m False[31m;[m
      Muttable  [31m:[m [32mBoolean[m [31m:=[m False[31m;[m
      Active   [31m:[m [32mBoolean[m [31m:=[m False[31m;[m
      Parent   [31m:[m Gtk_Tree_Iter [31m:=[m Null_Iter[31m)[m [01;34mreturn[m Gtk_Tree_Iter
   [01;34mis[m
      Iter [31m:[m Gtk_Tree_Iter[31m;[m
   [01;34mbegin[m

      [01;30mAppend[m [31m([mModel[31m,[m Iter[31m,[m Parent[31m);[m

      [01;30mSet[m [31m([mModel[31m,[m Iter[31m,[m Text_Column[31m,[m Names[31m);[m

      [01;30mSet[m [31m([mModel[31m,[m Iter[31m,[m Id_Column[31m,[m ids[31m);[m
      
      [01;30mSet[m [31m([mModel[31m,[m Iter[31m,[m Type_Column[31m,[m Types[31m);[m

      [01;30mSet[m [31m([mModel[31m,[m Iter[31m,[m Active_Column[31m,[m False[31m);[m

      [01;30mSet[m [31m([mModel[31m,[m Iter[31m,[m Editable_Column[31m,[m Editable[31m);[m

      [01;30mSet[m [31m([mModel[31m,[m Iter[31m,[m Printable_Column[31m,[m Active[31m);[m

      [01;30mSet[m [31m([mModel[31m,[m Iter[31m,[m Muttable_Column[31m,[m Muttable[31m);[m

      [01;30mSet[m [31m([mModel[31m,[m Iter[31m,[m Foreground_Column[31m,[m [31m"black"[m[31m);[m

      [01;34mreturn[m Iter[31m;[m
   [01;34mend[m Add_Line[31m;[m
   
   
   

   [01;34mprocedure[m Text_Edited_Callback
     [31m([mModel  [31m:[m [01;34maccess[m GObject_Record'Class[31m;[m
      Params [31m:[m Glib[31m.[mValues[31m.[mGValues[31m;[m
      User_Data [31m:[m Gtk_Gmface_Work_Window_Record
     [31m)[m

   [01;34mis[m
      M           [31m:[m [01;34mconstant[m Gtk_Tree_Store [31m:=[m [01;30mGtk_Tree_Store[m [31m([mModel[31m);[m
      Path_String [31m:[m [01;34mconstant[m [32mString[m [31m:=[m [01;30mGet_String[m [31m([m[01;30mNth[m [31m([mParams[31m,[m [35m1[m[31m));[m
      Text_Value  [31m:[m [01;34mconstant[m GValue [31m:=[m [01;30mNth[m [31m([mParams[31m,[m [35m2[m[31m);[m
      Iter        [31m:[m [01;34mconstant[m Gtk_Tree_Iter [31m:=[m
	[01;30mGet_Iter_From_String[m [31m([mM[31m,[m Path_String[31m);[m
      [01;34mpragma[m [01;30mUnreferenced[m [31m([mUser_Data[31m);[m
   [01;34mbegin[m
      [01;30mSet_Value[m [31m([mM[31m,[m Iter[31m,[m Text_Column[31m,[m Text_Value[31m);[m
   [01;34mend[m Text_Edited_Callback[31m;[m
   
   
   [31m------------------------------------------------------------------[m
   [31m-- End Gmface application                                       --[m
   [31m------------------------------------------------------------------[m
   
   
   
   [31m------------------------------------------------------------------[m
   [31m--                Initialize Gmidi work Window                  --[m
   [31m------------------------------------------------------------------[m
   
   
   
   
   [01;34mfunction[m [01;30mGmidi_Initialize[m[31m([mWork          [31m:[m [01;34min[m Work_Access[31m;[m
			     Work_Id       [31m:[m [01;34min[m Work_Num[31m;[m
			     Process       [31m:[m [01;34min[m Work_Processing_Access[31m;[m
			     Gtk_Interface [31m:[m [01;34min[m Gtk_Interface_Pointer[31m)[m 
		      [01;34mreturn[m Gtk_Work_Window_Pointer [01;34mis[m
      
      Work_Window [31m:[m [01;34mconstant[m Gtk_Work_Window_Pointer [31m:=[m [01;34mnew[m [01;30mGtk_Gmidi_Work_Window_Record[m[31m([mWork_Id[31m);[m
      
      Error [31m:[m [01;34maliased[m Gerror[31m;[m
   [01;34mbegin[m                        
      
      
      Application_Window[31m.[m[01;30mGtk_New[m[31m([mWork_Window[31m.[mWindow[31m,[m Gtk_Interface[31m.[mApplication[31m);[m
      Application_Window[31m.[m[01;30mSet_Default_Size[m[31m([mWork_Window[31m.[mWindow[31m,[m [35m1024[m[31m,[m [35m768[m[31m);[m
      Application_Window[31m.[m[01;30mSet_Title[m[31m([mWork_Window[31m.[mWindow[31m,[m [31m"Gmidi [  ]"[m[31m);[m
      Application_Window[31m.[m[01;30mSet_Position[m[31m([mWork_window[31m.[mWindow[31m,[m Win_Pos_Center_always[31m);[m
      
      
      
      [31m---------------------------------------------------[m
      [31m--             Main menu application             --[m
      [31m---------------------------------------------------[m
      [01;30mGtk_New[m [31m([mWork_Window[31m.[mApp_Action_Group[31m,[m [31m"Actions"[m[31m);[m
      [01;30mAdd_Actions[m [31m([mWork_Window[31m.[mApp_Action_Group[31m,[m App_Main_Entries[31m,[m
		   Gtk_Interface_Conversions[31m.[m[01;30mTo_Address[m [31m([mGtk_Interface[31m));[m
      
      [01;30mGtk_New[m [31m([mWork_Window[31m.[mApp_UI[31m);[m
      
      [01;30mInsert_Action_Group[m [31m([mWork_Window[31m.[mApp_UI[31m,[m Work_Window[31m.[mApp_Action_Group[31m,[m [35m0[m[31m);[m

      Add_Accel_Group
	[31m([mWork_Window[31m.[mWindow[31m,[m [01;30mGet_Accel_Group[m [31m([mWork_Window[31m.[mApp_UI[31m));[m

      [01;34mif[m Add_UI_From_String
      	[31m([mWork_Window[31m.[mApp_UI[31m,[m App_Main_UI_Info[31m,[m Error'Unchecked_Access[31m)[m [31m=[m [35m0[m [01;34mthen[m
      	 Put_Line
      	   [31m([m[31m"Building menus failed: "[m [31m&[m [01;30mGet_Message[m [31m([mError[31m));[m
      	 [01;30mError_Free[m [31m([mError[31m);[m
      [01;34mend[m [01;34mif[m[31m;[m            
      [01;30mGtk_New_Hbox[m[31m([mWork_Window[31m.[mMenus_Hbox[31m,[m False[31m,[m [35m0[m[31m);[m
      
      Gtk[31m.[mBox[31m.[mPack_Start
	[31m([mWork_Window[31m.[mMenus_Hbox[31m,[m
	 [01;30mGet_Widget[m [31m([mWork_Window[31m.[mApp_UI[31m,[m [31m"/MenuBar"[m[31m),[m
	 Expand [31m=>[m False[31m,[m Padding [31m=>[m [35m0[m[31m);[m
      
      [01;30mGtk_New_Vbox[m[31m([mWork_Window[31m.[mMain_Vbox[31m,[m False[31m,[m [35m0[m[31m);[m
      
      [01;30mPack_Start[m[31m([mWork_Window[31m.[mMain_Vbox[31m,[m Work_Window[31m.[mMenus_Hbox[31m,[m false[31m);[m
      
      [01;30mAdd[m [31m([mWork_Window[31m.[mWindow[31m,[m Work_Window[31m.[mMain_Vbox[31m);[m
      
      Application_Window[31m.[m[01;30mShow_All[m[31m([mWork_window[31m.[mWindow[31m);[m
      
      [01;34mreturn[m Work_Window[31m;[m
   [01;34mend[m Gmidi_Initialize[31m;[m
   
   
   [01;34mfunction[m [01;30mSelf[m [31m([mMain [31m:[m [01;34min[m Gtk_Interface_Pointer[31m)[m [01;34mreturn[m [32mBoolean[m[31m;[m
   
   [01;34mfunction[m [01;30mCmd_Line[m [31m([mApp [31m:[m [01;34maccess[m GtkAda_Application_Record'Class[31m;[m
		      Gtk_Int [31m:[m Gtk_Interface_Pointer[31m)[m
		     [01;34mreturn[m [32mBoolean[m [01;34mis[m
      
      Source [31m:[m [01;34mconstant[m Main_Sources[31m.[mG_Source_Func [31m:=[m Self'[01;34mAccess[m[31m;[m
   [01;34mbegin[m
      Window[31m.[m[01;30mGtk_New[m[31m([mGtk_Int[31m.[mWindow[31m);[m
      [31m--Put_Line("Tata 0.0");[m
      Window[31m.[m[01;30mSet_Default_Size[m[31m([mGtk_Int[31m.[mWindow[31m,[m [35m250[m[31m,[m [35m125[m[31m);[m      
      Window[31m.[m[01;30mSet_Title[m[31m([mGtk_int[31m.[mWindow[31m,[m GApplication_Id[31m);[m      
      Window[31m.[m[01;30mShow_All[m[31m([mGtk_Int[31m.[mWindow[31m);[m
      [01;30mHide[m[31m([mGtk_Int[31m.[mWindow[31m);[m
      [31m-----------------------------------------------------------[m
      [31m--Put_Line("Tata 0.1");[m
      
      [01;34mfor[m Work [01;34min[m Gtk_Int[31m.[mWorks'[01;34mRange[m [01;34mloop[m
	 [01;34mif[m Gtk_Int[31m.[m[01;30mWorks[m[31m([mWork[31m)[m [31m/=[m [01;34mnull[m [01;34mthen[m
	    [01;34mcase[m Gtk_Int[31m.[m[01;30mWorks[m[31m([mWork[31m).[mClass [01;34mis[m
	       [01;34mwhen[m Gmface_Work [31m=>[m
		  Gtk_Int[31m.[m[01;30mWorks_Processes[m[31m([mWork[31m)[m [31m:=[m [01;34mnew[m Gmface_Work_Processing[31m;[m		  
		  Gtk_Int[31m.[m[01;30mWorks_Processes[m[31m([mWork[31m).[m[01;30mInitialize[m[31m([mGtk_Int[31m.[m[01;30mWorks[m[31m([mWork[31m),[m
		  					   Gtk_Int[31m.[mBandmaster'[01;34maccess[m[31m);[m
		  
		  Gtk_Int[31m.[m[01;30mGtk_Works_Windows[m[31m([mWork[31m)[m [31m:=[m
		    [01;30mGmface_Initialize[m[31m([mGtk_Int[31m.[m[01;30mWorks[m[31m([mWork[31m),[m
				      Work[31m,[m 
				      Gtk_Int[31m.[m[01;30mWorks_Processes[m[31m([mWork[31m),[m
				      Gtk_Int[31m);[m
		  		  
		  [01;30mAdd_Window[m[31m([mApp[31m,[m Gtk_Int[31m.[m[01;30mGtk_Works_Windows[m[31m([mWork[31m).[mWindow[31m);[m
		  
		  Gtk_Int[31m.[mWork_Last [31m:=[m Gtk_Int[31m.[mWork_Last [31m+[m [35m1[m[31m;[m
	       [01;34mwhen[m [01;34mothers[m [31m=>[m
		  [01;34mnull[m[31m;[m
	    [01;34mend[m [01;34mcase[m[31m;[m
	 [01;34mend[m [01;34mif[m[31m;[m
      [01;34mend[m [01;34mloop[m[31m;[m
      [31m--Put_Line("Tata 0.2");[m
      
      
      [01;34mif[m Gtk_Int[31m.[mAuto_Play [01;34mthen[m
	 Gtk_Int[31m.[mMain_Automation [31m:=[m Main_Sources[31m.[m[01;30mTimeout_Add[m [31m([mInterval [31m=>[m [35m1500[m[31m,[m
							      Data     [31m=>[m Gtk_Int[31m,[m
							      Func     [31m=>[m Source[31m);[m
      [01;34mend[m [01;34mif[m[31m;[m
      [31m-----------------------------------------------------------[m
      
      
      [01;30mPut_Line[m[31m([m[31m"Gtk application created."[m[31m);[m
      [01;34mreturn[m True[31m;[m
   [01;34mend[m Cmd_Line[31m;[m
   
   [31m--  package App_User_Callback is[m
   [31m--     new Handlers.User_Callback[m
   [31m--    (GtkAda_Application_Record,[m
   [31m--     Gtk_Interface_Pointer);[m
   
   
   [01;34mpackage[m App_User_Return_Callback [01;34mis[m
      [01;34mnew[m Handlers[31m.[mUser_Return_Callback
     [31m([mGtkAda_Application_Record[31m,[m [32mBoolean[m[31m,[m
      Gtk_Interface_Pointer[31m);[m
   
   
   [31m------------------------------------------------------------------[m
   [31m--                     Initialize Application                   --[m
   [31m------------------------------------------------------------------[m
   [01;34mprocedure[m [01;30mGtk_New[m[31m([mGtk_Int   [31m:[m [01;34mout[m Gtk_Interface_Pointer[31m;[m
		     Works     [31m:[m [01;34maccess[m Work_Array[31m;[m
		     Auto_Play [31m:[m [01;34min[m [32mBoolean[m[31m;[m
		     In_Loop   [31m:[m [01;34min[m [32mboolean[m[31m)[m [01;34mis[m
      
      State [31m:[m Gint[31m;[m
      Argc [31m:[m [01;34mconstant[m Gint [31m:=[m [35m0[m[31m;[m
      Argv [31m:[m GNAT[31m.[mStrings[31m.[m[01;30mString_List[m[31m([m[35m1[m[31m..[m[35m0[m[31m);[m
   [01;34mbegin[m
      [31m--Put_Line("Tonton 0.0");[m
      Gtk_Int [31m:=[m [01;34mnew[m Gtk_Interface_Record[31m;[m
      
      Gtk_Int[31m.[mAuto_Play [31m:=[m Auto_Play[31m;[m
      Gtk_Int[31m.[mIn_Loop [31m:=[m In_Loop[31m;[m
      
      
      Gtk_Int[31m.[mGm_Application [31m:=[m [01;34mnew[m Gm_Interface_Record[31m;[m
      Gtk_Int[31m.[mWorks [31m:=[m Works[31m.[m[01;34mall[m[31m;[m
      [31m--Put_Line("Tonton 0.0");[m
      Gtk_Int[31m.[mBandmaster[31m.[mInitialize[31m;[m
      [31m--Put_Line("Tonton 0.0");[m
      Gtk_Int[31m.[mApplication [31m:=[m 
	Gtkada[31m.[mApplication[31m.[mGtk_Application_New
	[31m([m
	 [01;30mLocale_To_Utf8[m[31m([mGApplication_Id[31m),[m         
	 G_Application_Handles_Command_Line[31m,[m
	 Gtkada_Application_Handles_Open
	[31m);[m      
      App_User_Return_Callback[31m.[mConnect
        [31m([mGtk_Int[31m.[mApplication[31m,[m [31m"command-line"[m[31m,[m
	 App_User_Return_Callback[31m.[m[01;30mTo_Marshaller[m[31m([mCmd_line'[01;34mAccess[m[31m),[m
	 Gtk_Int[31m);[m
      State [31m:=[m [01;30mRun[m[31m([mGtk_Int[31m.[mApplication[31m,[m Argc[31m,[m Argv[31m);[m      
   [01;34mend[m Gtk_New[31m;[m
   
   
   Initialized [31m:[m [32mBoolean[m [31m:=[m False[31m;[m

   [01;34mfunction[m [01;30mSelf[m [31m([mMain [31m:[m [01;34min[m Gtk_Interface_Pointer[31m)[m [01;34mreturn[m [32mBoolean[m [01;34mis[m
      Running [31m:[m [32mBoolean[m [31m:=[m False[31m;[m
      Focus [31m:[m [32mBoolean[m [31m:=[m False[31m;[m
   [01;34mbegin[m            
      
      [01;34mfor[m I [01;34min[m Main[31m.[mGtk_Works_Windows'[01;34mrange[m [01;34mloop[m
	 [01;34mif[m [01;34mnot[m [31m([mMain[31m.[m[01;30mGtk_Works_Windows[m[31m([mI[31m)[m [31m/=[m [01;34mnull[m[31m)[m [01;34mand[m [01;34mthen[m
	   [01;30mGtk_Gmface_Work_Window_Record[m[31m([mMain[31m.[m[01;30mGtk_Works_Windows[m[31m([mI[31m).[m[01;34mall[m[31m).[mWork[31m.[mStarted [01;34mthen[m
	    Running [31m:=[m True[31m;[m
	 [01;34mend[m [01;34mif[m[31m;[m
      [01;34mend[m [01;34mloop[m[31m;[m
      [01;34mif[m Main[31m.[mAuto_Play [01;34mthen[m

	 [01;34mif[m [01;34mnot[m running [01;34mthen[m
	    Running [31m:=[m True[31m;[m
	    [01;34mif[m [01;34mnot[m initialized [01;34mthen[m
	       [01;30mPut_Line[m[31m([m[31m"auto stop last"[m[31m);[m
	       [01;30mstop[m[31m([m[01;34mnull[m[31m,[m [01;30mGtk_Gmface_Work_Window_Record[m[31m([mMain[31m.[m[01;30mGtk_Works_Windows[m[31m([mMain[31m.[mWork_Last[31m).[m[01;34mall[m[31m)[m'[01;34maccess[m[31m);[m
	       [01;30mGtk_Gmface_Work_Window_Record[m[31m([mMain[31m.[m[01;30mGtk_Works_Windows[m[31m([mMain[31m.[mWork_Last[31m).[m[01;34mall[m[31m).[mWork[31m.[mStarted [31m:=[m False[31m;[m
	       [01;30mPut_Line[m[31m([m[31m"auto start"[m[31m);[m
	       [01;30mPlay[m[31m([m[01;34mnull[m[31m,[m [01;30mGtk_Gmface_Work_Window_Record[m[31m([mMain[31m.[m[01;30mGtk_Works_Windows[m[31m([mMain[31m.[mCur_Win[31m).[m[01;34mall[m[31m)[m'[01;34maccess[m[31m);[m
	       [01;30mGtk_Gmface_Work_Window_Record[m[31m([mMain[31m.[m[01;30mGtk_Works_Windows[m[31m([mMain[31m.[mCur_Win[31m).[m[01;34mall[m[31m).[mWork[31m.[mStarted [31m:=[m True[31m;[m
	       [01;30mPut_Line[m[31m([m[31m"auto start done."[m[31m);[m
	       [01;30mpresent[m[31m([mMain[31m.[m[01;30mGtk_Works_Windows[m[31m([mMain[31m.[mCur_Win[31m).[mWindow[31m);[m
	       Initialized [31m:=[m True[31m;[m

	    [01;34melse[m


	       [01;30mPut_Line[m[31m([m[31m"auto stop cur"[m[31m);[m
	       [01;30mstop[m[31m([m[01;34mnull[m[31m,[m [01;30mGtk_Gmface_Work_Window_Record[m[31m([mMain[31m.[m[01;30mGtk_Works_Windows[m[31m([mMain[31m.[mCur_Win[31m).[m[01;34mall[m[31m)[m'[01;34maccess[m[31m);[m
	       [01;30mGtk_Gmface_Work_Window_Record[m[31m([mMain[31m.[m[01;30mGtk_Works_Windows[m[31m([mMain[31m.[mCur_Win[31m).[m[01;34mall[m[31m).[mWork[31m.[mStarted [31m:=[m False[31m;[m
	       Main[31m.[mCur_Win [31m:=[m Main[31m.[mCur_Win [31m+[m [35m1[m[31m;[m
	       [01;34mif[m [01;30mNatural[m[31m([mMain[31m.[mCur_Win[31m)[m [31m>[m Main[31m.[mWork_Last [01;34mthen[m
		  Main[31m.[mCur_Win [31m:=[m [35m1[m[31m;[m
		  Running [31m:=[m Main[31m.[mIn_Loop[31m;[m
		  Initialized [31m:=[m False[31m;[m
	       [01;34mend[m [01;34mif[m[31m;[m
	       [01;30mPut_Line[m[31m([m[31m"Last : "[m [31m&[m Work_Num'[01;30mImage[m[31m([mMain[31m.[mWork_Last[31m));[m
	       [01;30mPut_Line[m[31m([m[31m"Cur  : "[m [31m&[m Work_Num'[01;30mImage[m[31m([mMain[31m.[mCur_Win[31m));[m

	       [01;30mPut_Line[m[31m([m[31m"auto start"[m[31m);[m
	       [01;30mPlay[m[31m([m[01;34mnull[m[31m,[m [01;30mGtk_Gmface_Work_Window_Record[m[31m([mMain[31m.[m[01;30mGtk_Works_Windows[m[31m([mMain[31m.[mCur_Win[31m).[m[01;34mall[m[31m)[m'[01;34maccess[m[31m);[m
	       [01;30mGtk_Gmface_Work_Window_Record[m[31m([mMain[31m.[m[01;30mGtk_Works_Windows[m[31m([mMain[31m.[mCur_Win[31m).[m[01;34mall[m[31m).[mWork[31m.[mStarted [31m:=[m True[31m;[m
	       [01;30mpresent[m[31m([mMain[31m.[m[01;30mGtk_Works_Windows[m[31m([mMain[31m.[mCur_Win[31m).[mWindow[31m);[m
	       [01;30mPut_Line[m[31m([m[31m"auto start done."[m[31m);[m
	    [01;34mend[m [01;34mif[m[31m;[m

	 [01;34mend[m [01;34mif[m[31m;[m
      [01;34mend[m [01;34mif[m[31m;[m

      [01;34mreturn[m running[31m;[m
   [01;34mend[m Self[31m;[m
         
   [01;34mprocedure[m [01;30mReLoad_Window[m [31m([mWork_Window [31m:[m [01;34min[m Gtk_Gmface_Work_Window_Access[31m)[m [01;34mis[m

   [01;34mbegin[m
      
      
      [01;30mLoad_Master[m [31m([mWork_Window[31m,[m [01;30mGmface_Work_Record[m[31m([mWork_Window[31m.[mWork[31m.[m[01;34mall[m[31m).[mOptions[31m.[m[01;34mall[m[31m);[m
      [31m--Put_Line("TOTO 1.12");[m
      [31m--Put_Line("TOTO 1.13");[m
      [01;30mLoad_Plugins[m [31m([mWork_Window[31m.[m[01;34mall[m'Unrestricted_access[31m,[m Work_Window[31m.[mWork[31m.[mPlugins[31m);[m
      [31m--Put_Line("TOTO 1.14");[m
      [01;30mLoad_Flow[m [31m([mWork_Window[31m);[m
      [31m--Put_Line("TOTO 1.15");[m
      [01;30mLoad_State[m [31m([mWork_Window[31m);[m
      [31m--Put_Line("TOTO 1.17");            [m
   [01;34mend[m ReLoad_Window[31m;[m
   
   [01;34mprocedure[m [01;30mOpen_Action[m [31m([mAction[31m,[m Main_Window [31m:[m [01;34min[m System[31m.[mAddress[31m)[m [01;34mis[m
      
      [01;34mpragma[m [01;30mUnreferenced[m[31m([mAction[31m);[m
      
      
      App [31m:[m [01;34mconstant[m Gtk_Interface_Pointer [31m:=[m
	Gtk_Interface_Conversions[31m.[m[01;30mTo_Pointer[m[31m([mMain_Window[31m);[m
      
      
      Name [31m:[m String_access[31m;[m

      Widget [31m:[m Gtk_Widget[31m;[m
   [01;34mbegin[m
      [01;34mnull[m[31m;[m
      	 
      Name [31m:=[m [01;34mnew[m [32mstring[m ' [31m([mGtkAda[31m.[mFile_Selection[31m.[mFile_Selection_dialog
			      [31m([m[31m"Open file"[m[31m,[m
			       [31m""[m[31m,[m
			       Dir_Only [31m=>[m False[31m,[m
			       Must_Exist [31m=>[m True[31m));[m

      [01;34mif[m Name'Length [31m/=[m [35m0[m [01;34mthen[m
	 
   	 [01;30mDestroy[m[31m([m[01;30mGet_Child[m[31m([m[01;30mGtk_Gmface_Work_Window_Record[m[31m([mApp[31m.[m[01;30mGtk_Works_Windows[m[31m([mApp[31m.[mCur_Win[31m).[m[01;34mall[m[31m).[mMaster_Frame[31m));[m
   	 [01;30mDestroy[m[31m([m[01;30mGet_Child[m[31m([m[01;30mGtk_Gmface_Work_Window_Record[m[31m([mApp[31m.[m[01;30mGtk_Works_Windows[m[31m([mApp[31m.[mCur_Win[31m).[m[01;34mall[m[31m).[mFlow_Frame[31m));[m
	 
   	 [01;30mDestroy[m[31m([m[01;30mGet_Child[m[31m([m[01;30mGtk_Gmface_Work_Window_Record[m[31m([mApp[31m.[m[01;30mGtk_Works_Windows[m[31m([mApp[31m.[mCur_Win[31m).[m[01;34mall[m[31m).[mPlugins_Frame[31m));[m
   	 [01;30mDestroy[m[31m([m[01;30mGet_Child[m[31m([m[01;30mGtk_Gmface_Work_Window_Record[m[31m([mApp[31m.[m[01;30mGtk_Works_Windows[m[31m([mApp[31m.[mCur_Win[31m).[m[01;34mall[m[31m).[mState_Frame[31m));[m
	 
	 
	 
	 [31m--[m
	 [01;30mGtk_Gmface_Work_Window_Record[m[31m([mApp[31m.[m[01;30mGtk_Works_Windows[m[31m([mApp[31m.[mCur_Win[31m).[m[01;34mall[m[31m).[mWork[31m.[mFilename [31m:=[m [01;34mnew[m [32mString[m ' [31m([mName[31m.[m[01;34mall[m[31m);[m
	 [01;30mGmface_Work_Record[m[31m([m[01;30mGtk_Gmface_Work_Window_Record[m[31m([mApp[31m.[m[01;30mGtk_Works_Windows[m[31m([mApp[31m.[mCur_Win[31m).[m[01;34mall[m[31m).[mWork[31m.[m[01;34mall[m[31m).[mInitialize
	   [31m([m[01;30mGtk_Gmface_Work_Window_Record[m[31m([mApp[31m.[m[01;30mGtk_Works_Windows[m[31m([mApp[31m.[mCur_Win[31m).[m[01;34mall[m[31m).[mWork[31m.[mId[31m,[m
	    Name[31m.[m[01;34mall[m[31m);[m

	 App[31m.[m[01;30mWorks[m[31m([m[01;30mGtk_Gmface_Work_Window_Record[m[31m([mApp[31m.[m[01;30mGtk_Works_Windows[m[31m([mApp[31m.[mCur_Win[31m).[m[01;34mall[m[31m).[mWork[31m.[mid[31m)[m [31m:=[m [01;30mGtk_Gmface_Work_Window_Record[m[31m([mApp[31m.[m[01;30mGtk_Works_Windows[m[31m([mApp[31m.[mCur_Win[31m).[m[01;34mall[m[31m).[mWork[31m;[m
	 
	 App[31m.[m[01;30mWorks_Processes[m[31m([m[01;30mGtk_Gmface_Work_Window_Record[m[31m([mApp[31m.[m[01;30mGtk_Works_Windows[m[31m([mApp[31m.[mCur_Win[31m).[m[01;34mall[m[31m).[mWork[31m.[mid[31m).[m[01;30mInitialize[m[31m([mApp[31m.[m[01;30mWorks[m[31m([m[01;30mGtk_Gmface_Work_Window_Record[m[31m([mApp[31m.[m[01;30mGtk_Works_Windows[m[31m([mApp[31m.[mCur_Win[31m).[m[01;34mall[m[31m).[mWork[31m.[mid[31m),[m App[31m.[mbandmaster'[01;34maccess[m[31m);[m  
	 [01;30mPut_Line[m[31m([m[31m"Open Action :: copy process..."[m[31m);[m
	 App[31m.[m[01;30mGtk_Works_Windows[m[31m([mApp[31m.[mCur_Win[31m).[mProcess [31m:=[m App[31m.[m[01;30mWorks_Processes[m[31m([m[01;30mGtk_Gmface_Work_Window_Record[m[31m([mApp[31m.[m[01;30mGtk_Works_Windows[m[31m([mApp[31m.[mCur_Win[31m).[m[01;34mall[m[31m).[mWork[31m.[mid[31m);[m
	 [01;30mPut_Line[m[31m([m[31m"Open Action :: initialize process..."[m[31m);[m
	 [01;30mGmface_Work_Processing[m[31m([m[01;30mGtk_Gmface_Work_Window_Record[m[31m([mApp[31m.[m[01;30mGtk_Works_Windows[m[31m([mApp[31m.[mCur_Win[31m).[m[01;34mall[m[31m).[mProcess[31m.[m[01;34mall[m[31m).[mProcess[31m.[mInitialize[31m;[m
	 [31m--[m
	 
	 [01;30mReLoad_Window[m[31m([m[01;30mGtk_Gmface_Work_Window_Record[m[31m([mApp[31m.[m[01;30mGtk_Works_Windows[m[31m([mApp[31m.[mCur_Win[31m).[m[01;34mall[m[31m)[m'[01;34maccess[m[31m);[m
	 [01;30mShow_All[m[31m([m[01;30mGtk_Gmface_Work_Window_Record[m[31m([mApp[31m.[m[01;30mGtk_Works_Windows[m[31m([mApp[31m.[mCur_Win[31m).[m[01;34mall[m[31m).[mWindow[31m);[m

	 
	 
	 [01;30mSet_Title[m [31m([m[01;30mGtk_Gmface_Work_Window_Record[m[31m([mApp[31m.[m[01;30mGtk_Works_Windows[m[31m([mApp[31m.[mCur_Win[31m).[m[01;34mall[m[31m).[mWindow[31m,[m
		    [31m"Ultrason ["[m [31m&[m Name[31m.[m[01;34mall[m [31m&[m [31m']'[m[31m);[m
	 
	 [01;30mFree[m[31m([mname[31m);[m
	 
      [01;34mend[m [01;34mif[m[31m;[m
   [01;34mend[m Open_Action[31m;[m
      
   
   [01;34mprocedure[m [01;30mClose_Action[m [31m([mAction[31m,[m Application [31m:[m [01;34min[m System[31m.[mAddress[31m)[m [01;34mis[m
      [01;34mpragma[m [01;30mUnreferenced[m[31m([mAction[31m);[m
      App [31m:[m [01;34mconstant[m Gtk_Interface_Pointer [31m:=[m
	Gtk_Interface_Conversions[31m.[m[01;30mTo_Pointer[m[31m([mApplication[31m);[m
      
      Main_Window [31m:[m Gtk_Work_Window_Pointer [31m:=[m
	App[31m.[m[01;30mGtk_Works_Windows[m[31m([mApp[31m.[mCur_Window[31m);[m
      
      
      Status [31m:[m [32mBoolean[m[31m;[m
      
   [01;34mbegin[m
      Status [31m:=[m [01;30mClose_Window[m[31m([mMain_Window[31m.[mWindow[31m,[m App[31m);[m      
   [01;34mend[m Close_Action[31m;[m
   
   [01;34mprocedure[m [01;30mNew_Action[m [31m([mAction[31m,[m Application [31m:[m [01;34min[m System[31m.[mAddress[31m)[m [01;34mis[m
      [01;34mpragma[m [01;30mUnreferenced[m[31m([mAction[31m);[m
      App [31m:[m [01;34mconstant[m Gtk_Interface_Pointer [31m:=[m
	Gtk_Interface_Conversions[31m.[m[01;30mTo_Pointer[m[31m([mApplication[31m);[m
      
      Name [31m:[m [01;34mconstant[m String_Access [31m:=[m [01;34mnew[m [32mString[m ' [31m([m[31m""[m[31m);[m
      
   [01;34mbegin[m

      [01;34mfor[m Id [01;34min[m App[31m.[mGtk_Works_Windows'[01;34mRange[m [01;34mloop[m
	 [01;34mif[m App[31m.[m[01;30mWorks[m[31m([mId[31m)[m [31m=[m [01;34mnull[m [01;34mand[m [01;34mthen[m
	   App[31m.[m[01;30mGtk_Works_Windows[m[31m([mId[31m)[m [31m=[m [01;34mnull[m [01;34mthen[m
	    [31m--Put_Line("new 0.0.0");[m
	    App[31m.[m[01;30mWorks[m[31m([mId[31m)[m [31m:=[m [01;34mnew[m Gmface_Work_Record[31m;[m
	    [31m--Put_Line("new 0.0.1");[m
	    [01;30mGmface_Work_Record[m[31m([mApp[31m.[m[01;30mWorks[m[31m([mId[31m).[m[01;34mall[m[31m).[m[01;30mInitialize[m[31m([mId[31m,[m Name[31m.[m[01;34mall[m[31m);[m
	    [31m--Put_Line("new 0.0.2");[m
	    App[31m.[m[01;30mWorks_Processes[m[31m([mId[31m)[m [31m:=[m [01;34mnew[m Gmface_Work_Processing[31m;[m
	    [31m--Put_Line("new 0.0.3");[m
	    
	    App[31m.[m[01;30mWorks_Processes[m[31m([mId[31m).[m[01;30mInitialize[m[31m([mApp[31m.[m[01;30mWorks[m[31m([mId[31m),[m
					       App[31m.[mBandmaster'[01;34maccess[m[31m);[m
	    App[31m.[m[01;30mGtk_Works_Windows[m[31m([mId[31m)[m [31m:=[m [01;30mGmface_Initialize[m[31m([mApp[31m.[m[01;30mWorks[m[31m([mId[31m),[m Id[31m,[m App[31m.[m[01;30mWorks_Processes[m[31m([mId[31m),[m App[31m);[m
	    	    
	    [01;30mAdd_Window[m[31m([mApp[31m.[mApplication[31m,[m App[31m.[m[01;30mGtk_Works_Windows[m[31m([mId[31m).[mWindow[31m);[m
	    [31m--Put_Line("new 0.0.4");[m
	    App[31m.[mWork_Last [31m:=[m App[31m.[mWork_Last [31m+[m [35m1[m[31m;[m	    
	   [01;34mexit[m[31m;[m
      
	 [01;34mend[m [01;34mif[m[31m;[m
      [01;34mend[m [01;34mloop[m[31m;[m
   [01;34mend[m New_Action[31m;[m
   
   [01;34mprocedure[m [01;30mSave_Action[m [31m([mAction[31m,[m Main_Window [31m:[m [01;34min[m System[31m.[mAddress[31m)[m [01;34mis[m
      
      [01;34mpragma[m [01;30mUnreferenced[m[31m([mAction[31m);[m
      
      
      Dialog [31m:[m Gtk_File_Chooser_Dialog[31m;[m
      
      Name [31m:[m String_access[31m;[m
      
      Widget [31m:[m Gtk_Widget[31m;[m
      
      Gmface_Window [31m:[m [01;34mconstant[m Gtk_Gmface_Work_Window_access [31m:=[m 
	Gmface_Work_Window_Conversions[31m.[m[01;30mTo_Pointer[m[31m([mMain_Window[31m).[m[01;34mall[m'[01;34maccess[m[31m;[m
      
   [01;34mbegin[m
      
      Gtk[31m.[mFile_Chooser_Dialog[31m.[m[01;30mGtk_New[m[31m([mDialog [31m=>[m Dialog[31m,[m Title [31m=>[m [31m"Save file to"[m[31m,[m
				      Parent [31m=>[m Gmface_Window[31m.[mWindow[31m,[m
				      Action [31m=>[m Action_Save
				      [31m);[m
      
      Gtk[31m.[mFile_Chooser_Dialog[31m.[m[01;30mSet_Current_Name[m[31m([mDialog[31m,[m Gmface_Window[31m.[mWork[31m.[mFilename[31m.[m[01;34mall[m[31m);[m
      
      widget [31m:=[m Gtk[31m.[mDialog[31m.[m[01;30mAdd_button[m[31m([m[01;30mGtk_Dialog[m[31m([mDialog[31m),[m [31m"Ok"[m[31m,[m Gtk[31m.[mDialog[31m.[mGtk_Response_Ok[31m);[m
      widget [31m:=[m Gtk[31m.[mDialog[31m.[m[01;30mAdd_button[m[31m([m[01;30mGtk_Dialog[m[31m([mDialog[31m),[m [31m"Cancel"[m[31m,[m Gtk[31m.[mDialog[31m.[mGtk_Response_Cancel[31m);[m
      
      [01;34mcase[m [01;30mRun[m[31m([mDialog[31m)[m [01;34mis[m
	 [01;34mwhen[m Gtk_Response_Ok [31m=>[m
	    
	    Name [31m:=[m [01;34mnew[m [32mString[m ' [31m([mGtk[31m.[mFile_Chooser_Dialog[31m.[m[01;30mGet_Filename[m[31m([mDialog[31m));[m
	    
	    [01;34mif[m Name'Length [31m>[m [35m0[m [01;34mthen[m
	       Gmface_Window[31m.[mWork[31m.[mFilename [31m:=[m [01;34mnew[m [32mString[m ' [31m([mName[31m.[m[01;34mall[m[31m);[m
	       
	       [01;30mSave[m[31m([m[01;30mGmface_Work_Record[m[31m([mGmface_Window[31m.[mWork[31m.[m[01;34mall[m[31m),[m Name[31m.[m[01;34mall[m[31m);[m
	       
	       [01;30mSet_Title[m [31m([mGmface_Window[31m.[mWindow[31m,[m
			  [31m"Ultrason ["[m [31m&[m Gmface_Window[31m.[mWork[31m.[mFilename[31m.[m[01;34mall[m [31m&[m [31m']'[m[31m);[m
	       
	    [01;34mend[m [01;34mif[m[31m;[m
	    
	    [01;30mDestroy[m[31m([mDialog[31m);[m
	 [01;34mwhen[m [01;34mothers[m [31m=>[m
	    [01;30mDestroy[m[31m([mDialog[31m);[m
      [01;34mend[m [01;34mcase[m[31m;[m
	    
	    

   [01;34mend[m Save_Action[31m;[m

   [01;34mprocedure[m [01;30mPlay_On_Action[m [31m([mAction[31m,[m Main_Window [31m:[m System[31m.[mAddress[31m)[m [01;34mis[m

      [01;34mpragma[m [01;30mUnreferenced[m [31m([mAction[31m);[m
      
      Gmface_Window [31m:[m [01;34mconstant[m Gtk_Gmface_Work_Window_access [31m:=[m 
	Gmface_Work_Window_Conversions[31m.[m[01;30mTo_Pointer[m[31m([mMain_Window[31m).[m[01;34mall[m'[01;34maccess[m[31m;[m
      
   [01;34mbegin[m

      [01;30mPlay_On[m[31m([m[01;34mnull[m[31m,[m Gmface_Window[31m);[m
   [01;34mend[m Play_On_Action[31m;[m

   [01;34mprocedure[m [01;30mRec_On_Action[m [31m([mAction[31m,[m Main_Window [31m:[m System[31m.[mAddress[31m)[m [01;34mis[m

      [01;34mpragma[m [01;30mUnreferenced[m [31m([mAction[31m);[m
      
      Gmface_Window [31m:[m [01;34mconstant[m Gtk_Gmface_Work_Window_access [31m:=[m 
	Gmface_Work_Window_Conversions[31m.[m[01;30mTo_Pointer[m[31m([mMain_Window[31m).[m[01;34mall[m'[01;34maccess[m[31m;[m
   [01;34mbegin[m

      [01;30mRec_on[m[31m([m[01;34mnull[m[31m,[m Gmface_Window[31m);[m
   [01;34mend[m Rec_On_Action[31m;[m

   [01;34mprocedure[m [01;30mPlay_off_Action[m [31m([mAction[31m,[m Main_Window [31m:[m System[31m.[mAddress[31m)[m [01;34mis[m

      [01;34mpragma[m [01;30mUnreferenced[m [31m([mAction[31m);[m
      
      Gmface_Window [31m:[m [01;34mconstant[m Gtk_Gmface_Work_Window_access [31m:=[m 
	Gmface_Work_Window_Conversions[31m.[m[01;30mTo_Pointer[m[31m([mMain_Window[31m).[m[01;34mall[m'[01;34maccess[m[31m;[m
   [01;34mbegin[m

      [01;30mPlay_off[m[31m([m[01;34mnull[m[31m,[m Gmface_Window[31m);[m
   [01;34mend[m Play_off_Action[31m;[m

   [01;34mprocedure[m [01;30mRec_off_Action[m [31m([mAction[31m,[m Main_Window [31m:[m System[31m.[mAddress[31m)[m [01;34mis[m

      [01;34mpragma[m [01;30mUnreferenced[m [31m([mAction[31m);[m
      
      Gmface_Window [31m:[m [01;34mconstant[m Gtk_Gmface_Work_Window_access [31m:=[m 
	Gmface_Work_Window_Conversions[31m.[m[01;30mTo_Pointer[m[31m([mMain_Window[31m).[m[01;34mall[m'[01;34maccess[m[31m;[m
   [01;34mbegin[m

      [01;30mRec_off[m[31m([m[01;34mnull[m[31m,[m Gmface_Window[31m);[m
   [01;34mend[m Rec_off_Action[31m;[m


   [01;34mprocedure[m [01;30mStart_Action[m [31m([mAction[31m,[m Main_Window [31m:[m System[31m.[mAddress[31m)[m [01;34mis[m

      [01;34mpragma[m [01;30mUnreferenced[m [31m([mAction[31m);[m
      
      Gmface_Window [31m:[m [01;34mconstant[m Gtk_Gmface_Work_Window_access [31m:=[m 
	Gmface_Work_Window_Conversions[31m.[m[01;30mTo_Pointer[m[31m([mMain_Window[31m).[m[01;34mall[m'[01;34maccess[m[31m;[m
   [01;34mbegin[m

      [01;30mPlay[m[31m([m[01;34mnull[m[31m,[m Gmface_Window[31m);[m
   [01;34mend[m Start_Action[31m;[m
   [01;34mprocedure[m [01;30mStop_Action[m [31m([mAction[31m,[m Main_Window [31m:[m System[31m.[mAddress[31m)[m [01;34mis[m

      [01;34mpragma[m [01;30mUnreferenced[m [31m([mAction[31m);[m
      
      Gmface_Window [31m:[m [01;34mconstant[m Gtk_Gmface_Work_Window_access [31m:=[m 
	Gmface_Work_Window_Conversions[31m.[m[01;30mTo_Pointer[m[31m([mMain_Window[31m).[m[01;34mall[m'[01;34maccess[m[31m;[m
   [01;34mbegin[m

      [01;30mStop[m[31m([m[01;34mnull[m[31m,[m Gmface_Window[31m);[m
   [01;34mend[m Stop_Action[31m;[m
   
[01;34mend[m Gmface[31m.[mGm_Application[31m.[mGtk_Interface[31m;[m
