1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-07-24 01:15:29 +02:00

Bug 460496 - [TERMINALS] Make it easier to run Git Bash

Moved the code and all related configurations regarding showin from
o.e.tm.terminal.connector.local to o.e.tm.terminal.view.ui

Change-Id: If548ae729173c6127f7cf918aa2f783cd6cb3961
Signed-off-by: Dirk Fauth <dirk.fauth@googlemail.com>
This commit is contained in:
Dirk Fauth 2016-02-10 16:02:54 +01:00
parent 8eb7a7f21d
commit 0c1dea7137
24 changed files with 242 additions and 364 deletions

View file

@ -20,11 +20,5 @@ Require-Bundle: org.eclipse.cdt.core;bundle-version="5.6.0";resolution:=optional
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Bundle-ActivationPolicy: lazy
Bundle-Localization: plugin
Export-Package: org.eclipse.tm.terminal.connector.local.activator;x-internal:=true,
org.eclipse.tm.terminal.connector.local.controls,
org.eclipse.tm.terminal.connector.local.help,
org.eclipse.tm.terminal.connector.local.launcher,
org.eclipse.tm.terminal.connector.local.nls;x-internal:=true,
org.eclipse.tm.terminal.connector.local.showin,
org.eclipse.tm.terminal.connector.local.showin.interfaces,
org.eclipse.tm.terminal.connector.local.showin.preferences
Export-Package: org.eclipse.tm.terminal.connector.local.controls,
org.eclipse.tm.terminal.connector.local.launcher

View file

@ -1,6 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<contexts>
<context id="ExternalExecutablesDialog">
<description>Add or modify an external executable added to the 'Show In' context menu.</description>
</context>
</contexts>

View file

@ -55,7 +55,7 @@
</iterate>
</with>
<with
variable="org.eclipse.tm.terminal.connector.local.external.configured">
variable="org.eclipse.tm.terminal.external.executable.configured">
<equals
value="TRUE">
</equals>
@ -64,43 +64,6 @@
</or>
</visibleWhen>
</command>
<dynamic
class="org.eclipse.tm.terminal.connector.local.showin.DynamicContributionItems"
id="org.eclipse.tm.terminal.connector.local.LocalLauncherDynamicContributionItems">
<visibleWhen
checkEnabled="false">
<or>
<with variable="selection">
<iterate operator="and" ifEmpty="false">
<adapt type="org.eclipse.core.resources.IResource">
<not>
<!-- The JDT Project Explorer contributions are adding the "Navigate -> Show In" quick menu.
See o.e.jdt.internal.ui.navigator.JavaNavigatorActionProvider -->
<test property="org.eclipse.core.resources.projectNature" value="org.eclipse.jdt.core.javanature" />
</not>
</adapt>
</iterate>
</with>
<and>
<with variable="selection">
<iterate operator="and" ifEmpty="false">
<adapt type="org.eclipse.core.resources.IResource">
<!-- The JDT Project Explorer contributions are adding the "Navigate -> Show In" quick menu.
See o.e.jdt.internal.ui.navigator.JavaNavigatorActionProvider -->
<test property="org.eclipse.core.resources.projectNature" value="org.eclipse.jdt.core.javanature" />
</adapt>
</iterate>
</with>
<with
variable="org.eclipse.tm.terminal.connector.local.external.configured">
<equals
value="TRUE">
</equals>
</with>
</and>
</or>
</visibleWhen>
</dynamic>
</menuContribution>
</extension>
@ -138,38 +101,4 @@
</handler>
</extension>
<!-- Preference page contributions -->
<extension point="org.eclipse.ui.preferencePages">
<page
category="org.eclipse.tm.terminal.TerminalPreferencePage"
class="org.eclipse.tm.terminal.connector.local.showin.preferences.PreferencePage"
id="org.eclipse.tm.terminal.connector.local.showin.preferences"
name="%preference.page.name">
</page>
</extension>
<!-- Preferences contributions -->
<extension point="org.eclipse.core.runtime.preferences">
<initializer
class="org.eclipse.tm.terminal.connector.local.showin.preferences.PreferencesInitializer">
</initializer>
</extension>
<!-- Help Context contributions -->
<extension point="org.eclipse.help.contexts">
<contexts
file="contexts.xml">
</contexts>
</extension>
<extension
point="org.eclipse.ui.services">
<sourceProvider
provider="org.eclipse.tm.terminal.connector.local.showin.internal.ExternalExecutablesState">
<variable
name="org.eclipse.tm.terminal.connector.local.external.configured"
priorityLevel="workbench">
</variable>
</sourceProvider>
</extension>
</plugin>

View file

@ -1,29 +0,0 @@
/*******************************************************************************
* Copyright (c) 2014, 2015 Wind River Systems, Inc. and others. 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
*
* Contributors:
* Wind River Systems - initial API and implementation
*******************************************************************************/
package org.eclipse.tm.terminal.connector.local.help;
import org.eclipse.tm.terminal.connector.local.activator.UIPlugin;
/**
* UI Context help id definitions.
*/
public interface IContextHelpIds {
/**
* UI plug-in common context help id prefix.
*/
public final static String PREFIX = UIPlugin.getUniqueIdentifier() + "."; //$NON-NLS-1$
/**
* External executables dialog.
*/
public final static String EXTERNAL_EXECUTABLES_DIALOG = PREFIX + "ExternalExecutablesDialog"; //$NON-NLS-1$
}

View file

@ -1,11 +1,12 @@
/*******************************************************************************
* Copyright (c) 2012, 2015 Wind River Systems, Inc. and others. All rights reserved.
* Copyright (c) 2012, 2016 Wind River Systems, Inc. and others. 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
*
* Contributors:
* Wind River Systems - initial API and implementation
* Dirk Fauth <dirk.fauth@googlemail.com> - Bug 460496
*******************************************************************************/
package org.eclipse.tm.terminal.connector.local.launcher;
@ -37,7 +38,6 @@ import org.eclipse.tm.internal.terminal.provisional.api.ITerminalConnector;
import org.eclipse.tm.internal.terminal.provisional.api.TerminalConnectorExtension;
import org.eclipse.tm.terminal.connector.local.activator.UIPlugin;
import org.eclipse.tm.terminal.connector.local.controls.LocalWizardConfigurationPanel;
import org.eclipse.tm.terminal.connector.local.showin.interfaces.IPreferenceKeys;
import org.eclipse.tm.terminal.connector.process.ProcessSettings;
import org.eclipse.tm.terminal.view.core.TerminalServiceFactory;
import org.eclipse.tm.terminal.view.core.interfaces.ITerminalService;
@ -47,6 +47,7 @@ import org.eclipse.tm.terminal.view.core.interfaces.constants.ITerminalsConnecto
import org.eclipse.tm.terminal.view.ui.interfaces.IConfigurationPanel;
import org.eclipse.tm.terminal.view.ui.interfaces.IConfigurationPanelContainer;
import org.eclipse.tm.terminal.view.ui.interfaces.IMementoHandler;
import org.eclipse.tm.terminal.view.ui.interfaces.IPreferenceKeys;
import org.eclipse.tm.terminal.view.ui.internal.SettingsStore;
import org.eclipse.tm.terminal.view.ui.launcher.AbstractLauncherDelegate;
import org.eclipse.ui.ISelectionService;

View file

@ -1,66 +0,0 @@
/*******************************************************************************
* Copyright (c) 2011 - 2015 Wind River Systems, Inc. and others. 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
*
* Contributors:
* Wind River Systems - initial API and implementation
*******************************************************************************/
package org.eclipse.tm.terminal.connector.local.nls;
import org.eclipse.osgi.util.NLS;
/**
* Process terminal connector plug-in externalized strings management.
*/
public class Messages extends NLS {
// The plug-in resource bundle name
private static final String BUNDLE_NAME = "org.eclipse.tm.terminal.connector.local.nls.Messages"; //$NON-NLS-1$
/**
* Static constructor.
*/
static {
// Load message values from bundle file
NLS.initializeMessages(BUNDLE_NAME, Messages.class);
}
// **** Declare externalized string id's down here *****
public static String ProcessConnector_error_creatingProcess;
public static String PreferencePage_label;
public static String PreferencePage_executables_label;
public static String PreferencePage_executables_column_name_label;
public static String PreferencePage_executables_column_path_label;
public static String PreferencePage_executables_button_add_label;
public static String PreferencePage_executables_button_edit_label;
public static String PreferencePage_executables_button_remove_label;
public static String PreferencePage_workingDir_label;
public static String PreferencePage_workingDir_userhome_label;
public static String PreferencePage_workingDir_eclipsehome_label;
public static String PreferencePage_workingDir_eclipsews_label;
public static String PreferencePage_workingDir_button_browse;
public static String PreferencePage_workingDir_note_label;
public static String PreferencePage_workingDir_note_text;
public static String PreferencePage_workingDir_button_variables;
public static String PreferencePage_workingDir_invalid;
public static String PreferencePage_command_label;
public static String PreferencePage_command_button_browse;
public static String PreferencePage_command_invalid;
public static String PreferencePage_command_note_label;
public static String PreferencePage_command_note_text;
public static String PreferencePage_command_arguments_label;
public static String ExternalExecutablesDialog_title_add;
public static String ExternalExecutablesDialog_title_edit;
public static String ExternalExecutablesDialog_button_add;
public static String ExternalExecutablesDialog_button_browse;
public static String ExternalExecutablesDialog_field_path;
public static String ExternalExecutablesDialog_field_name;
public static String ExternalExecutablesDialog_field_args;
public static String ExternalExecutablesDialog_field_icon;
public static String ExternalExecutablesDialog_field_translate;
}

View file

@ -1,46 +0,0 @@
###############################################################################
# Copyright (c) 2012 - 2015 Wind River Systems, Inc. and others. 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
#
# Contributors:
# Wind River Systems - initial API and implementation
###############################################################################
ProcessConnector_error_creatingProcess=Exception when creating process. Possibly caused by: {0}
ExternalExecutablesDialog_title_add=Add External Executable
ExternalExecutablesDialog_title_edit=Edit External Executable
ExternalExecutablesDialog_button_add=Add
ExternalExecutablesDialog_button_browse=Browse...
ExternalExecutablesDialog_field_path=Path:
ExternalExecutablesDialog_field_name=Name:
ExternalExecutablesDialog_field_args=Arguments:
ExternalExecutablesDialog_field_icon=Icon:
ExternalExecutablesDialog_field_translate=Translate Backslashes on Paste
# ----- Preference Pages -----
PreferencePage_label=Local Terminal Settings:
PreferencePage_executables_label="Show In ..." Custom Entries
PreferencePage_executables_column_name_label=Name
PreferencePage_executables_column_path_label=Path
PreferencePage_executables_button_add_label=Add...
PreferencePage_executables_button_edit_label=Edit...
PreferencePage_executables_button_remove_label=Remove
PreferencePage_workingDir_label=Initial Working Directory
PreferencePage_workingDir_userhome_label=User home
PreferencePage_workingDir_eclipsehome_label=Eclipse home
PreferencePage_workingDir_eclipsews_label=Eclipse workspace
PreferencePage_workingDir_button_browse=&Browse...
PreferencePage_workingDir_note_label=Note:
PreferencePage_workingDir_note_text=The chosen initial working directory might be overwritten by the current selection of the active view.
PreferencePage_workingDir_button_variables=&Variables...
PreferencePage_workingDir_invalid=Selected initial working directory is not a directory or is not readable.
PreferencePage_command_label=Shell Command
PreferencePage_command_button_browse=&Browse...
PreferencePage_command_invalid=Selected shell command is not a file or is not readable or executable.
PreferencePage_command_note_label=Note:
PreferencePage_command_note_text=Leave the shell command empty to fallback to the SHELL environment variable or if not set, to /bin/sh.
PreferencePage_command_arguments_label=Arguments:

View file

@ -1,50 +0,0 @@
/*******************************************************************************
* Copyright (c) 2015 Wind River Systems, Inc. and others. 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
*
* Contributors:
* Wind River Systems - initial API and implementation
*******************************************************************************/
package org.eclipse.tm.terminal.connector.local.showin.interfaces;
/**
* Terminal plug-in preference key definitions.
*/
public interface IPreferenceKeys {
/**
* Preference keys family prefix.
*/
public final String PREF_TERMINAL = "terminals"; //$NON-NLS-1$
/**
* Preference key: Local terminal initial working directory.
*/
public final String PREF_LOCAL_TERMINAL_INITIAL_CWD = PREF_TERMINAL + ".localTerminalInitialCwd"; //$NON-NLS-1$
/**
* Preference value: Local terminal initial working directory is "User home"
*/
public final String PREF_INITIAL_CWD_USER_HOME = "userhome"; //$NON-NLS-1$
/**
* Preference value: Local terminal initial working directory is "Eclipse home"
*/
public final String PREF_INITIAL_CWD_ECLIPSE_HOME = "eclipsehome"; //$NON-NLS-1$
/**
* Preference value: Local terminal initial working directory is "Eclipse workspace"
*/
public final String PREF_INITIAL_CWD_ECLIPSE_WS = "eclipsews"; //$NON-NLS-1$
/**
* Preference key: Local terminal default shell command on Unix hosts.
*/
public final String PREF_LOCAL_TERMINAL_DEFAULT_SHELL_UNIX = PREF_TERMINAL + ".localTerminalDefaultShellUnix"; //$NON-NLS-1$
/**
* Preference key: Local terminal default shell command arguments on Unix hosts.
*/
public final String PREF_LOCAL_TERMINAL_DEFAULT_SHELL_UNIX_ARGS = PREF_TERMINAL + ".localTerminalDefaultShellUnixArgs"; //$NON-NLS-1$
}

View file

@ -1,38 +0,0 @@
/*******************************************************************************
* Copyright (c) 2015 Wind River Systems, Inc. and others. 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
*
* Contributors:
* Wind River Systems - initial API and implementation
*******************************************************************************/
package org.eclipse.tm.terminal.connector.local.showin.preferences;
import org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer;
import org.eclipse.tm.terminal.connector.local.activator.UIPlugin;
import org.eclipse.tm.terminal.connector.local.showin.interfaces.IPreferenceKeys;
import org.eclipse.tm.terminal.view.core.preferences.ScopedEclipsePreferences;
/**
* Terminal default preferences initializer.
*/
public class PreferencesInitializer extends AbstractPreferenceInitializer {
/**
* Constructor.
*/
public PreferencesInitializer() {
}
/* (non-Javadoc)
* @see org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer#initializeDefaultPreferences()
*/
@Override
public void initializeDefaultPreferences() {
ScopedEclipsePreferences prefs = UIPlugin.getScopedPreferences();
prefs.putDefaultString(IPreferenceKeys.PREF_LOCAL_TERMINAL_INITIAL_CWD, IPreferenceKeys.PREF_INITIAL_CWD_USER_HOME);
prefs.putDefaultString(IPreferenceKeys.PREF_LOCAL_TERMINAL_DEFAULT_SHELL_UNIX, null);
}
}

View file

@ -8,6 +8,8 @@ Bundle-Vendor: %providerName
Require-Bundle: org.eclipse.core.expressions;bundle-version="3.4.400",
org.eclipse.core.runtime;bundle-version="3.8.0",
org.eclipse.core.resources;bundle-version="3.8.1";resolution:=optional,
org.eclipse.core.variables;bundle-version="3.2.600",
org.eclipse.debug.ui;bundle-version="3.8.1";resolution:=optional,
org.eclipse.egit.ui;bundle-version="2.0.0";resolution:=optional,
org.eclipse.tm.terminal.view.core;bundle-version="4.0.0",
org.eclipse.tm.terminal.control;bundle-version="4.0.0",

View file

@ -6,4 +6,7 @@
<context id="EncodingSelectionDialog">
<description>Select the new encoding for the active terminal.</description>
</context>
<context id="ExternalExecutablesDialog">
<description>Add or modify an external executable added to the 'Show in Local Terminal' context menu.</description>
</context>
</contexts>

View file

@ -47,6 +47,14 @@ command.newview.name=New Terminal View
menu.showIn.label = Show in Local Terminal
menu.showIn.mnemonic=I
LocalLauncherDelegate.label=Local Terminal
command.launch.name=Open Local Terminal on Selection
menu.showIn.localterminal.label = Terminal
TerminalConnector.local=Local
# ----- Extension Points -----
ExtensionPoint.launcherDelegates.name=Terminal Launcher Delegates
@ -58,3 +66,8 @@ activities.category.terminals.description=Use the terminal to connect to remote
activities.activity.terminals.views.name=Terminal Views
activities.activity.terminals.views.description=Terminal related views.
# ----- Preference Pages -----
preference.page.name=Local Terminal

View file

@ -128,11 +128,6 @@
</extension>
<!-- Preferences contributions -->
<extension point="org.eclipse.core.runtime.preferences">
<initializer class="org.eclipse.tm.terminal.view.ui.internal.PreferencesInitializer"/>
</extension>
<!-- Eclipse core expressions property tester -->
<extension point="org.eclipse.core.expressions.propertyTesters">
<propertyTester
class="org.eclipse.tm.terminal.view.ui.internal.PropertyTester"
@ -142,8 +137,6 @@
type="java.lang.Object">
</propertyTester>
</extension>
<!-- Terminal launcher delegate contributions -->
<extension point="org.eclipse.tm.terminal.view.ui.launcherDelegates">
<delegate
class="org.eclipse.tm.terminal.view.ui.streams.StreamsLauncherDelegate"
@ -152,8 +145,6 @@
label="%StreamsLauncherDelegate.label">
</delegate>
</extension>
<!-- Menu contributions -->
<extension point="org.eclipse.ui.menus">
<menuContribution locationURI="toolbar:org.eclipse.ui.main.toolbar?after=additions">
<toolbar
@ -208,13 +199,48 @@
id="org.eclipse.tm.terminal.view.ui.ProjectExplorer.menu.showIn"
label="%menu.showIn.label"
mnemonic="%menu.showIn.mnemonic">
<separator name="additions" visible="false"/>
<separator name="additions" visible="false"/>
<dynamic
class="org.eclipse.tm.terminal.view.ui.local.showin.DynamicContributionItems"
id="org.eclipse.tm.terminal.connector.local.LocalLauncherDynamicContributionItems">
<visibleWhen
checkEnabled="false">
<or>
<with variable="selection">
<iterate operator="and" ifEmpty="false">
<adapt type="org.eclipse.core.resources.IResource">
<not>
<!-- The JDT Project Explorer contributions are adding the "Navigate -> Show In" quick menu.
See o.e.jdt.internal.ui.navigator.JavaNavigatorActionProvider -->
<test property="org.eclipse.core.resources.projectNature" value="org.eclipse.jdt.core.javanature" />
</not>
</adapt>
</iterate>
</with>
<and>
<with variable="selection">
<iterate operator="and" ifEmpty="false">
<adapt type="org.eclipse.core.resources.IResource">
<!-- The JDT Project Explorer contributions are adding the "Navigate -> Show In" quick menu.
See o.e.jdt.internal.ui.navigator.JavaNavigatorActionProvider -->
<test property="org.eclipse.core.resources.projectNature" value="org.eclipse.jdt.core.javanature" />
</adapt>
</iterate>
</with>
<with
variable="org.eclipse.tm.terminal.external.executable.configured">
<equals
value="TRUE">
</equals>
</with>
</and>
</or>
</visibleWhen>
</dynamic>
</menu>
</menuContribution>
</extension>
<!-- Command contributions -->
<extension point="org.eclipse.ui.commands">
<category
id="org.eclipse.tm.terminal.view.ui.commands.category"
@ -246,8 +272,6 @@
name="%command.newview.name">
</command>
</extension>
<!-- Key bindings -->
<extension point="org.eclipse.ui.bindings">
<key
commandId="org.eclipse.tm.terminal.view.ui.command.launchToolbar"
@ -255,8 +279,6 @@
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="CTRL+SHIFT+M3+T"/> <!-- Bug 435111: Don't use M1 since COMMAND+Option T already taken on Mac -->
</extension>
<!-- Handler contributions -->
<extension point="org.eclipse.ui.handlers">
<handler
class="org.eclipse.tm.terminal.view.ui.internal.handler.LaunchTerminalCommandHandler"
@ -307,15 +329,11 @@
</activeWhen>
</handler>
</extension>
<!-- Help Context contributions -->
<extension point="org.eclipse.help.contexts">
<contexts
file="contexts.xml">
</contexts>
</extension>
<!-- Activity contributions -->
<extension point="org.eclipse.ui.activities">
<category
description="%activities.category.terminals.description"
@ -379,4 +397,27 @@
parentId="org.eclipse.ui.contexts.window">
</context>
</extension>
<extension
point="org.eclipse.ui.preferencePages">
<page
category="org.eclipse.tm.terminal.TerminalPreferencePage"
class="org.eclipse.tm.terminal.view.ui.preferences.PreferencePage"
id="org.eclipse.tm.terminal.view.ui.preferences"
name="%preference.page.name">
</page>
</extension>
<extension point="org.eclipse.core.runtime.preferences">
<initializer class="org.eclipse.tm.terminal.view.ui.preferences.PreferencesInitializer"/>
</extension>
<extension
point="org.eclipse.ui.services">
<sourceProvider
provider="org.eclipse.tm.terminal.view.ui.internal.ExternalExecutablesState">
<variable
name="org.eclipse.tm.terminal.external.executable.configured"
priorityLevel="workbench">
</variable>
</sourceProvider>
</extension>
</plugin>

View file

@ -1,11 +1,12 @@
/*******************************************************************************
* Copyright (c) 2011, 2015 Wind River Systems, Inc. and others. All rights reserved.
* Copyright (c) 2011, 2016 Wind River Systems, Inc. and others. 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
*
* Contributors:
* Wind River Systems - initial API and implementation
* Dirk Fauth <dirk.fauth@googlemail.com> - Bug 460496
*******************************************************************************/
package org.eclipse.tm.terminal.view.ui.help;
@ -34,4 +35,9 @@ public interface IContextHelpIds {
* Terminal control encoding selection dialog.
*/
public final static String ENCODING_SELECTION_DIALOG = PREFIX + "EncodingSelectionDialog"; //$NON-NLS-1$
/**
* External executables dialog.
*/
public final static String EXTERNAL_EXECUTABLES_DIALOG = PREFIX + "ExternalExecutablesDialog"; //$NON-NLS-1$
}

View file

@ -7,7 +7,7 @@
* Contributors:
* Wind River Systems - initial API and implementation
*******************************************************************************/
package org.eclipse.tm.terminal.connector.local.showin.interfaces;
package org.eclipse.tm.terminal.view.ui.interfaces;
/**
* External executables data property names.

View file

@ -1,11 +1,12 @@
/*******************************************************************************
* Copyright (c) 2011, 2015 Wind River Systems, Inc. and others. All rights reserved.
* Copyright (c) 2011, 2016 Wind River Systems, Inc. and others. 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
*
* Contributors:
* Wind River Systems - initial API and implementation
* Dirk Fauth <dirk.fauth@googlemail.com> - Bug 460496
*******************************************************************************/
package org.eclipse.tm.terminal.view.ui.interfaces;
@ -25,4 +26,36 @@ public interface IPreferenceKeys {
* Preference key: Remove terminated terminals when a new terminal is created.
*/
public final String PREF_REMOVE_TERMINATED_TERMINALS = PREF_TERMINAL + ".removeTerminatedTerminals"; //$NON-NLS-1$
// showin preferences
/**
* Preference key: Local terminal initial working directory.
*/
public final String PREF_LOCAL_TERMINAL_INITIAL_CWD = PREF_TERMINAL + ".localTerminalInitialCwd"; //$NON-NLS-1$
/**
* Preference value: Local terminal initial working directory is "User home"
*/
public final String PREF_INITIAL_CWD_USER_HOME = "userhome"; //$NON-NLS-1$
/**
* Preference value: Local terminal initial working directory is "Eclipse home"
*/
public final String PREF_INITIAL_CWD_ECLIPSE_HOME = "eclipsehome"; //$NON-NLS-1$
/**
* Preference value: Local terminal initial working directory is "Eclipse workspace"
*/
public final String PREF_INITIAL_CWD_ECLIPSE_WS = "eclipsews"; //$NON-NLS-1$
/**
* Preference key: Local terminal default shell command on Unix hosts.
*/
public final String PREF_LOCAL_TERMINAL_DEFAULT_SHELL_UNIX = PREF_TERMINAL + ".localTerminalDefaultShellUnix"; //$NON-NLS-1$
/**
* Preference key: Local terminal default shell command arguments on Unix hosts.
*/
public final String PREF_LOCAL_TERMINAL_DEFAULT_SHELL_UNIX_ARGS = PREF_TERMINAL + ".localTerminalDefaultShellUnixArgs"; //$NON-NLS-1$
}

View file

@ -1,10 +1,19 @@
package org.eclipse.tm.terminal.connector.local.showin.internal;
/*******************************************************************************
* Copyright (c) 2016 Dirk Fauth and others. 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
*
* Contributors:
* Dirk Fauth <dirk.fauth@googlemail.com> - initial API and implementation
*******************************************************************************/
package org.eclipse.tm.terminal.view.ui.internal;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.eclipse.tm.terminal.connector.local.showin.ExternalExecutablesManager;
import org.eclipse.tm.terminal.view.ui.local.showin.ExternalExecutablesManager;
import org.eclipse.ui.AbstractSourceProvider;
import org.eclipse.ui.ISources;
@ -12,7 +21,7 @@ import org.eclipse.ui.ISources;
* SourceProvider that provides a state to determine whether external executables are configured or not.
*/
public class ExternalExecutablesState extends AbstractSourceProvider {
public final static String CONFIGURED_STATE = "org.eclipse.tm.terminal.connector.local.external.configured"; //$NON-NLS-1$
public final static String CONFIGURED_STATE = "org.eclipse.tm.terminal.external.executable.configured"; //$NON-NLS-1$
private boolean enabled;
public ExternalExecutablesState() {

View file

@ -7,7 +7,7 @@
* Contributors:
* Wind River Systems - initial API and implementation
*******************************************************************************/
package org.eclipse.tm.terminal.connector.local.showin;
package org.eclipse.tm.terminal.view.ui.local.showin;
import java.util.ArrayList;
import java.util.HashMap;
@ -22,8 +22,8 @@ import org.eclipse.jface.action.IContributionItem;
import org.eclipse.jface.resource.ImageDescriptor;
import org.eclipse.jface.viewers.ISelection;
import org.eclipse.swt.graphics.ImageData;
import org.eclipse.tm.terminal.connector.local.showin.interfaces.IExternalExecutablesProperties;
import org.eclipse.tm.terminal.view.core.interfaces.constants.ITerminalsConnectorConstants;
import org.eclipse.tm.terminal.view.ui.interfaces.IExternalExecutablesProperties;
import org.eclipse.tm.terminal.view.ui.interfaces.ILauncherDelegate;
import org.eclipse.tm.terminal.view.ui.launcher.LauncherDelegateManager;
import org.eclipse.ui.ISelectionService;

View file

@ -7,7 +7,7 @@
* Contributors:
* Wind River Systems - initial API and implementation
*******************************************************************************/
package org.eclipse.tm.terminal.connector.local.showin;
package org.eclipse.tm.terminal.view.ui.local.showin;
import java.io.File;
import java.util.HashMap;
@ -34,9 +34,9 @@ import org.eclipse.swt.widgets.FileDialog;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Text;
import org.eclipse.tm.terminal.connector.local.help.IContextHelpIds;
import org.eclipse.tm.terminal.connector.local.nls.Messages;
import org.eclipse.tm.terminal.connector.local.showin.interfaces.IExternalExecutablesProperties;
import org.eclipse.tm.terminal.view.ui.help.IContextHelpIds;
import org.eclipse.tm.terminal.view.ui.interfaces.IExternalExecutablesProperties;
import org.eclipse.tm.terminal.view.ui.nls.Messages;
import org.eclipse.ui.PlatformUI;
import org.osgi.framework.Bundle;

View file

@ -1,13 +1,14 @@
/*******************************************************************************
* Copyright (c) 2014, 2015 Wind River Systems, Inc. and others. All rights reserved.
* Copyright (c) 2014, 2016 Wind River Systems, Inc. and others. 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
*
* Contributors:
* Wind River Systems - initial API and implementation
* Dirk Fauth <dirk.fauth@googlemail.com> - Bug 460496
*******************************************************************************/
package org.eclipse.tm.terminal.connector.local.showin;
package org.eclipse.tm.terminal.view.ui.local.showin;
import java.io.File;
import java.io.FileReader;
@ -27,9 +28,9 @@ import org.eclipse.core.runtime.IPath;
import org.eclipse.core.runtime.Platform;
import org.eclipse.swt.graphics.ImageData;
import org.eclipse.swt.graphics.ImageLoader;
import org.eclipse.tm.terminal.connector.local.activator.UIPlugin;
import org.eclipse.tm.terminal.connector.local.showin.interfaces.IExternalExecutablesProperties;
import org.eclipse.tm.terminal.connector.local.showin.internal.ExternalExecutablesState;
import org.eclipse.tm.terminal.view.ui.activator.UIPlugin;
import org.eclipse.tm.terminal.view.ui.interfaces.IExternalExecutablesProperties;
import org.eclipse.tm.terminal.view.ui.internal.ExternalExecutablesState;
import org.eclipse.ui.PlatformUI;
import org.eclipse.ui.services.ISourceProviderService;

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2011 - 2015 Wind River Systems, Inc. and others. All rights reserved.
* Copyright (c) 2011, 2016 Wind River Systems, Inc. and others. 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
@ -7,6 +7,7 @@
* Contributors:
* Wind River Systems - initial API and implementation
* Max Weninger (Wind River) - [361363] [TERMINALS] Implement "Pin&Clone" for the "Terminals" view
* Dirk Fauth <dirk.fauth@googlemail.com> - Bug 460496
*******************************************************************************/
package org.eclipse.tm.terminal.view.ui.nls;
@ -112,4 +113,42 @@ public class Messages extends NLS {
public static String TabFolderManager_state_closed;
public static String NoteCompositeHelper_note_label;
// showin messages
public static String ProcessConnector_error_creatingProcess;
public static String PreferencePage_label;
public static String PreferencePage_executables_label;
public static String PreferencePage_executables_column_name_label;
public static String PreferencePage_executables_column_path_label;
public static String PreferencePage_executables_button_add_label;
public static String PreferencePage_executables_button_edit_label;
public static String PreferencePage_executables_button_remove_label;
public static String PreferencePage_workingDir_label;
public static String PreferencePage_workingDir_userhome_label;
public static String PreferencePage_workingDir_eclipsehome_label;
public static String PreferencePage_workingDir_eclipsews_label;
public static String PreferencePage_workingDir_button_browse;
public static String PreferencePage_workingDir_note_label;
public static String PreferencePage_workingDir_note_text;
public static String PreferencePage_workingDir_button_variables;
public static String PreferencePage_workingDir_invalid;
public static String PreferencePage_command_label;
public static String PreferencePage_command_button_browse;
public static String PreferencePage_command_invalid;
public static String PreferencePage_command_note_label;
public static String PreferencePage_command_note_text;
public static String PreferencePage_command_arguments_label;
public static String ExternalExecutablesDialog_title_add;
public static String ExternalExecutablesDialog_title_edit;
public static String ExternalExecutablesDialog_button_add;
public static String ExternalExecutablesDialog_button_browse;
public static String ExternalExecutablesDialog_field_path;
public static String ExternalExecutablesDialog_field_name;
public static String ExternalExecutablesDialog_field_args;
public static String ExternalExecutablesDialog_field_icon;
public static String ExternalExecutablesDialog_field_translate;
}

View file

@ -73,3 +73,41 @@ TabFolderManager_state_closed=Closed
NoteCompositeHelper_note_label=Note:
# ----- showin
ProcessConnector_error_creatingProcess=Exception when creating process. Possibly caused by: {0}
ExternalExecutablesDialog_title_add=Add External Executable
ExternalExecutablesDialog_title_edit=Edit External Executable
ExternalExecutablesDialog_button_add=Add
ExternalExecutablesDialog_button_browse=Browse...
ExternalExecutablesDialog_field_path=Path:
ExternalExecutablesDialog_field_name=Name:
ExternalExecutablesDialog_field_args=Arguments:
ExternalExecutablesDialog_field_icon=Icon:
ExternalExecutablesDialog_field_translate=Translate Backslashes on Paste
# ----- Preference Pages -----
PreferencePage_label=Local Terminal Settings:
PreferencePage_executables_label="Show In ..." Custom Entries
PreferencePage_executables_column_name_label=Name
PreferencePage_executables_column_path_label=Path
PreferencePage_executables_button_add_label=Add...
PreferencePage_executables_button_edit_label=Edit...
PreferencePage_executables_button_remove_label=Remove
PreferencePage_workingDir_label=Initial Working Directory
PreferencePage_workingDir_userhome_label=User home
PreferencePage_workingDir_eclipsehome_label=Eclipse home
PreferencePage_workingDir_eclipsews_label=Eclipse workspace
PreferencePage_workingDir_button_browse=&Browse...
PreferencePage_workingDir_note_label=Note:
PreferencePage_workingDir_note_text=The chosen initial working directory might be overwritten by the current selection of the active view.
PreferencePage_workingDir_button_variables=&Variables...
PreferencePage_workingDir_invalid=Selected initial working directory is not a directory or is not readable.
PreferencePage_command_label=Shell Command
PreferencePage_command_button_browse=&Browse...
PreferencePage_command_invalid=Selected shell command is not a file or is not readable or executable.
PreferencePage_command_note_label=Note:
PreferencePage_command_note_text=Leave the shell command empty to fallback to the SHELL environment variable or if not set, to /bin/sh.
PreferencePage_command_arguments_label=Arguments:

View file

@ -7,7 +7,7 @@
* Contributors:
* Wind River Systems - initial API and implementation
*******************************************************************************/
package org.eclipse.tm.terminal.connector.local.showin.preferences;
package org.eclipse.tm.terminal.view.ui.preferences;
import java.io.File;
import java.net.URI;
@ -62,13 +62,13 @@ import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Table;
import org.eclipse.swt.widgets.TableColumn;
import org.eclipse.swt.widgets.Text;
import org.eclipse.tm.terminal.connector.local.activator.UIPlugin;
import org.eclipse.tm.terminal.connector.local.nls.Messages;
import org.eclipse.tm.terminal.connector.local.showin.ExternalExecutablesDialog;
import org.eclipse.tm.terminal.connector.local.showin.ExternalExecutablesManager;
import org.eclipse.tm.terminal.connector.local.showin.interfaces.IExternalExecutablesProperties;
import org.eclipse.tm.terminal.connector.local.showin.interfaces.IPreferenceKeys;
import org.eclipse.tm.terminal.view.ui.activator.UIPlugin;
import org.eclipse.tm.terminal.view.ui.controls.NoteCompositeHelper;
import org.eclipse.tm.terminal.view.ui.interfaces.IExternalExecutablesProperties;
import org.eclipse.tm.terminal.view.ui.interfaces.IPreferenceKeys;
import org.eclipse.tm.terminal.view.ui.local.showin.ExternalExecutablesDialog;
import org.eclipse.tm.terminal.view.ui.local.showin.ExternalExecutablesManager;
import org.eclipse.tm.terminal.view.ui.nls.Messages;
import org.eclipse.ui.IWorkbench;
import org.eclipse.ui.IWorkbenchPreferencePage;
import org.osgi.framework.Bundle;

View file

@ -1,13 +1,14 @@
/*******************************************************************************
* Copyright (c) 2011, 2015 Wind River Systems, Inc. and others. All rights reserved.
* Copyright (c) 2011, 2016 Wind River Systems, Inc. and others. 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
*
* Contributors:
* Wind River Systems - initial API and implementation
* Dirk Fauth <dirk.fauth@googlemail.com> - Bug 460496
*******************************************************************************/
package org.eclipse.tm.terminal.view.ui.internal;
package org.eclipse.tm.terminal.view.ui.preferences;
import org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer;
import org.eclipse.tm.terminal.view.core.preferences.ScopedEclipsePreferences;
@ -33,5 +34,8 @@ public class PreferencesInitializer extends AbstractPreferenceInitializer {
ScopedEclipsePreferences prefs = UIPlugin.getScopedPreferences();
prefs.putDefaultBoolean(IPreferenceKeys.PREF_REMOVE_TERMINATED_TERMINALS, true);
prefs.putDefaultString(IPreferenceKeys.PREF_LOCAL_TERMINAL_INITIAL_CWD, IPreferenceKeys.PREF_INITIAL_CWD_USER_HOME);
prefs.putDefaultString(IPreferenceKeys.PREF_LOCAL_TERMINAL_DEFAULT_SHELL_UNIX, null);
}
}