directory-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From pamarce...@apache.org
Subject svn commit: r475776 [6/6] - in /directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp: ./ META-INF/ ressources/ ressources/help/ ressources/help/html/ ressources/help/html/concepts/ ressources/help/html/concepts/images/ ressources/help/html/gettingsta...
Date Thu, 16 Nov 2006 15:38:05 GMT
Added: directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/ressources/utils/syntaxes.xml
URL: http://svn.apache.org/viewvc/directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/ressources/utils/syntaxes.xml?view=auto&rev=475776
==============================================================================
--- directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/ressources/utils/syntaxes.xml (added)
+++ directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/ressources/utils/syntaxes.xml Thu Nov 16 07:38:00 2006
@@ -0,0 +1,293 @@
+<?xml version="1.0" encoding="ISO-8859-1" ?>
+<syntaxes>
+	<syntax>
+		<name>ACI Item</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.1</oid>
+		<hr>N</hr>
+	</syntax>
+	<syntax>
+		<name>Access Point</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.2</oid>
+		<hr>Y</hr>
+	</syntax>
+	<syntax>
+		<name>Attribute Type Description</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.3</oid>
+		<hr>Y</hr>
+	</syntax>
+	<syntax>
+		<name>Audio</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.4</oid>
+		<hr>N</hr>
+	</syntax>
+	<syntax>
+		<name>Binary</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.5</oid>
+		<hr>N</hr>
+	</syntax>
+	<syntax>
+		<name>Bit String</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.6</oid>
+		<hr>Y</hr>
+	</syntax>
+	<syntax>
+		<name>Boolean</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.7</oid>
+		<hr>Y</hr>
+	</syntax>
+	<syntax>
+		<name>Certificate</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.8</oid>
+		<hr>N</hr>
+	</syntax>
+	<syntax>
+		<name>Certificate List</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.9</oid>
+		<hr>N</hr>
+	</syntax>
+	<syntax>
+		<name>Certificate Pair</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.10</oid>
+		<hr>N</hr>
+	</syntax>
+	<syntax>
+		<name>Country String</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.11</oid>
+		<hr>Y</hr>
+	</syntax>
+	<syntax>
+		<name>DN</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.12</oid>
+		<hr>Y</hr>
+	</syntax>
+	<syntax>
+		<name>Data Quality Syntax</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.13</oid>
+		<hr>Y</hr>
+	</syntax>
+	<syntax>
+		<name>Delivery Method</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.14</oid>
+		<hr>Y</hr>
+	</syntax>
+	<syntax>
+		<name>Directory String</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.15</oid>
+		<hr>Y</hr>
+	</syntax>
+	<syntax>
+		<name>DIT Content Rule Description</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.16</oid>
+		<hr>Y</hr>
+	</syntax>
+	<syntax>
+		<name>DIT Structure Rule Description</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.17</oid>
+		<hr>Y</hr>
+	</syntax>
+	<syntax>
+		<name>DL Submit Permission</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.18</oid>
+		<hr>Y</hr>
+	</syntax>
+	<syntax>
+		<name>DSA Quality Syntax</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.19</oid>
+		<hr>Y</hr>
+	</syntax>
+	<syntax>
+		<name>DSE Type</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.20</oid>
+		<hr>Y</hr>
+	</syntax>
+	<syntax>
+		<name>Enhanced Guide</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.21</oid>
+		<hr>Y</hr>
+	</syntax>
+	<syntax>
+		<name>Facsimile Telephone Number</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.22</oid>
+		<hr>Y</hr>
+	</syntax>
+	<syntax>
+		<name>Fax</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.23</oid>
+		<hr>N</hr>
+	</syntax>
+	<syntax>
+		<name>Generalized Time</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.24</oid>
+		<hr>Y</hr>
+	</syntax>
+	<syntax>
+		<name>Guide</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.25</oid>
+		<hr>Y</hr>
+	</syntax>
+	<syntax>
+		<name>IA5 String</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.26</oid>
+		<hr>Y</hr>
+	</syntax>
+	<syntax>
+		<name>INTEGER</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.27</oid>
+		<hr>Y</hr>
+	</syntax>
+	<syntax>
+		<name>JPEG</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.28</oid>
+		<hr>N</hr>
+	</syntax>
+	<syntax>
+		<name>LDAP Syntax Description</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.54</oid>
+		<hr>Y</hr>
+	</syntax>
+	<syntax>
+		<name>LDAP Schema Definition</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.56</oid>
+		<hr>Y</hr>
+	</syntax>
+	<syntax>
+		<name>LDAP Schema Description</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.57</oid>
+		<hr>Y</hr>
+	</syntax>
+	<syntax>
+		<name>Master And Shadow Access Points</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.29</oid>
+		<hr>Y</hr>
+	</syntax>
+	<syntax>
+		<name>Matching Rule Description</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.30</oid>
+		<hr>Y</hr>
+	</syntax>
+	<syntax>
+		<name>Description Rule Use Description</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.31</oid>
+		<hr>Y</hr>
+	</syntax>
+	<syntax>
+		<name>Mail Preference</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.32</oid>
+		<hr>Y</hr>
+	</syntax>
+	<syntax>
+		<name>MHS OR Address</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.33</oid>
+		<hr>Y</hr>
+	</syntax>
+	<syntax>
+		<name>Modify Rights</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.55</oid>
+		<hr>Y</hr>
+	</syntax>
+	<syntax>
+		<name>Name And Optionnal UID</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.34</oid>
+		<hr>Y</hr>
+	</syntax>
+	<syntax>
+		<name>Name Form Description</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.35</oid>
+		<hr>Y</hr>
+	</syntax>
+	<syntax>
+		<name>Numeric String</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.36</oid>
+		<hr>Y</hr>
+	</syntax>
+	<syntax>
+		<name>Object Class Description</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.37</oid>
+		<hr>Y</hr>
+	</syntax>
+	<syntax>
+		<name>Octet String</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.40</oid>
+		<hr>Y</hr>
+	</syntax>
+	<syntax>
+		<name>OID</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.38</oid>
+		<hr>Y</hr>
+	</syntax>
+	<syntax>
+		<name>Other Mailbox</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.39</oid>
+		<hr>Y</hr>
+	</syntax>
+	<syntax>
+		<name>Postal Address</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.41</oid>
+		<hr>Y</hr>
+	</syntax>
+	<syntax>
+		<name>Protocol Information</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.42</oid>
+		<hr>Y</hr>
+	</syntax>
+	<syntax>
+		<name>Presentation Address</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.43</oid>
+		<hr>Y</hr>
+	</syntax>
+	<syntax>
+		<name>Printable String</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.44</oid>
+		<hr>Y</hr>
+	</syntax>
+	<syntax>
+		<name>Substring Assertion</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.58</oid>
+		<hr>Y</hr>
+	</syntax>
+	<syntax>
+		<name>Subtree Specification</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.45</oid>
+		<hr>Y</hr>
+	</syntax>
+	<syntax>
+		<name>Supplier Information</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.46</oid>
+		<hr>Y</hr>
+	</syntax>
+	<syntax>
+		<name>Supplier Or Consumer</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.47</oid>
+		<hr>Y</hr>
+	</syntax>
+	<syntax>
+		<name>Supplier And Consumer</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.48</oid>
+		<hr>Y</hr>
+	</syntax>
+	<syntax>
+		<name>Supportd Algorithm</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.49</oid>
+		<hr>N</hr>
+	</syntax>
+	<syntax>
+		<name>Telephone Number</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.50</oid>
+		<hr>Y</hr>
+	</syntax>
+	<syntax>
+		<name>Teletex Terminal Identifier</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.51</oid>
+		<hr>Y</hr>
+	</syntax>
+	<syntax>
+		<name>Telex Number</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.52</oid>
+		<hr>Y</hr>
+	</syntax>
+	<syntax>
+		<name>UTC Time</name>
+		<oid>1.3.6.1.4.1.1466.115.121.1.53</oid>
+		<hr>Y</hr>
+	</syntax>
+</syntaxes>
\ No newline at end of file

Added: directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/splash.bmp
URL: http://svn.apache.org/viewvc/directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/splash.bmp?view=auto&rev=475776
==============================================================================
Binary file - no diff available.

Propchange: directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/splash.bmp
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/java/org/apache/directory/ldapstudio/Activator.java
URL: http://svn.apache.org/viewvc/directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/java/org/apache/directory/ldapstudio/Activator.java?view=auto&rev=475776
==============================================================================
--- directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/java/org/apache/directory/ldapstudio/Activator.java (added)
+++ directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/java/org/apache/directory/ldapstudio/Activator.java Thu Nov 16 07:38:00 2006
@@ -0,0 +1,89 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *  
+ *    http://www.apache.org/licenses/LICENSE-2.0
+ *  
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License. 
+ *  
+ */
+
+package org.apache.directory.ldapstudio;
+
+
+import org.eclipse.jface.resource.ImageDescriptor;
+import org.eclipse.ui.plugin.AbstractUIPlugin;
+import org.osgi.framework.BundleContext;
+
+
+/**
+ * The main plugin class to be used in the desktop.
+ */
+public class Activator extends AbstractUIPlugin
+{
+
+    //The shared instance.
+    private static Activator plugin;
+
+
+    /**
+     * The constructor.
+     */
+    public Activator()
+    {
+        plugin = this;
+    }
+
+
+    /**
+     * This method is called upon plug-in activation
+     */
+    public void start( BundleContext context ) throws Exception
+    {
+        super.start( context );
+    }
+
+
+    /**
+     * This method is called when the plug-in is stopped
+     */
+    public void stop( BundleContext context ) throws Exception
+    {
+        plugin = null;
+        super.stop( context );
+    }
+
+
+    /**
+     * Returns the shared instance.
+     *
+     * @return the shared instance.
+     */
+    public static Activator getDefault()
+    {
+        return plugin;
+    }
+
+
+    /**
+     * Returns an image descriptor for the image file at the given
+     * plug-in relative path.
+     *
+     * @param path the path
+     * @return the image descriptor
+     */
+    public static ImageDescriptor getImageDescriptor( String path )
+    {
+        return AbstractUIPlugin.imageDescriptorFromPlugin( Application.PLUGIN_ID, path );
+    }
+}

Added: directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/java/org/apache/directory/ldapstudio/Application.java
URL: http://svn.apache.org/viewvc/directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/java/org/apache/directory/ldapstudio/Application.java?view=auto&rev=475776
==============================================================================
--- directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/java/org/apache/directory/ldapstudio/Application.java (added)
+++ directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/java/org/apache/directory/ldapstudio/Application.java Thu Nov 16 07:38:00 2006
@@ -0,0 +1,66 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *  
+ *    http://www.apache.org/licenses/LICENSE-2.0
+ *  
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License. 
+ *  
+ */
+
+package org.apache.directory.ldapstudio;
+
+
+import org.apache.log4j.Logger;
+import org.apache.log4j.PropertyConfigurator;
+import org.eclipse.core.runtime.IPlatformRunnable;
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.ui.PlatformUI;
+
+
+/**
+ * This class controls all aspects of the application's execution
+ */
+public class Application implements IPlatformRunnable
+{
+
+    public static final String PLUGIN_ID = "org.apache.directory.ldapstudio"; //$NON-NLS-1$
+    private static Logger logger = Logger.getLogger( Application.class );
+
+
+    /* (non-Javadoc)
+     * @see org.eclipse.core.runtime.IPlatformRunnable#run(java.lang.Object)
+     */
+    public Object run( Object args ) throws Exception
+    {
+        //Set up a simple configuration that logs on the console.
+        PropertyConfigurator.configure( Platform.getBundle( Application.PLUGIN_ID ).getResource( "log4j.conf" ) ); //$NON-NLS-1$
+        logger.info( "Entering LDAP Studio." ); //$NON-NLS-1$
+        Display display = PlatformUI.createDisplay();
+        try
+        {
+            int returnCode = PlatformUI.createAndRunWorkbench( display, new ApplicationWorkbenchAdvisor() );
+            if ( returnCode == PlatformUI.RETURN_RESTART )
+            {
+                return IPlatformRunnable.EXIT_RESTART;
+            }
+            return IPlatformRunnable.EXIT_OK;
+        }
+        finally
+        {
+            display.dispose();
+            logger.info( "Exiting LDAP Studio." ); //$NON-NLS-1$
+        }
+    }
+}

Added: directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/java/org/apache/directory/ldapstudio/ApplicationActionBarAdvisor.java
URL: http://svn.apache.org/viewvc/directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/java/org/apache/directory/ldapstudio/ApplicationActionBarAdvisor.java?view=auto&rev=475776
==============================================================================
--- directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/java/org/apache/directory/ldapstudio/ApplicationActionBarAdvisor.java (added)
+++ directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/java/org/apache/directory/ldapstudio/ApplicationActionBarAdvisor.java Thu Nov 16 07:38:00 2006
@@ -0,0 +1,188 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *  
+ *    http://www.apache.org/licenses/LICENSE-2.0
+ *  
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License. 
+ *  
+ */
+
+package org.apache.directory.ldapstudio;
+
+
+import org.apache.directory.ldapstudio.actions.AddExtensionAction;
+import org.apache.directory.ldapstudio.actions.ManageExtensionsAction;
+import org.apache.directory.ldapstudio.actions.UpdateAction;
+import org.apache.directory.ldapstudio.view.ImageKeys;
+import org.eclipse.jface.action.GroupMarker;
+import org.eclipse.jface.action.ICoolBarManager;
+import org.eclipse.jface.action.IMenuManager;
+import org.eclipse.jface.action.IToolBarManager;
+import org.eclipse.jface.action.MenuManager;
+import org.eclipse.jface.action.Separator;
+import org.eclipse.jface.action.ToolBarContributionItem;
+import org.eclipse.jface.action.ToolBarManager;
+import org.eclipse.swt.SWT;
+import org.eclipse.ui.IWorkbenchActionConstants;
+import org.eclipse.ui.IWorkbenchWindow;
+import org.eclipse.ui.actions.ActionFactory;
+import org.eclipse.ui.actions.ActionFactory.IWorkbenchAction;
+import org.eclipse.ui.application.ActionBarAdvisor;
+import org.eclipse.ui.application.IActionBarConfigurer;
+import org.eclipse.ui.plugin.AbstractUIPlugin;
+
+
+/**
+ * An action bar advisor is responsible for creating, adding, and disposing of the
+ * actions added to a workbench window. Each window will be populated with
+ * new actions.
+ */
+public class ApplicationActionBarAdvisor extends ActionBarAdvisor
+{
+
+    // Actions - important to allocate these only in makeActions, and then use them
+    // in the fill methods.  This ensures that the actions aren't recreated
+    // when fillActionBars is called with FILL_PROXY.
+    private IWorkbenchAction closeEditorAction;
+    private IWorkbenchAction closeAllEditorsAction;
+
+    private IWorkbenchAction saveEditorAction;
+    private IWorkbenchAction saveAllEditorsAction;
+
+    private IWorkbenchAction exitAction;
+    private IWorkbenchAction aboutAction;
+    private IWorkbenchAction preferencesAction;
+    private IWorkbenchAction helpAction;
+    private UpdateAction updateAction;
+    private AddExtensionAction addExtensionAction;
+    private ManageExtensionsAction manageExtensionsAction;
+
+
+    public ApplicationActionBarAdvisor( IActionBarConfigurer configurer )
+    {
+        super( configurer );
+    }
+
+
+    /**
+     * Creates the actions and registers them.
+     * Registering is needed to ensure that key bindings work.
+     * The corresponding commands keybindings are defined in the plugin.xml file.
+     * Registering also provides automatic disposal of the actions when
+     * the window is closed.
+     */
+    protected void makeActions( final IWorkbenchWindow window )
+    {
+        // Creates the actions and registers them.
+        // Registering is needed to ensure that key bindings work.
+        // The corresponding commands keybindings are defined in the plugin.xml file.
+        // Registering also provides automatic disposal of the actions when
+        // the window is closed.
+
+        closeEditorAction = ActionFactory.CLOSE.create( window );
+        register( closeEditorAction );
+
+        closeAllEditorsAction = ActionFactory.CLOSE_ALL.create( window );
+        register( closeAllEditorsAction );
+
+        saveEditorAction = ActionFactory.SAVE.create( window );
+        saveEditorAction.setText( Messages.getString( "ApplicationActionBarAdvisor.Save_editor" ) ); //$NON-NLS-1$
+        register( saveEditorAction );
+
+        saveAllEditorsAction = ActionFactory.SAVE_ALL.create( window );
+        saveAllEditorsAction.setText( Messages.getString( "ApplicationActionBarAdvisor.Save_all_editors" ) ); //$NON-NLS-1$
+        register( saveAllEditorsAction );
+
+        exitAction = ActionFactory.QUIT.create( window );
+        exitAction.setImageDescriptor( AbstractUIPlugin.imageDescriptorFromPlugin( Application.PLUGIN_ID,
+            ImageKeys.EXIT ) );
+        exitAction.setText( Messages.getString( "ApplicationActionBarAdvisor.Quit_LDAP_Studio" ) ); //$NON-NLS-1$
+        exitAction.setToolTipText( Messages.getString( "ApplicationActionBarAdvisor.Quit_LDAP_Studio" ) ); //$NON-NLS-1$
+        register( exitAction );
+
+        aboutAction = ActionFactory.ABOUT.create( window );
+        aboutAction.setImageDescriptor( AbstractUIPlugin.imageDescriptorFromPlugin( Application.PLUGIN_ID,
+            ImageKeys.ABOUT ) );
+        register( aboutAction );
+
+        preferencesAction = ActionFactory.PREFERENCES.create( window );
+        preferencesAction.setImageDescriptor( AbstractUIPlugin.imageDescriptorFromPlugin( Application.PLUGIN_ID,
+            ImageKeys.SHOW_PREFERENCES ) );
+        register( preferencesAction );
+
+        updateAction = new UpdateAction( window );
+        register( updateAction );
+
+        addExtensionAction = new AddExtensionAction( window );
+        register( addExtensionAction );
+
+        manageExtensionsAction = new ManageExtensionsAction( window );
+        register( manageExtensionsAction );
+
+        helpAction = ActionFactory.HELP_CONTENTS.create( window );
+        register( helpAction );
+    }
+
+
+    /**
+     * Populates the Menu Bar
+     */
+    protected void fillMenuBar( IMenuManager menuBar )
+    {
+        MenuManager fileMenu = new MenuManager( "&File", IWorkbenchActionConstants.M_FILE ); //$NON-NLS-1$
+        MenuManager helpMenu = new MenuManager( "&Help", IWorkbenchActionConstants.M_HELP ); //$NON-NLS-1$
+
+        menuBar.add( fileMenu );
+        // Add a group marker indicating where action set menus will appear.
+        menuBar.add( new GroupMarker( IWorkbenchActionConstants.MB_ADDITIONS ) );
+        menuBar.add( helpMenu );
+
+        // File
+        fileMenu.add( preferencesAction );
+        fileMenu.add( new Separator() );
+        fileMenu.add( closeEditorAction );
+        fileMenu.add( closeAllEditorsAction );
+        fileMenu.add( new Separator() );
+        fileMenu.add( saveEditorAction );
+        fileMenu.add( saveAllEditorsAction );
+        fileMenu.add( new Separator() );
+        fileMenu.add( exitAction );
+
+        // Help
+        helpMenu.add( helpAction );
+        MenuManager softwareUpdates = new MenuManager( Messages
+            .getString( "ApplicationActionBarAdvisor.Software_Updates" ), "softwareUpdates" ); //$NON-NLS-1$ //$NON-NLS-2$
+        softwareUpdates.add( updateAction );
+        softwareUpdates.add( addExtensionAction );
+        softwareUpdates.add( manageExtensionsAction );
+        helpMenu.add( softwareUpdates );
+        helpMenu.add( aboutAction );
+    }
+
+
+    /**
+     * Populates the Cool Bar
+     */
+    protected void fillCoolBar( ICoolBarManager coolBar )
+    {
+        IToolBarManager toolbar = new ToolBarManager( SWT.FLAT | SWT.RIGHT );
+
+        coolBar.add( new ToolBarContributionItem( toolbar, "main" ) ); //$NON-NLS-1$
+
+        toolbar.add( exitAction );
+        toolbar.add( preferencesAction );
+        toolbar.add( aboutAction );
+        toolbar.add( new Separator() );
+    }
+}

Added: directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/java/org/apache/directory/ldapstudio/ApplicationWorkbenchAdvisor.java
URL: http://svn.apache.org/viewvc/directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/java/org/apache/directory/ldapstudio/ApplicationWorkbenchAdvisor.java?view=auto&rev=475776
==============================================================================
--- directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/java/org/apache/directory/ldapstudio/ApplicationWorkbenchAdvisor.java (added)
+++ directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/java/org/apache/directory/ldapstudio/ApplicationWorkbenchAdvisor.java Thu Nov 16 07:38:00 2006
@@ -0,0 +1,110 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *  
+ *    http://www.apache.org/licenses/LICENSE-2.0
+ *  
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License. 
+ *  
+ */
+
+package org.apache.directory.ldapstudio;
+
+
+import org.eclipse.ui.application.IWorkbenchConfigurer;
+import org.eclipse.ui.application.IWorkbenchWindowConfigurer;
+import org.eclipse.ui.application.WorkbenchAdvisor;
+import org.eclipse.ui.application.WorkbenchWindowAdvisor;
+
+
+/**
+ * This workbench advisor creates the window advisor, and specifies
+ * the perspective id for the initial window.<br />
+ * <br />
+ * - initialize  		Called first to perform any setup such as parsing the command 
+ * line, registering adapters, declaring images, etc..  	IWorkbenchConfigurer<br />
+ * - preStartup 		Called after initialization but before the first window is opened. 
+ * May be used to set options affecting which editors and views are initially opened. <br />	 
+ * - postStartup 		Called after all windows have been opened or restored, but before 
+ * the event loop starts. It can be used to start automatic processes and to open tips or 
+ * other windows.<br /> 	 
+ * - preShutdown 		Called after the event loop has terminated but before any windows 
+ * have been closed. 	 <br />
+ * - postShutdown 	Called after all windows are closed during Workbench shutdown. This can 
+ */
+public class ApplicationWorkbenchAdvisor extends WorkbenchAdvisor
+{
+    // The initial perspective that will be shwown in the workbench
+    private static final String PERSPECTIVE_ID = Application.PLUGIN_ID + ".perspective"; //$NON-NLS-1$
+
+
+    /**
+     * Performs arbitrary initialization before the workbench starts running.<br />
+     * <br />
+     * This method is called during workbench initialization prior to any windows 
+     * being opened. Clients must not call this method directly (although super calls 
+     * are okay). The default implementation does nothing. Subclasses may override. 
+     * Typical clients will use the configurer passed in to tweak the workbench. If 
+     * further tweaking is required in the future, the configurer may be obtained using 
+     * getWorkbenchConfigurer
+     */
+    public void initialize( IWorkbenchConfigurer configurer )
+    {
+        //enable the save/restore windows size & position feature
+        configurer.setSaveAndRestore( true );
+    }
+
+
+    /**
+     * Creates a new workbench window advisor for configuring a new workbench 
+     * window via the given workbench window configurer. Clients should override 
+     * to provide their own window configurer. This method replaces all the other 
+     * window and action bar lifecycle methods on the workbench advisor.
+     */
+    public WorkbenchWindowAdvisor createWorkbenchWindowAdvisor( IWorkbenchWindowConfigurer configurer )
+    {
+        return new ApplicationWorkbenchWindowAdvisor( configurer );
+    }
+
+
+    /**
+     * Returns the id of the perspective to use for the initial workbench window, 
+     * or null if no initial perspective should be shown in the initial workbench 
+     * window.<br />
+     * <br />
+     * This method is called during startup when the workbench is creating the first 
+     * new window. Subclasses must implement.<br />
+     * <br />
+     * If the IWorkbenchPreferenceConstants.DEFAULT_PERSPECTIVE_ID preference is 
+     * specified, it supercedes the perspective specified here. 
+     */
+    public String getInitialWindowPerspectiveId()
+    {
+        return "org.apache.directory.ldapstudio.schemas.perspective"; // We open the Schema Perspective by Default
+    }
+
+
+    /**
+     * Performs arbitrary finalization before the workbench is about to shut down.<br />
+     * <br />
+     * This method is called immediately prior to workbench shutdown before any 
+     * windows have been closed. Clients must not call this method directly (although 
+     * super calls are okay). The default implementation returns true. Subclasses may 
+     * override. 
+     */
+    public boolean preShutdown()
+    {
+        return true;
+    }
+
+}

Added: directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/java/org/apache/directory/ldapstudio/ApplicationWorkbenchWindowAdvisor.java
URL: http://svn.apache.org/viewvc/directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/java/org/apache/directory/ldapstudio/ApplicationWorkbenchWindowAdvisor.java?view=auto&rev=475776
==============================================================================
--- directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/java/org/apache/directory/ldapstudio/ApplicationWorkbenchWindowAdvisor.java (added)
+++ directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/java/org/apache/directory/ldapstudio/ApplicationWorkbenchWindowAdvisor.java Thu Nov 16 07:38:00 2006
@@ -0,0 +1,97 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *  
+ *    http://www.apache.org/licenses/LICENSE-2.0
+ *  
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License. 
+ *  
+ */
+
+package org.apache.directory.ldapstudio;
+
+
+import org.eclipse.swt.graphics.Point;
+import org.eclipse.ui.application.ActionBarAdvisor;
+import org.eclipse.ui.application.IActionBarConfigurer;
+import org.eclipse.ui.application.IWorkbenchWindowConfigurer;
+import org.eclipse.ui.application.WorkbenchWindowAdvisor;
+
+
+/**
+ * The workbench window advisor object is created in response to a workbench window 
+ * being created (one per window), and is used to configure the window.<br />
+ * <br />
+ * The following advisor methods are called at strategic points in the workbench window's 
+ * lifecycle (as with the workbench advisor, all occur within the dynamic scope of the call 
+ * to PlatformUI.createAndRunWorkbench):<br />
+ * <br />
+ *  - preWindowOpen - called as the window is being opened; use to configure aspects of the 
+ *  window other than actions bars<br />
+ *  - postWindowRestore - called after the window has been recreated from a previously saved 
+ *  state; use to adjust the restored window<br />
+ *  - postWindowCreate - called after the window has been created, either from an initial 
+ *  state or from a restored state; used to adjust the window<br />
+ *  - openIntro - called immediately before the window is opened in order to create the 
+ *  introduction component, if any.<br />
+ *  - postWindowOpen - called after the window has been opened; use to hook window listeners, 
+ *  etc.<br />
+ *  - preWindowShellClose - called when the window's shell is closed by the user; use to 
+ *  pre-screen window closings
+ */
+public class ApplicationWorkbenchWindowAdvisor extends WorkbenchWindowAdvisor
+{
+
+    /**
+     * Default constructor
+     * @param configurer
+     */
+    public ApplicationWorkbenchWindowAdvisor( IWorkbenchWindowConfigurer configurer )
+    {
+        super( configurer );
+    }
+
+
+    /**
+     * Creates a new action bar advisor to configure the action bars of the window via 
+     * the given action bar configurer. The default implementation returns a new instance 
+     * of ActionBarAdvisor.
+     */
+    public ActionBarAdvisor createActionBarAdvisor( IActionBarConfigurer configurer )
+    {
+        return new ApplicationActionBarAdvisor( configurer );
+    }
+
+
+    /**
+     * Performs arbitrary actions before the window is opened.<br />
+     * <br />
+     * This method is called before the window's controls have been created. Clients must 
+     * not call this method directly (although super calls are okay). The default 
+     * implementation does nothing. Subclasses may override. Typical clients will use the 
+     * window configurer to tweak the workbench window in an application-specific way; 
+     * however, filling the window's menu bar, tool bar, and status line must be done in 
+     * ActionBarAdvisor.fillActionBars, which is called immediately after this method is 
+     * called. 
+     */
+    public void preWindowOpen()
+    {
+        IWorkbenchWindowConfigurer configurer = getWindowConfigurer();
+        configurer.setInitialSize( new Point( 900, 600 ) );
+        configurer.setShowCoolBar( true );
+        configurer.setShowStatusLine( false );
+        configurer.setShowPerspectiveBar( true );
+        configurer.setShowProgressIndicator( true );
+    }
+
+}

Added: directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/java/org/apache/directory/ldapstudio/Messages.java
URL: http://svn.apache.org/viewvc/directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/java/org/apache/directory/ldapstudio/Messages.java?view=auto&rev=475776
==============================================================================
--- directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/java/org/apache/directory/ldapstudio/Messages.java (added)
+++ directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/java/org/apache/directory/ldapstudio/Messages.java Thu Nov 16 07:38:00 2006
@@ -0,0 +1,68 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *  
+ *    http://www.apache.org/licenses/LICENSE-2.0
+ *  
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License. 
+ *  
+ */
+
+package org.apache.directory.ldapstudio;
+
+
+import java.util.MissingResourceException;
+import java.util.ResourceBundle;
+
+import org.apache.log4j.Logger;
+
+
+/**
+ * This class is used to get Strings to display in the User Interface
+ */
+public class Messages
+{
+    // The logger
+    private static Logger logger = Logger.getLogger( Messages.class );
+
+    private static final String BUNDLE_NAME = "org.apache.directory.ldapstudio.messages"; //$NON-NLS-1$
+
+    private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle.getBundle( BUNDLE_NAME );
+
+
+    /**
+     * Default constuctor
+     */
+    private Messages()
+    {
+    }
+
+
+    /**
+     * Returns a String associated with the key given in parameter
+     * @param key the key associated to the String 
+     * @return the corresponding String
+     */
+    public static String getString( String key )
+    {
+        try
+        {
+            return RESOURCE_BUNDLE.getString( key );
+        }
+        catch ( MissingResourceException e )
+        {
+            logger.warn( "Associated ressource not found for key {}", key ); //$NON-NLS-1$
+            return '!' + key + '!';
+        }
+    }
+}

Added: directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/java/org/apache/directory/ldapstudio/actions/AddExtensionAction.java
URL: http://svn.apache.org/viewvc/directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/java/org/apache/directory/ldapstudio/actions/AddExtensionAction.java?view=auto&rev=475776
==============================================================================
--- directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/java/org/apache/directory/ldapstudio/actions/AddExtensionAction.java (added)
+++ directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/java/org/apache/directory/ldapstudio/actions/AddExtensionAction.java Thu Nov 16 07:38:00 2006
@@ -0,0 +1,102 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *  
+ *    http://www.apache.org/licenses/LICENSE-2.0
+ *  
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License. 
+ *  
+ */
+
+package org.apache.directory.ldapstudio.actions;
+
+
+import java.net.MalformedURLException;
+import java.net.URL;
+
+import org.apache.directory.ldapstudio.Messages;
+import org.eclipse.jface.action.Action;
+import org.eclipse.jface.action.IAction;
+import org.eclipse.swt.custom.BusyIndicator;
+import org.eclipse.ui.IWorkbenchWindow;
+import org.eclipse.update.search.BackLevelFilter;
+import org.eclipse.update.search.EnvironmentFilter;
+import org.eclipse.update.search.UpdateSearchRequest;
+import org.eclipse.update.search.UpdateSearchScope;
+import org.eclipse.update.ui.UpdateJob;
+import org.eclipse.update.ui.UpdateManagerUI;
+
+
+/**
+ * This class implements the Add Extension Action.
+ * It uses Eclipse built-in extension system to allow users
+ * to add extensions to LDAP Studio.
+ */
+public class AddExtensionAction extends Action implements IAction
+{
+    private IWorkbenchWindow window;
+
+
+    /**
+     * Default constructor
+     * @param window
+     */
+    public AddExtensionAction( IWorkbenchWindow window )
+    {
+        this.window = window;
+        setId( "org.apache.directory.ldapstudio.newExtensions" ); //$NON-NLS-1$
+        setText( Messages.getString( "AddExtensionAction.Add_Extensions" ) ); //$NON-NLS-1$
+        setToolTipText( Messages.getString( "AddExtensionAction.Search_for_new_extensions" ) ); //$NON-NLS-1$
+    }
+
+
+    /**
+     * Runs the action
+     */
+    public void run()
+    {
+        BusyIndicator.showWhile( window.getShell().getDisplay(), new Runnable()
+        {
+            public void run()
+            {
+                UpdateJob job = new UpdateJob(
+                    Messages.getString( "AddExtensionAction.Searching_new_extensions" ), getSearchRequest() ); //$NON-NLS-1$
+                UpdateManagerUI.openInstaller( window.getShell(), job );
+            }
+
+
+            private UpdateSearchRequest getSearchRequest()
+            {
+                UpdateSearchRequest result = new UpdateSearchRequest( UpdateSearchRequest
+                    .createDefaultSiteSearchCategory(), new UpdateSearchScope() );
+                result.addFilter( new BackLevelFilter() );
+                result.addFilter( new EnvironmentFilter() );
+                UpdateSearchScope scope = new UpdateSearchScope();
+                try
+                {
+                    String homeBase = System.getProperty(
+                        "ldapstudio.homebase", Messages.getString( "AddExtensionAction.LDAP_Studio_Home_Base" ) ); //$NON-NLS-1$ //$NON-NLS-2$
+                    URL url = new URL( homeBase );
+                    scope.addSearchSite( Messages.getString( "AddExtensionAction.LDAP_Studio_Site" ), url, null ); //$NON-NLS-1$
+                }
+                catch ( MalformedURLException e )
+                {
+                    // TODO: handle exception
+                }
+                result.setScope( scope );
+                return result;
+            }
+        } );
+    }
+
+}
\ No newline at end of file

Added: directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/java/org/apache/directory/ldapstudio/actions/ManageExtensionsAction.java
URL: http://svn.apache.org/viewvc/directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/java/org/apache/directory/ldapstudio/actions/ManageExtensionsAction.java?view=auto&rev=475776
==============================================================================
--- directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/java/org/apache/directory/ldapstudio/actions/ManageExtensionsAction.java (added)
+++ directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/java/org/apache/directory/ldapstudio/actions/ManageExtensionsAction.java Thu Nov 16 07:38:00 2006
@@ -0,0 +1,69 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *  
+ *    http://www.apache.org/licenses/LICENSE-2.0
+ *  
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License. 
+ *  
+ */
+
+package org.apache.directory.ldapstudio.actions;
+
+
+import org.apache.directory.ldapstudio.Messages;
+import org.eclipse.jface.action.Action;
+import org.eclipse.jface.action.IAction;
+import org.eclipse.swt.custom.BusyIndicator;
+import org.eclipse.ui.IWorkbenchWindow;
+import org.eclipse.update.ui.UpdateManagerUI;
+
+
+/**
+ * This class implements the Manage Extensions Action.
+ * It uses Eclipse Plugin Manager to allow user to 
+ * manager their plugin configuration.
+ *
+ */
+public class ManageExtensionsAction extends Action implements IAction
+{
+    private IWorkbenchWindow window;
+
+
+    /**
+     * Default constructor
+     * @param window
+     */
+    public ManageExtensionsAction( IWorkbenchWindow window )
+    {
+        this.window = window;
+        setId( "org.apache.directory.ldapstudio.manageExtensions" ); //$NON-NLS-1$
+        setText( Messages.getString( "ManageExtensionsAction.Manage_Extensions" ) ); //$NON-NLS-1$
+        setToolTipText( Messages.getString( "ManageExtensionsAction.Manage_extensions_for_LDAP_Studio" ) ); //$NON-NLS-1$
+    }
+
+
+    /**
+     * Runs the action
+     */
+    public void run()
+    {
+        BusyIndicator.showWhile( window.getShell().getDisplay(), new Runnable()
+        {
+            public void run()
+            {
+                UpdateManagerUI.openConfigurationManager( window.getShell() );
+            }
+        } );
+    }
+}

Added: directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/java/org/apache/directory/ldapstudio/actions/UpdateAction.java
URL: http://svn.apache.org/viewvc/directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/java/org/apache/directory/ldapstudio/actions/UpdateAction.java?view=auto&rev=475776
==============================================================================
--- directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/java/org/apache/directory/ldapstudio/actions/UpdateAction.java (added)
+++ directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/java/org/apache/directory/ldapstudio/actions/UpdateAction.java Thu Nov 16 07:38:00 2006
@@ -0,0 +1,71 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *  
+ *    http://www.apache.org/licenses/LICENSE-2.0
+ *  
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License. 
+ *  
+ */
+
+package org.apache.directory.ldapstudio.actions;
+
+
+import org.apache.directory.ldapstudio.Messages;
+import org.eclipse.jface.action.Action;
+import org.eclipse.jface.action.IAction;
+import org.eclipse.swt.custom.BusyIndicator;
+import org.eclipse.ui.IWorkbenchWindow;
+import org.eclipse.update.ui.UpdateJob;
+import org.eclipse.update.ui.UpdateManagerUI;
+
+
+/**
+ * This class implements the Update Action.
+ * It uses Eclipse Built-in system to search updates for all plugins
+ * installed on LDAP Studio.
+ */
+public class UpdateAction extends Action implements IAction
+{
+    private IWorkbenchWindow window;
+
+
+    /**
+     * Default constructor
+     * @param window
+     */
+    public UpdateAction( IWorkbenchWindow window )
+    {
+        this.window = window;
+        setId( "org.apache.directory.ldapstudio.newUpdates" ); //$NON-NLS-1$
+        setText( Messages.getString( "UpdateAction.Search_for_updates" ) ); //$NON-NLS-1$
+        setToolTipText( Messages.getString( "UpdateAction.Search_for_updates_for_LDAP_Studio" ) ); //$NON-NLS-1$
+    }
+
+
+    /**
+     * Runs the action
+     */
+    public void run()
+    {
+        BusyIndicator.showWhile( window.getShell().getDisplay(), new Runnable()
+        {
+            public void run()
+            {
+                UpdateJob job = new UpdateJob( Messages.getString( "UpdateAction.Searching_for_updates" ), false, false ); //$NON-NLS-1$
+                UpdateManagerUI.openInstaller( window.getShell(), job );
+            }
+        } );
+    }
+
+}

Added: directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/java/org/apache/directory/ldapstudio/view/ImageKeys.java
URL: http://svn.apache.org/viewvc/directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/java/org/apache/directory/ldapstudio/view/ImageKeys.java?view=auto&rev=475776
==============================================================================
--- directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/java/org/apache/directory/ldapstudio/view/ImageKeys.java (added)
+++ directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/java/org/apache/directory/ldapstudio/view/ImageKeys.java Thu Nov 16 07:38:00 2006
@@ -0,0 +1,33 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *  
+ *    http://www.apache.org/licenses/LICENSE-2.0
+ *  
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License. 
+ *  
+ */
+
+package org.apache.directory.ldapstudio.view;
+
+
+/**
+ * This class is used to define path for images
+ */
+public class ImageKeys
+{
+    // Images for Actions
+    public static final String ABOUT = "ressources/icons/flag_blue.png"; //$NON-NLS-1$
+    public static final String EXIT = "ressources/icons/stop.png"; //$NON-NLS-1$
+    public static final String SHOW_PREFERENCES = "ressources/icons/preferences.png"; //$NON-NLS-1$
+}

Added: directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/java/org/apache/directory/ldapstudio/view/Perspective.java
URL: http://svn.apache.org/viewvc/directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/java/org/apache/directory/ldapstudio/view/Perspective.java?view=auto&rev=475776
==============================================================================
--- directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/java/org/apache/directory/ldapstudio/view/Perspective.java (added)
+++ directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/java/org/apache/directory/ldapstudio/view/Perspective.java Thu Nov 16 07:38:00 2006
@@ -0,0 +1,46 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *  
+ *    http://www.apache.org/licenses/LICENSE-2.0
+ *  
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License. 
+ *  
+ */
+
+package org.apache.directory.ldapstudio.view;
+
+
+import org.eclipse.ui.IPageLayout;
+import org.eclipse.ui.IPerspectiveFactory;
+
+
+/**
+ * This class defines LDAP Studio Main perspective.
+ */
+public class Perspective implements IPerspectiveFactory
+{
+
+    /**
+     * Creates the initial layout for a page.
+     */
+    public void createInitialLayout( IPageLayout layout )
+    {
+        String editorArea = layout.getEditorArea();
+        layout.setEditorAreaVisible( false );
+
+        layout.addStandaloneView( WelcomeView.ID, false, IPageLayout.LEFT, 1.0f, editorArea );
+        layout.getViewLayout( WelcomeView.ID ).setCloseable( false );
+    }
+
+}

Added: directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/java/org/apache/directory/ldapstudio/view/WelcomeView.java
URL: http://svn.apache.org/viewvc/directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/java/org/apache/directory/ldapstudio/view/WelcomeView.java?view=auto&rev=475776
==============================================================================
--- directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/java/org/apache/directory/ldapstudio/view/WelcomeView.java (added)
+++ directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/java/org/apache/directory/ldapstudio/view/WelcomeView.java Thu Nov 16 07:38:00 2006
@@ -0,0 +1,79 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *  
+ *    http://www.apache.org/licenses/LICENSE-2.0
+ *  
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License. 
+ *  
+ */
+
+package org.apache.directory.ldapstudio.view;
+
+
+import org.apache.directory.ldapstudio.Messages;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.graphics.Font;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.ui.part.ViewPart;
+
+
+/**
+ * This class defines the Welcome View.
+ */
+
+public class WelcomeView extends ViewPart
+{
+    public static final String ID = "org.apache.directory.ldapstudio.view.WelcomeView"; //$NON-NLS-1$
+    private Label filler;
+    private Label label;
+
+
+    /**
+     * The constructor.
+     */
+    public WelcomeView()
+    {
+        // Does Nothing
+    }
+
+
+    /**
+     * This is a callback that will allow us
+     * to create the viewer and initialize it.
+     */
+    public void createPartControl( Composite parent )
+    {
+        GridLayout layout = new GridLayout( 1, true );
+        parent.setLayout( layout );
+        filler = new Label( parent, SWT.CENTER );
+        filler.setText( "" ); //$NON-NLS-1$
+        filler.setLayoutData( new GridData( GridData.FILL, GridData.FILL, true, true ) );
+        label = new Label( parent, SWT.CENTER );
+        label.setFont( new Font( null, "Georgia", 13, SWT.BOLD ) ); //$NON-NLS-1$
+        label.setText( Messages.getString( "WelcomeView.Welcome_message" ) ); //$NON-NLS-1$
+        label.setLayoutData( new GridData( GridData.FILL, GridData.FILL, true, true ) );
+    }
+
+
+    /**
+     * Passing the focus request to the viewer's control.
+     */
+    public void setFocus()
+    {
+        // Does nothing
+    }
+}
\ No newline at end of file

Added: directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/resources/org/apache/directory/ldapstudio/messages.properties
URL: http://svn.apache.org/viewvc/directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/resources/org/apache/directory/ldapstudio/messages.properties?view=auto&rev=475776
==============================================================================
--- directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/resources/org/apache/directory/ldapstudio/messages.properties (added)
+++ directory/sandbox/pamarcelot/ldapstudio/ldapstudio-rcp/src/main/resources/org/apache/directory/ldapstudio/messages.properties Thu Nov 16 07:38:00 2006
@@ -0,0 +1,46 @@
+#
+#  Licensed to the Apache Software Foundation (ASF) under one
+#  or more contributor license agreements.  See the NOTICE file
+#  distributed with this work for additional information
+#  regarding copyright ownership.  The ASF licenses this file
+#  to you under the Apache License, Version 2.0 (the
+#  "License"); you may not use this file except in compliance
+#  with the License.  You may obtain a copy of the License at
+#
+#    http://www.apache.org/licenses/LICENSE-2.0
+#
+#  Unless required by applicable law or agreed to in writing,
+#  software distributed under the License is distributed on an
+#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+#  KIND, either express or implied.  See the License for the
+#  specific language governing permissions and limitations
+#  under the License.  
+
+#
+# This file stores the Strings used by the User Interface of the application
+#
+
+# Strings used by ApplicationActionBarAdvisor Class
+ApplicationActionBarAdvisor.Save_editor=Save editor
+ApplicationActionBarAdvisor.Save_all_editors=Save all editors
+ApplicationActionBarAdvisor.Quit_LDAP_Studio=Quit LDAP Studio
+ApplicationActionBarAdvisor.Software_Updates=Software Updates
+
+# Strings used by AddExtensionAction Class
+AddExtensionAction.Add_Extensions=Add Extensions
+AddExtensionAction.Search_for_new_extensions=Search for new extensions for LDAP Studio
+AddExtensionAction.Searching_new_extensions=Searching new extensions
+AddExtensionAction.LDAP_Studio_Site=LDAP Studio Site
+AddExtensionAction.LDAP_Studio_Home_Base=http://directory.apache.org
+
+# Strings used by ManageExtensionsAction Class
+ManageExtensionsAction.Manage_Extensions=Manage Extensions
+ManageExtensionsAction.Manage_extensions_for_LDAP_Studio=Manage extensions for LDAP Studio
+
+# Strings used by UpdateAction Class
+UpdateAction.Search_for_updates=Search for updates
+UpdateAction.Search_for_updates_for_LDAP_Studio=Search for updates for LDAP Studio
+UpdateAction.Searching_for_updates=Searching for updates
+
+# Strings used by WelcomeView Class
+WelcomeView.Welcome_message=Welcome to LDAP Studio.\n\nPlease select a perspective on the right to start working...



Mime
View raw message