1 20 21 package org.apache.directory.ldapstudio.browser.ui.perspective; 22 23 24 import org.apache.directory.ldapstudio.browser.ui.views.browser.BrowserView; 25 import org.apache.directory.ldapstudio.browser.ui.views.connection.ConnectionView; 26 import org.apache.directory.ldapstudio.browser.ui.views.modificationlogs.ModificationLogsView; 27 import org.apache.directory.ldapstudio.browser.ui.wizards.BatchOperationWizard; 28 import org.apache.directory.ldapstudio.browser.ui.wizards.NewBookmarkWizard; 29 import org.apache.directory.ldapstudio.browser.ui.wizards.NewEntryWizard; 30 import org.apache.directory.ldapstudio.browser.ui.wizards.NewSearchWizard; 31 import org.apache.directory.ldapstudio.browser.common.BrowserCommonActivator; 32 import org.apache.directory.ldapstudio.browser.common.wizards.NewConnectionWizard; 33 import org.apache.directory.ldapstudio.ldifeditor.wizards.NewLdifFileWizard; 34 import org.eclipse.ui.IFolderLayout; 35 import org.eclipse.ui.IPageLayout; 36 import org.eclipse.ui.IPerspectiveFactory; 37 38 39 46 public class BrowserPerspective implements IPerspectiveFactory 47 { 48 49 54 public static String getId() 55 { 56 return BrowserPerspective.class.getName(); 57 } 58 59 60 63 public void createInitialLayout( IPageLayout layout ) 64 { 65 defineActions( layout ); 66 defineLayout( layout ); 67 68 layout.addPerspectiveShortcut( "org.apache.directory.ldapstudio.schemas.perspective" ); layout.addPerspectiveShortcut( "org.apache.directory.ldapstudio.browser.ui.perspective.BrowserPerspective" ); } 71 72 73 78 private void defineActions( IPageLayout layout ) 79 { 80 layout.addNewWizardShortcut( NewConnectionWizard.getId() ); 82 layout.addNewWizardShortcut( NewEntryWizard.getId() ); 83 layout.addNewWizardShortcut( NewSearchWizard.getId() ); 84 layout.addNewWizardShortcut( NewBookmarkWizard.getId() ); 85 layout.addNewWizardShortcut( BatchOperationWizard.getId() ); 86 layout.addNewWizardShortcut( NewLdifFileWizard.getId() ); 87 88 layout.addShowViewShortcut( ConnectionView.getId() ); 90 layout.addShowViewShortcut( BrowserView.getId() ); 91 layout.addShowViewShortcut( ModificationLogsView.getId() ); 92 layout.addShowViewShortcut( IPageLayout.ID_OUTLINE ); 93 layout.addShowViewShortcut( "org.eclipse.ui.views.ProgressView" ); 94 } 95 96 97 102 private void defineLayout( IPageLayout layout ) 103 { 104 105 String editorArea = layout.getEditorArea(); 107 108 IFolderLayout browserFolder = layout.createFolder( "browserFolder", IPageLayout.LEFT, ( float ) 0.25, 110 editorArea ); 111 browserFolder.addView( BrowserView.getId() ); 112 113 IFolderLayout connectionFolder = layout.createFolder( "connectionFolder", IPageLayout.BOTTOM, ( float ) 0.75, 115 "browserFolder" ); 116 connectionFolder.addView( ConnectionView.getId() ); 117 118 IFolderLayout outlineFolder = layout.createFolder( "outlineFolder", IPageLayout.RIGHT, ( float ) 0.75, 120 editorArea ); 121 outlineFolder.addView( IPageLayout.ID_OUTLINE ); 122 123 IFolderLayout progessFolder = layout.createFolder( "progressFolder", IPageLayout.BOTTOM, ( float ) 0.75, 125 "outlineFolder" ); 126 progessFolder.addView( "org.eclipse.ui.views.ProgressView" ); 127 128 IFolderLayout logFolder = layout.createFolder( "logFolder", IPageLayout.BOTTOM, ( float ) 0.75, editorArea ); 130 logFolder.addView( ModificationLogsView.getId() ); 131 logFolder.addPlaceholder( "*" ); 132 133 boolean isIDE = BrowserCommonActivator.isIDEEnvironment(); 135 if ( !isIDE ) 136 { 137 layout.getViewLayout( BrowserView.getId() ).setCloseable( false ); 138 layout.getViewLayout( ConnectionView.getId() ).setCloseable( false ); 139 layout.getViewLayout( IPageLayout.ID_OUTLINE ).setCloseable( false ); 140 layout.getViewLayout( "org.eclipse.ui.views.ProgressView" ).setCloseable( false ); 141 layout.getViewLayout( ModificationLogsView.getId() ).setCloseable( false ); 142 } 143 } 144 145 } 146 | Popular Tags |