the video is added to the main window 860 450 of the secondary server the add entry to primary window routine in fig1 is very similar to the routine used to fill in the secondary window with a notable exception a test is made to see if the video is currently playing 1000 if so a u2018 playing icon u2019 is displayed 1005 to alert the user that a playing video is missing from the secondary if the video is not playing a second test is made to see if the video is queued 1010 if so a u2018 queued icon u2019 is displayed 1015 to reflect its status if the video is not playing or queued a normal video icon is used 1020 the rest of the routine duplicates the processing of the secondary the video name 1030 status 1040 size 1050 duration 1060 creation date and time 1070 and the encoded bit rate of the compressed video 1080 are displayed in the primary 39 s window the fill main window routine continues to loop 850 through each primary video to ascertain which videos are missing from the secondary server when all primary video have been processed control is returned 865 to the initialization routine after setting status 760 and displaying the amount of free hard disk space the main thread enters a loop 770 where it responds to user keyboard and mouse activity as user commands are processed 780 are they are entered the loop 770 is not exited until the user closes the application at which time the program exits 790 fig9 contains the logic to handle user commands invoked by either mouse or keyboard operation 900 handles the request to sort the videos in the main window the.