Technical Desciption of EDIT3D.CPP

void main()
  - has UNUSED framework to accept arguments for screen resolution, path and name
  - initialises allegro and video mode
  - loads 256color and EGA pallet
  - starts run_editor()

void run_editor()
  - loops to maintain gui dialog using bgui routines, messages are
    directed through DIALOG editor which uses Workspace_proc(msg,DIALOG,c)
  - looks for mouse changes through Update_Mouse()
  - location to put any non-dedicated animation

int Workspace_proc(int msg, DIALOG* d, int c)
  MSG_START
    - when dialog begins set dialog to fill screen
  MSG_CLICK
    - highlights the view selected using SET_VIEW in View.cpp
    - adjusts the split for multipul views
    - drag objects which have the same object control class as New_Object
    - zoom in or out of current view using a rectangle
    - paste things from clipboard?
    - resize or move background - limit checking currently commented out !!!!!!!! why????
    - in EditMode select objects
  MSG_DRAW:
    Draw_Views to ScreenBuffer and then transfer this to true video.
  MSG_XCHAR:
    Use key presses to:
      - log mouse positions against upper and lower case charaters
      - <> advance amd precede frames for AVI backgrounds.

      

int Drag_New_Object(void)
    - drag objects which have the object control class of New_Object
