/**
  * Construct a model with the given PaintTool as start PaintTool
  **/
 internal Model(PaintTool initPaintTool, ColorTool initColorTool)
 {
     setUpFactories(initColorTool);
     currentFactory = Factories[initPaintTool.type];
     currentFactory.ChangePaintTool(initPaintTool, initColorTool);
     currentColorTool = initColorTool;
 }
 internal void ChangePaintTool(PaintTool newPaintTool)
 {
     ClearRenderQueue();
     Factories[newPaintTool.type].ChangePaintTool(newPaintTool, currentColorTool);
     currentFactory = Factories[newPaintTool.type];
 }