Phoebus - I've just had a quick look at the notes I have for my program launcher and broadly this is how it worked. I gave up on this partly due to lack of time at the time and partly because of hearing about the Jim Hunkins QDT Desktop system (anyone heard any more about that?)
Set up Easyptr menus for the screen sizes it is designed to handle. In the case of my program, it was QL screen, EGA, VGA, SVGA and 1024x512 (my system at the time wouldn't go beyond 800x600 but I hacked a menu using a routine borrowed from Rich Mellor's BASIC Reference Guide) Check screen size in use and draw appropriate menu (using eithe SCR_XLIM, SCR_YLIM etc or my DISPLAY_CDE from QL Today). The menu had basically 3 little iconsprites on the top line, move+redraw+esc/X and an info window with the title. The diagram below tries to show what I mean. The [ ] bits are loose items defined in Easyptr - to add a program you simply defined a loose item with the name text (loose items -1, -2 and -3 had sprites for move/resize/exit and -4 to -something along the bottom for shortcuts to other desktop menus) +------------------------------------------+ | [MOVE] [RESIZE] DJ DESKTOP [X] | | | | [ ] [ ] [ ] [ ] [ ] | | [ ] [ ] [ ] [ ] [ ] | | [ ] [ ] [ ] [ ] [ ] | etc as far as the window menu size allowed, then at the bottom a separate set ofloose items for menus etc. Easyptr allows info windows and loose items to overlap if required, this could sometimes (with care) be used to provide separate backgrounds if really required. Obviously, the 'menu' loose items strip could go at the top Win3.1 style if required. | | +------------------------------------------+ | [menu1] [menu2] [menu3] etc | +------------------------------------------+ The program basically sat there reading mouse and keyboard and waited for a loose item to be hit, when it looked at the setting for that loose item if defined (if not, ignored). Right click (DO) brought up a Windoze style context menu offering to add new button settings, change settings, delete, move setting to different loose item and so on. Clicking on resize cycled through the different menu sizes, drawing the next size up until that wouldn't fit then back to QL screen size. I appreciate this is probably not what you really want to do, as I guess you will want to do something more graphical like a real GUI, and this provides only a fixed format program list, no drag 'n' drop etc but this seemed quite easy to code for someone like me whose requirements weren't really that complex and the idea was to create something passable which was quick and easy to program and gave me a 'sort of GUI' better than the old DEV Manager program. Now I'm "between jobs" it might be a bit of a brain-stimulator to keep me occupied at home for a little while. -- Dilwyn Jones [EMAIL PROTECTED] http://www.soft.net.uk/dj/index.html