public ScreenViewController(DataObjectContext context) { loadingPanel = IOUtils.createLoadingPanel(); visual = new JPanel(); visual.setLayout(new BorderLayout()); toolbar = new JToolBar(); toolbar.setFloatable(false); context.addDesignDocumentAwareness(this); }
public void setDesignDocument(final DesignDocument newDesignDocument) { IOUtils.runInAWTNoBlocking( new Runnable() { public void run() { if (designDocument != null) { ScreenAccessController accessController = designDocument .getListenerManager() .getAccessController(ScreenAccessController.class); if (accessController != null) accessController.hideNotify(); } toolbar.removeAll(); visual.removeAll(); designDocument = newDesignDocument; final ScreenAccessController accessController = designDocument != null ? designDocument .getListenerManager() .getAccessController(ScreenAccessController.class) : null; if (accessController != null) { accessController.showNotify(); final DataObjectContext context = ProjectUtils.getDataObjectContextForDocument(designDocument); if (context != null) { designDocument .getTransactionManager() .readAccess( new Runnable() { public void run() { accessController.setScreenSize( MidpProjectPropertiesSupport.getDeviceScreenSizeFromProject( context)); } }); } visual.add(new JScrollPane(accessController.getMainPanel()), BorderLayout.CENTER); JToolBar.Separator separator = new JToolBar.Separator(); separator.setOrientation(JSeparator.VERTICAL); toolbar.add(separator); toolbar.add(accessController.getToolBar()); } else { visual.add(loadingPanel, BorderLayout.CENTER); } toolbar.validate(); visual.validate(); } }); }
public void setScreenSize(final Dimension deviceScreenSize) { IOUtils.runInAWTNoBlocking( new Runnable() { public void run() { if (designDocument != null) { designDocument .getTransactionManager() .readAccess( new Runnable() { public void run() { ScreenAccessController accessController = designDocument .getListenerManager() .getAccessController(ScreenAccessController.class); if (accessController != null) accessController.setScreenSize(deviceScreenSize); } }); } } }); }