/* * Copyright (c) 2012 European Synchrotron Radiation Facility, * Diamond Light Source Ltd. * * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html */ package fable.imageviewer.perspective; import org.dawb.common.ui.views.HeaderTableView; import org.eclipse.ui.IFolderLayout; import org.eclipse.ui.IPageLayout; import org.eclipse.ui.IPerspectiveFactory; import fable.framework.navigator.views.SampleNavigatorView; import fable.imageviewer.component.ImageComponent; import fable.imageviewer.component.ImagePlay; import fable.imageviewer.views.HeaderPlotView; import fable.imageviewer.views.ImageView; import fable.imageviewer.views.LineView; import fable.imageviewer.views.ProfileView; import fable.imageviewer.views.ReliefView; import fable.imageviewer.views.RockingCurveView; /** * This class represents ImageViewer perspective for small screen. <br> * Main views, file selector (<code>SampleNavigator</code>), image (set on top) * and console are put on each other. <br> * Maximum height to display this perspective is defined in <code> * fable.framework.toolbox.internal.IVarKeys.SCREENHEIGHT</code> */ public class PerspectiveSmall implements IPerspectiveFactory { public static final String ID = "fable.imageviewer.perspectiveSmall"; public void createInitialLayout(IPageLayout layout) { // Add perspective-specific action sets layout.addActionSet("fable.imageviewer.actionset"); String editorArea = layout.getEditorArea(); layout.setEditorAreaVisible(false); IFolderLayout folder = layout.createFolder("ImageViewer", IPageLayout.TOP, 1f, editorArea); folder.addView(ImageView.ID + ":" + ImageComponent.SECONDARY_ID_MAIN); layout.addPerspectiveShortcut(Perspective.ID); layout.getViewLayout(ImageView.ID + ":" + ImageComponent.SECONDARY_ID_MAIN) .setCloseable(false); IFolderLayout playFolder = layout.createFolder("Play", IPageLayout.BOTTOM, .9f, "ImageViewer"); playFolder.addPlaceholder(ImagePlay.ID + ":*"); playFolder.addView(ImagePlay.ID); folder.addPlaceholder(SampleNavigatorView.ID + ":*"); folder.addView(SampleNavigatorView.ID); layout.getViewLayout(SampleNavigatorView.ID).setCloseable(false); folder.addPlaceholder(HeaderTableView.ID + ":*"); folder.addView(HeaderTableView.ID + ":0"); folder.addPlaceholder(HeaderPlotView.ID + ":*"); folder.addPlaceholder(LineView.ID + ":*"); folder.addPlaceholder(ProfileView.ID + ":*"); folder.addPlaceholder(RockingCurveView.ID + ":*"); folder.addPlaceholder(ReliefView.ID + ":*"); layout.addShowViewShortcut(ImagePlay.ID); layout.addShowViewShortcut(HeaderTableView.ID); layout.addShowViewShortcut(HeaderPlotView.ID); layout.addShowViewShortcut(LineView.ID); layout.addShowViewShortcut(ProfileView.ID); layout.addShowViewShortcut(RockingCurveView.ID); layout.addShowViewShortcut(ReliefView.ID); } }