public void resetStatus() {
		if (map.isEmpty())
			return;
		synchronized (map) {
			for (ModelCanvas mc : map.values()) {
				if (!mc.isUsed())
					continue;
				final MDContainer c = mc.getMdContainer();
				c.getModel().stop();
				c.getModel().clearMouseScripts();
				c.getModel().clearKeyScripts();
				mc.setUsed(false);
				mc.showBorder(true);
				mc.getMdContainer().setStatusBarShown(true);
				List list = c.getModel().getModelListeners();
				if (list != null)
					list.clear();
				list = c.getModel().getMovie().getMovieListeners();
				if (list != null) {
					for (Iterator j = list.iterator(); j.hasNext();) {
						if (j.next() != ((SlideMovie) (c.getModel().getMovie())).getMovieSlider())
							j.remove();
					}
				}
				// CAUTION: Free-up memory causes problem of inserting a new model in a new page.
				// c.getModel().freeUpMemory();
				c.getModel().clear();
				/*
				 * leave this job to when it is time to repopulate the tool bar EventQueue.invokeLater(new Runnable(){
				 * public void run(){ if(c.getToolBar()!=null) c.getToolBar().removeAll(); if(c.getExpandMenu()!=null)
				 * c.getExpandMenu().removeAll(); c.removeToolbar(); } });
				 */
				if (c instanceof AtomContainer) {
					((AtomContainer) c).disableGridMode();
				}
			}
		}
	}