Compare commits
26 Commits
release/8.
...
APINT-3512
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
caa4b51cc4 | ||
|
|
b2fdccc3e7 | ||
|
|
da208c72f6 | ||
|
|
bd6a271805 | ||
|
|
cd5af34395 | ||
|
|
ba71689fac | ||
|
|
f6a123ad2b | ||
|
|
14d9caec2e | ||
|
|
96f177cb95 | ||
|
|
4a34141e6f | ||
|
|
9bf06c26bb | ||
|
|
51010064c7 | ||
|
|
d0a5c76459 | ||
|
|
4b308e1d34 | ||
|
|
b39332b706 | ||
|
|
556ab359d9 | ||
|
|
55f8537c15 | ||
|
|
98f0a248dc | ||
|
|
360c36b6bb | ||
|
|
c5e48b7e97 | ||
|
|
8b3040a4f6 | ||
|
|
fac09dcc63 | ||
|
|
f97757fa8e | ||
|
|
3a557a7658 | ||
|
|
00a777d477 | ||
|
|
eb661b81c5 |
@@ -4,4 +4,6 @@ bin.includes = META-INF/,\
|
||||
plugin.xml,\
|
||||
icons/,\
|
||||
icons1/,\
|
||||
.
|
||||
.,\
|
||||
resources/
|
||||
|
||||
|
||||
@@ -1,5 +1,17 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<?eclipse version="3.4"?>
|
||||
<plugin>
|
||||
|
||||
<extension
|
||||
point="org.eclipse.e4.ui.css.swt.theme">
|
||||
<stylesheet
|
||||
uri="resources/theme/light_preferencestyle.css">
|
||||
<themeid
|
||||
refid="org.talend.themes.css.talend.default"></themeid>
|
||||
</stylesheet>
|
||||
<stylesheet
|
||||
uri="resources/theme/dark_preferencestyle.css">
|
||||
<themeid
|
||||
refid="org.eclipse.e4.ui.css.theme.e4_dark"></themeid>
|
||||
</stylesheet>
|
||||
</extension>
|
||||
</plugin>
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
/* ############################## Eclipse UI properties ############################## */
|
||||
|
||||
IEclipsePreferences#org-talend-common-ui-runtime:org-talend-common-ui-runtime { /* pseudo attribute added to allow contributions without replacing this node, see Bug 466075 */
|
||||
preferences:
|
||||
'table.background=#org-eclipse-ui-workbench-DARK_BACKGROUND'
|
||||
'table.foreground=#org-eclipse-ui-workbench-DARK_FOREGROUND'
|
||||
}
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
/* ############################## Eclipse UI properties ############################## */
|
||||
|
||||
|
||||
IEclipsePreferences#org-talend-common-ui-runtime:org-talend-common-ui-runtime { /* pseudo attribute added to allow contributions without replacing this node, see Bug 466075 */
|
||||
preferences:
|
||||
'table.background=COLOR-LIST-BACKGROUND'
|
||||
'table.foreground=COLOR_LIST_FOREGROUND'
|
||||
}
|
||||
@@ -12,14 +12,22 @@
|
||||
// ============================================================================
|
||||
package org.talend.commons.ui.runtime;
|
||||
|
||||
import org.eclipse.swt.SWT;
|
||||
import org.eclipse.swt.graphics.Color;
|
||||
import org.eclipse.swt.graphics.RGB;
|
||||
import org.eclipse.swt.widgets.Display;
|
||||
|
||||
/**
|
||||
* DOC cmeng class global comment. Detailled comment
|
||||
*/
|
||||
public interface ColorConstants {
|
||||
|
||||
static final String BUNDLE_ID_COMMON_UI_RUNTIME = "org.talend.common.ui.runtime";
|
||||
|
||||
static final String KEY_TABLE_BACKGROUND = "table.background";
|
||||
|
||||
static final String KEY_TABLE_FOREGROUND = "table.foreground";
|
||||
|
||||
static final Color WHITE_COLOR = new Color(null, 255, 255, 255);
|
||||
|
||||
static final Color GREY_COLOR = new Color(null, 215, 215, 215);
|
||||
@@ -45,4 +53,14 @@ public interface ColorConstants {
|
||||
|
||||
static final Color SUCCEED_COLOR = new Color(null, 221, 242, 217);
|
||||
|
||||
static Color getTableBackgroundColor() {
|
||||
return ITalendThemeService.getColor(ColorConstants.BUNDLE_ID_COMMON_UI_RUNTIME, ColorConstants.KEY_TABLE_BACKGROUND)
|
||||
.orElse(WHITE_COLOR);
|
||||
}
|
||||
|
||||
static Color getTableForegroundColor() {
|
||||
return ITalendThemeService.getColor(ColorConstants.BUNDLE_ID_COMMON_UI_RUNTIME, ColorConstants.KEY_TABLE_FOREGROUND)
|
||||
.orElse(Display.getDefault().getSystemColor(SWT.COLOR_BLACK));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -23,6 +23,8 @@ import org.talend.commons.ui.runtime.exception.ExceptionServiceImpl;
|
||||
|
||||
public class CommonUIPlugin implements BundleActivator {
|
||||
|
||||
public static String BUNDLE_ID = "org.talend.common.ui.runtime";
|
||||
|
||||
private static Boolean fullyHeadless = null;
|
||||
|
||||
/*
|
||||
|
||||
@@ -0,0 +1,149 @@
|
||||
// ============================================================================
|
||||
//
|
||||
// Copyright (C) 2006-2022 Talend Inc. - www.talend.com
|
||||
//
|
||||
// This source code is available under agreement available at
|
||||
// %InstallDIR%\features\org.talend.rcp.branding.%PRODUCTNAME%\%PRODUCTNAME%license.txt
|
||||
//
|
||||
// You should have received a copy of the agreement
|
||||
// along with this program; if not, write to Talend SA
|
||||
// 9 rue Pages 92150 Suresnes, France
|
||||
//
|
||||
// ============================================================================
|
||||
package org.talend.commons.ui.runtime;
|
||||
|
||||
import java.util.Optional;
|
||||
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
import org.eclipse.jface.util.IPropertyChangeListener;
|
||||
import org.eclipse.swt.graphics.Color;
|
||||
import org.osgi.framework.BundleContext;
|
||||
import org.osgi.framework.FrameworkUtil;
|
||||
import org.osgi.framework.ServiceReference;
|
||||
import org.talend.commons.exception.ExceptionHandler;
|
||||
|
||||
/**
|
||||
* DOC cmeng class global comment. Detailled comment
|
||||
*/
|
||||
public interface ITalendThemeService {
|
||||
|
||||
public static String DEFAULT_PREFERENCE_ID = "org.eclipse.ui.workbench";
|
||||
|
||||
/**
|
||||
* Get color from instance scope preference of default bundleId, which managed by theme; the standard way eclipse
|
||||
* uses
|
||||
*
|
||||
* @param prop
|
||||
* @return the Color, <font color="red">please <b>DON'T</b> dispose it, it is managed by JFaceResources</font>
|
||||
*/
|
||||
static Optional<Color> getColor(String prop) {
|
||||
return getColor(DEFAULT_PREFERENCE_ID, prop);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get color from instance scope preference of bundleId, which managed by theme; the standard way eclipse uses
|
||||
*
|
||||
* @param bundleId the instance scope preference which stores the prop
|
||||
* @param prop
|
||||
* @return the Color, <font color="red">please <b>DON'T</b> dispose it, it is managed by JFaceResources</font>
|
||||
*/
|
||||
static Optional<Color> getColor(String bundleId, String prop) {
|
||||
ITalendThemeService theme = get();
|
||||
if (theme != null) {
|
||||
return Optional.ofNullable(theme.getColorForTheme(bundleId, prop));
|
||||
}
|
||||
return Optional.ofNullable(null);
|
||||
}
|
||||
|
||||
Color getColorForTheme(String bundleId, String prop);
|
||||
|
||||
/**
|
||||
* Get property from instance scope preference of default bundleId, which managed by theme; the standard way eclipse
|
||||
* uses
|
||||
*
|
||||
* @param key
|
||||
* @return
|
||||
*/
|
||||
static Optional<String> getProperty(String key) {
|
||||
return getProperty(DEFAULT_PREFERENCE_ID, key);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get property from instance scope preference of bundleId, which managed by theme; the standard way eclipse uses
|
||||
*
|
||||
* @param bundleId the instance scope preference which stores the key
|
||||
* @param key
|
||||
* @return
|
||||
*/
|
||||
static Optional<String> getProperty(String bundleId, String key) {
|
||||
ITalendThemeService theme = get();
|
||||
String value = null;
|
||||
if (theme != null) {
|
||||
value = theme.getPropertyForTheme(bundleId, key);
|
||||
}
|
||||
if (StringUtils.isBlank(value)) {
|
||||
return Optional.ofNullable(null);
|
||||
} else {
|
||||
return Optional.ofNullable(value);
|
||||
}
|
||||
}
|
||||
|
||||
String getPropertyForTheme(String bundleId, String key);
|
||||
|
||||
static void addPropertyChangeListener(IPropertyChangeListener listener) {
|
||||
ITalendThemeService theme = get();
|
||||
if (theme != null) {
|
||||
theme.addPropertyChangeListenerFor(DEFAULT_PREFERENCE_ID, listener);
|
||||
}
|
||||
}
|
||||
|
||||
static void addPropertyChangeListener(String bundleId, IPropertyChangeListener listener) {
|
||||
ITalendThemeService theme = get();
|
||||
if (theme != null) {
|
||||
theme.addPropertyChangeListenerFor(bundleId, listener);
|
||||
}
|
||||
}
|
||||
|
||||
void addPropertyChangeListenerFor(String bundleId, IPropertyChangeListener listener);
|
||||
|
||||
static boolean containsPropertyChangeListener(String bundleId, IPropertyChangeListener listener) {
|
||||
ITalendThemeService theme = get();
|
||||
if (theme != null) {
|
||||
return theme.containsPropertyChangeListenerFor(bundleId, listener);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
boolean containsPropertyChangeListenerFor(String bundleId, IPropertyChangeListener listener);
|
||||
|
||||
static void removePropertyChangeListener(IPropertyChangeListener listener) {
|
||||
ITalendThemeService theme = get();
|
||||
if (theme != null) {
|
||||
theme.removePropertyChangeListenerFor(DEFAULT_PREFERENCE_ID, listener);
|
||||
}
|
||||
}
|
||||
|
||||
static void removePropertyChangeListener(String bundleId, IPropertyChangeListener listener) {
|
||||
ITalendThemeService theme = get();
|
||||
if (theme != null) {
|
||||
theme.removePropertyChangeListenerFor(bundleId, listener);
|
||||
}
|
||||
}
|
||||
|
||||
void removePropertyChangeListenerFor(String bundleId, IPropertyChangeListener listener);
|
||||
|
||||
static ITalendThemeService get() {
|
||||
try {
|
||||
BundleContext bc = FrameworkUtil.getBundle(ITalendThemeService.class).getBundleContext();
|
||||
ServiceReference<ITalendThemeService> serviceReference = bc.getServiceReference(ITalendThemeService.class);
|
||||
if (serviceReference == null) {
|
||||
return null;
|
||||
}
|
||||
return bc.getService(serviceReference);
|
||||
} catch (Exception e) {
|
||||
ExceptionHandler.process(e);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -57,6 +57,8 @@ import org.eclipse.swt.widgets.Listener;
|
||||
import org.eclipse.swt.widgets.Table;
|
||||
import org.eclipse.swt.widgets.TableColumn;
|
||||
import org.eclipse.swt.widgets.TableItem;
|
||||
import org.talend.commons.ui.runtime.ColorConstants;
|
||||
import org.talend.commons.ui.runtime.ITalendThemeService;
|
||||
import org.talend.commons.ui.runtime.i18n.Messages;
|
||||
import org.talend.commons.ui.runtime.swt.proposal.IShowInvisibleCellEditorMethods;
|
||||
import org.talend.commons.ui.runtime.swt.tableviewer.behavior.DefaultHeaderColumnSelectionListener;
|
||||
@@ -291,7 +293,8 @@ public class TableViewerCreatorNotModifiable<B> {
|
||||
public TableViewerCreatorNotModifiable(Composite compositeParent) {
|
||||
super();
|
||||
this.compositeParent = compositeParent;
|
||||
this.emptyZoneColor = compositeParent.getDisplay().getSystemColor(SWT.COLOR_WHITE);
|
||||
this.emptyZoneColor = ITalendThemeService.getColor("org.talend.commons.ui.BgColorForEmptyArea")
|
||||
.orElse(compositeParent.getDisplay().getSystemColor(SWT.COLOR_WHITE));
|
||||
|
||||
}
|
||||
|
||||
@@ -669,8 +672,22 @@ public class TableViewerCreatorNotModifiable<B> {
|
||||
table.addListener(SWTFacade.Paint, paintListener);
|
||||
}
|
||||
|
||||
setBackgroundColor(backgroundColor != null ? backgroundColor : table.getDisplay().getSystemColor(SWT.COLOR_WHITE));
|
||||
setForegroundColor(foregroundColor != null ? foregroundColor : table.getDisplay().getSystemColor(SWT.COLOR_BLACK));
|
||||
Color prefBackgroundColor = backgroundColor;
|
||||
if (prefBackgroundColor == null) {
|
||||
prefBackgroundColor = ColorConstants.getTableBackgroundColor();
|
||||
if (prefBackgroundColor == null) {
|
||||
prefBackgroundColor = table.getDisplay().getSystemColor(SWT.COLOR_WHITE);
|
||||
}
|
||||
}
|
||||
Color prefForegroundColor = foregroundColor;
|
||||
if (prefForegroundColor == null) {
|
||||
prefForegroundColor = ColorConstants.getTableForegroundColor();
|
||||
if (prefForegroundColor == null) {
|
||||
prefForegroundColor = table.getDisplay().getSystemColor(SWT.COLOR_BLACK);
|
||||
}
|
||||
}
|
||||
setBackgroundColor(prefBackgroundColor);
|
||||
setForegroundColor(prefForegroundColor);
|
||||
|
||||
if (useCustomItemColoring) {
|
||||
setUseCustomItemColoring(true);
|
||||
|
||||
@@ -12,9 +12,14 @@
|
||||
// ============================================================================
|
||||
package org.talend.commons.ui.runtime.utils;
|
||||
|
||||
import org.eclipse.jface.resource.ColorRegistry;
|
||||
import org.eclipse.jface.resource.DataFormatException;
|
||||
import org.eclipse.jface.resource.JFaceResources;
|
||||
import org.eclipse.jface.resource.StringConverter;
|
||||
import org.eclipse.swt.SWT;
|
||||
import org.eclipse.swt.graphics.Color;
|
||||
import org.eclipse.swt.graphics.Device;
|
||||
import org.eclipse.swt.graphics.RGB;
|
||||
import org.eclipse.swt.widgets.Display;
|
||||
|
||||
/**
|
||||
@@ -102,4 +107,16 @@ public class TalendColorPalette {
|
||||
public static final java.awt.Color TERTIARY_ORANGE_AWT = new java.awt.Color(244, 175, 128);
|
||||
|
||||
public static final java.awt.Color TERTIARY_YELLOW_AWT = new java.awt.Color(255, 217, 143);
|
||||
|
||||
public static Color convertToColor(String rgbStr) throws DataFormatException {
|
||||
ColorRegistry colorRegistry = JFaceResources.getColorRegistry();
|
||||
Color color = colorRegistry.get(rgbStr);
|
||||
if (color != null) {
|
||||
return color;
|
||||
}
|
||||
RGB rgb = StringConverter.asRGB(rgbStr);
|
||||
colorRegistry.put(rgbStr, rgb);
|
||||
return colorRegistry.get(rgbStr);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -20,12 +20,14 @@ import org.eclipse.jface.viewers.TableViewer;
|
||||
import org.eclipse.swt.SWT;
|
||||
import org.eclipse.swt.events.DisposeEvent;
|
||||
import org.eclipse.swt.events.DisposeListener;
|
||||
import org.eclipse.swt.graphics.Color;
|
||||
import org.eclipse.swt.layout.GridData;
|
||||
import org.eclipse.swt.layout.RowLayout;
|
||||
import org.eclipse.swt.widgets.Composite;
|
||||
import org.eclipse.swt.widgets.Event;
|
||||
import org.eclipse.swt.widgets.Listener;
|
||||
import org.eclipse.swt.widgets.Table;
|
||||
import org.talend.commons.ui.runtime.ITalendThemeService;
|
||||
import org.talend.commons.ui.runtime.swt.tableviewer.TableViewerCreatorNotModifiable.LAYOUT_MODE;
|
||||
import org.talend.commons.ui.runtime.swt.tableviewer.selection.ILineSelectionListener;
|
||||
import org.talend.commons.ui.runtime.swt.tableviewer.selection.LineSelectionEvent;
|
||||
@@ -156,6 +158,7 @@ public abstract class AbstractExtendedTableViewer<B> extends AbstractExtendedCon
|
||||
final Table table = getTableViewerCreator().getTable();
|
||||
final ILineSelectionListener beforeLineSelectionListener = new ILineSelectionListener() {
|
||||
|
||||
@Override
|
||||
public void handle(LineSelectionEvent e) {
|
||||
if (e.selectionByMethod && !selectionHelper.isMouseSelectionning() && !forceExecuteSelectionEvent) {
|
||||
executeSelectionEvent = false;
|
||||
@@ -166,6 +169,7 @@ public abstract class AbstractExtendedTableViewer<B> extends AbstractExtendedCon
|
||||
};
|
||||
final ILineSelectionListener afterLineSelectionListener = new ILineSelectionListener() {
|
||||
|
||||
@Override
|
||||
public void handle(LineSelectionEvent e) {
|
||||
executeSelectionEvent = true;
|
||||
}
|
||||
@@ -175,6 +179,7 @@ public abstract class AbstractExtendedTableViewer<B> extends AbstractExtendedCon
|
||||
|
||||
DisposeListener disposeListener = new DisposeListener() {
|
||||
|
||||
@Override
|
||||
public void widgetDisposed(DisposeEvent e) {
|
||||
selectionHelper.removeBeforeSelectionListener(beforeLineSelectionListener);
|
||||
selectionHelper.removeAfterSelectionListener(afterLineSelectionListener);
|
||||
@@ -185,6 +190,7 @@ public abstract class AbstractExtendedTableViewer<B> extends AbstractExtendedCon
|
||||
|
||||
table.addListener(SWT.KeyUp, new Listener() {
|
||||
|
||||
@Override
|
||||
public void handleEvent(Event event) {
|
||||
|
||||
if (event.character == '\u0001') { // CTRL + A
|
||||
@@ -251,7 +257,9 @@ public abstract class AbstractExtendedTableViewer<B> extends AbstractExtendedCon
|
||||
newTableViewerCreator.setLazyLoad(TableViewerCreator.getRecommandLazyLoad());
|
||||
newTableViewerCreator.setFirstVisibleColumnIsSelection(false);
|
||||
newTableViewerCreator.setCheckboxInFirstColumn(false);
|
||||
newTableViewerCreator.setBgColorForEmptyArea(getParentComposite().getDisplay().getSystemColor(SWT.COLOR_WHITE));
|
||||
Color bgColorForEmptyArea = ITalendThemeService.getColor("org.talend.commons.ui.BgColorForEmptyArea")
|
||||
.orElse(getParentComposite().getDisplay().getSystemColor(SWT.COLOR_WHITE));
|
||||
newTableViewerCreator.setBgColorForEmptyArea(bgColorForEmptyArea);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -271,6 +279,7 @@ public abstract class AbstractExtendedTableViewer<B> extends AbstractExtendedCon
|
||||
|
||||
getExtendedTableModel().addBeforeOperationListListener(1, new IListenableListListener() {
|
||||
|
||||
@Override
|
||||
public void handleEvent(ListenableListEvent event) {
|
||||
handleBeforeListenableListOperationEvent(event);
|
||||
}
|
||||
@@ -279,6 +288,7 @@ public abstract class AbstractExtendedTableViewer<B> extends AbstractExtendedCon
|
||||
|
||||
getExtendedTableModel().addAfterOperationListListener(1, new IListenableListListener() {
|
||||
|
||||
@Override
|
||||
public void handleEvent(ListenableListEvent event) {
|
||||
handleAfterListenableListOperationEvent(event);
|
||||
}
|
||||
@@ -287,6 +297,7 @@ public abstract class AbstractExtendedTableViewer<B> extends AbstractExtendedCon
|
||||
|
||||
getExtendedTableModel().addAfterOperationListListener(100, new IListenableListListener<B>() {
|
||||
|
||||
@Override
|
||||
public void handleEvent(ListenableListEvent<B> event) {
|
||||
if (tableViewerCreator.getTable() != null && !tableViewerCreator.getTable().isDisposed()) {
|
||||
// tableViewerCreator.getTable().forceFocus();
|
||||
@@ -368,6 +379,7 @@ public abstract class AbstractExtendedTableViewer<B> extends AbstractExtendedCon
|
||||
tableViewerCreator.setInputList(getBeansList());
|
||||
new AsynchronousThreading(100, true, tableViewerCreator.getTable().getDisplay(), new Runnable() {
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
tableViewerCreator.layout();
|
||||
}
|
||||
|
||||
@@ -67,6 +67,7 @@ import org.talend.core.model.repository.Folder;
|
||||
import org.talend.core.model.repository.IRepositoryViewObject;
|
||||
import org.talend.core.model.repository.LockInfo;
|
||||
import org.talend.core.model.repository.RepositoryViewObject;
|
||||
import org.talend.core.model.routines.RoutinesUtil;
|
||||
import org.talend.core.repository.i18n.Messages;
|
||||
import org.talend.core.repository.utils.XmiResourceManager;
|
||||
import org.talend.core.runtime.CoreRuntimePlugin;
|
||||
@@ -260,6 +261,7 @@ public abstract class AbstractEMFRepositoryFactory extends AbstractRepositoryFac
|
||||
if (type == ERepositoryObjectType.METADATA_CON_TABLE) {
|
||||
return false;
|
||||
}
|
||||
|
||||
boolean isAllowMultipleName = (type == ERepositoryObjectType.SQLPATTERNS || type == ERepositoryObjectType.METADATA_FILE_XML);
|
||||
String path = "";
|
||||
if (item.getState() != null) {
|
||||
|
||||
@@ -52,6 +52,8 @@ public interface IGitInfoService extends IService {
|
||||
public Map<String, String> getGitInfo(Property property) throws Exception;
|
||||
|
||||
public boolean isPushedToRemote(Property property) throws Exception;
|
||||
|
||||
public String getProjectBranch(Project project)throws Exception;
|
||||
|
||||
public static IGitInfoService get() {
|
||||
if (GlobalServiceRegister.getDefault().isServiceRegistered(IGitInfoService.class)) {
|
||||
|
||||
@@ -17,14 +17,20 @@ import java.util.Map;
|
||||
|
||||
import org.eclipse.jface.resource.ImageDescriptor;
|
||||
import org.eclipse.jface.resource.JFaceResources;
|
||||
import org.eclipse.jface.util.IPropertyChangeListener;
|
||||
import org.eclipse.jface.util.PropertyChangeEvent;
|
||||
import org.eclipse.jface.viewers.IColorProvider;
|
||||
import org.eclipse.jface.viewers.IFontProvider;
|
||||
import org.eclipse.jface.viewers.LabelProvider;
|
||||
import org.eclipse.jface.viewers.TreeViewer;
|
||||
import org.eclipse.swt.graphics.Color;
|
||||
import org.eclipse.swt.graphics.Font;
|
||||
import org.eclipse.swt.graphics.Image;
|
||||
import org.eclipse.swt.widgets.Control;
|
||||
import org.eclipse.swt.widgets.Display;
|
||||
import org.talend.commons.runtime.model.repository.ECDCStatus;
|
||||
import org.talend.commons.runtime.model.repository.ERepositoryStatus;
|
||||
import org.talend.commons.ui.runtime.ITalendThemeService;
|
||||
import org.talend.commons.ui.runtime.image.ECoreImage;
|
||||
import org.talend.commons.ui.runtime.image.EImage;
|
||||
import org.talend.commons.ui.runtime.image.IImage;
|
||||
@@ -77,13 +83,19 @@ import org.talend.utils.string.DigestUtil;
|
||||
*/
|
||||
public class RepositoryLabelProvider extends LabelProvider implements IColorProvider, IFontProvider {
|
||||
|
||||
private static final Color STABLE_SECONDARY_ENTRY_COLOR = new Color(null, 100, 100, 100);
|
||||
private static final String MERGED_PREFERENCED_ITEMS = "org.talend.core.repository.REPO_MERGED_REFERENCED_ITEMS_COLOR";
|
||||
|
||||
private static final Color STABLE_PRIMARY_ENTRY_COLOR = new Color(null, 0, 0, 0);
|
||||
private static final String LOCKED_ENTRY = "org.talend.core.repository.REPO_LOCKED_ENTRY";
|
||||
|
||||
private static final String STABLE_PRIMARY_ENTRY = "org.talend.core.repository.REPO_STABLE_PRIMARY_ENTRY_COLOR";
|
||||
|
||||
private static final String STABLE_SECONDARY_ENTRY = "org.talend.core.repository.REPO_STABLE_SECONDARY_ENTRY_COLOR";
|
||||
|
||||
private static final Color STABLE_SECONDARY_ENTRY_COLOR = new Color(null, 100, 100, 100);
|
||||
|
||||
protected static final Color INACTIVE_ENTRY_COLOR = new Color(null, 200, 200, 200);
|
||||
|
||||
private static final Color LOCKED_ENTRY = new Color(null, 200, 0, 0);
|
||||
private static final Color LOCKED_ENTRY_COLOR = new Color(null, 200, 0, 0);
|
||||
|
||||
private static final Color MERGED_REFERENCED_ITEMS_COLOR = new Color(null, 120, 120, 120);
|
||||
|
||||
@@ -100,6 +112,18 @@ public class RepositoryLabelProvider extends LabelProvider implements IColorProv
|
||||
return view;
|
||||
}
|
||||
|
||||
private Color getStableSecondaryEntryColor() {
|
||||
return ITalendThemeService.getColor(STABLE_SECONDARY_ENTRY).orElse(STABLE_SECONDARY_ENTRY_COLOR);
|
||||
}
|
||||
|
||||
private Color getLockedEntryColor() {
|
||||
return ITalendThemeService.getColor(LOCKED_ENTRY).orElse(LOCKED_ENTRY_COLOR);
|
||||
}
|
||||
|
||||
private Color getMergedReferencedItemsColor() {
|
||||
return ITalendThemeService.getColor(MERGED_PREFERENCED_ITEMS).orElse(MERGED_REFERENCED_ITEMS_COLOR);
|
||||
}
|
||||
|
||||
public String getText(IRepositoryViewObject object) {
|
||||
StringBuffer string = new StringBuffer();
|
||||
string.append(object.getLabel());
|
||||
@@ -482,23 +506,13 @@ public class RepositoryLabelProvider extends LabelProvider implements IColorProv
|
||||
RepositoryNode node = (RepositoryNode) element;
|
||||
switch (node.getType()) {
|
||||
case REFERENCED_PROJECT:
|
||||
return STABLE_PRIMARY_ENTRY_COLOR;
|
||||
case STABLE_SYSTEM_FOLDER:
|
||||
if (node.getLabel().equals(ERepositoryObjectType.SNIPPETS.toString())) {
|
||||
return INACTIVE_ENTRY_COLOR;
|
||||
}
|
||||
if (node.getContentType() == ERepositoryObjectType.METADATA) {
|
||||
return STABLE_PRIMARY_ENTRY_COLOR;
|
||||
}
|
||||
case SYSTEM_FOLDER:
|
||||
if (node.getContentType() == ERepositoryObjectType.PROCESS) {
|
||||
return STABLE_PRIMARY_ENTRY_COLOR;
|
||||
}
|
||||
return STABLE_SECONDARY_ENTRY_COLOR;
|
||||
return getStableSecondaryEntryColor();
|
||||
default:
|
||||
ERepositoryStatus repositoryStatus = node.getObject().getRepositoryStatus();
|
||||
if (repositoryStatus == ERepositoryStatus.LOCK_BY_OTHER) {
|
||||
return LOCKED_ENTRY;
|
||||
return getLockedEntryColor();
|
||||
} else {
|
||||
if (PluginChecker.isRefProjectLoaded()) {
|
||||
IReferencedProjectService service = (IReferencedProjectService) GlobalServiceRegister.getDefault()
|
||||
@@ -510,7 +524,7 @@ public class RepositoryLabelProvider extends LabelProvider implements IColorProv
|
||||
.getCurrentProject().getEmfProject();
|
||||
String projectLabel = object.getProjectLabel();
|
||||
if (!mainProject.getLabel().equals(projectLabel)) {
|
||||
return MERGED_REFERENCED_ITEMS_COLOR;
|
||||
return getMergedReferencedItemsColor();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -536,4 +550,43 @@ public class RepositoryLabelProvider extends LabelProvider implements IColorProv
|
||||
refreshProperty = refresh;
|
||||
}
|
||||
|
||||
public static IPropertyChangeListener createPropertyChangeListener(TreeViewer treeViewer) {
|
||||
return new IPropertyChangeListener() {
|
||||
|
||||
@Override
|
||||
public void propertyChange(PropertyChangeEvent event) {
|
||||
String property = event.getProperty();
|
||||
if (property == null) {
|
||||
return;
|
||||
}
|
||||
boolean changed = false;
|
||||
switch (property) {
|
||||
case RepositoryLabelProvider.STABLE_PRIMARY_ENTRY:
|
||||
// case RepositoryLabelProvider.INACTIVE_ENTRY:
|
||||
// case RepositoryLabelProvider.LOCKED_ENTRY:
|
||||
// case RepositoryLabelProvider.MERGED_PREFERENCED_ITEMS:
|
||||
// case RepositoryLabelProvider.STABLE_SECONDARY_ENTRY:
|
||||
changed = true;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
if (changed) {
|
||||
Display.getDefault().asyncExec(new Runnable() {
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
if (treeViewer != null) {
|
||||
Control control = treeViewer.getControl();
|
||||
if (!control.isDisposed()) {
|
||||
treeViewer.refresh();
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -16,6 +16,7 @@ import java.io.File;
|
||||
import java.io.IOException;
|
||||
import java.net.URI;
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
|
||||
@@ -157,7 +158,7 @@ public interface ILibraryManagerService extends IService {
|
||||
|
||||
public void clearCache(boolean cleanIndex);
|
||||
|
||||
public void deployLibsFromCustomComponents();
|
||||
public void deployLibsFromCustomComponents(File componentFolder, List<ModuleNeeded> modulesNeeded);
|
||||
|
||||
@Deprecated
|
||||
public Set<String> list(boolean withComponent, IProgressMonitor... monitorWrap);
|
||||
|
||||
@@ -24,7 +24,7 @@ import org.talend.core.database.conn.version.EDatabaseVersion4Drivers;
|
||||
*/
|
||||
public enum ERedshiftDriver {
|
||||
|
||||
DRIVER_V2("Driver v2", new String[] { "redshift-jdbc42-2.1.0.3.jar" }),
|
||||
DRIVER_V2("Driver v2", new String[] { "redshift-jdbc42-2.1.0.10.jar" }),
|
||||
DRIVER_V1("Driver v1", new String[] { "redshift-jdbc42-no-awssdk-1.2.55.1083.jar" });
|
||||
|
||||
private String displayName;
|
||||
|
||||
@@ -35,17 +35,12 @@ public enum EDatabaseVersion4Drivers {
|
||||
ORACLE_18(new DbVersion4Drivers(new EDatabaseTypeName[] { EDatabaseTypeName.ORACLEFORSID, EDatabaseTypeName.ORACLESN,
|
||||
EDatabaseTypeName.ORACLE_OCI, EDatabaseTypeName.ORACLE_CUSTOM }, "Oracle 18 and above", "ORACLE_18", "ojdbc8-19.3.0.0.jar")),
|
||||
ORACLE_12(new DbVersion4Drivers(new EDatabaseTypeName[] { EDatabaseTypeName.ORACLEFORSID, EDatabaseTypeName.ORACLESN,
|
||||
EDatabaseTypeName.ORACLE_OCI, EDatabaseTypeName.ORACLE_CUSTOM }, "Oracle 12", "ORACLE_12", "ojdbc7.jar")),
|
||||
EDatabaseTypeName.ORACLE_OCI, EDatabaseTypeName.ORACLE_CUSTOM }, "Oracle 12 (Deprecated)", "ORACLE_12",
|
||||
"ojdbc7.jar")),
|
||||
ORACLE_11(new DbVersion4DriversForOracle11(new EDatabaseTypeName[] { EDatabaseTypeName.ORACLEFORSID,
|
||||
EDatabaseTypeName.ORACLESN, EDatabaseTypeName.ORACLE_OCI, EDatabaseTypeName.ORACLE_CUSTOM },
|
||||
"Oracle 11", "ORACLE_11", new String[] { DbVersion4DriversForOracle11.DRIVER_1_5, //$NON-NLS-1$ //$NON-NLS-2$
|
||||
"Oracle 11 (Deprecated)", "ORACLE_11", new String[] { DbVersion4DriversForOracle11.DRIVER_1_5, //$NON-NLS-1$ //$NON-NLS-2$
|
||||
DbVersion4DriversForOracle11.DRIVER_1_6 })),
|
||||
ORACLE_10(new DbVersion4Drivers(new EDatabaseTypeName[] { EDatabaseTypeName.ORACLEFORSID, EDatabaseTypeName.ORACLESN,
|
||||
EDatabaseTypeName.ORACLE_OCI, EDatabaseTypeName.ORACLE_CUSTOM }, "Oracle 10", "ORACLE_10", "ojdbc14.jar")), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
|
||||
ORACLE_9(new DbVersion4Drivers(new EDatabaseTypeName[] { EDatabaseTypeName.ORACLEFORSID, EDatabaseTypeName.ORACLESN,
|
||||
EDatabaseTypeName.ORACLE_OCI, EDatabaseTypeName.ORACLE_CUSTOM }, "Oracle 9", "ORACLE_9", "ojdbc14-9i.jar")), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
|
||||
ORACLE_8(new DbVersion4Drivers(new EDatabaseTypeName[] { EDatabaseTypeName.ORACLEFORSID, EDatabaseTypeName.ORACLESN,
|
||||
EDatabaseTypeName.ORACLE_OCI, EDatabaseTypeName.ORACLE_CUSTOM }, "Oracle 8", "ORACLE_8", "ojdbc12.jar")), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
|
||||
// AS400
|
||||
AS400_V7R1_V7R3(new DbVersion4Drivers(EDatabaseTypeName.AS400, "V7R1 to V7R3", "AS400_V7R1_V7R3", "jt400-9.8.jar")), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
|
||||
AS400_V6R1_V7R2(new DbVersion4Drivers(EDatabaseTypeName.AS400, "V6R1 to V7R2", "AS400_V6R1_V7R2", "jt400_V6R1.jar")), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
|
||||
@@ -60,7 +55,7 @@ public enum EDatabaseVersion4Drivers {
|
||||
|
||||
//
|
||||
JAVADB_EMBEDED(new DbVersion4Drivers(EDatabaseTypeName.JAVADB_EMBEDED, "derby.jar")), //$NON-NLS-1$
|
||||
SQLITE(new DbVersion4Drivers(EDatabaseTypeName.SQLITE, "sqlitejdbc-v056.jar")), //$NON-NLS-1$
|
||||
SQLITE(new DbVersion4Drivers(EDatabaseTypeName.SQLITE, "sqlite-jdbc-3.40.0.0.jar")), //$NON-NLS-1$
|
||||
FIREBIRD(new DbVersion4Drivers(EDatabaseTypeName.FIREBIRD, "jaybird-full-2.1.1.jar")), //$NON-NLS-1$
|
||||
TERADATA(new DbVersion4Drivers(EDatabaseTypeName.TERADATA,
|
||||
new String[] { "terajdbc4-17.10.00.27.jar" })), //$NON-NLS-1$
|
||||
|
||||
@@ -1115,7 +1115,9 @@ public class RepositoryToComponentProperty {
|
||||
|| EDatabaseConnTemplate.SAPHana.getDBDisplayName().equals(databaseType)
|
||||
|| EDatabaseConnTemplate.MSSQL.getDBDisplayName().equals(databaseType)) {
|
||||
if (dbVersionString != null) {
|
||||
driverValue = dbVersionString.toUpperCase();
|
||||
if (EDatabaseVersion4Drivers.getDbVersionName(databaseType, dbVersionString) != null) {
|
||||
driverValue = dbVersionString.toUpperCase();
|
||||
}
|
||||
}
|
||||
}
|
||||
if (isContextMode(connection, dbVersionString)) {
|
||||
|
||||
@@ -116,7 +116,7 @@ public class ModuleAccessHelper {
|
||||
if (allow != null) {
|
||||
return Boolean.valueOf(allow);
|
||||
}
|
||||
if (CommonsPlugin.isTUJTest() || CommonsPlugin.isJUnitTest() || CommonsPlugin.isJunitWorking()) {
|
||||
if (CommonsPlugin.isJUnitTest() || CommonsPlugin.isJunitWorking()) {
|
||||
return true;
|
||||
}
|
||||
Project project;
|
||||
@@ -135,15 +135,15 @@ public class ModuleAccessHelper {
|
||||
if (property == null) {
|
||||
return Collections.emptySet();
|
||||
}
|
||||
if (!allowJavaInternalAcess(property)) {
|
||||
return Collections.emptySet();
|
||||
}
|
||||
if (isPreviewProcess(processor)) {
|
||||
// add all for preview process
|
||||
return getProperties().entrySet().stream().filter(en -> StringUtils.isNotBlank((String) en.getValue()))
|
||||
.flatMap(en -> getModules((String) en.getKey()).stream()).collect(Collectors.toSet());
|
||||
|
||||
}
|
||||
if (!allowJavaInternalAcess(property)) {
|
||||
return Collections.emptySet();
|
||||
}
|
||||
ProcessItem mainJobItem = (ProcessItem) property.getItem();
|
||||
Set<JobInfo> allJobInfos = new HashSet<>();
|
||||
allJobInfos.add(new JobInfo(mainJobItem, mainJobItem.getProcess().getDefaultContext()));
|
||||
|
||||
@@ -82,6 +82,7 @@ import org.eclipse.nebula.widgets.nattable.viewport.ViewportLayer;
|
||||
import org.eclipse.swt.SWT;
|
||||
import org.eclipse.swt.events.MouseEvent;
|
||||
import org.eclipse.swt.events.MouseListener;
|
||||
import org.eclipse.swt.graphics.Color;
|
||||
import org.eclipse.swt.graphics.Font;
|
||||
import org.eclipse.swt.graphics.GC;
|
||||
import org.eclipse.swt.graphics.Point;
|
||||
@@ -89,6 +90,7 @@ import org.eclipse.swt.widgets.Composite;
|
||||
import org.eclipse.swt.widgets.Control;
|
||||
import org.eclipse.swt.widgets.Event;
|
||||
import org.talend.commons.exception.PersistenceException;
|
||||
import org.talend.commons.ui.runtime.ColorConstants;
|
||||
import org.talend.core.GlobalServiceRegister;
|
||||
import org.talend.core.model.process.IContext;
|
||||
import org.talend.core.model.process.IContextManager;
|
||||
@@ -306,14 +308,15 @@ public class ContextTreeTable {
|
||||
|
||||
attachCheckColumnTip(natTable);
|
||||
|
||||
final Color backgroundColor = ColorConstants.getTableBackgroundColor();
|
||||
// global settings only effect on body and default region, so should set other regions' color separately.
|
||||
natTable.setBackground(GUIHelper.COLOR_WHITE);
|
||||
natTable.setBackground(backgroundColor);
|
||||
natTable.addConfiguration(new AbstractRegistryConfiguration() {
|
||||
|
||||
@Override
|
||||
public void configureRegistry(IConfigRegistry configRegistry) {
|
||||
Style cellStyle = new Style();
|
||||
cellStyle.setAttributeValue(CellStyleAttributes.BACKGROUND_COLOR, GUIHelper.COLOR_WHITE);
|
||||
cellStyle.setAttributeValue(CellStyleAttributes.BACKGROUND_COLOR, backgroundColor);
|
||||
configRegistry.registerConfigAttribute(CellConfigAttributes.CELL_STYLE, cellStyle, DisplayMode.NORMAL,
|
||||
GridRegion.COLUMN_HEADER);
|
||||
configRegistry.registerConfigAttribute(CellConfigAttributes.CELL_STYLE, cellStyle, DisplayMode.NORMAL,
|
||||
@@ -550,8 +553,8 @@ public class ContextTreeTable {
|
||||
private void addCustomSelectionBehaviour(SelectionLayer layer) {
|
||||
// need control the selection style when select the rows.
|
||||
DefaultSelectionStyleConfiguration selectStyleConfig = new DefaultSelectionStyleConfiguration();
|
||||
selectStyleConfig.selectedHeaderBgColor = GUIHelper.COLOR_WIDGET_BACKGROUND;
|
||||
selectStyleConfig.selectedHeaderFgColor = GUIHelper.COLOR_BLACK;
|
||||
selectStyleConfig.selectedHeaderBgColor = ColorConstants.getTableBackgroundColor();
|
||||
selectStyleConfig.selectedHeaderFgColor = ColorConstants.getTableForegroundColor();
|
||||
selectStyleConfig.selectedHeaderFont = GUIHelper.DEFAULT_FONT;
|
||||
layer.addConfiguration(selectStyleConfig);
|
||||
}
|
||||
|
||||
@@ -24,6 +24,7 @@ import org.eclipse.swt.layout.GridLayout;
|
||||
import org.eclipse.swt.widgets.Composite;
|
||||
import org.eclipse.swt.widgets.Label;
|
||||
import org.eclipse.swt.widgets.Text;
|
||||
import org.talend.commons.ui.runtime.ColorConstants;
|
||||
import org.talend.commons.ui.runtime.exception.ExceptionHandler;
|
||||
import org.talend.commons.ui.runtime.swt.calendar.SWTCalendarWithTime;
|
||||
import org.talend.commons.ui.swt.proposal.ContentProposalAdapterExtended;
|
||||
@@ -61,7 +62,7 @@ public class PatternCalendar extends SWTCalendarWithTime {
|
||||
gridLayout.marginHeight = 5;
|
||||
composite.setLayout(gridLayout);
|
||||
composite.setLayoutData(new GridData(GridData.FILL_BOTH));
|
||||
composite.setBackground(getDisplay().getSystemColor(SWT.COLOR_WHITE));
|
||||
composite.setBackground(ColorConstants.getTableBackgroundColor());
|
||||
|
||||
Label patternLabel = new Label(composite, SWT.NONE);
|
||||
patternLabel.setText(Messages.getString("PatternCalendar.pattern")); //$NON-NLS-1$
|
||||
@@ -71,6 +72,7 @@ public class PatternCalendar extends SWTCalendarWithTime {
|
||||
patternText.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
|
||||
patternText.addModifyListener(new ModifyListener() {
|
||||
|
||||
@Override
|
||||
public void modifyText(ModifyEvent e) {
|
||||
onPatternChange();
|
||||
}
|
||||
|
||||
@@ -43,6 +43,7 @@ import org.eclipse.nebula.widgets.nattable.util.GUIHelper;
|
||||
import org.eclipse.swt.graphics.Color;
|
||||
import org.eclipse.swt.graphics.GC;
|
||||
import org.eclipse.swt.graphics.Rectangle;
|
||||
import org.talend.commons.ui.runtime.ColorConstants;
|
||||
import org.talend.core.PluginChecker;
|
||||
import org.talend.core.model.metadata.types.ContextParameterJavaTypeManager;
|
||||
import org.talend.core.model.metadata.types.JavaTypesManager;
|
||||
@@ -115,7 +116,7 @@ public class ContextNatTableConfiguration extends AbstractRegistryConfiguration
|
||||
private void registerStyleRules(IConfigRegistry configRegistry) {
|
||||
// register the default cell fg/bg colour for the natTable
|
||||
Style cellStyleDefault = new Style();
|
||||
cellStyleDefault.setAttributeValue(CellStyleAttributes.BACKGROUND_COLOR, GUIHelper.COLOR_WHITE);
|
||||
cellStyleDefault.setAttributeValue(CellStyleAttributes.BACKGROUND_COLOR, ColorConstants.getTableBackgroundColor());
|
||||
configRegistry.registerConfigAttribute(CellConfigAttributes.CELL_STYLE, cellStyleDefault, DisplayMode.NORMAL,
|
||||
ContextTableConstants.COLUMN_TYPE_PROPERTY);
|
||||
|
||||
|
||||
@@ -27,6 +27,7 @@ import org.eclipse.nebula.widgets.nattable.style.VerticalAlignmentEnum;
|
||||
import org.eclipse.nebula.widgets.nattable.util.GUIHelper;
|
||||
import org.eclipse.swt.graphics.Color;
|
||||
import org.eclipse.swt.graphics.Font;
|
||||
import org.talend.commons.ui.runtime.ColorConstants;
|
||||
|
||||
/**
|
||||
* created by ldong on Aug 26, 2014 Detailled comment
|
||||
@@ -34,12 +35,6 @@ import org.eclipse.swt.graphics.Font;
|
||||
*/
|
||||
public class ContextNatTableStyleConfiguration extends AbstractRegistryConfiguration {
|
||||
|
||||
public Color bgColor = GUIHelper.COLOR_WHITE;
|
||||
|
||||
public Color fgColor = GUIHelper.COLOR_BLACK;
|
||||
|
||||
public Color gradientBgColor = GUIHelper.COLOR_WHITE;
|
||||
|
||||
public Color gradientFgColor = GUIHelper.getColor(136, 212, 215);
|
||||
|
||||
public Font font = GUIHelper.DEFAULT_FONT;
|
||||
@@ -67,9 +62,9 @@ public class ContextNatTableStyleConfiguration extends AbstractRegistryConfigura
|
||||
configRegistry.registerConfigAttribute(CellConfigAttributes.CELL_PAINTER, cellPainter);
|
||||
|
||||
Style cellStyle = new Style();
|
||||
cellStyle.setAttributeValue(CellStyleAttributes.BACKGROUND_COLOR, bgColor);
|
||||
cellStyle.setAttributeValue(CellStyleAttributes.FOREGROUND_COLOR, fgColor);
|
||||
cellStyle.setAttributeValue(CellStyleAttributes.GRADIENT_BACKGROUND_COLOR, gradientBgColor);
|
||||
cellStyle.setAttributeValue(CellStyleAttributes.BACKGROUND_COLOR, ColorConstants.getTableBackgroundColor());
|
||||
cellStyle.setAttributeValue(CellStyleAttributes.FOREGROUND_COLOR, ColorConstants.getTableForegroundColor());
|
||||
cellStyle.setAttributeValue(CellStyleAttributes.GRADIENT_BACKGROUND_COLOR, ColorConstants.getTableBackgroundColor());
|
||||
cellStyle.setAttributeValue(CellStyleAttributes.GRADIENT_FOREGROUND_COLOR, gradientFgColor);
|
||||
cellStyle.setAttributeValue(CellStyleAttributes.FONT, font);
|
||||
cellStyle.setAttributeValue(CellStyleAttributes.HORIZONTAL_ALIGNMENT, hAlign);
|
||||
@@ -79,5 +74,7 @@ public class ContextNatTableStyleConfiguration extends AbstractRegistryConfigura
|
||||
configRegistry.registerConfigAttribute(CellConfigAttributes.CELL_STYLE, cellStyle);
|
||||
|
||||
configRegistry.registerConfigAttribute(CellConfigAttributes.DISPLAY_CONVERTER, new DefaultDisplayConverter());
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -34,6 +34,7 @@ import org.eclipse.swt.widgets.ToolBar;
|
||||
import org.eclipse.swt.widgets.ToolItem;
|
||||
import org.eclipse.ui.forms.IFormColors;
|
||||
import org.eclipse.ui.views.properties.tabbed.TabbedPropertySheetWidgetFactory;
|
||||
import org.talend.commons.ui.runtime.ITalendThemeService;
|
||||
import org.talend.commons.ui.runtime.image.EImage;
|
||||
import org.talend.commons.ui.runtime.image.ImageProvider;
|
||||
import org.talend.core.GlobalServiceRegister;
|
||||
@@ -173,10 +174,10 @@ public class TalendTabbedPropertyTitle extends Composite implements ITalendTabbe
|
||||
helpComp.setVisible(false);
|
||||
|
||||
if (colorHelper.getTitleBackground() == null) {
|
||||
label.setBackground(new Color[] { factory.getColors().getColor(IFormColors.H_GRADIENT_END),
|
||||
factory.getColors().getColor(IFormColors.H_GRADIENT_START) }, new int[] { 100 }, true);
|
||||
titleLabelComp.setBackground(factory.getColors().getColor(IFormColors.H_GRADIENT_START));
|
||||
helpComp.setBackground(factory.getColors().getColor(IFormColors.H_GRADIENT_START));
|
||||
label.setBackground(new Color[] { getStartColor(),
|
||||
getEndColor() }, new int[] { 100 }, true);
|
||||
titleLabelComp.setBackground(getEndColor());
|
||||
helpComp.setBackground(getEndColor());
|
||||
} else {
|
||||
label.setBackground(colorHelper.getTitleBackground());
|
||||
titleLabelComp.setBackground(colorHelper.getTitleBackground());
|
||||
@@ -184,23 +185,33 @@ public class TalendTabbedPropertyTitle extends Composite implements ITalendTabbe
|
||||
}
|
||||
}
|
||||
|
||||
private Color getStartColor() {
|
||||
return ITalendThemeService.getColor("org.talend.core.repository.TAB_START_COLOR")
|
||||
.orElse(factory.getColors().getColor(IFormColors.H_GRADIENT_END));
|
||||
}
|
||||
|
||||
private Color getEndColor() {
|
||||
return ITalendThemeService.getColor("org.talend.core.repository.TAB_END_COLOR")
|
||||
.orElse(factory.getColors().getColor(IFormColors.H_GRADIENT_START));
|
||||
}
|
||||
|
||||
/**
|
||||
* @param e
|
||||
*/
|
||||
protected void drawTitleBackground(PaintEvent e) {
|
||||
Rectangle bounds = getClientArea();
|
||||
if (colorHelper.getTitleBackground() == null) {
|
||||
label.setBackground(new Color[] { factory.getColors().getColor(IFormColors.H_GRADIENT_END),
|
||||
factory.getColors().getColor(IFormColors.H_GRADIENT_START) }, new int[] { 100 }, true);
|
||||
titleLabelComp.setBackground(factory.getColors().getColor(IFormColors.H_GRADIENT_START));
|
||||
helpComp.setBackground(factory.getColors().getColor(IFormColors.H_GRADIENT_START));
|
||||
label.setBackground(new Color[] { getStartColor(),
|
||||
getEndColor() }, new int[] { 100 }, true);
|
||||
titleLabelComp.setBackground(getEndColor());
|
||||
helpComp.setBackground(getEndColor());
|
||||
} else {
|
||||
label.setBackground(colorHelper.getTitleBackground());
|
||||
titleLabelComp.setBackground(colorHelper.getTitleBackground());
|
||||
helpComp.setBackground(colorHelper.getTitleBackground());
|
||||
}
|
||||
Color bg = factory.getColors().getColor(IFormColors.H_GRADIENT_END);
|
||||
Color gbg = factory.getColors().getColor(IFormColors.H_GRADIENT_START);
|
||||
Color bg = getStartColor();
|
||||
Color gbg = getEndColor();
|
||||
GC gc = e.gc;
|
||||
gc.setForeground(bg);
|
||||
gc.setBackground(gbg);
|
||||
|
||||
@@ -43,3 +43,4 @@ Export-Package: org.talend.designer.maven.aether,
|
||||
org.talend.designer.maven.aether.selector,
|
||||
org.talend.designer.maven.aether.util
|
||||
Bundle-Vendor: .Talend SA.
|
||||
|
||||
|
||||
@@ -83,7 +83,7 @@
|
||||
<dependency>
|
||||
<groupId>org.jsoup</groupId>
|
||||
<artifactId>jsoup</artifactId>
|
||||
<version>1.14.2</version>
|
||||
<version>1.15.3</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>commons-io</groupId>
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
<packaging>eclipse-plugin</packaging>
|
||||
<properties>
|
||||
<tcomp.version>${component-runtime.version}</tcomp.version>
|
||||
<cxf.version>3.5.2</cxf.version>
|
||||
<cxf.version>3.5.5</cxf.version>
|
||||
<geronimo.version>1.0.2</geronimo.version>
|
||||
<jcache.version>1.0.5</jcache.version>
|
||||
<jcache_spec.version>1.0-alpha-1</jcache_spec.version>
|
||||
|
||||
@@ -174,7 +174,7 @@
|
||||
<dependency>
|
||||
<groupId>org.jsoup</groupId>
|
||||
<artifactId>jsoup</artifactId>
|
||||
<version>1.14.2</version>
|
||||
<version>1.15.3</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
<build>
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
<packaging>pom</packaging>
|
||||
|
||||
<properties>
|
||||
<tcomp.version>1.51.2</tcomp.version>
|
||||
<tcomp.version>1.52.1</tcomp.version>
|
||||
<slf4j.version>1.7.34</slf4j.version>
|
||||
<reload4j.version>1.2.22</reload4j.version>
|
||||
</properties>
|
||||
|
||||
@@ -35,7 +35,189 @@
|
||||
</exclusion>
|
||||
</exclusions>
|
||||
</dependency>
|
||||
<!--crypto-utils 7.0.5 dependencies begin -->
|
||||
<dependency>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-dependencies</artifactId>
|
||||
<version>2.7.3</version>
|
||||
<type>pom</type>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.datastax.oss</groupId>
|
||||
<artifactId>java-driver-bom</artifactId>
|
||||
<version>4.14.1</version>
|
||||
<type>pom</type>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.codehaus.groovy</groupId>
|
||||
<artifactId>groovy-bom</artifactId>
|
||||
<version>3.0.12</version>
|
||||
<type>pom</type>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.fasterxml.jackson</groupId>
|
||||
<artifactId>jackson-bom</artifactId>
|
||||
<version>2.13.3</version>
|
||||
<type>pom</type>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.glassfish.jersey</groupId>
|
||||
<artifactId>jersey-bom</artifactId>
|
||||
<version>2.35</version>
|
||||
<type>pom</type>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty</groupId>
|
||||
<artifactId>jetty-bom</artifactId>
|
||||
<version>9.4.48.v20220622</version>
|
||||
<type>pom</type>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.jetbrains.kotlin</groupId>
|
||||
<artifactId>kotlin-bom</artifactId>
|
||||
<version>1.6.21</version>
|
||||
<type>pom</type>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.jetbrains.kotlinx</groupId>
|
||||
<artifactId>kotlinx-coroutines-bom</artifactId>
|
||||
<version>1.6.4</version>
|
||||
<type>pom</type>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.logging.log4j</groupId>
|
||||
<artifactId>log4j-bom</artifactId>
|
||||
<version>2.17.2</version>
|
||||
<type>pom</type>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>io.micrometer</groupId>
|
||||
<artifactId>micrometer-bom</artifactId>
|
||||
<version>1.9.3</version>
|
||||
<type>pom</type>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>io.netty</groupId>
|
||||
<artifactId>netty-bom</artifactId>
|
||||
<version>4.1.79.Final</version>
|
||||
<type>pom</type>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.oracle.database.jdbc</groupId>
|
||||
<artifactId>ojdbc-bom</artifactId>
|
||||
<version>21.5.0.0</version>
|
||||
<type>pom</type>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>io.prometheus</groupId>
|
||||
<artifactId>simpleclient_bom</artifactId>
|
||||
<version>0.15.0</version>
|
||||
<type>pom</type>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.querydsl</groupId>
|
||||
<artifactId>querydsl-bom</artifactId>
|
||||
<version>5.0.0</version>
|
||||
<type>pom</type>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>io.r2dbc</groupId>
|
||||
<artifactId>r2dbc-bom</artifactId>
|
||||
<version>Borca-SR1</version>
|
||||
<type>pom</type>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>io.projectreactor</groupId>
|
||||
<artifactId>reactor-bom</artifactId>
|
||||
<version>2020.0.22</version>
|
||||
<type>pom</type>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>io.rsocket</groupId>
|
||||
<artifactId>rsocket-bom</artifactId>
|
||||
<version>1.1.2</version>
|
||||
<type>pom</type>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.springframework.data</groupId>
|
||||
<artifactId>spring-data-bom</artifactId>
|
||||
<version>2021.2.2</version>
|
||||
<type>pom</type>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.springframework</groupId>
|
||||
<artifactId>spring-framework-bom</artifactId>
|
||||
<version>5.3.22</version>
|
||||
<type>pom</type>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.springframework.integration</groupId>
|
||||
<artifactId>spring-integration-bom</artifactId>
|
||||
<version>5.5.14</version>
|
||||
<type>pom</type>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.springframework.security</groupId>
|
||||
<artifactId>spring-security-bom</artifactId>
|
||||
<version>5.7.3</version>
|
||||
<type>pom</type>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.springframework.session</groupId>
|
||||
<artifactId>spring-session-bom</artifactId>
|
||||
<version>2021.2.0</version>
|
||||
<type>pom</type>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>io.dropwizard.metrics</groupId>
|
||||
<artifactId>metrics-bom</artifactId>
|
||||
<version>4.2.11</version>
|
||||
<type>pom</type>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>io.dropwizard.metrics</groupId>
|
||||
<artifactId>metrics-parent</artifactId>
|
||||
<version>4.2.11</version>
|
||||
<type>pom</type>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.infinispan</groupId>
|
||||
<artifactId>infinispan-bom</artifactId>
|
||||
<version>13.0.10.Final</version>
|
||||
<type>pom</type>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.infinispan</groupId>
|
||||
<artifactId>infinispan-build-configuration-parent</artifactId>
|
||||
<version>13.0.10.Final</version>
|
||||
<type>pom</type>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.jboss</groupId>
|
||||
<artifactId>jboss-parent</artifactId>
|
||||
<version>36</version>
|
||||
<type>pom</type>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.mockito</groupId>
|
||||
<artifactId>mockito-bom</artifactId>
|
||||
<version>4.5.1</version>
|
||||
<type>pom</type>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.squareup.okhttp3</groupId>
|
||||
<artifactId>okhttp-bom</artifactId>
|
||||
<version>4.9.3</version>
|
||||
<type>pom</type>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>io.rest-assured</groupId>
|
||||
<artifactId>rest-assured-bom</artifactId>
|
||||
<version>4.5.1</version>
|
||||
<type>pom</type>
|
||||
</dependency>
|
||||
<!--crypto-utils 7.0.5 dependencies end -->
|
||||
<dependency>
|
||||
<groupId>org.apache.commons</groupId>
|
||||
<artifactId>commons-configuration2</artifactId>
|
||||
<version>2.8.0</version>
|
||||
@@ -120,6 +302,36 @@
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-invoker-plugin</artifactId>
|
||||
<version>2.0.1-TALEND</version>
|
||||
<configuration>
|
||||
<localRepositoryPath>${basedir}/../tmp/repository</localRepositoryPath>
|
||||
<skipTestScopeForExtraArtifacts>true</skipTestScopeForExtraArtifacts>
|
||||
<onlyResolveDependencies>true</onlyResolveDependencies>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>generate-components-maven-repo</id>
|
||||
<phase>package</phase>
|
||||
<goals>
|
||||
<goal>install</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<extraArtifacts>
|
||||
<extraArtifact>org.junit:junit-bom:5.7.1:pom</extraArtifact>
|
||||
<extraArtifact>org.junit:junit-bom:5.8.2:pom</extraArtifact>
|
||||
<extraArtifact>org.junit:junit-bom:5.9.1:pom</extraArtifact>
|
||||
<extraArtifact>com.fasterxml.jackson:jackson-bom:2.13.3:pom</extraArtifact>
|
||||
</extraArtifacts>
|
||||
<pomIncludes>
|
||||
<pomInclude>*/*.pom</pomInclude>
|
||||
</pomIncludes>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</project>
|
||||
|
||||
@@ -76,7 +76,6 @@ import org.talend.core.runtime.process.TalendProcessArgumentConstant;
|
||||
import org.talend.core.runtime.process.TalendProcessOptionConstants;
|
||||
import org.talend.core.runtime.projectsetting.IProjectSettingPreferenceConstants;
|
||||
import org.talend.core.runtime.projectsetting.IProjectSettingTemplateConstants;
|
||||
import org.talend.core.runtime.projectsetting.ProjectPreferenceManager;
|
||||
import org.talend.core.runtime.util.ModuleAccessHelper;
|
||||
import org.talend.core.services.IGITProviderService;
|
||||
import org.talend.core.ui.ITestContainerProviderService;
|
||||
@@ -93,7 +92,6 @@ import org.talend.designer.runprocess.IProcessor;
|
||||
import org.talend.designer.runprocess.IRunProcessService;
|
||||
import org.talend.designer.runprocess.ProcessorUtilities;
|
||||
import org.talend.repository.ProjectManager;
|
||||
import org.talend.repository.model.RepositoryConstants;
|
||||
import org.talend.utils.io.FilesUtils;
|
||||
import org.w3c.dom.Document;
|
||||
import org.w3c.dom.Node;
|
||||
@@ -290,18 +288,19 @@ public class CreateMavenJobPom extends AbstractMavenProcessorPom {
|
||||
org.talend.core.model.general.Project currentProject = ProjectManager.getInstance()
|
||||
.getProjectFromProjectTechLabel(project.getTechnicalLabel());
|
||||
String branchName = ProjectManager.getInstance().getMainProjectBranch(project);
|
||||
try {
|
||||
if (branchName == null) {
|
||||
ProjectPreferenceManager preferenceManager =
|
||||
new ProjectPreferenceManager(currentProject, "org.talend.repository", false);
|
||||
branchName = preferenceManager.getValue(RepositoryConstants.PROJECT_BRANCH_ID);
|
||||
if(branchName == null) {
|
||||
try {
|
||||
branchName = IGitInfoService.get().getProjectBranch(currentProject);
|
||||
} catch (Exception e) {
|
||||
ExceptionHandler.process(e);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
ExceptionHandler.process(e);
|
||||
}
|
||||
if (null != branchName && branchName.startsWith("branches/")) {
|
||||
branchName = branchName.substring(9);
|
||||
if (null != branchName) {
|
||||
properties.setProperty("talend.project.branch.name", branchName);
|
||||
if(branchName.startsWith("branches/")) {
|
||||
branchName = branchName.substring(9);
|
||||
properties.setProperty("talend.project.branch.name", branchName);
|
||||
}
|
||||
}
|
||||
|
||||
try {
|
||||
@@ -616,10 +615,13 @@ public class CreateMavenJobPom extends AbstractMavenProcessorPom {
|
||||
}
|
||||
String mainProjectBranch = ProjectManager.getInstance().getMainProjectBranch(project);
|
||||
if (mainProjectBranch == null) {
|
||||
ProjectPreferenceManager preferenceManager =
|
||||
new ProjectPreferenceManager(project, "org.talend.repository", false);
|
||||
mainProjectBranch = preferenceManager.getValue(RepositoryConstants.PROJECT_BRANCH_ID);
|
||||
if (mainProjectBranch == null) {
|
||||
try {
|
||||
mainProjectBranch = IGitInfoService.get().getProjectBranch(project);
|
||||
} catch (Exception e) {
|
||||
ExceptionHandler.process(e);
|
||||
}
|
||||
|
||||
if(mainProjectBranch == null) {
|
||||
mainProjectBranch = "";
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,4 +5,5 @@ bin.includes = META-INF/,\
|
||||
plugin.xml,\
|
||||
community_tools.xml,\
|
||||
inlinehelp_context.xml,\
|
||||
thc.xml
|
||||
thc.xml,\
|
||||
html/
|
||||
|
||||
@@ -2,11 +2,10 @@
|
||||
<?NLS TYPE="org.eclipse.help.toc"?>
|
||||
|
||||
<toc label="Talend Online Tools">
|
||||
<topic label="Talend Babili" href="http://www.talendforge.org/babili/" />
|
||||
<topic label="Talend Bugtracker" href="https://jira.talendforge.org/secure/Dashboard.jspa" />
|
||||
<topic label="Talend Components" href="http://www.talendforge.org/components" />
|
||||
<topic label="Talend Exchange" href="https://exchange.talend.com/" />
|
||||
<topic label="Talend Forum" href="https://community.talend.com/" />
|
||||
<topic label="Talend Sources" href="https://www.talendforge.org/sources/" />
|
||||
<topic label="Talend Tutorials" href="https://community.talend.com/t5/custom/page/page-id/Tutorials" />
|
||||
<topic label="Talend Bugtracker" href="html/dashboard.html" />
|
||||
<topic label="Talend Components" href="html/components.html" />
|
||||
<topic label="Talend Exchange" href="html/exchange.html" />
|
||||
<topic label="Talend Forum" href="html/forum.html" />
|
||||
<topic label="Talend Sources" href="html/sources.html" />
|
||||
<topic label="Talend Tutorials" href="html/tutorials.html" />
|
||||
</toc>
|
||||
|
||||
15
main/plugins/org.talend.help.external/html/components.html
Normal file
15
main/plugins/org.talend.help.external/html/components.html
Normal file
@@ -0,0 +1,15 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<body>
|
||||
|
||||
<p>Click the button below to open Talend Components in a new browser window.</p>
|
||||
<button onclick="openInNewWindow()">Go to Talend Components</button>
|
||||
|
||||
<script>
|
||||
function openInNewWindow() {
|
||||
window.open("http://www.talendforge.org/components");
|
||||
}
|
||||
</script>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
15
main/plugins/org.talend.help.external/html/dashboard.html
Normal file
15
main/plugins/org.talend.help.external/html/dashboard.html
Normal file
@@ -0,0 +1,15 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<body>
|
||||
|
||||
<p>Click the button below to open Talend Bugtracker in a new browser window.</p>
|
||||
<button onclick="openInNewWindow()">Go to Talend Bugtracker</button>
|
||||
|
||||
<script>
|
||||
function openInNewWindow() {
|
||||
window.open("https://jira.talendforge.org/secure/Dashboard.jspa");
|
||||
}
|
||||
</script>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
15
main/plugins/org.talend.help.external/html/exchange.html
Normal file
15
main/plugins/org.talend.help.external/html/exchange.html
Normal file
@@ -0,0 +1,15 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<body>
|
||||
|
||||
<p>Click the button below to open Talend Exchange in a new browser window.</p>
|
||||
<button onclick="openInNewWindow()">Go to Talend Exchange</button>
|
||||
|
||||
<script>
|
||||
function openInNewWindow() {
|
||||
window.open("https://exchange.talend.com/");
|
||||
}
|
||||
</script>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
15
main/plugins/org.talend.help.external/html/forum.html
Normal file
15
main/plugins/org.talend.help.external/html/forum.html
Normal file
@@ -0,0 +1,15 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<body>
|
||||
|
||||
<p>Click the button below to open Talend Forum in a new browser window.</p>
|
||||
<button onclick="openInNewWindow()">Go to Talend Forum</button>
|
||||
|
||||
<script>
|
||||
function openInNewWindow() {
|
||||
window.open("https://community.talend.com/");
|
||||
}
|
||||
</script>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
15
main/plugins/org.talend.help.external/html/sources.html
Normal file
15
main/plugins/org.talend.help.external/html/sources.html
Normal file
@@ -0,0 +1,15 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<body>
|
||||
|
||||
<p>Click the button below to open Talend Sources in a new browser window.</p>
|
||||
<button onclick="openInNewWindow()">Go to Talend Sources</button>
|
||||
|
||||
<script>
|
||||
function openInNewWindow() {
|
||||
window.open("https://www.talendforge.org/sources/");
|
||||
}
|
||||
</script>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
15
main/plugins/org.talend.help.external/html/tutorials.html
Normal file
15
main/plugins/org.talend.help.external/html/tutorials.html
Normal file
@@ -0,0 +1,15 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<body>
|
||||
|
||||
<p>Click the button below to open Talend Tutorials in a new browser window.</p>
|
||||
<button onclick="openInNewWindow()">Go to Talend Tutorials</button>
|
||||
|
||||
<script>
|
||||
function openInNewWindow() {
|
||||
window.open("https://help.talend.com/r/en-US/8.0/discovering-talend-studio");
|
||||
}
|
||||
</script>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -2,28 +2,28 @@
|
||||
<classpath>
|
||||
<classpathentry kind="src" path="src"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/jakarta.activation-1.2.2.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/cxf-rt-wsdl-3.4.4.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/cxf-rt-wsdl-3.5.5.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/jakarta.activation-api-1.2.2.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/woodstox-core-6.2.1.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/woodstox-core-6.4.0.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/jakarta.annotation-api-1.3.5.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/stax2-api-4.2.1.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/neethi-3.1.1.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/jakarta.ws.rs-api-2.1.6.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/cxf-core-3.4.4.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/cxf-rt-bindings-xml-3.4.4.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/cxf-rt-frontend-jaxrs-3.4.4.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/cxf-rt-rs-client-3.4.4.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/cxf-rt-transports-http-3.4.4.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/cxf-rt-bindings-soap-3.4.4.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/cxf-rt-databinding-jaxb-3.4.4.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/cxf-rt-features-clustering-3.4.4.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/cxf-rt-frontend-jaxws-3.4.4.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/cxf-rt-frontend-simple-3.4.4.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/cxf-rt-security-3.4.4.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/cxf-rt-security-saml-3.4.4.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/cxf-rt-ws-addr-3.4.4.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/cxf-rt-ws-policy-3.4.4.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/cxf-rt-ws-security-3.4.4.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/cxf-core-3.5.5.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/cxf-rt-bindings-xml-3.5.5.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/cxf-rt-frontend-jaxrs-3.5.5.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/cxf-rt-rs-client-3.5.5.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/cxf-rt-transports-http-3.5.5.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/cxf-rt-bindings-soap-3.5.5.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/cxf-rt-databinding-jaxb-3.5.5.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/cxf-rt-features-clustering-3.5.5.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/cxf-rt-frontend-jaxws-3.5.5.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/cxf-rt-frontend-simple-3.5.5.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/cxf-rt-security-3.5.5.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/cxf-rt-security-saml-3.5.5.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/cxf-rt-ws-addr-3.5.5.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/cxf-rt-ws-policy-3.5.5.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/cxf-rt-ws-security-3.5.5.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/javax.ws.rs-api-2.0-m10.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/jakarta.xml.bind-api-2.3.3.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="lib/xmlschema-core-2.2.5.jar"/>
|
||||
|
||||
@@ -8,25 +8,25 @@ Bundle-ClassPath: .,
|
||||
lib/neethi-3.1.1.jar,
|
||||
lib/stax2-api-4.2.1.jar,
|
||||
lib/javax.activation-1.2.0.jar,
|
||||
lib/cxf-core-3.4.4.jar,
|
||||
lib/cxf-rt-bindings-xml-3.4.4.jar,
|
||||
lib/cxf-rt-frontend-jaxrs-3.4.4.jar,
|
||||
lib/cxf-rt-rs-client-3.4.4.jar,
|
||||
lib/cxf-rt-transports-http-3.4.4.jar,
|
||||
lib/cxf-rt-wsdl-3.4.4.jar,
|
||||
lib/cxf-rt-bindings-soap-3.4.4.jar,
|
||||
lib/cxf-rt-databinding-jaxb-3.4.4.jar,
|
||||
lib/cxf-rt-features-clustering-3.4.4.jar,
|
||||
lib/cxf-rt-frontend-jaxws-3.4.4.jar,
|
||||
lib/cxf-rt-frontend-simple-3.4.4.jar,
|
||||
lib/cxf-rt-security-3.4.4.jar,
|
||||
lib/cxf-rt-security-saml-3.4.4.jar,
|
||||
lib/cxf-rt-ws-addr-3.4.4.jar,
|
||||
lib/cxf-rt-ws-policy-3.4.4.jar,
|
||||
lib/cxf-rt-ws-security-3.4.4.jar,
|
||||
lib/cxf-core-3.5.5.jar,
|
||||
lib/cxf-rt-bindings-xml-3.5.5.jar,
|
||||
lib/cxf-rt-frontend-jaxrs-3.5.5.jar,
|
||||
lib/cxf-rt-rs-client-3.5.5.jar,
|
||||
lib/cxf-rt-transports-http-3.5.5.jar,
|
||||
lib/cxf-rt-wsdl-3.5.5.jar,
|
||||
lib/cxf-rt-bindings-soap-3.5.5.jar,
|
||||
lib/cxf-rt-databinding-jaxb-3.5.5.jar,
|
||||
lib/cxf-rt-features-clustering-3.5.5.jar,
|
||||
lib/cxf-rt-frontend-jaxws-3.5.5.jar,
|
||||
lib/cxf-rt-frontend-simple-3.5.5.jar,
|
||||
lib/cxf-rt-security-3.5.5.jar,
|
||||
lib/cxf-rt-security-saml-3.5.5.jar,
|
||||
lib/cxf-rt-ws-addr-3.5.5.jar,
|
||||
lib/cxf-rt-ws-policy-3.5.5.jar,
|
||||
lib/cxf-rt-ws-security-3.5.5.jar,
|
||||
lib/jakarta.ws.rs-api-2.1.6.jar,
|
||||
lib/jakarta.annotation-api-1.3.5.jar,
|
||||
lib/woodstox-core-6.2.1.jar,
|
||||
lib/woodstox-core-6.4.0.jar,
|
||||
lib/jakarta.xml.bind-api-2.3.3.jar,
|
||||
lib/jakarta.activation-api-1.2.2.jar,
|
||||
lib/jakarta.activation-1.2.2.jar,
|
||||
|
||||
@@ -9,7 +9,9 @@
|
||||
</parent>
|
||||
<artifactId>org.talend.libraries.apache.cxf</artifactId>
|
||||
<packaging>eclipse-plugin</packaging>
|
||||
|
||||
<properties>
|
||||
<cxf.version>3.5.5</cxf.version>
|
||||
</properties>
|
||||
<repositories>
|
||||
<repository>
|
||||
<id>talend-update</id>
|
||||
@@ -21,82 +23,82 @@
|
||||
<dependency>
|
||||
<groupId>org.apache.cxf</groupId>
|
||||
<artifactId>cxf-core</artifactId>
|
||||
<version>3.4.4</version>
|
||||
<version>${cxf.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.cxf</groupId>
|
||||
<artifactId>cxf-rt-bindings-xml</artifactId>
|
||||
<version>3.4.4</version>
|
||||
<version>${cxf.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.cxf</groupId>
|
||||
<artifactId>cxf-rt-frontend-jaxrs</artifactId>
|
||||
<version>3.4.4</version>
|
||||
<version>${cxf.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.cxf</groupId>
|
||||
<artifactId>cxf-rt-rs-client</artifactId>
|
||||
<version>3.4.4</version>
|
||||
<version>${cxf.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.cxf</groupId>
|
||||
<artifactId>cxf-rt-transports-http</artifactId>
|
||||
<version>3.4.4</version>
|
||||
<version>${cxf.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.cxf</groupId>
|
||||
<artifactId>cxf-rt-wsdl</artifactId>
|
||||
<version>3.4.4</version>
|
||||
<version>${cxf.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.cxf</groupId>
|
||||
<artifactId>cxf-rt-bindings-soap</artifactId>
|
||||
<version>3.4.4</version>
|
||||
<version>${cxf.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.cxf</groupId>
|
||||
<artifactId>cxf-rt-databinding-jaxb</artifactId>
|
||||
<version>3.4.4</version>
|
||||
<version>${cxf.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.cxf</groupId>
|
||||
<artifactId>cxf-rt-features-clustering</artifactId>
|
||||
<version>3.4.4</version>
|
||||
<version>${cxf.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.cxf</groupId>
|
||||
<artifactId>cxf-rt-frontend-jaxws</artifactId>
|
||||
<version>3.4.4</version>
|
||||
<version>${cxf.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.cxf</groupId>
|
||||
<artifactId>cxf-rt-frontend-simple</artifactId>
|
||||
<version>3.4.4</version>
|
||||
<version>${cxf.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.cxf</groupId>
|
||||
<artifactId>cxf-rt-security</artifactId>
|
||||
<version>3.4.4</version>
|
||||
<version>${cxf.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.cxf</groupId>
|
||||
<artifactId>cxf-rt-security-saml</artifactId>
|
||||
<version>3.4.4</version>
|
||||
<version>${cxf.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.cxf</groupId>
|
||||
<artifactId>cxf-rt-ws-addr</artifactId>
|
||||
<version>3.4.4</version>
|
||||
<version>${cxf.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.cxf</groupId>
|
||||
<artifactId>cxf-rt-ws-policy</artifactId>
|
||||
<version>3.4.4</version>
|
||||
<version>${cxf.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.cxf</groupId>
|
||||
<artifactId>cxf-rt-ws-security</artifactId>
|
||||
<version>3.4.4</version>
|
||||
<version>${cxf.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.sun.activation</groupId>
|
||||
@@ -131,7 +133,7 @@
|
||||
<dependency>
|
||||
<groupId>com.fasterxml.woodstox</groupId>
|
||||
<artifactId>woodstox-core</artifactId>
|
||||
<version>6.2.1</version>
|
||||
<version>6.4.0</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>javax.ws.rs</groupId>
|
||||
|
||||
@@ -202,9 +202,6 @@ public class JavaLibrariesService extends AbstractLibrariesService {
|
||||
if (!repositoryBundleService.isInitialized()) {
|
||||
// 2. Components libraries and libraries from extension
|
||||
repositoryBundleService.createModulesIndexFromComponentAndExtension(monitorWrap);
|
||||
} else {
|
||||
//TUP-31721 & TUP-36231:Handle the custom components deployment when studio index is not re-generated.
|
||||
repositoryBundleService.deployLibsFromCustomComponents();
|
||||
}
|
||||
|
||||
repositoryBundleService.installModules(ModulesNeededProvider.getSystemRunningModules(), null);
|
||||
|
||||
@@ -1347,27 +1347,83 @@ public class LocalLibraryManager implements ILibraryManagerService, IChangedLibr
|
||||
saveMavenIndex(mavenURIMap, monitorWrap);
|
||||
savePlatfromURLIndex(platformURLMap, monitorWrap);
|
||||
|
||||
if (service != null) {
|
||||
deployLibsFromCustomComponents(service, platformURLMap);
|
||||
}
|
||||
return mavenURIMap;
|
||||
}
|
||||
|
||||
public void deployLibsFromCustomComponents() {
|
||||
IComponentsService service = null;
|
||||
if (GlobalServiceRegister.getDefault().isServiceRegistered(IComponentsService.class)) {
|
||||
service = GlobalServiceRegister.getDefault().getService(IComponentsService.class);
|
||||
|
||||
public void deployLibsFromCustomComponents(File componentFolder, List<ModuleNeeded> modulesNeeded) {
|
||||
if (modulesNeeded == null || modulesNeeded.isEmpty()) {
|
||||
return;
|
||||
}
|
||||
if (service != null) {
|
||||
Map<String, String> platformURLMap = new HashMap<>();
|
||||
platformURLMap = LibrariesIndexManager.getInstance().getAllStudioLibsFromIndex();
|
||||
// Need to read components first, otherwise FiltUtils.getFilesFromFolderByName() returns empty for custom
|
||||
// component folder.
|
||||
service.getComponentsFactory().readComponents();
|
||||
deployLibsFromCustomComponents(service, platformURLMap);
|
||||
Map<File, Set<MavenArtifact>> needToDeploy = new HashMap<File, Set<MavenArtifact>>();
|
||||
modulesNeeded.forEach(module -> {
|
||||
if (module != null) {
|
||||
boolean needDeploy = false;
|
||||
String mvnUri = module.getMavenUri();
|
||||
String jarPathFromMaven = getJarPathFromMaven(StringUtils.isNotBlank(mvnUri) ? mvnUri : module.getModuleName());
|
||||
if (StringUtils.isBlank(jarPathFromMaven)) {
|
||||
needDeploy = true;
|
||||
} else {
|
||||
File jarFromMaven = new File(jarPathFromMaven);
|
||||
if (!jarFromMaven.exists()) {
|
||||
needDeploy = true;
|
||||
}
|
||||
}
|
||||
|
||||
if (needDeploy) {
|
||||
File deployFile = getDeployJarFileByModule(componentFolder, module);
|
||||
if (deployFile != null) {
|
||||
|
||||
install(deployFile, mvnUri, false, true, null);
|
||||
|
||||
if (needToDeploy.get(deployFile) == null) {
|
||||
needToDeploy.put(deployFile, new HashSet<MavenArtifact>());
|
||||
}
|
||||
if (StringUtils.isNotBlank(mvnUri)) {
|
||||
MavenArtifact mavenArtifact = MavenUrlHelper.parseMvnUrl(mvnUri);
|
||||
needToDeploy.get(deployFile).add(mavenArtifact);
|
||||
} else {
|
||||
Map<String, String> sourceAndMavenUri = new HashMap<>();
|
||||
guessMavenRUIFromIndex(deployFile, true, sourceAndMavenUri);
|
||||
Set<MavenArtifact> MavenArtifactSet = new HashSet<MavenArtifact>();
|
||||
sourceAndMavenUri.keySet()
|
||||
.forEach(mavenUri -> {
|
||||
if (StringUtils.isNotBlank(mvnUri)) {
|
||||
MavenArtifactSet.add(MavenUrlHelper.parseMvnUrl(mavenUri));
|
||||
}
|
||||
});
|
||||
needToDeploy.get(deployFile).addAll(MavenArtifactSet);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
if (!needToDeploy.isEmpty()) {
|
||||
ShareComponentsLibsJob shareJob = new ShareComponentsLibsJob(
|
||||
Messages.getString("LocalLibraryManager.shareLibsForCustomponents"), needToDeploy, deployer);
|
||||
shareJob.schedule();
|
||||
}
|
||||
}
|
||||
|
||||
private File getDeployJarFileByModule(File componentFolder, ModuleNeeded module) {
|
||||
String mvnUri = module.getMavenUri();
|
||||
if (StringUtils.isNotBlank(mvnUri)) {
|
||||
MavenArtifact mavenArtifact = MavenUrlHelper.parseMvnUrl(mvnUri);
|
||||
String fileName = mavenArtifact.getFileName();
|
||||
File jarFile = new File(componentFolder, fileName);
|
||||
if (jarFile.exists()) {
|
||||
return jarFile;
|
||||
}
|
||||
|
||||
}
|
||||
// try module name
|
||||
File jarFile = new File(componentFolder, module.getModuleName());
|
||||
if (jarFile.exists()) {
|
||||
return jarFile;
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* The old components might use some jars in component folder and theres jars are not configured with platfrom URL
|
||||
@@ -1425,86 +1481,6 @@ public class LocalLibraryManager implements ILibraryManagerService, IChangedLibr
|
||||
return false;
|
||||
}
|
||||
|
||||
private void deployLibsFromCustomComponents(IComponentsService service, Map<String, String> platformURLMap) {
|
||||
boolean deployToRemote = true;
|
||||
if (!LibrariesManagerUtils.shareLibsAtStartup()) {
|
||||
log.info("Skip deploying libs from custom components");
|
||||
deployToRemote = false;
|
||||
}
|
||||
|
||||
Map<File, Set<MavenArtifact>> needToDeploy = new HashMap<File, Set<MavenArtifact>>();
|
||||
List<ComponentProviderInfo> componentsFolders = service.getComponentsFactory().getComponentsProvidersInfo();
|
||||
for (ComponentProviderInfo providerInfo : componentsFolders) {
|
||||
String id = providerInfo.getId();
|
||||
try {
|
||||
File file = new File(providerInfo.getLocation());
|
||||
if (isExtComponentProvider(id)) {
|
||||
if (file.isDirectory()) {
|
||||
List<File> jarFiles = FilesUtils.getJarFilesFromFolder(file, null);
|
||||
if (jarFiles.size() > 0) {
|
||||
for (File jarFile : jarFiles) {
|
||||
String name = jarFile.getName();
|
||||
if (!canDeployFromCustomComponentFolder(name) || platformURLMap.get(name) != null) {
|
||||
continue;
|
||||
}
|
||||
|
||||
collectLibModules(jarFile, needToDeploy);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
if (!canDeployFromCustomComponentFolder(file.getName()) || platformURLMap.get(file.getName()) != null) {
|
||||
continue;
|
||||
}
|
||||
collectLibModules(file, needToDeploy);
|
||||
}
|
||||
}
|
||||
} catch (Exception e) {
|
||||
ExceptionHandler.process(e);
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
||||
// first install them locally
|
||||
needToDeploy.forEach((k, v) -> {
|
||||
try {
|
||||
// install as release version if can't find mvn url from index
|
||||
install(k, null, false, true);
|
||||
} catch (Exception e) {
|
||||
ExceptionHandler.process(e);
|
||||
}
|
||||
});
|
||||
|
||||
if (!deployToRemote) {
|
||||
return;
|
||||
}
|
||||
|
||||
ShareComponentsLibsJob shareJob = new ShareComponentsLibsJob(
|
||||
Messages.getString("LocalLibraryManager.shareLibsForCustomponents"), needToDeploy, deployer);
|
||||
shareJob.schedule();
|
||||
}
|
||||
|
||||
private void collectLibModules(File jarFile, Map<File, Set<MavenArtifact>> needToDeploy) {
|
||||
Map<String,String> mavenUris = new HashMap<String,String>();
|
||||
guessMavenRUIFromIndex(jarFile, true, mavenUris);
|
||||
|
||||
Set<MavenArtifact> artifacts = new HashSet<MavenArtifact>();
|
||||
for(String uri: mavenUris.keySet()) {
|
||||
MavenArtifact art = MavenUrlHelper.parseMvnUrl(uri);
|
||||
if(art!=null) {
|
||||
artifacts.add(art);
|
||||
}
|
||||
}
|
||||
|
||||
needToDeploy.put(jarFile, artifacts);
|
||||
}
|
||||
|
||||
private boolean canDeployFromCustomComponentFolder(String fileName) {
|
||||
if (isSystemCacheFile(fileName) || isComponentDefinitionFileType(fileName)) {
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
private void warnDuplicated(List<ModuleNeeded> modules, Set<String> duplicates, String type) {
|
||||
for (String lib : duplicates) {
|
||||
Set<String> components = new HashSet<>();
|
||||
|
||||
@@ -294,8 +294,9 @@ public class PropertiesWizard extends Wizard {
|
||||
// changed by hqzhang for TDI-19527, label=displayName
|
||||
object.getProperty().setLabel(object.getProperty().getDisplayName());
|
||||
|
||||
processBeforeItemSave(proxyRepositoryFactory);
|
||||
processBeforeItemSave(proxyRepositoryFactory, monitor);
|
||||
proxyRepositoryFactory.save(object.getProperty(), originaleObjectLabel, originalVersion);
|
||||
|
||||
ExpressionPersistance.getInstance().jobNameChanged(originaleObjectLabel, object.getLabel());
|
||||
|
||||
if (!originalVersion.equals(object.getVersion())) {
|
||||
@@ -328,21 +329,21 @@ public class PropertiesWizard extends Wizard {
|
||||
}
|
||||
}
|
||||
|
||||
private void processBeforeItemSave(IProxyRepositoryFactory proxyRepositoryFactory) throws PersistenceException {
|
||||
private void processBeforeItemSave(IProxyRepositoryFactory proxyRepositoryFactory, final IProgressMonitor monitor) throws PersistenceException, CoreException {
|
||||
ERepositoryObjectType objectRepType = object.getRepositoryObjectType();
|
||||
if (!originaleObjectLabel.equals(object.getProperty().getLabel())
|
||||
&& ERepositoryObjectType.getAllTypesOfCodesJar().contains(objectRepType)) {
|
||||
// for codejar to change innercode folder name
|
||||
proxyRepositoryFactory.renameFolder(object.getRepositoryObjectType(), new Path(originaleObjectLabel),
|
||||
object.getProperty().getLabel());
|
||||
Project currentProject = ProjectManager.getInstance().getCurrentProject();
|
||||
Project currentProject = ProjectManager.getInstance().getCurrentProject();
|
||||
IFolder innerCodeFolder = ResourceUtils.getFolder(ResourceUtils.getProject(currentProject),
|
||||
ERepositoryObjectType.getFolderName(objectRepType) + "/" + object.getProperty().getLabel(), true);
|
||||
ERepositoryObjectType.getFolderName(objectRepType) + "/" + originaleObjectLabel, true);
|
||||
List<IRepositoryViewObject> innerCodesObjs = proxyRepositoryFactory.getAll(currentProject, objectRepType, false,
|
||||
false, innerCodeFolder);
|
||||
proxyRepositoryFactory.renameFolder(object.getRepositoryObjectType(), new Path(originaleObjectLabel),
|
||||
object.getProperty().getLabel());
|
||||
// for codejar to change innercode folder name
|
||||
if (innerCodesObjs != null && !innerCodesObjs.isEmpty()) {
|
||||
innerCodesObjs.stream().forEach(repObj -> {
|
||||
RoutineUtils.changeInnerCodePackage(repObj.getProperty().getItem(), false);
|
||||
RoutineUtils.changeInnerCodePackage(repObj.getProperty().getItem(), false, false);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
@@ -17,6 +17,7 @@ import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
import org.eclipse.core.runtime.IPath;
|
||||
@@ -67,6 +68,7 @@ import org.talend.core.model.repository.ERepositoryObjectType;
|
||||
import org.talend.core.model.repository.IRepositoryViewObject;
|
||||
import org.talend.core.model.repository.LockInfo;
|
||||
import org.talend.core.model.routines.CodesJarInfo;
|
||||
import org.talend.core.model.routines.RoutinesUtil;
|
||||
import org.talend.core.repository.model.ProxyRepositoryFactory;
|
||||
import org.talend.core.runtime.CoreRuntimePlugin;
|
||||
import org.talend.core.ui.branding.IBrandingService;
|
||||
@@ -241,11 +243,16 @@ public abstract class PropertiesWizardPage extends AbstractNamedWizardPage {
|
||||
list.addAll(repViewObjectWithSameType);
|
||||
}
|
||||
|
||||
List<IRepositoryViewObject> others = loadRepViewObjectWithOtherTypes();
|
||||
|
||||
// Loads other repository view objects with the different repository type.
|
||||
if (others != null && others.size() > 0) {
|
||||
list.addAll(others);
|
||||
if (!RoutinesUtil.isInnerCodes(property)) {
|
||||
List<IRepositoryViewObject> others = loadRepViewObjectWithOtherTypes();
|
||||
// Loads other repository view objects with the different repository type.
|
||||
if (others != null && others.size() > 0) {
|
||||
for (IRepositoryViewObject object : others) {
|
||||
if (!RoutinesUtil.isInnerCodes(object.getProperty())) {
|
||||
list.add(object);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return list;
|
||||
}
|
||||
@@ -295,13 +302,12 @@ public abstract class PropertiesWizardPage extends AbstractNamedWizardPage {
|
||||
ERepositoryObjectType type = ERepositoryObjectType.getItemType(property.getItem());
|
||||
if (IProxyRepositoryService.get() != null) {
|
||||
IProxyRepositoryFactory factory = IProxyRepositoryService.get().getProxyRepositoryFactory();
|
||||
list = factory.getAll(type, true, false);
|
||||
if (ERepositoryObjectType.getAllTypesOfCodes().contains(type)) {
|
||||
for (CodesJarInfo info : CodesJarResourceCache.getAllCodesJars()) {
|
||||
if (info.isInCurrentMainProject()
|
||||
&& ERepositoryObjectType.CodeTypeEnum.isCodeRepositoryObjectTypeMatch(info.getType(), type)) {
|
||||
list.addAll(factory.getAllInnerCodes(info));
|
||||
}
|
||||
if (!RoutinesUtil.isInnerCodes(property)) {
|
||||
list = factory.getAll(type, true, false).stream().filter(a->(!RoutinesUtil.isInnerCodes(a.getProperty()))).collect(Collectors.toList());
|
||||
} else {
|
||||
CodesJarInfo codeJarinfo = CodesJarResourceCache.getCodesJarByInnerCode((RoutineItem) property.getItem());
|
||||
if (codeJarinfo != null) {
|
||||
return ProxyRepositoryFactory.getInstance().getAllInnerCodes(codeJarinfo);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1188,6 +1194,9 @@ public abstract class PropertiesWizardPage extends AbstractNamedWizardPage {
|
||||
}
|
||||
evaluateName(nameText.getText());
|
||||
updatePageStatus();
|
||||
if (nameStatus.getSeverity() == IStatus.OK && RoutinesUtil.isInnerCodes(property)) {
|
||||
evaluateNameInJob();
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -220,6 +220,14 @@
|
||||
required="true"
|
||||
uripath="platform:/plugin/org.talend.libraries.jdbc.hsql/lib/hsqldb.jar">
|
||||
</libraryNeeded>
|
||||
<libraryNeeded
|
||||
context="plugin:org.talend.metadata.managment"
|
||||
language="java"
|
||||
message="Needed for create sqlite connection"
|
||||
mvn_uri="mvn:org.xerial/sqlite-jdbc/3.40.0.0"
|
||||
name="sqlite-jdbc-3.40.0.0.jar"
|
||||
required="true">
|
||||
</libraryNeeded>
|
||||
</extension>
|
||||
<extension
|
||||
point="org.talend.core.migrationTask">
|
||||
|
||||
@@ -26,7 +26,6 @@ import org.apache.log4j.Logger;
|
||||
import org.talend.commons.exception.ExceptionHandler;
|
||||
import org.talend.core.ICoreService;
|
||||
import org.talend.core.database.EDatabaseTypeName;
|
||||
import org.talend.core.database.conn.version.EDatabaseVersion4Drivers;
|
||||
import org.talend.core.model.metadata.IMetadataConnection;
|
||||
import org.talend.core.model.metadata.IMetadataTable;
|
||||
import org.talend.core.model.metadata.MappingTypeRetriever;
|
||||
@@ -347,14 +346,15 @@ public class OracleExtractManager extends ExtractManager {
|
||||
@Override
|
||||
protected void filterTablesFromRecycleBin(IMetadataConnection metadataConnection, List<String> itemTablesName) {
|
||||
// filter tables or viewer from the recyclebin in the Oracle 10g.
|
||||
if (metadataConnection.getDbVersionString() != null
|
||||
&& !metadataConnection.getDbVersionString().equals(EDatabaseVersion4Drivers.ORACLE_8.getVersionValue())) {
|
||||
if (metadataConnection.getDbVersionString() != null) {
|
||||
ExtractMetaDataUtils extractMeta = ExtractMetaDataUtils.getInstance();
|
||||
try {
|
||||
PreparedStatement stmt = extractMeta.getConn().prepareStatement(TableInfoParameters.ORACLE_10G_RECBIN_SQL);
|
||||
PreparedStatement stmt =
|
||||
extractMeta.getConn().prepareStatement(TableInfoParameters.ORACLE_10G_RECBIN_SQL);
|
||||
extractMeta.setQueryStatementTimeout(stmt);
|
||||
ResultSet rsTables = stmt.executeQuery();
|
||||
itemTablesName.removeAll(ExtractMetaDataFromDataBase.getTableNamesFromQuery(rsTables, extractMeta.getConn()));
|
||||
itemTablesName
|
||||
.removeAll(ExtractMetaDataFromDataBase.getTableNamesFromQuery(rsTables, extractMeta.getConn()));
|
||||
rsTables.close();
|
||||
stmt.close();
|
||||
} catch (SQLException e) {
|
||||
@@ -412,10 +412,6 @@ public class OracleExtractManager extends ExtractManager {
|
||||
@Override
|
||||
public String getTableComment(IMetadataConnection metadataConnection, ResultSet resultSet, String nameKey)
|
||||
throws SQLException {
|
||||
if (EDatabaseVersion4Drivers.ORACLE_8.getVersionValue().equals(metadataConnection.getDbVersionString())) {
|
||||
return ExtractMetaDataFromDataBase.getTableComment(nameKey, resultSet, false, ExtractMetaDataUtils.getInstance()
|
||||
.getConn());
|
||||
}
|
||||
return super.getTableComment(metadataConnection, resultSet, nameKey);
|
||||
}
|
||||
|
||||
|
||||
@@ -83,6 +83,7 @@ import org.talend.metadata.managment.connection.manager.HiveConnectionManager;
|
||||
import org.talend.metadata.managment.hive.EmbeddedHiveDataBaseMetadata;
|
||||
import org.talend.metadata.managment.repository.ManagerConnection;
|
||||
import org.talend.metadata.managment.utils.DatabaseConstant;
|
||||
import org.talend.metadata.managment.utils.EDataBaseType;
|
||||
import org.talend.metadata.managment.utils.ManagementTextUtils;
|
||||
import org.talend.metadata.managment.utils.MetadataConnectionUtils;
|
||||
import org.talend.utils.sql.ConnectionUtils;
|
||||
@@ -1042,8 +1043,12 @@ public class DBConnectionFillerImpl extends MetadataFillerImpl<DatabaseConnectio
|
||||
// for CDH4 HIVE2 , the table type are MANAGED_TABLE and EXTERNAL_TABLE ......
|
||||
// tableType = null;
|
||||
}
|
||||
Map<String,String> tableComments = null;
|
||||
if (!isOracle8i) {
|
||||
tableComments = this.getTableComments(dbJDBCMetadata, catalogName, schemaPattern);
|
||||
}
|
||||
ResultSet tables = dbJDBCMetadata.getTables(catalogName, schemaPattern, tablePattern, tableType);
|
||||
|
||||
boolean hasRemarksCol = hasRemarksColumn(tables);
|
||||
while (tables.next()) {
|
||||
String coloumnName = GetTable.TABLE_SCHEM.name();
|
||||
if (schemaPattern != null) {
|
||||
@@ -1068,8 +1073,13 @@ public class DBConnectionFillerImpl extends MetadataFillerImpl<DatabaseConnectio
|
||||
// if (!isOracle && !isOracle8i && !isOracleJdbc && tableName.startsWith("/")) { //$NON-NLS-1$
|
||||
// continue;
|
||||
// }
|
||||
if (!isOracle8i) {
|
||||
tableComment = getTableComment(dbJDBCMetadata, tables, tableName, catalogName, schemaPattern);
|
||||
if (hasRemarksCol) {
|
||||
tableComment = getRemarksFromResultSet(tables);
|
||||
}
|
||||
if (tableComments != null) {
|
||||
if (StringUtils.isEmpty(tableComment)) {
|
||||
tableComment = tableComments.get(tableName);
|
||||
}
|
||||
}
|
||||
MetadataTable metadatatable = null;
|
||||
if (TableType.VIEW.toString().equals(temptableType) || ETableTypes.VIRTUAL_VIEW.getName().equals(temptableType)) {
|
||||
@@ -1213,6 +1223,69 @@ public class DBConnectionFillerImpl extends MetadataFillerImpl<DatabaseConnectio
|
||||
}
|
||||
return tableComment;
|
||||
}
|
||||
|
||||
private Map<String, String> getTableComments(DatabaseMetaData dbJDBCMetadata, String catalogName, String schemaPattern) {
|
||||
Map<String, String> ret = new HashMap<String, String>();
|
||||
PreparedStatement ps = null;
|
||||
ResultSet rs = null;
|
||||
try {
|
||||
String productName = dbJDBCMetadata.getDatabaseProductName();
|
||||
if (StringUtils.isEmpty(productName)) {
|
||||
return ret;
|
||||
}
|
||||
productName = productName.replaceAll(" ", "_"); //$NON-NLS-1$ //$NON-NLS-2$
|
||||
EDataBaseType eDataBaseType = null;
|
||||
try {
|
||||
eDataBaseType = EDataBaseType.valueOf(productName);
|
||||
} catch (Exception e) {
|
||||
eDataBaseType = EDataBaseType.Microsoft_SQL_Server;
|
||||
}
|
||||
|
||||
String sqlStr = ""; //$NON-NLS-1$
|
||||
switch (eDataBaseType) {
|
||||
case Oracle:
|
||||
sqlStr = "SELECT TABLE_NAME,COMMENTS FROM ALL_TAB_COMMENTS WHERE OWNER=?";
|
||||
ps = dbJDBCMetadata.getConnection().prepareStatement(sqlStr);
|
||||
ps.setString(1, schemaPattern.toUpperCase());
|
||||
break;
|
||||
case MySQL:
|
||||
sqlStr = "SELECT TABLE_NAME,TABLE_COMMENT FROM information_schema.TABLES WHERE TABLE_SCHEMA=?";
|
||||
ps = dbJDBCMetadata.getConnection().prepareStatement(sqlStr);
|
||||
ps.setString(1, catalogName);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
if (ps != null) {
|
||||
rs = ps.executeQuery();
|
||||
while (rs != null && rs.next()) {
|
||||
String comment = rs.getString(2);
|
||||
if (!StringUtils.isEmpty(comment)) {
|
||||
ret.put(rs.getString(1), comment);
|
||||
}
|
||||
}
|
||||
}
|
||||
} catch (SQLException e) {
|
||||
log.error(e, e);
|
||||
} finally {
|
||||
if (ps != null) {
|
||||
try {
|
||||
ps.close();
|
||||
} catch (SQLException e) {
|
||||
CommonExceptionHandler.process(e);
|
||||
}
|
||||
}
|
||||
if (rs != null) {
|
||||
try {
|
||||
rs.close();
|
||||
} catch (SQLException e) {
|
||||
CommonExceptionHandler.process(e);
|
||||
}
|
||||
}
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
/**
|
||||
* get the Column Comment especially for oracle type.
|
||||
@@ -1299,9 +1372,12 @@ public class DBConnectionFillerImpl extends MetadataFillerImpl<DatabaseConnectio
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Map<String, String> tableComments = null;
|
||||
if (!flag) {
|
||||
tableComments = this.getTableComments(dbJDBCMetadata, catalogName, schemaPattern);
|
||||
}
|
||||
ResultSet tables = dbJDBCMetadata.getTables(catalogName, schemaPattern, tablePattern, tableType);
|
||||
|
||||
boolean hasRemarksCol = hasRemarksColumn(tables);
|
||||
while (tables.next()) {
|
||||
String tableName = getStringFromResultSet(tables, GetTable.TABLE_NAME.name());
|
||||
String temptableType = getStringFromResultSet(tables, GetTable.TABLE_TYPE.name());
|
||||
@@ -1320,8 +1396,13 @@ public class DBConnectionFillerImpl extends MetadataFillerImpl<DatabaseConnectio
|
||||
if (tableName == null || tablesToFilter.contains(tableName) || tableName.startsWith("/")) { //$NON-NLS-1$
|
||||
continue;
|
||||
}
|
||||
if (!flag) {
|
||||
tableComment = getTableComment(dbJDBCMetadata, tables, tableName, catalogName, schemaPattern);
|
||||
if (hasRemarksCol) {
|
||||
tableComment = getRemarksFromResultSet(tables);
|
||||
}
|
||||
if (tableComments != null) {
|
||||
if (StringUtils.isEmpty(tableComment)) {
|
||||
tableComment = tableComments.get(tableName);
|
||||
}
|
||||
}
|
||||
// create table
|
||||
TdTable table = RelationalFactory.eINSTANCE.createTdTable();
|
||||
@@ -1371,8 +1452,17 @@ public class DBConnectionFillerImpl extends MetadataFillerImpl<DatabaseConnectio
|
||||
}
|
||||
}
|
||||
try {
|
||||
|
||||
boolean flag = true;
|
||||
if (pack != null) {
|
||||
Connection c = ConnectionHelper.getConnection(pack);
|
||||
flag = MetadataConnectionUtils.isOracle8i(c);
|
||||
}
|
||||
Map<String, String> tableComments = null;
|
||||
if (!flag) {
|
||||
tableComments = this.getTableComments(dbJDBCMetadata, catalogName, schemaPattern);
|
||||
}
|
||||
ResultSet tables = dbJDBCMetadata.getTables(catalogName, schemaPattern, viewPattern, tableType);
|
||||
boolean hasRemarksCol = hasRemarksColumn(tables);
|
||||
while (tables.next()) {
|
||||
|
||||
String tableName = getStringFromResultSet(tables, GetTable.TABLE_NAME.name());
|
||||
@@ -1383,14 +1473,14 @@ public class DBConnectionFillerImpl extends MetadataFillerImpl<DatabaseConnectio
|
||||
continue;
|
||||
}
|
||||
// common
|
||||
boolean flag = true;
|
||||
String tableComment = null;
|
||||
if (pack != null) {
|
||||
Connection c = ConnectionHelper.getConnection(pack);
|
||||
flag = MetadataConnectionUtils.isOracle8i(c);
|
||||
if (hasRemarksCol) {
|
||||
tableComment = getRemarksFromResultSet(tables);
|
||||
}
|
||||
if (!flag) {
|
||||
tableComment = getTableComment(dbJDBCMetadata, tables, tableName, catalogName, schemaPattern);
|
||||
if (tableComments != null) {
|
||||
if (StringUtils.isEmpty(tableComment)) {
|
||||
tableComment = tableComments.get(tableName);
|
||||
}
|
||||
}
|
||||
// create table
|
||||
TdView table = RelationalFactory.eINSTANCE.createTdView();
|
||||
@@ -1429,6 +1519,21 @@ public class DBConnectionFillerImpl extends MetadataFillerImpl<DatabaseConnectio
|
||||
return valueOfString;
|
||||
}
|
||||
|
||||
private boolean hasRemarksColumn(ResultSet resultSet) {
|
||||
try {
|
||||
int numOfCols = resultSet.getMetaData().getColumnCount();
|
||||
for (int i = 1; i < numOfCols + 1; i++) {
|
||||
String colName = resultSet.getMetaData().getColumnLabel(i);
|
||||
if (StringUtils.equals(colName, GetColumn.REMARKS.name())) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
} catch (SQLException e) {
|
||||
CommonExceptionHandler.process(e);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
private String getRemarksFromResultSet(ResultSet resultSet) {
|
||||
String valueOfString = null;
|
||||
try {
|
||||
|
||||
@@ -1,12 +1,49 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tcommon-studio-se</artifactId>
|
||||
<version>8.0.1-SNAPSHOT</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.rcp</artifactId>
|
||||
<packaging>eclipse-plugin</packaging>
|
||||
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<parent>
|
||||
<groupId>org.talend.studio</groupId>
|
||||
<artifactId>tcommon-studio-se</artifactId>
|
||||
<version>8.0.1-SNAPSHOT</version>
|
||||
<relativePath>../../../</relativePath>
|
||||
</parent>
|
||||
<artifactId>org.talend.rcp</artifactId>
|
||||
<packaging>eclipse-plugin</packaging>
|
||||
<profiles>
|
||||
<profile>
|
||||
<id>patch</id>
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-resources-plugin</artifactId>
|
||||
<version>2.7</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>copy-p2-inf</id>
|
||||
<phase>generate-resources</phase>
|
||||
<goals>
|
||||
<goal>copy-resources</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<resources>
|
||||
<resource>
|
||||
<directory>${project.basedir}/touchpoint</directory>
|
||||
<includes>
|
||||
<include>p2.inf</include>
|
||||
</includes>
|
||||
</resource>
|
||||
</resources>
|
||||
<outputDirectory>${project.basedir}/META-INF</outputDirectory>
|
||||
<overwrite>true</overwrite>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</profile>
|
||||
</profiles>
|
||||
</project>
|
||||
|
||||
@@ -46,6 +46,7 @@ import org.talend.core.language.ECodeLanguage;
|
||||
import org.talend.core.language.LanguageManager;
|
||||
import org.talend.core.repository.model.ProxyRepositoryFactory;
|
||||
import org.talend.core.runtime.util.SharedStudioUtils;
|
||||
import org.talend.core.services.IGITProviderService;
|
||||
import org.talend.core.ui.branding.IActionBarHelper;
|
||||
import org.talend.core.ui.branding.IBrandingService;
|
||||
import org.talend.core.ui.perspective.PerspectiveMenuManager;
|
||||
@@ -330,20 +331,26 @@ public class ActionBarBuildHelper implements IActionBarHelper {
|
||||
// ViewDescriptor[] descriptors = { viewDesc };
|
||||
// registry.removeExtension(viewDesc.getConfigurationElement().getDeclaringExtension(), descriptors);
|
||||
// }
|
||||
|
||||
List<String> disabledPrefsIdList = new ArrayList<String>();
|
||||
if (IGITProviderService.get() == null || !IGITProviderService.get().isStandardMode()) {
|
||||
disabledPrefsIdList.add("org.eclipse.team.ui.TeamPreferences");
|
||||
}
|
||||
|
||||
List<IPreferenceNode> prefsToDelete = new ArrayList<IPreferenceNode>();
|
||||
IBrandingService brandingService = GlobalServiceRegister.getDefault().getService(
|
||||
IBrandingService.class);
|
||||
String[] availableLanguages = brandingService.getBrandingConfiguration().getAvailableLanguages();
|
||||
if (ArrayUtils.contains(availableLanguages, ECodeLanguage.PERL.getName())) {
|
||||
String[] prefsId = { "org.eclipse.team.ui.TeamPreferences" };
|
||||
String[] prefsId = disabledPrefsIdList.toArray(new String[0]);
|
||||
for (IPreferenceNode node : window.getWorkbench().getPreferenceManager().getRootSubNodes()) {
|
||||
if (ArrayUtils.contains(prefsId, node.getId())) {
|
||||
prefsToDelete.add(node);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
String[] prefsId = { "org.eclipse.team.ui.TeamPreferences", "org.epic.core.preferences.PerlMainPreferencePage" };
|
||||
disabledPrefsIdList.add("org.epic.core.preferences.PerlMainPreferencePage");
|
||||
String[] prefsId = disabledPrefsIdList.toArray(new String[0]);
|
||||
for (IPreferenceNode node : window.getWorkbench().getPreferenceManager().getRootSubNodes()) {
|
||||
if (ArrayUtils.contains(prefsId, node.getId())) {
|
||||
prefsToDelete.add(node);
|
||||
|
||||
31
main/plugins/org.talend.rcp/touchpoint/p2.inf
Normal file
31
main/plugins/org.talend.rcp/touchpoint/p2.inf
Normal file
@@ -0,0 +1,31 @@
|
||||
metaRequirements.0.namespace=org.talend.studiolite.p2.touchpoint
|
||||
metaRequirements.0.name=addJvmArgs
|
||||
metaRequirements.0.range=0.0.1
|
||||
metaRequirements.1.namespace=org.talend.studiolite.p2.touchpoint
|
||||
metaRequirements.1.name=RemoveJvmArgs
|
||||
metaRequirements.1.range=0.0.1
|
||||
instructions.configure=\
|
||||
removeJvmArgs(jvmArgs:\
|
||||
--add-opens\\njava.base/java.lang=ALL-UNNAMED|\
|
||||
--add-opens\\njava.base/java.util=ALL-UNNAMED);\
|
||||
addJvmArgs(jvmArgs:\
|
||||
--add-opens=java.base/java.lang=ALL-UNNAMED|\
|
||||
--add-opens=java.base/java.util=ALL-UNNAMED|\
|
||||
--add-opens=java.base/java.io=ALL-UNNAMED|\
|
||||
--add-opens=java.base/java.util.stream=ALL-UNNAMED|\
|
||||
--add-opens=java.base/java.util.regex=ALL-UNNAMED|\
|
||||
--add-opens=java.base/java.lang.invoke=ALL-UNNAMED|\
|
||||
--add-opens=java.base/java.lang.reflect=ALL-UNNAMED|\
|
||||
--add-opens=java.base/java.net=ALL-UNNAMED|\
|
||||
--add-opens=java.base/java.nio=ALL-UNNAMED|\
|
||||
--add-opens=java.base/java.util.concurrent=ALL-UNNAMED|\
|
||||
--add-opens=java.base/sun.nio.ch=ALL-UNNAMED|\
|
||||
--add-opens=java.base/sun.nio.cs=ALL-UNNAMED|\
|
||||
--add-opens=java.base/sun.security.action=ALL-UNNAMED|\
|
||||
--add-opens=java.base/sun.security.pkcs=ALL-UNNAMED|\
|
||||
--add-opens=java.base/sun.security.x509=ALL-UNNAMED|\
|
||||
--add-opens=java.base/sun.util.calendar=ALL-UNNAMED|\
|
||||
--add-opens=java.security.jgss/sun.security.krb5=ALL-UNNAMED);
|
||||
instructions.configure.import=\
|
||||
org.talend.studiolite.p2.touchpoint.removeJvmArgs,\
|
||||
org.talend.studiolite.p2.touchpoint.addJvmArgs
|
||||
@@ -973,13 +973,20 @@ public class ImportExportHandlersManager {
|
||||
String importingLabel = itemRecord.getProperty().getLabel();
|
||||
String existLabel = lastVersionBackup.getProperty().getLabel();
|
||||
// refer to ImportBasicHandler.isNeedDeleteOnRemote
|
||||
if (importingLabel != null && importingLabel.equalsIgnoreCase(importingLabel)
|
||||
&& !importingLabel.equals(existLabel)) {
|
||||
physicalDeleteHM.get(true).add(objectToDelete);
|
||||
} else {
|
||||
physicalDeleteHM.get(false).add(objectToDelete);
|
||||
}
|
||||
boolean isDeleteOnRemote = (importingLabel != null && !importingLabel.equals(existLabel));
|
||||
physicalDeleteHM.get(isDeleteOnRemote).add(objectToDelete);
|
||||
idDeletedBeforeImport.add(id);
|
||||
if (ERepositoryObjectType.ROUTINESJAR.getType()
|
||||
.equals(objectToDelete.getRepositoryObjectType().getType())
|
||||
|| ERepositoryObjectType.BEANSJAR.getType()
|
||||
.equals(objectToDelete.getRepositoryObjectType().getType())) {
|
||||
List<IRepositoryViewObject> innerRoutinesObj = ProxyRepositoryFactory.getInstance()
|
||||
.getAllInnerCodes(CodesJarInfo.create(objectToDelete.getProperty()));
|
||||
for (IRepositoryViewObject child : innerRoutinesObj) {
|
||||
physicalDeleteHM.get(isDeleteOnRemote).add(child);
|
||||
idDeletedBeforeImport.add(child.getId());
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -829,183 +829,143 @@ public abstract class AbstractCreateTableAction extends AbstractCreateAction {
|
||||
}
|
||||
}
|
||||
|
||||
private void openDatabaseTableWizard(final DatabaseConnectionItem item, final MetadataTable metadataTable,
|
||||
final boolean forceReadOnly, final RepositoryNode node, final boolean creation) {
|
||||
UIJob job = new UIJob(Messages.getString("CreateTableAction.action.createTitle")) { //$NON-NLS-1$
|
||||
private void openDatabaseTableWizard(final DatabaseConnectionItem item, final MetadataTable metadataTable, final boolean forceReadOnly, final RepositoryNode node, final boolean creation) {
|
||||
|
||||
String name = "User action : " + getText(); //$NON-NLS-1$
|
||||
RepositoryWorkUnit<Object> repositoryWorkUnit = new RepositoryWorkUnit<Object>(name, this) {
|
||||
|
||||
@Override
|
||||
public IStatus runInUIThread(final IProgressMonitor monitor) {
|
||||
String name = "User action : " + getText(); //$NON-NLS-1$
|
||||
RepositoryWorkUnit<Object> repositoryWorkUnit = new RepositoryWorkUnit<Object>(name, this) {
|
||||
|
||||
@Override
|
||||
protected void run() throws LoginException, PersistenceException {
|
||||
|
||||
monitor.beginTask(Messages.getString("CreateTableAction.action.createTitle"), IProgressMonitor.UNKNOWN); //$NON-NLS-1$
|
||||
|
||||
if (!monitor.isCanceled()) {
|
||||
final ManagerConnection managerConnection = new ManagerConnection();
|
||||
|
||||
DatabaseConnection connection = (DatabaseConnection) item.getConnection();
|
||||
boolean useKrb = Boolean.valueOf(connection.getParameters().get(
|
||||
ConnParameterKeys.CONN_PARA_KEY_USE_KRB));
|
||||
// TUP-596 : Update the context name in connection when the user does a context switch in DI
|
||||
String oldContextName = connection.getContextName();
|
||||
Connection copyConnection = MetadataConnectionUtils.prepareConection(connection);
|
||||
if (copyConnection == null) {
|
||||
return;
|
||||
}
|
||||
IMetadataConnection metadataConnection = ConvertionHelper.convert(copyConnection, false,
|
||||
copyConnection.getContextName());
|
||||
String newContextName = connection.getContextName();
|
||||
if (oldContextName != null && newContextName != null && !oldContextName.equals(newContextName)) {
|
||||
if (node != null && node.getObject() != null && node.getObject().getProperty() != null) {
|
||||
Item itemTemp = node.getObject().getProperty().getItem();
|
||||
if (itemTemp != null && itemTemp instanceof ConnectionItem) {
|
||||
ConnectionItem connItem = (ConnectionItem) itemTemp;
|
||||
SwitchContextGroupNameImpl.getInstance().updateContextGroup(connItem, newContextName);
|
||||
}
|
||||
}
|
||||
}
|
||||
boolean isTcomDB = false;
|
||||
IGenericDBService dbService = null;
|
||||
if (GlobalServiceRegister.getDefault().isServiceRegistered(IGenericDBService.class)) {
|
||||
dbService = GlobalServiceRegister.getDefault().getService(
|
||||
IGenericDBService.class);
|
||||
}
|
||||
if(dbService != null){
|
||||
for(ERepositoryObjectType type : dbService.getExtraTypes()){
|
||||
if(type.getLabel().equals(metadataConnection.getDbType())){
|
||||
isTcomDB = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (!metadataConnection.getDbType().equals(EDatabaseConnTemplate.GODBC.getDBDisplayName())
|
||||
&& !metadataConnection.getDbType().equals(EDatabaseConnTemplate.ACCESS.getDBDisplayName())
|
||||
&& !metadataConnection.getDbType().equals(
|
||||
EDatabaseConnTemplate.GENERAL_JDBC.getDBDisplayName())
|
||||
&& !isTcomDB) {
|
||||
// TODO 1. To identify if it is hive connection.
|
||||
String hiveMode = (String) metadataConnection
|
||||
.getParameter(ConnParameterKeys.CONN_PARA_KEY_HIVE_MODE);
|
||||
if (EDatabaseTypeName.HIVE.getDisplayName().equals(metadataConnection.getDbType())) {
|
||||
// metadataConnection.setDriverJarPath((String)metadataConnection
|
||||
// .getParameter(ConnParameterKeys.CONN_PARA_KEY_METASTORE_CONN_DRIVER_JAR));
|
||||
if (HiveModeInfo.get(hiveMode) == HiveModeInfo.EMBEDDED) {
|
||||
JavaSqlFactory.doHivePreSetup((DatabaseConnection) metadataConnection
|
||||
.getCurrentConnection());
|
||||
}
|
||||
} else if (EDatabaseTypeName.IMPALA.getDisplayName().equals(metadataConnection.getDbType())) {
|
||||
DatabaseConnection originalValueConnection = null;
|
||||
IRepositoryContextService repositoryContextService = CoreRuntimePlugin.getInstance()
|
||||
.getRepositoryContextService();
|
||||
if (repositoryContextService != null) {
|
||||
originalValueConnection = repositoryContextService
|
||||
.cloneOriginalValueConnection(connection, false, null);
|
||||
}
|
||||
if (originalValueConnection != null) {
|
||||
metadataConnection.setUrl(originalValueConnection.getURL());
|
||||
}
|
||||
} else {
|
||||
String genUrl = DatabaseConnStrUtil.getURLString(metadataConnection.getDbType(),
|
||||
metadataConnection.getDbVersionString(), metadataConnection.getServerName(),
|
||||
metadataConnection.getUsername(), metadataConnection.getPassword(),
|
||||
metadataConnection.getPort(), metadataConnection.getDatabase(),
|
||||
metadataConnection.getFileFieldName(), metadataConnection.getDataSourceName(),
|
||||
metadataConnection.getDbRootPath(), metadataConnection.getAdditionalParams());
|
||||
if (!(metadataConnection.getDbType().equals(EDatabaseConnTemplate.IMPALA.getDBDisplayName()) && useKrb)) {
|
||||
metadataConnection.setUrl(genUrl);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
// bug 23508:even open type is metaTable,not connection,we always need the connection's
|
||||
// datapackage to find the table schema when click the retrieve schema button
|
||||
if (connection != null) {
|
||||
EList<orgomg.cwm.objectmodel.core.Package> dp = connection.getDataPackage();
|
||||
Collection<Package> newDataPackage = EcoreUtil.copyAll(dp);
|
||||
ConnectionHelper.addPackages(newDataPackage,
|
||||
(DatabaseConnection) metadataConnection.getCurrentConnection());
|
||||
}
|
||||
if (creation) {
|
||||
String hiveMode = (String) metadataConnection
|
||||
.getParameter(ConnParameterKeys.CONN_PARA_KEY_HIVE_MODE);
|
||||
if (EDatabaseTypeName.HIVE.getDisplayName().equals(metadataConnection.getDbType())) {
|
||||
try {
|
||||
HiveConnectionManager.getInstance().checkConnection(metadataConnection);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
} else {
|
||||
managerConnection.check(metadataConnection);
|
||||
}
|
||||
|
||||
// ExtractMetaDataUtils.metadataCon = metadataConnection;
|
||||
// when open,set use synonyms false.
|
||||
ExtractMetaDataUtils.getInstance().setUseAllSynonyms(false);
|
||||
|
||||
IProxyRepositoryFactory factory = ProxyRepositoryFactory.getInstance();
|
||||
boolean repositoryObjectEditable = factory.isEditableAndLockIfPossible(node.getObject());
|
||||
if (!repositoryObjectEditable) {
|
||||
boolean flag = MessageDialog.openConfirm(PlatformUI.getWorkbench().getActiveWorkbenchWindow()
|
||||
.getShell(), Messages.getString("CreateTableAction.action.Warning"),
|
||||
Messages.getString("CreateTableAction.action.NotLockMessage"));
|
||||
if (flag) {
|
||||
DatabaseTableWizard databaseTableWizard = new DatabaseTableWizard(
|
||||
PlatformUI.getWorkbench(), creation, node.getObject(), metadataTable,
|
||||
getExistingNames(), forceReadOnly, managerConnection, metadataConnection);
|
||||
|
||||
WizardDialog wizardDialog = new WizardDialog(PlatformUI.getWorkbench()
|
||||
.getActiveWorkbenchWindow().getShell(), databaseTableWizard);
|
||||
wizardDialog.setBlockOnOpen(true);
|
||||
handleWizard(node, wizardDialog);
|
||||
}
|
||||
} else {
|
||||
DatabaseTableWizard databaseTableWizard = new DatabaseTableWizard(PlatformUI.getWorkbench(),
|
||||
creation, node.getObject(), metadataTable, getExistingNames(), forceReadOnly,
|
||||
managerConnection, metadataConnection);
|
||||
|
||||
WizardDialog wizardDialog = new WizardDialog(PlatformUI.getWorkbench()
|
||||
.getActiveWorkbenchWindow().getShell(), databaseTableWizard);
|
||||
wizardDialog.setBlockOnOpen(true);
|
||||
handleWizard(node, wizardDialog);
|
||||
}
|
||||
} else {
|
||||
// added for bug 16595
|
||||
// no need connect to database when double click one schema.
|
||||
final boolean skipStep = true;
|
||||
|
||||
DatabaseTableWizard databaseTableWizard = new DatabaseTableWizard(PlatformUI.getWorkbench(),
|
||||
creation, node.getObject(), metadataTable, getExistingNames(), forceReadOnly,
|
||||
managerConnection, metadataConnection);
|
||||
databaseTableWizard.setSkipStep(skipStep);
|
||||
WizardDialog wizardDialog = new WizardDialog(PlatformUI.getWorkbench().getActiveWorkbenchWindow()
|
||||
.getShell(), databaseTableWizard);
|
||||
handleWizard(node, wizardDialog);
|
||||
}
|
||||
protected void run() throws LoginException, PersistenceException {
|
||||
final ManagerConnection managerConnection = new ManagerConnection();
|
||||
|
||||
DatabaseConnection connection = (DatabaseConnection) item.getConnection();
|
||||
boolean useKrb = Boolean.valueOf(connection.getParameters().get(ConnParameterKeys.CONN_PARA_KEY_USE_KRB));
|
||||
// TUP-596 : Update the context name in connection when the user does a context switch in DI
|
||||
String oldContextName = connection.getContextName();
|
||||
Connection copyConnection = MetadataConnectionUtils.prepareConection(connection);
|
||||
if (copyConnection == null) {
|
||||
return;
|
||||
}
|
||||
IMetadataConnection metadataConnection = ConvertionHelper.convert(copyConnection, false, copyConnection.getContextName());
|
||||
String newContextName = connection.getContextName();
|
||||
if (oldContextName != null && newContextName != null && !oldContextName.equals(newContextName)) {
|
||||
if (node != null && node.getObject() != null && node.getObject().getProperty() != null) {
|
||||
Item itemTemp = node.getObject().getProperty().getItem();
|
||||
if (itemTemp != null && itemTemp instanceof ConnectionItem) {
|
||||
ConnectionItem connItem = (ConnectionItem) itemTemp;
|
||||
SwitchContextGroupNameImpl.getInstance().updateContextGroup(connItem, newContextName);
|
||||
}
|
||||
}
|
||||
}
|
||||
boolean isTcomDB = false;
|
||||
IGenericDBService dbService = null;
|
||||
if (GlobalServiceRegister.getDefault().isServiceRegistered(IGenericDBService.class)) {
|
||||
dbService = GlobalServiceRegister.getDefault().getService(IGenericDBService.class);
|
||||
}
|
||||
if (dbService != null) {
|
||||
for (ERepositoryObjectType type : dbService.getExtraTypes()) {
|
||||
if (type.getLabel().equals(metadataConnection.getDbType())) {
|
||||
isTcomDB = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (!metadataConnection.getDbType().equals(EDatabaseConnTemplate.GODBC.getDBDisplayName()) && !metadataConnection.getDbType().equals(EDatabaseConnTemplate.ACCESS.getDBDisplayName())
|
||||
&& !metadataConnection.getDbType().equals(EDatabaseConnTemplate.GENERAL_JDBC.getDBDisplayName()) && !isTcomDB) {
|
||||
// TODO 1. To identify if it is hive connection.
|
||||
String hiveMode = (String) metadataConnection.getParameter(ConnParameterKeys.CONN_PARA_KEY_HIVE_MODE);
|
||||
if (EDatabaseTypeName.HIVE.getDisplayName().equals(metadataConnection.getDbType())) {
|
||||
// metadataConnection.setDriverJarPath((String)metadataConnection
|
||||
// .getParameter(ConnParameterKeys.CONN_PARA_KEY_METASTORE_CONN_DRIVER_JAR));
|
||||
if (HiveModeInfo.get(hiveMode) == HiveModeInfo.EMBEDDED) {
|
||||
JavaSqlFactory.doHivePreSetup((DatabaseConnection) metadataConnection.getCurrentConnection());
|
||||
}
|
||||
} else if (EDatabaseTypeName.IMPALA.getDisplayName().equals(metadataConnection.getDbType())) {
|
||||
DatabaseConnection originalValueConnection = null;
|
||||
IRepositoryContextService repositoryContextService = CoreRuntimePlugin.getInstance().getRepositoryContextService();
|
||||
if (repositoryContextService != null) {
|
||||
originalValueConnection = repositoryContextService.cloneOriginalValueConnection(connection, false, null);
|
||||
}
|
||||
if (originalValueConnection != null) {
|
||||
metadataConnection.setUrl(originalValueConnection.getURL());
|
||||
}
|
||||
} else {
|
||||
String genUrl = DatabaseConnStrUtil
|
||||
.getURLString(metadataConnection.getDbType(), metadataConnection.getDbVersionString(), metadataConnection.getServerName(), metadataConnection.getUsername(),
|
||||
metadataConnection.getPassword(), metadataConnection.getPort(), metadataConnection.getDatabase(), metadataConnection.getFileFieldName(),
|
||||
metadataConnection.getDataSourceName(), metadataConnection.getDbRootPath(), metadataConnection.getAdditionalParams());
|
||||
if (!(metadataConnection.getDbType().equals(EDatabaseConnTemplate.IMPALA.getDBDisplayName()) && useKrb)) {
|
||||
metadataConnection.setUrl(genUrl);
|
||||
}
|
||||
}
|
||||
};
|
||||
repositoryWorkUnit.setAvoidUnloadResources(isAvoidUnloadResources());
|
||||
IRepositoryService repositoryService = GlobalServiceRegister.getDefault().getService(
|
||||
IRepositoryService.class);
|
||||
repositoryService.getProxyRepositoryFactory().executeRepositoryWorkUnit(repositoryWorkUnit);
|
||||
monitor.done();
|
||||
return Status.OK_STATUS;
|
||||
};
|
||||
};
|
||||
job.setUser(true);
|
||||
job.addJobChangeListener(new JobChangeAdapter() {
|
||||
|
||||
@Override
|
||||
public void done(IJobChangeEvent event) {
|
||||
if (!event.getResult().isOK()) {
|
||||
log.error(event.getResult().getMessage(), event.getResult().getException());
|
||||
} // else eveything is fine so do not log anything
|
||||
}
|
||||
// bug 23508:even open type is metaTable,not connection,we always need the connection's
|
||||
// datapackage to find the table schema when click the retrieve schema button
|
||||
if (connection != null) {
|
||||
EList<orgomg.cwm.objectmodel.core.Package> dp = connection.getDataPackage();
|
||||
Collection<Package> newDataPackage = EcoreUtil.copyAll(dp);
|
||||
ConnectionHelper.addPackages(newDataPackage, (DatabaseConnection) metadataConnection.getCurrentConnection());
|
||||
}
|
||||
if (creation) {
|
||||
String hiveMode = (String) metadataConnection.getParameter(ConnParameterKeys.CONN_PARA_KEY_HIVE_MODE);
|
||||
if (EDatabaseTypeName.HIVE.getDisplayName().equals(metadataConnection.getDbType())) {
|
||||
try {
|
||||
HiveConnectionManager.getInstance().checkConnection(metadataConnection);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
} else {
|
||||
managerConnection.check(metadataConnection);
|
||||
}
|
||||
|
||||
// ExtractMetaDataUtils.metadataCon = metadataConnection;
|
||||
// when open,set use synonyms false.
|
||||
ExtractMetaDataUtils.getInstance().setUseAllSynonyms(false);
|
||||
|
||||
IProxyRepositoryFactory factory = ProxyRepositoryFactory.getInstance();
|
||||
boolean repositoryObjectEditable = factory.isEditableAndLockIfPossible(node.getObject());
|
||||
if (!repositoryObjectEditable) {
|
||||
boolean flag = MessageDialog
|
||||
.openConfirm(PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(), Messages.getString("CreateTableAction.action.Warning"),
|
||||
Messages.getString("CreateTableAction.action.NotLockMessage"));
|
||||
if (flag) {
|
||||
DatabaseTableWizard databaseTableWizard = new DatabaseTableWizard(PlatformUI.getWorkbench(), creation, node.getObject(), metadataTable, getExistingNames(), forceReadOnly,
|
||||
managerConnection, metadataConnection);
|
||||
|
||||
WizardDialog wizardDialog = new WizardDialog(PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(), databaseTableWizard);
|
||||
wizardDialog.setBlockOnOpen(true);
|
||||
Display.getDefault().asyncExec(() -> {
|
||||
handleWizard(node, wizardDialog);
|
||||
});
|
||||
}
|
||||
} else {
|
||||
DatabaseTableWizard databaseTableWizard =
|
||||
new DatabaseTableWizard(PlatformUI.getWorkbench(), creation, node.getObject(), metadataTable, getExistingNames(), forceReadOnly, managerConnection, metadataConnection);
|
||||
|
||||
WizardDialog wizardDialog = new WizardDialog(PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(), databaseTableWizard);
|
||||
wizardDialog.setBlockOnOpen(true);
|
||||
Display.getDefault().asyncExec(() -> {
|
||||
handleWizard(node, wizardDialog);
|
||||
});
|
||||
}
|
||||
} else {
|
||||
// added for bug 16595
|
||||
// no need connect to database when double click one schema.
|
||||
final boolean skipStep = true;
|
||||
|
||||
DatabaseTableWizard databaseTableWizard =
|
||||
new DatabaseTableWizard(PlatformUI.getWorkbench(), creation, node.getObject(), metadataTable, getExistingNames(), forceReadOnly, managerConnection, metadataConnection);
|
||||
databaseTableWizard.setSkipStep(skipStep);
|
||||
WizardDialog wizardDialog = new WizardDialog(PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(), databaseTableWizard);
|
||||
Display.getDefault().asyncExec(() -> {
|
||||
handleWizard(node, wizardDialog);
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
job.schedule();
|
||||
};
|
||||
repositoryWorkUnit.setAvoidUnloadResources(isAvoidUnloadResources());
|
||||
IRepositoryService repositoryService = GlobalServiceRegister.getDefault().getService(IRepositoryService.class);
|
||||
repositoryService.getProxyRepositoryFactory().executeRepositoryWorkUnit(repositoryWorkUnit);
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -7299,15 +7299,11 @@ public class DatabaseForm extends AbstractForm {
|
||||
}
|
||||
|
||||
private boolean isSupportNLSOracleVersion(String dbVersionString) {
|
||||
if (!EDatabaseVersion4Drivers.ORACLE_8.getVersionDisplay().equals(dbVersionString)
|
||||
&& !EDatabaseVersion4Drivers.ORACLE_9.getVersionDisplay().equals(dbVersionString)
|
||||
&& !EDatabaseVersion4Drivers.ORACLE_10.getVersionDisplay().equals(dbVersionString)
|
||||
&& !EDatabaseVersion4Drivers.ORACLE_11.getVersionDisplay().equals(dbVersionString)
|
||||
&& !EDatabaseVersion4Drivers.ORACLE_12.getVersionDisplay().equals(dbVersionString)
|
||||
) {
|
||||
if (!EDatabaseVersion4Drivers.ORACLE_11.getVersionDisplay().equals(dbVersionString)
|
||||
&& !EDatabaseVersion4Drivers.ORACLE_12.getVersionDisplay().equals(dbVersionString)) {
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,35 @@
|
||||
// ============================================================================
|
||||
//
|
||||
// Copyright (C) 2006-2021 Talend Inc. - www.talend.com
|
||||
//
|
||||
// This source code is available under agreement available at
|
||||
// %InstallDIR%\features\org.talend.rcp.branding.%PRODUCTNAME%\%PRODUCTNAME%license.txt
|
||||
//
|
||||
// You should have received a copy of the agreement
|
||||
// along with this program; if not, write to Talend SA
|
||||
// 9 rue Pages 92150 Suresnes, France
|
||||
//
|
||||
// ============================================================================
|
||||
package org.talend.repository.ui.wizards.metadata.table.database;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import org.talend.core.model.metadata.builder.database.TableNode;
|
||||
|
||||
/**
|
||||
* wzhang class global comment. Detailled comment
|
||||
*/
|
||||
public class DefaultSelectorTreeViewerProvider extends SelectorTreeViewerProvider {
|
||||
|
||||
public DefaultSelectorTreeViewerProvider() {
|
||||
super();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Object[] getChildren(Object parentElement) {
|
||||
TableNode tableNode = (TableNode) parentElement;
|
||||
List<TableNode> child = tableNode.getChildren();
|
||||
return child.toArray();
|
||||
}
|
||||
|
||||
}
|
||||
@@ -16,6 +16,8 @@ import java.lang.reflect.InvocationTargetException;
|
||||
import java.sql.Connection;
|
||||
import java.sql.DatabaseMetaData;
|
||||
import java.sql.Driver;
|
||||
import java.sql.PreparedStatement;
|
||||
import java.sql.ResultSet;
|
||||
import java.sql.SQLException;
|
||||
import java.text.Collator;
|
||||
import java.util.ArrayList;
|
||||
@@ -42,6 +44,8 @@ import org.eclipse.jface.dialogs.MessageDialog;
|
||||
import org.eclipse.jface.operation.IRunnableWithProgress;
|
||||
import org.eclipse.jface.viewers.AbstractTreeViewer;
|
||||
import org.eclipse.jface.viewers.ICheckStateProvider;
|
||||
import org.eclipse.jface.viewers.ITreeViewerListener;
|
||||
import org.eclipse.jface.viewers.TreeExpansionEvent;
|
||||
import org.eclipse.jface.viewers.Viewer;
|
||||
import org.eclipse.jface.viewers.ViewerFilter;
|
||||
import org.eclipse.jface.wizard.WizardPage;
|
||||
@@ -80,6 +84,7 @@ import org.talend.commons.ui.swt.formtools.Form;
|
||||
import org.talend.commons.ui.swt.formtools.UtilsButton;
|
||||
import org.talend.commons.utils.data.text.IndiceHelper;
|
||||
import org.talend.commons.utils.threading.TalendCustomThreadPoolExecutor;
|
||||
import org.talend.core.database.EDatabase4DriverClassName;
|
||||
import org.talend.core.database.EDatabaseTypeName;
|
||||
import org.talend.core.database.conn.ConnParameterKeys;
|
||||
import org.talend.core.model.metadata.IMetadataConnection;
|
||||
@@ -89,6 +94,7 @@ import org.talend.core.model.metadata.MetadataToolHelper;
|
||||
import org.talend.core.model.metadata.builder.connection.DatabaseConnection;
|
||||
import org.talend.core.model.metadata.builder.connection.MetadataColumn;
|
||||
import org.talend.core.model.metadata.builder.connection.MetadataTable;
|
||||
import org.talend.core.model.metadata.builder.database.DriverShim;
|
||||
import org.talend.core.model.metadata.builder.database.ExtractMetaDataFromDataBase;
|
||||
import org.talend.core.model.metadata.builder.database.ExtractMetaDataFromDataBase.ETableTypes;
|
||||
import org.talend.core.model.metadata.builder.database.ExtractMetaDataUtils;
|
||||
@@ -388,6 +394,7 @@ public class SelectorTableForm extends AbstractForm {
|
||||
// TDI-28768 after add checkStateProvider, the catalog and schema checked status become true , then
|
||||
// force them to false
|
||||
if (parentNode.getType() == TableNode.CATALOG || parentNode.getType() == TableNode.SCHEMA) {
|
||||
retrieveSchema(parentNode);
|
||||
needUpdate = false;
|
||||
}
|
||||
boolean firstExpand = false;
|
||||
@@ -466,7 +473,7 @@ public class SelectorTableForm extends AbstractForm {
|
||||
viewProvider = provider.getMetadataViewProvider();
|
||||
|
||||
} else {
|
||||
viewProvider = new SelectorTreeViewerProvider();
|
||||
viewProvider = new DefaultSelectorTreeViewerProvider();
|
||||
}
|
||||
|
||||
viewer.setLabelProvider(viewProvider);
|
||||
@@ -476,7 +483,206 @@ public class SelectorTableForm extends AbstractForm {
|
||||
scrolledCompositeFileViewer.setContent(tree);
|
||||
scrolledCompositeFileViewer.setMinSize(tree.computeSize(SWT.DEFAULT, SWT.DEFAULT));
|
||||
}
|
||||
|
||||
private void retrieveSchema(TableNode tableNode) {
|
||||
|
||||
IRunnableWithProgress runnable = new IRunnableWithProgress() {
|
||||
|
||||
@Override
|
||||
public void run(IProgressMonitor monitor) throws InvocationTargetException, InterruptedException {
|
||||
monitor.beginTask(Messages.getString("CreateTableAction.action.createTitle"), IProgressMonitor.UNKNOWN); //$NON-NLS-1$
|
||||
|
||||
List<TableNode> child = tableNode.getChildren();
|
||||
boolean extended = false;
|
||||
if (!child.isEmpty()) {
|
||||
for (TableNode node : child) {
|
||||
if (node.getType() == TableNode.TABLE) {
|
||||
extended = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
// if extended is true, means table already got,no need to get again.
|
||||
if (extended) {
|
||||
return;
|
||||
}
|
||||
|
||||
IMetadataConnection metadataConn = tableNode.getMetadataConn();
|
||||
|
||||
Connection conn = null;
|
||||
Driver driver = null;
|
||||
|
||||
DatabaseMetaData dbMetaData = null;
|
||||
ExtractMetaDataUtils extractMeta = ExtractMetaDataUtils.getInstance();
|
||||
// Added by Marvin Wang on Mar. 13, 2013 for loading hive jars dynamically, refer to TDI-25072.
|
||||
if (EDatabaseTypeName.HIVE.getXmlName().equalsIgnoreCase(metadataConn.getDbType())) {
|
||||
try {
|
||||
dbMetaData = HiveConnectionManager.getInstance().extractDatabaseMetaData(metadataConn);
|
||||
} catch (Exception e) {
|
||||
ExceptionHandler.process(e);
|
||||
}
|
||||
} else if (EDatabaseTypeName.IMPALA.getDisplayName().equalsIgnoreCase(metadataConn.getDbType())) {
|
||||
try {
|
||||
dbMetaData = ImpalaConnectionManager.getInstance().createConnection(metadataConn).getMetaData();
|
||||
} catch (Exception e) {
|
||||
ExceptionHandler.process(e);
|
||||
}
|
||||
} else {
|
||||
List list = extractMeta.getConnectionList(metadataConn);
|
||||
if (list != null && !list.isEmpty()) {
|
||||
for (int i = 0; i < list.size(); i++) {
|
||||
if (list.get(i) instanceof Connection) {
|
||||
conn = (Connection) list.get(i);
|
||||
}
|
||||
if (list.get(i) instanceof DriverShim) {
|
||||
driver = (DriverShim) list.get(i);
|
||||
}
|
||||
}
|
||||
}
|
||||
dbMetaData = extractMeta.getDatabaseMetaData(conn, metadataConn.getDbType(), metadataConn.isSqlMode(), metadataConn.getDatabase());
|
||||
}
|
||||
|
||||
int type = tableNode.getType();
|
||||
orgomg.cwm.objectmodel.core.Package pack = null;
|
||||
|
||||
List<MetadataTable> tableList = new ArrayList<MetadataTable>();
|
||||
|
||||
if (type == tableNode.CATALOG) {
|
||||
if (tableNode.getChildren().isEmpty()) {
|
||||
pack = tableNode.getCatalog();
|
||||
}
|
||||
} else if (type == tableNode.SCHEMA) {
|
||||
pack = tableNode.getSchema();
|
||||
}
|
||||
try {
|
||||
if (pack != null) {
|
||||
TableInfoParameters paras = tableNode.getParas();
|
||||
List<ETableTypes> paraType = paras.getTypes();
|
||||
Set<String> availableTableTypes = new HashSet<String>();
|
||||
for (ETableTypes tableType : paraType) {
|
||||
availableTableTypes.add(tableType.getName());
|
||||
}
|
||||
|
||||
// get all tables/views depending the filter selected
|
||||
|
||||
Set<String> tableNameFilter = null;
|
||||
|
||||
if (!paras.isUsedName()) {
|
||||
tableNameFilter = new HashSet<String>();
|
||||
if (paras.getSqlFiter() != null && !"".equals(paras.getSqlFiter())) { //$NON-NLS-1$
|
||||
PreparedStatement stmt = extractMeta.getConn().prepareStatement(paras.getSqlFiter());
|
||||
extractMeta.setQueryStatementTimeout(stmt);
|
||||
ResultSet rsTables = stmt.executeQuery();
|
||||
while (rsTables.next()) {
|
||||
String nameKey = rsTables.getString(1).trim();
|
||||
tableNameFilter.add(nameKey);
|
||||
}
|
||||
rsTables.close();
|
||||
stmt.close();
|
||||
}
|
||||
} else {
|
||||
tableNameFilter = paras.getNameFilters();
|
||||
}
|
||||
|
||||
List<MetadataTable> tempListTables = new ArrayList<MetadataTable>();
|
||||
MetadataFillFactory dbInstance = MetadataFillFactory.getDBInstance(metadataConn);
|
||||
for (String filter : tableNameFilter) {
|
||||
tempListTables = dbInstance.fillAll(pack, dbMetaData, metadataConn, null, filter, availableTableTypes.toArray(new String[] {}));
|
||||
for (MetadataTable table : tempListTables) {
|
||||
boolean contains = false;
|
||||
for (MetadataTable inListTable : tableList) {
|
||||
if (inListTable.getName().equals(table.getName())) {
|
||||
contains = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (!contains) {
|
||||
tableList.add(table);
|
||||
}
|
||||
}
|
||||
}
|
||||
if (tableNameFilter.isEmpty()) {
|
||||
tempListTables = dbInstance.fillAll(pack, dbMetaData, metadataConn, null, null, availableTableTypes.toArray(new String[] {}));
|
||||
for (MetadataTable table : tempListTables) {
|
||||
boolean contains = false;
|
||||
for (MetadataTable inListTable : tableList) {
|
||||
if (inListTable.getName().equals(table.getName())) {
|
||||
contains = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (!contains) {
|
||||
tableList.add(table);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
} catch (Exception e) {
|
||||
ExceptionHandler.process(e);
|
||||
} finally {
|
||||
String dbType = metadataConn.getDbType();
|
||||
// bug 22619
|
||||
String driverClass = metadataConn.getDriverClass();
|
||||
if (conn != null) {
|
||||
ConnectionUtils.closeConnection(conn);
|
||||
}
|
||||
// for specific db such as derby
|
||||
if (driver != null) {
|
||||
if ((driverClass != null && driverClass.equals(EDatabase4DriverClassName.JAVADB_EMBEDED.getDriverClass()))
|
||||
|| (dbType != null && (dbType.equals(EDatabaseTypeName.JAVADB_EMBEDED.getDisplayName()) || dbType.equals(EDatabaseTypeName.JAVADB_DERBYCLIENT.getDisplayName())
|
||||
|| dbType.equals(EDatabaseTypeName.JAVADB_JCCJDBC.getDisplayName()) || dbType.equals(EDatabaseTypeName.HSQLDB_IN_PROGRESS.getDisplayName())))) {
|
||||
try {
|
||||
driver.connect("jdbc:derby:;shutdown=true", null); //$NON-NLS-1$
|
||||
} catch (SQLException e) {
|
||||
// exception of shutdown success. no need to catch.
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
transferToTableNode(tableList, tableNode);
|
||||
Display.getDefault().syncExec(() -> {
|
||||
viewer.setInput(tableNodeList);
|
||||
viewer.expandToLevel(tableNode, viewer.ALL_LEVELS);
|
||||
});
|
||||
monitor.done();
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
try {
|
||||
this.parentWizardPage.getWizard().getContainer().run(true, true, runnable);
|
||||
} catch (Exception e) {
|
||||
ExceptionHandler.process(e);
|
||||
}
|
||||
}
|
||||
|
||||
protected void transferToTableNode(List<MetadataTable> list, TableNode parentNode) {
|
||||
if (list != null && !list.isEmpty()) {
|
||||
for (MetadataTable table : list) {
|
||||
if (table instanceof TdTable) {
|
||||
TdTable td = (TdTable) table;
|
||||
TableNode tableNode = new TableNode();
|
||||
tableNode.setType(TableNode.TABLE);
|
||||
tableNode.setValue(td.getLabel());
|
||||
tableNode.setItemType(td.getTableType());
|
||||
tableNode.setTable(td);
|
||||
tableNode.setParent(parentNode);
|
||||
parentNode.addChild(tableNode);
|
||||
} else if (table instanceof TdView) {
|
||||
TdView tv = (TdView) table;
|
||||
TableNode tableNode = new TableNode();
|
||||
tableNode.setType(TableNode.TABLE);
|
||||
tableNode.setValue(tv.getLabel());
|
||||
tableNode.setItemType(tv.getTableType());
|
||||
tableNode.setView(tv);
|
||||
tableNode.setParent(parentNode);
|
||||
parentNode.addChild(tableNode);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private final Collator col = Collator.getInstance(Locale.getDefault());
|
||||
|
||||
/**
|
||||
|
||||
@@ -22,6 +22,7 @@ import java.util.Map;
|
||||
|
||||
import org.eclipse.core.resources.IFile;
|
||||
import org.eclipse.emf.ecore.resource.Resource;
|
||||
import org.eclipse.jface.util.IPropertyChangeListener;
|
||||
import org.eclipse.jface.util.LocalSelectionTransfer;
|
||||
import org.eclipse.jface.viewers.IBaseLabelProvider;
|
||||
import org.eclipse.jface.viewers.ISelection;
|
||||
@@ -45,6 +46,7 @@ import org.osgi.service.event.Event;
|
||||
import org.osgi.service.event.EventConstants;
|
||||
import org.osgi.service.event.EventHandler;
|
||||
import org.talend.commons.exception.ExceptionHandler;
|
||||
import org.talend.commons.ui.runtime.ITalendThemeService;
|
||||
import org.talend.core.model.properties.Property;
|
||||
import org.talend.core.model.repository.IRepositoryViewObject;
|
||||
import org.talend.core.repository.CoreRepositoryPlugin;
|
||||
@@ -52,6 +54,7 @@ import org.talend.core.repository.constants.Constant;
|
||||
import org.talend.core.repository.model.ProjectRepositoryNode;
|
||||
import org.talend.core.repository.ui.actions.MoveObjectAction;
|
||||
import org.talend.core.repository.ui.view.RepositoryDropAdapter;
|
||||
import org.talend.core.repository.ui.view.RepositoryLabelProvider;
|
||||
import org.talend.core.repository.utils.XmiResourceManager;
|
||||
import org.talend.repository.model.IRepositoryNode;
|
||||
import org.talend.repository.model.RepositoryNode;
|
||||
@@ -79,6 +82,8 @@ public class RepoViewCommonViewer extends CommonViewer implements INavigatorCont
|
||||
|
||||
private ServiceRegistration lockService;
|
||||
|
||||
private IPropertyChangeListener propertyChangeListener;
|
||||
|
||||
/**
|
||||
* Getter for repViewCommonNavigator.
|
||||
*
|
||||
@@ -102,6 +107,8 @@ public class RepoViewCommonViewer extends CommonViewer implements INavigatorCont
|
||||
protected void init() {
|
||||
super.init();
|
||||
registerLockUnlockServiceListener();
|
||||
propertyChangeListener = RepositoryLabelProvider.createPropertyChangeListener(this);
|
||||
ITalendThemeService.addPropertyChangeListener(propertyChangeListener);
|
||||
}
|
||||
|
||||
// @SuppressWarnings("restriction")
|
||||
@@ -441,6 +448,9 @@ public class RepoViewCommonViewer extends CommonViewer implements INavigatorCont
|
||||
lockService.unregister();
|
||||
lockService = null;
|
||||
}// else service already unregistered or not event instanciated
|
||||
if (propertyChangeListener != null) {
|
||||
ITalendThemeService.removePropertyChangeListener(propertyChangeListener);
|
||||
}
|
||||
super.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1 +1 @@
|
||||
demo.description=\u30C7\u30FC\u30BF\u7D71\u5408\u30C7\u30E2
|
||||
demo.description=\u30C7\u30FC\u30BF\u30A4\u30F3\u30C6\u30B0\u30EC\u30FC\u30B7\u30E7\u30F3\u30C7\u30E2
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<classpath>
|
||||
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
|
||||
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
|
||||
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
|
||||
<classpathentry kind="src" path="src"/>
|
||||
<classpathentry kind="output" path="bin"/>
|
||||
|
||||
@@ -18,7 +18,10 @@ Require-Bundle: org.eclipse.ui,
|
||||
org.talend.commons.runtime,
|
||||
org.eclipse.e4.ui.model.workbench,
|
||||
org.eclipse.e4.ui.css.swt.theme,
|
||||
org.eclipse.osgi.services
|
||||
org.eclipse.osgi.services,
|
||||
org.apache.batik.css,
|
||||
org.talend.common.ui.runtime
|
||||
Service-Component: OSGI-INF/core.xml
|
||||
Bundle-ActivationPolicy: lazy
|
||||
Export-Package: org.talend.themes.core.elements.constants,
|
||||
org.talend.themes.core.elements.interfaces,
|
||||
@@ -26,3 +29,4 @@ Export-Package: org.talend.themes.core.elements.constants,
|
||||
org.talend.themes.core.elements.stylesettings,
|
||||
org.talend.themes.core.elements.utils,
|
||||
org.talend.themes.core.elements.widgets
|
||||
Import-Package: org.w3c.css.sac
|
||||
|
||||
7
main/plugins/org.talend.themes.core/OSGI-INF/core.xml
Normal file
7
main/plugins/org.talend.themes.core/OSGI-INF/core.xml
Normal file
@@ -0,0 +1,7 @@
|
||||
<?xml version="1.0"?>
|
||||
<component name="TalendThemeService">
|
||||
<implementation class="org.talend.themes.core.TalendThemeService"/>
|
||||
<service>
|
||||
<provide interface="org.talend.commons.ui.runtime.ITalendThemeService"/>
|
||||
</service>
|
||||
</component>
|
||||
@@ -3,4 +3,5 @@ output.. = bin/
|
||||
bin.includes = META-INF/,\
|
||||
.,\
|
||||
plugin.xml,\
|
||||
build.properties
|
||||
build.properties,\
|
||||
OSGI-INF/
|
||||
|
||||
@@ -0,0 +1,159 @@
|
||||
// ============================================================================
|
||||
//
|
||||
// Copyright (C) 2006-2022 Talend Inc. - www.talend.com
|
||||
//
|
||||
// This source code is available under agreement available at
|
||||
// %InstallDIR%\features\org.talend.rcp.branding.%PRODUCTNAME%\%PRODUCTNAME%license.txt
|
||||
//
|
||||
// You should have received a copy of the agreement
|
||||
// along with this program; if not, write to Talend SA
|
||||
// 9 rue Pages 92150 Suresnes, France
|
||||
//
|
||||
// ============================================================================
|
||||
package org.talend.themes.core;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.HashSet;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
|
||||
import org.apache.batik.css.parser.CSSLexicalUnit;
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
import org.apache.log4j.Logger;
|
||||
import org.eclipse.core.runtime.Assert;
|
||||
import org.eclipse.core.runtime.preferences.InstanceScope;
|
||||
import org.eclipse.e4.ui.css.core.impl.dom.CSSValueFactory;
|
||||
import org.eclipse.e4.ui.css.swt.helpers.CSSSWTColorHelper;
|
||||
import org.eclipse.jface.preference.IPreferenceStore;
|
||||
import org.eclipse.jface.resource.ColorRegistry;
|
||||
import org.eclipse.jface.resource.JFaceResources;
|
||||
import org.eclipse.jface.util.IPropertyChangeListener;
|
||||
import org.eclipse.swt.graphics.Color;
|
||||
import org.eclipse.swt.graphics.RGB;
|
||||
import org.eclipse.swt.widgets.Display;
|
||||
import org.eclipse.ui.preferences.ScopedPreferenceStore;
|
||||
import org.eclipse.ui.themes.ColorUtil;
|
||||
import org.talend.commons.exception.ExceptionHandler;
|
||||
import org.talend.commons.ui.runtime.ITalendThemeService;
|
||||
import org.w3c.css.sac.LexicalUnit;
|
||||
|
||||
/**
|
||||
* DOC cmeng class global comment. Detailled comment
|
||||
*/
|
||||
public class TalendThemeService implements ITalendThemeService {
|
||||
|
||||
private static final Logger log = Logger.getLogger(TalendThemeService.class);
|
||||
|
||||
private Map<String, IPreferenceStore> storeMap = new HashMap<>();
|
||||
|
||||
private Map<String, Set<IPropertyChangeListener>> listenerMap = new HashMap<>();
|
||||
|
||||
@Override
|
||||
public Color getColorForTheme(String bundleId, String prop) {
|
||||
Assert.isNotNull(bundleId);
|
||||
Assert.isNotNull(prop);
|
||||
IPreferenceStore prefStore = getPreferenceStore(bundleId);
|
||||
return getColor(prefStore, prop, Display.getDefault());
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getPropertyForTheme(String bundleId, String key) {
|
||||
Assert.isNotNull(bundleId);
|
||||
Assert.isNotNull(key);
|
||||
IPreferenceStore prefStore = getPreferenceStore(bundleId);
|
||||
return prefStore.getString(key);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void addPropertyChangeListenerFor(String bundleId, IPropertyChangeListener listener) {
|
||||
Assert.isNotNull(bundleId);
|
||||
Assert.isNotNull(listener);
|
||||
Set<IPropertyChangeListener> set = this.listenerMap.get(bundleId);
|
||||
if (set != null && set.contains(listener)) {
|
||||
log.info("Listener already exist:" + listener);
|
||||
return;
|
||||
}
|
||||
getPreferenceStore(bundleId).addPropertyChangeListener(listener);
|
||||
if (set == null) {
|
||||
set = new HashSet<>();
|
||||
this.listenerMap.put(bundleId, set);
|
||||
}
|
||||
set.add(listener);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean containsPropertyChangeListenerFor(String bundleId, IPropertyChangeListener listener) {
|
||||
Assert.isNotNull(bundleId);
|
||||
Assert.isNotNull(listener);
|
||||
Set<IPropertyChangeListener> set = this.listenerMap.get(bundleId);
|
||||
if (set != null) {
|
||||
return set.contains(listener);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void removePropertyChangeListenerFor(String bundleId, IPropertyChangeListener listener) {
|
||||
Assert.isNotNull(bundleId);
|
||||
Assert.isNotNull(listener);
|
||||
getPreferenceStore(bundleId).removePropertyChangeListener(listener);
|
||||
Set<IPropertyChangeListener> set = this.listenerMap.get(bundleId);
|
||||
if (set != null) {
|
||||
set.remove(listener);
|
||||
if (set.isEmpty()) {
|
||||
this.listenerMap.remove(bundleId);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private IPreferenceStore getPreferenceStore(String bundleId) {
|
||||
IPreferenceStore prefStore = storeMap.get(bundleId);
|
||||
if (prefStore == null) {
|
||||
prefStore = new ScopedPreferenceStore(InstanceScope.INSTANCE, bundleId);
|
||||
storeMap.put(bundleId, prefStore);
|
||||
}
|
||||
return prefStore;
|
||||
}
|
||||
|
||||
private Color getColor(IPreferenceStore store, String key, Display display) {
|
||||
try {
|
||||
RGB rgb = null;
|
||||
if (store.contains(key)) {
|
||||
String colorStr = null;
|
||||
if (store.isDefault(key)) {
|
||||
colorStr = store.getDefaultString(key);
|
||||
} else {
|
||||
colorStr = store.getString(key);
|
||||
}
|
||||
if (StringUtils.isNotBlank(colorStr)) {
|
||||
if (0 <= colorStr.indexOf(',')) {
|
||||
rgb = ColorUtil.getColorValue(colorStr);
|
||||
} else {
|
||||
Color swtColor = CSSSWTColorHelper.getSWTColor(CSSValueFactory
|
||||
.newValue(CSSLexicalUnit.createString(LexicalUnit.SAC_STRING_VALUE, colorStr, null)), display);
|
||||
if (swtColor != null) {
|
||||
rgb = swtColor.getRGB();
|
||||
try {
|
||||
swtColor.dispose();
|
||||
} catch (Throwable e) {
|
||||
ExceptionHandler.process(e);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if (rgb != null) {
|
||||
ColorRegistry colorRegistry = JFaceResources.getColorRegistry();
|
||||
Color color = colorRegistry.get(rgb.toString());
|
||||
if (color == null) {
|
||||
colorRegistry.put(rgb.toString(), rgb);
|
||||
}
|
||||
return colorRegistry.get(rgb.toString());
|
||||
}
|
||||
}
|
||||
} catch (Throwable e) {
|
||||
ExceptionHandler.process(e);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -115,10 +115,10 @@ public class TalendPaletteCSSPropertyHandler implements ICSSPropertyHandler {
|
||||
}
|
||||
} else if ("tPalette-list-background-color".equalsIgnoreCase(property)) {
|
||||
RGB rgb = ((Color) engine.convert(value, Color.class, paletteComposite.getDisplay())).getRGB();
|
||||
Color oldColor = paletteSetting.getCollapsedBackgroundColor();
|
||||
Color oldColor = paletteSetting.getListBackgroundColor();
|
||||
if (oldColor == null || !oldColor.getRGB().equals(rgb)) {
|
||||
changed = true;
|
||||
paletteSetting.setCollapsedBackgroundColor(CommonCSSStyleSetting.getColorByRGB(rgb));
|
||||
paletteSetting.setListBackgroundColor(CommonCSSStyleSetting.getColorByRGB(rgb));
|
||||
}
|
||||
} else if ("tPalette-color-increment".equalsIgnoreCase(property)) {
|
||||
Integer colorIncrement = null;
|
||||
|
||||
@@ -10,4 +10,7 @@ Require-Bundle: org.eclipse.ui,
|
||||
org.eclipse.e4.ui.css.swt,
|
||||
org.eclipse.e4.ui.css.swt.theme
|
||||
Bundle-ActivationPolicy: lazy
|
||||
Bundle-Localization: plugin
|
||||
Bundle-Vendor: .Talend SA.
|
||||
Eclipse-BundleShape: dir
|
||||
Automatic-Module-Name: org.talend.themes.css.talend
|
||||
|
||||
@@ -3,4 +3,5 @@ output.. = bin/
|
||||
bin.includes = META-INF/,\
|
||||
.,\
|
||||
themes/,\
|
||||
plugin.xml
|
||||
plugin.xml,\
|
||||
plugin.properties
|
||||
|
||||
32
main/plugins/org.talend.themes.css.talend/plugin.properties
Normal file
32
main/plugins/org.talend.themes.css.talend/plugin.properties
Normal file
@@ -0,0 +1,32 @@
|
||||
theme.default=Talend default theme
|
||||
theme.dark=Talend experimental dark theme
|
||||
|
||||
#New theme element definitions
|
||||
DARK_BACKGROUND=Dark Background Color
|
||||
DARK_FOREGROUND=Dark Foreground Color
|
||||
INACTIVE_UNSELECTED_TABS_COLOR_START=Inactive, unselected part color begin
|
||||
INACTIVE_UNSELECTED_TABS_COLOR_START=Inactive, unselected part color begin
|
||||
INACTIVE_UNSELECTED_TABS_COLOR_END=Inactive, unselected part color end
|
||||
INACTIVE_TAB_TEXT_COLOR=Inactive part text color
|
||||
INACTIVE_TAB_OUTER_KEYLINE_COLOR=Inactive part outer keyline color
|
||||
INACTIVE_TAB_INNER_KEYLINE_COLOR=Inactive part inner keyline color
|
||||
INACTIVE_TAB_OUTLINE_COLOR=Inactive part outline color
|
||||
ACTIVE_UNSELECTED_TABS_COLOR_START=Active, unselected part color begin
|
||||
ACTIVE_UNSELECTED_TABS_COLOR_END=Active, unselected part color end
|
||||
ACTIVE_TAB_TEXT_COLOR=Active part text color
|
||||
ACTIVE_TAB_OUTER_KEYLINE_COLOR=Active part outer keyline color
|
||||
ACTIVE_TAB_INNER_KEYLINE_COLOR=Active part inner keyline color
|
||||
ACTIVE_TAB_OUTLINE_COLOR=Active part outline color
|
||||
INACTIVE_TAB_BG_START=Inactive, selected part background begin
|
||||
INACTIVE_TAB_BG_END=Inactive, selected part background end
|
||||
INACTIVE_TAB_UNSELECTED_TEXT_COLOR=Inactive, unselected part foreground
|
||||
INACTIVE_TAB_SELECTED_TEXT_COLOR=Inactive, selected part foreground
|
||||
ACTIVE_TAB_BG_START=Active, selected part background begin
|
||||
ACTIVE_TAB_BG_END=Active, selected part background end
|
||||
ACTIVE_TAB_UNSELECTED_TEXT_COLOR=Active, unselected part foreground
|
||||
ACTIVE_TAB_SELECTED_TEXT_COLOR=Active, selected part foreground
|
||||
ACTIVE_NOFOCUS_TAB_TEXT_COLOR=Active (no focus), selected part text color
|
||||
ACTIVE_NOFOCUS_TAB_BG_START=Active (no focus), selected part background begin
|
||||
ACTIVE_NOFOCUS_TAB_BG_END=Active (no focus), selected part background end
|
||||
ACTIVE_NOFOCUS_TAB_SELECTED_TEXT_COLOR=Active (no focus), selected part foreground
|
||||
LINK_COLOR=Link color
|
||||
@@ -7,9 +7,46 @@
|
||||
<theme
|
||||
basestylesheeturi="themes/default/css/default.css"
|
||||
id="org.talend.themes.css.talend.default"
|
||||
label="Talend default theme">
|
||||
label="%theme.default">
|
||||
<!-- please see: TalendThemeConstants.TALEND_DEFAULT_THEME_ID -->
|
||||
</theme>
|
||||
<!--
|
||||
<theme
|
||||
basestylesheeturi="themes/dark/e4-dark_linux.css"
|
||||
id="org.eclipse.e4.ui.css.theme.e4_dark"
|
||||
label="%theme.dark"
|
||||
os="linux">
|
||||
</theme>
|
||||
<theme
|
||||
basestylesheeturi="themes/dark/e4-dark_win.css"
|
||||
id="org.eclipse.e4.ui.css.theme.e4_dark"
|
||||
label="%theme.dark"
|
||||
os="win32">
|
||||
</theme>
|
||||
<theme
|
||||
basestylesheeturi="themes/dark/e4-dark_mac.css"
|
||||
id="org.eclipse.e4.ui.css.theme.e4_dark"
|
||||
label="%theme.dark"
|
||||
os="macosx">
|
||||
</theme>
|
||||
<theme
|
||||
basestylesheeturi="themes/dark/e4-dark_mac1013.css"
|
||||
id="org.eclipse.e4.ui.css.theme.e4_dark"
|
||||
label="%theme.dark"
|
||||
os="macosx"
|
||||
os_version="10.11,10.12,10.13">
|
||||
</theme>
|
||||
-->
|
||||
<stylesheet
|
||||
uri="themes/dark/dark/e4-dark_preferencestyle.css">
|
||||
<themeid
|
||||
refid="org.eclipse.e4.ui.css.theme.e4_dark"></themeid>
|
||||
</stylesheet>
|
||||
<stylesheet
|
||||
uri="themes/default/css/preferencestyle.css">
|
||||
<themeid
|
||||
refid="org.talend.themes.css.talend.default"></themeid>
|
||||
</stylesheet>
|
||||
</extension>
|
||||
|
||||
</plugin>
|
||||
|
||||
@@ -0,0 +1,32 @@
|
||||
theme.default=Th\u00E8me Talend par d\u00E9faut
|
||||
theme.dark=Th\u00E8me sombre Talend exp\u00E9rimental
|
||||
|
||||
#New theme element definitions
|
||||
DARK_BACKGROUND=Couleur du fond sombre
|
||||
DARK_FOREGROUND=Couleur du premier plan sombre
|
||||
INACTIVE_UNSELECTED_TABS_COLOR_START=Inactive, unselected part color begin
|
||||
INACTIVE_UNSELECTED_TABS_COLOR_START=Inactive, unselected part color begin
|
||||
INACTIVE_UNSELECTED_TABS_COLOR_END=Inactive, unselected part color end
|
||||
INACTIVE_TAB_TEXT_COLOR=Inactive part text color
|
||||
INACTIVE_TAB_OUTER_KEYLINE_COLOR=Inactive part outer keyline color
|
||||
INACTIVE_TAB_INNER_KEYLINE_COLOR=Inactive part inner keyline color
|
||||
INACTIVE_TAB_OUTLINE_COLOR=Inactive part outline color
|
||||
ACTIVE_UNSELECTED_TABS_COLOR_START=Active, unselected part color begin
|
||||
ACTIVE_UNSELECTED_TABS_COLOR_END=Active, unselected part color end
|
||||
ACTIVE_TAB_TEXT_COLOR=Active part text color
|
||||
ACTIVE_TAB_OUTER_KEYLINE_COLOR=Active part outer keyline color
|
||||
ACTIVE_TAB_INNER_KEYLINE_COLOR=Active part inner keyline color
|
||||
ACTIVE_TAB_OUTLINE_COLOR=Active part outline color
|
||||
INACTIVE_TAB_BG_START=Inactive, selected part background begin
|
||||
INACTIVE_TAB_BG_END=Inactive, selected part background end
|
||||
INACTIVE_TAB_UNSELECTED_TEXT_COLOR=Inactive, unselected part foreground
|
||||
INACTIVE_TAB_SELECTED_TEXT_COLOR=Inactive, selected part foreground
|
||||
ACTIVE_TAB_BG_START=Active, selected part background begin
|
||||
ACTIVE_TAB_BG_END=Active, selected part background end
|
||||
ACTIVE_TAB_UNSELECTED_TEXT_COLOR=Active, unselected part foreground
|
||||
ACTIVE_TAB_SELECTED_TEXT_COLOR=Active, selected part foreground
|
||||
ACTIVE_NOFOCUS_TAB_TEXT_COLOR=Active (no focus), selected part text color
|
||||
ACTIVE_NOFOCUS_TAB_BG_START=Active (no focus), selected part background begin
|
||||
ACTIVE_NOFOCUS_TAB_BG_END=Active (no focus), selected part background end
|
||||
ACTIVE_NOFOCUS_TAB_SELECTED_TEXT_COLOR=Active (no focus), selected part foreground
|
||||
LINK_COLOR=Couleur du lien
|
||||
@@ -0,0 +1,24 @@
|
||||
/*******************************************************************************
|
||||
* Copyright (c) 2020 IBM Corporation and others.
|
||||
*
|
||||
* This program and the accompanying materials
|
||||
* are made available under the terms of the Eclipse Public License 2.0
|
||||
* which accompanies this distribution, and is available at
|
||||
* https://www.eclipse.org/legal/epl-2.0/
|
||||
*
|
||||
* SPDX-License-Identifier: EPL-2.0
|
||||
*
|
||||
* Contributors:
|
||||
* IBM Corporation - initial API and implementation
|
||||
*******************************************************************************/
|
||||
|
||||
.MTrimmedWindow.topLevel {
|
||||
margin-top: 0px;
|
||||
margin-bottom: 0px;
|
||||
margin-left: 0px;
|
||||
margin-right: 0px;
|
||||
}
|
||||
|
||||
.MPartStack Tree, .MPartStack Table {
|
||||
font-family: '#org-eclipse-ui-workbench-TREE_TABLE_FONT';
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
/*******************************************************************************
|
||||
* Copyright (c) 2019 vogella GmbH and others.
|
||||
*
|
||||
* This program and the accompanying materials
|
||||
* are made available under the terms of the Eclipse Public License 2.0
|
||||
* which accompanies this distribution, and is available at
|
||||
* https://www.eclipse.org/legal/epl-2.0/
|
||||
*
|
||||
* SPDX-License-Identifier: EPL-2.0
|
||||
*
|
||||
* Contributors:
|
||||
* Lars Vogel - initial API and implementation
|
||||
*******************************************************************************/
|
||||
|
||||
|
||||
/* ################################ CSS related to drag and drop ########################## */
|
||||
|
||||
.DragFeedback {
|
||||
background-color: COLOR-WIDGET-NORMAL-SHADOW;
|
||||
}
|
||||
|
||||
.ModifiedDragFeedback {
|
||||
background-color: #4176AF;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,350 @@
|
||||
/*******************************************************************************
|
||||
* Copyright (c) 2010, 2015 Andrea Guarinoni and others.
|
||||
*
|
||||
* This program and the accompanying materials
|
||||
* are made available under the terms of the Eclipse Public License 2.0
|
||||
* which accompanies this distribution, and is available at
|
||||
* https://www.eclipse.org/legal/epl-2.0/
|
||||
*
|
||||
* SPDX-License-Identifier: EPL-2.0
|
||||
*
|
||||
* Contributors:
|
||||
* Andrea Guarinoni <andrea.guarinoni.dev@outlook.com> - initial API and implementation
|
||||
* Stefan Winkler <stefan@winklerweb.net> - Bug 434189, 430848
|
||||
* Simon Scholz <simon.scholz@vogella.com> - Bug 431635
|
||||
* Fabio Zadrozny <fabiofz@gmail.com> - Bug 465148, 465711
|
||||
* Lars Vogel <Lars.Vogel@vogella.com> Bug 463652,466275
|
||||
*******************************************************************************/
|
||||
|
||||
/*******************************************************************************
|
||||
* The following bugs are referred to in this style sheet
|
||||
* 2.) Bug 419377 - Setting a property to 'inherit' is not supported
|
||||
* 3.) Bug 430051 - Regression for CTabRendering when drawing bottom tabs
|
||||
*******************************************************************************/
|
||||
|
||||
|
||||
/* ############################## Global Styles ############################## */
|
||||
|
||||
Shell {
|
||||
background-color:'#org-eclipse-ui-workbench-DARK_BACKGROUND';
|
||||
color:'#org-eclipse-ui-workbench-DARK_FOREGROUND';
|
||||
}
|
||||
|
||||
.TalendTabbedPropertyList{
|
||||
background-color: black;
|
||||
border-visible: true;
|
||||
color:black;
|
||||
_t-widget-normal-shadow-color:black;
|
||||
_t-widget-dark-shadow-color:black;
|
||||
_t-list-background-color: #ffffff;
|
||||
_t-widget-vertical-line-color: #E3E3E3;
|
||||
}
|
||||
|
||||
.TalendTabbedPropertyTitle{
|
||||
border-visible: false;
|
||||
_t-title-foreground-color:black;
|
||||
_t-title-background-color:black;
|
||||
_t-title-bottom-foreground-keyline1-color:black;
|
||||
_t-title-bottom-foreground-keyline2-color:black;
|
||||
}
|
||||
|
||||
Composite, ScrolledComposite, ExpandableComposite, Canvas, TabFolder, CLabel, Label,
|
||||
CoolBar, Sash, Group, RefactoringLocationControl, ChangeParametersControl, Link, FilteredTree,
|
||||
ProxyEntriesComposite, NonProxyHostsComposite, DelayedFilterCheckboxTree,
|
||||
Splitter, ScrolledPageContent, ViewForm, LaunchConfigurationFilteredTree,
|
||||
ContainerSelectionGroup, BrowseCatalogItem, EncodingSettings,
|
||||
ProgressMonitorPart, DocCommentOwnerComposite, NewServerComposite,
|
||||
NewManualServerComposite, ServerTypeComposite, FigureCanvas,
|
||||
DependenciesComposite, ListEditorComposite, WrappedPageBook,
|
||||
CompareStructureViewerSwitchingPane, CompareContentViewerSwitchingPane,
|
||||
QualifiedNameComponent, RefactoringStatusViewer,
|
||||
MessageLine,
|
||||
Button /* SWT-BUG: checkbox inner label font color is not accessible */,
|
||||
Composite > *,
|
||||
Composite > * > *,
|
||||
Group > StyledText {
|
||||
background-color:'#org-eclipse-ui-workbench-DARK_BACKGROUND';
|
||||
color:'#org-eclipse-ui-workbench-DARK_FOREGROUND';
|
||||
}
|
||||
|
||||
/* ############################## Toolbar ############################## */
|
||||
/* Ensure that the labels in the tabfolder gets updated
|
||||
See Bug 552780
|
||||
*/
|
||||
TabFolder > *,
|
||||
CTabFolder > *,
|
||||
TabFolder > Composite > *, /* Composite > CommitSearchPage$... */
|
||||
CTabFolder > Composite > *, /* Composite > CommitSearchPage$... */
|
||||
TabFolder > Composite > * > * { /* [style~='SWT.NO_BACKGROUND'] <- generate E4 non-sense bugs in apparently not related other rules Composite > ContentMergeViewer$... > TextMergeViewer$... */
|
||||
color:'#org-eclipse-ui-workbench-DARK_FOREGROUND';
|
||||
}
|
||||
|
||||
/* Toolbar should inherit the colors of its container to avoid drawing artifacts*/
|
||||
ToolBar {
|
||||
background-color:inherit;
|
||||
}
|
||||
|
||||
Combo,
|
||||
List,
|
||||
Text,
|
||||
Spinner,
|
||||
CCombo {
|
||||
background-color:'#org-eclipse-ui-workbench-DARK_BACKGROUND';
|
||||
color:'#org-eclipse-ui-workbench-DARK_FOREGROUND';
|
||||
}
|
||||
Composite > StyledText,
|
||||
Shell [style~='SWT.DROP_DOWN'] > StyledText, /* for eg. folded code popup (but it's ignored) */
|
||||
SashForm > StyledText {
|
||||
/* Fix StyledText inside a SashForm */
|
||||
background-color:'#org-eclipse-ui-workbench-DARK_BACKGROUND';
|
||||
color:'#org-eclipse-ui-workbench-DARK_FOREGROUND';
|
||||
}
|
||||
|
||||
Text[style~='SWT.SEARCH'],
|
||||
Text[style~='SWT.SEARCH'] + Label /* SWT-BUG: adjacent sibling selector is ignored (CSS2.1) */ {
|
||||
/* search boxes */
|
||||
background-color: #333;
|
||||
color: #F4F7F7;
|
||||
}
|
||||
|
||||
Text[style~='SWT.READ_ONLY'] {
|
||||
background-color: '#org-eclipse-ui-workbench-DARK_BACKGROUND';
|
||||
color: #bbbbbb;
|
||||
}
|
||||
|
||||
Shell Tree, Shell Table, Shell List {
|
||||
background-color: #2F2F2F;
|
||||
}
|
||||
|
||||
DatePicker,
|
||||
DatePicker > Text,
|
||||
ScheduleDatePicker,
|
||||
ScheduleDatePicker > Text {
|
||||
background-color:'#org-eclipse-ui-workbench-DARK_BACKGROUND';
|
||||
color:'#org-eclipse-ui-workbench-DARK_FOREGROUND';
|
||||
}
|
||||
|
||||
|
||||
ScrolledFormText,
|
||||
FormText {
|
||||
background-color:'#org-eclipse-ui-workbench-DARK_BACKGROUND';
|
||||
color:'#org-eclipse-ui-workbench-DARK_FOREGROUND';
|
||||
}
|
||||
|
||||
Table,
|
||||
Tree,
|
||||
RegistryFilteredTree {
|
||||
background-color:inherit;
|
||||
color:'#org-eclipse-ui-workbench-DARK_FOREGROUND';
|
||||
}
|
||||
|
||||
Hyperlink,
|
||||
ImageHyperlink {
|
||||
background-color: inherit;
|
||||
color: #6fc5ee;
|
||||
}
|
||||
|
||||
|
||||
ViewerPane,
|
||||
DrillDownComposite {
|
||||
background-color: #232323;
|
||||
color: #CCC;
|
||||
}
|
||||
|
||||
ProgressInfoItem,
|
||||
ProgressInfoItem > *,
|
||||
CompareViewerPane,
|
||||
CompareViewerPane > * {
|
||||
background-color: inherit;
|
||||
color: '#org-eclipse-ui-workbench-DARK_FOREGROUND';
|
||||
}
|
||||
|
||||
ProgressIndicator {
|
||||
background-color: #777;
|
||||
color: '#org-eclipse-ui-workbench-DARK_FOREGROUND';
|
||||
}
|
||||
|
||||
DiscoveryItem,
|
||||
DiscoveryItem Label,
|
||||
DiscoveryItem Composite {
|
||||
background-color: #383C3E;
|
||||
color: #dddddd;
|
||||
}
|
||||
DiscoveryItem StyledText {
|
||||
background-color: #383C3E;
|
||||
color: #aaaaaa;
|
||||
}
|
||||
DiscoveryItem Link {
|
||||
background-color: #383C3E;
|
||||
color: #8B9498;
|
||||
}
|
||||
|
||||
CatalogSwitcher,
|
||||
CatalogSwitcher > ScrolledComposite > Composite > Composite /* ignored because hard-coded */,
|
||||
CategoryItem {
|
||||
background-color: '#org-eclipse-ui-workbench-DARK_BACKGROUND';
|
||||
color: #dddddd;
|
||||
}
|
||||
GradientCanvas,
|
||||
GradientCanvas > Label {
|
||||
background-color: #3f4447;
|
||||
color: #9ac9d8;
|
||||
}
|
||||
GradientCanvas {
|
||||
/* SWT-BUG workaround: GradientCanvas background-color is ignored */
|
||||
background: #3f4447;
|
||||
}
|
||||
CategoryItem > GradientCanvas,
|
||||
CategoryItem > GradientCanvas > Label {
|
||||
/* SWT-BUG workaround: a style for background is not applied on GradientCanvas (CSS engine repaint issue) */
|
||||
background-color: #fafafa;
|
||||
color: #333;
|
||||
}
|
||||
CategoryItem > GradientCanvas {
|
||||
/* SWT-BUG workaround: a style for background is not applied on GradientCanvas (CSS engine repaint issue) */
|
||||
background: #fafafa;
|
||||
background-image: #333;
|
||||
}
|
||||
|
||||
WebSite {
|
||||
background-color: #41464A;
|
||||
color: #dddddd;
|
||||
}
|
||||
|
||||
Form,
|
||||
FormHeading {
|
||||
background-color: #505F70;
|
||||
color: #9AC9D8;
|
||||
}
|
||||
|
||||
Form {
|
||||
/* Bug 465148: Additional styling for the Form */
|
||||
text-background-color: #505F70;
|
||||
|
||||
tb-toggle-hover-color: #313538;
|
||||
tb-toggle-color: #313538;
|
||||
h-hover-full-color: #313538;
|
||||
h-hover-light-color: #313538;
|
||||
h-bottom-keyline-2-color: #313538;
|
||||
h-bottom-keyline-1-color: #313538;
|
||||
|
||||
/* We also have to force the background mode (the
|
||||
* Label/ToolBar in the heading should inherit it).
|
||||
*/
|
||||
swt-background-mode: 'force';
|
||||
}
|
||||
|
||||
Section {
|
||||
background-color: #4F5355;
|
||||
color: #AEBED0;
|
||||
background-color-titlebar: #4F5355;
|
||||
background-color-gradient-titlebar: #4F5355;
|
||||
border-color-titlebar: #4F5355;
|
||||
swt-titlebar-color: #cccccc;
|
||||
tb-toggle-hover-color: #F4F7F7;
|
||||
tb-toggle-color: #F4F7F7;
|
||||
}
|
||||
|
||||
Table,
|
||||
Tree {
|
||||
swt-header-color: #CCC;
|
||||
swt-header-background-color: #383D3F;
|
||||
}
|
||||
|
||||
Twistie {
|
||||
color: #E8E4DF;
|
||||
}
|
||||
|
||||
.MPartSashContainer {
|
||||
background-color: '#org-eclipse-ui-workbench-DARK_BACKGROUND';
|
||||
color: #EEEEEE;
|
||||
}
|
||||
|
||||
HeapStatus {
|
||||
background-color: #4F5355;
|
||||
color: #EEEEEE;
|
||||
}
|
||||
|
||||
PageSiteComposite, PageSiteComposite > CImageLabel {
|
||||
color: #EEEEEE;
|
||||
}
|
||||
PageSiteComposite > PropertyTable {
|
||||
background-color: #333;
|
||||
color: #EEEEEE;
|
||||
}
|
||||
PageSiteComposite > PropertyTable:disabled {
|
||||
/* SWT-BUG: event is triggered but styles for PropertyTable are hard-coded */
|
||||
background-color: #444;
|
||||
color: #EEEEEE;
|
||||
}
|
||||
|
||||
/* See Bug 430848: We need to override the theme of the Eclipse splash screen, because
|
||||
* otherwise the splash screen would be partly switched to the dark theme during startup,
|
||||
* which does not look very nice.
|
||||
*/
|
||||
Label#org-eclipse-ui-splash-progressText {
|
||||
background-color: inherit; /* transparent */
|
||||
color: #9c9696; /* see property startupForegroundColor in the product */
|
||||
}
|
||||
|
||||
Label#org-eclipse-ui-buildid-text {
|
||||
background-color: inherit; /* transparent */
|
||||
}
|
||||
|
||||
ProgressIndicator#org-eclipse-ui-splash-progressIndicator {
|
||||
background-color: #e1e1e1;
|
||||
}
|
||||
|
||||
Link {
|
||||
swt-link-foreground-color: '#org-eclipse-ui-workbench-LINK_COLOR'
|
||||
}
|
||||
|
||||
ExpandableComposite {
|
||||
swt-titlebar-color: #cccccc;
|
||||
tb-toggle-hover-color: #F4F7F7;
|
||||
tb-toggle-color: #F4F7F7;
|
||||
}
|
||||
|
||||
TabbedPropertyTitle > CLabel{
|
||||
color: #9AC9D8;
|
||||
}
|
||||
|
||||
TabbedPropertyTitle {
|
||||
swt-backgroundGradientStart-color: #505F70;
|
||||
swt-backgroundGradientEnd-color: #505F70;
|
||||
swt-backgroundBottomKeyline1-color: #505F70;
|
||||
swt-backgroundBottomKeyline2-color: #505F70;
|
||||
}
|
||||
|
||||
TabbedPropertyList {
|
||||
swt-tabNormalShadow-color : '#org-eclipse-ui-workbench-INACTIVE_TAB_OUTLINE_COLOR'; /* color of shadow lines around the tabs */
|
||||
swt-tabDarkShadow-color : '#org-eclipse-ui-workbench-ACTIVE_NOFOCUS_TAB_SELECTED_TEXT_COLOR'; /* line color of the tiny scroll triangle (at top / at bottom) */
|
||||
swt-tabAreaBackground-color : '#org-eclipse-ui-workbench-DARK_BACKGROUND'; /*same as canvas*/
|
||||
swt-tabBackground-color : '#org-eclipse-ui-workbench-ACTIVE_NOFOCUS_TAB_BG_START';
|
||||
color : '#org-eclipse-ui-workbench-ACTIVE_NOFOCUS_TAB_SELECTED_TEXT_COLOR'; /* text color in the tab / tab area */
|
||||
}
|
||||
|
||||
.TalendPaletteCls {
|
||||
tPalette-collapsed-forground-color: #515658;
|
||||
tPalette-collapsed-background-color: #515658;
|
||||
tPalette-mouseOver-forground-color1:#cccccc;
|
||||
tPalette-mouseOver-forground-color2:#cccccc;
|
||||
tPalette-mouseOver-forground-color3:#cccccc;
|
||||
tPalette-mouseOver-background-color1:#3c8ad2;
|
||||
tPalette-mouseOver-background-color2:#3c8ad2;
|
||||
tPalette-mouseOver-background-color3:#3c8ad2; /* */
|
||||
tPalette-expanded-background-color: black;
|
||||
/* tPalette-expanded-background-color:#0069d9; /* background color when level is selected */
|
||||
tPalette-collapse-topBorder-forground-lineColor1:'#org-eclipse-ui-workbench-DARK_BACKGROUND'; /* top border */
|
||||
tPalette-collapse-topBorder-forground-lineColor2: #2F2F2F; /* top border */
|
||||
tPalette-collapse-expanded-forground-lineColor: #2F2F2F; /* bottom border */
|
||||
tPalette-collapse-notExpanded-forground-lineColor: #2F2F2F; /* bottom border */
|
||||
tPalette-scroll-pane-list-border:0 0 0 0;
|
||||
tPalette-scroll-pane-border:0 0 0 0;
|
||||
tPalette-color-increment:10; /* color increment in palette depth */
|
||||
tPalette-x-offset:17;
|
||||
tPalette-entryEditPart-entry-color-inheritFromParent:true;
|
||||
tPalette-searchButton-background-color:'#org-eclipse-ui-workbench-DARK_BACKGROUND';
|
||||
tPalette-list-background-color:'#org-eclipse-ui-workbench-DARK_BACKGROUND';
|
||||
tPalette-slider-palette-background-color:'#org-eclipse-ui-workbench-DARK_BACKGROUND';
|
||||
}
|
||||
@@ -0,0 +1,212 @@
|
||||
/*******************************************************************************
|
||||
* Copyright (c) 2010, 2014 Andrea Guarinoni and others.
|
||||
*
|
||||
* This program and the accompanying materials
|
||||
* are made available under the terms of the Eclipse Public License 2.0
|
||||
* which accompanies this distribution, and is available at
|
||||
* https://www.eclipse.org/legal/epl-2.0/
|
||||
*
|
||||
* SPDX-License-Identifier: EPL-2.0
|
||||
*
|
||||
* Contributors:
|
||||
* IBM Corporation - initial API and implementation
|
||||
* Andrea Guarinoni - initial API and implementation
|
||||
*******************************************************************************/
|
||||
|
||||
/* ColorDefinitions for the dark theme for the Eclipse IDE
|
||||
*
|
||||
* ThemeExtensions and ColorDefinition are mapped to the Colors and Fonts preference
|
||||
* dialog in the IDE
|
||||
*/
|
||||
|
||||
ThemesExtension { color-definition:
|
||||
'#org-eclipse-ui-workbench-DARK_BACKGROUND',
|
||||
'#org-eclipse-ui-workbench-DARK_FOREGROUND',
|
||||
'#org-eclipse-ui-workbench-INACTIVE_UNSELECTED_TABS_COLOR_START',
|
||||
'#org-eclipse-ui-workbench-INACTIVE_UNSELECTED_TABS_COLOR_END',
|
||||
'#org-eclipse-ui-workbench-INACTIVE_TAB_BG_START',
|
||||
'#org-eclipse-ui-workbench-INACTIVE_TAB_BG_END',
|
||||
'#org-eclipse-ui-workbench-INACTIVE_TAB_OUTER_KEYLINE_COLOR',
|
||||
'#org-eclipse-ui-workbench-INACTIVE_TAB_INNER_KEYLINE_COLOR',
|
||||
'#org-eclipse-ui-workbench-INACTIVE_TAB_OUTLINE_COLOR',
|
||||
'#org-eclipse-ui-workbench-INACTIVE_TAB_TEXT_COLOR',
|
||||
'#org-eclipse-ui-workbench-INACTIVE_TAB_UNSELECTED_TEXT_COLOR',
|
||||
'#org-eclipse-ui-workbench-INACTIVE_TAB_SELECTED_TEXT_COLOR',
|
||||
'#org-eclipse-ui-workbench-ACTIVE_UNSELECTED_TABS_COLOR_START',
|
||||
'#org-eclipse-ui-workbench-ACTIVE_UNSELECTED_TABS_COLOR_END',
|
||||
'#org-eclipse-ui-workbench-ACTIVE_TAB_BG_START',
|
||||
'#org-eclipse-ui-workbench-ACTIVE_TAB_BG_END',
|
||||
'#org-eclipse-ui-workbench-ACTIVE_TAB_OUTER_KEYLINE_COLOR',
|
||||
'#org-eclipse-ui-workbench-ACTIVE_TAB_INNER_KEYLINE_COLOR',
|
||||
'#org-eclipse-ui-workbench-ACTIVE_TAB_OUTLINE_COLOR',
|
||||
'#org-eclipse-ui-workbench-ACTIVE_TAB_TEXT_COLOR',
|
||||
'#org-eclipse-ui-workbench-ACTIVE_TAB_UNSELECTED_TEXT_COLOR',
|
||||
'#org-eclipse-ui-workbench-ACTIVE_TAB_SELECTED_TEXT_COLOR',
|
||||
'#org-eclipse-ui-workbench-ACTIVE_NOFOCUS_TAB_BG_START',
|
||||
'#org-eclipse-ui-workbench-ACTIVE_NOFOCUS_TAB_BG_END',
|
||||
'#org-eclipse-ui-workbench-ACTIVE_NOFOCUS_TAB_TEXT_COLOR',
|
||||
'#org-eclipse-ui-workbench-ACTIVE_NOFOCUS_TAB_SELECTED_TEXT_COLOR',
|
||||
'#org-eclipse-ui-workbench-LINK_COLOR';
|
||||
}
|
||||
|
||||
ColorDefinition#org-eclipse-ui-workbench-DARK_BACKGROUND {
|
||||
color: #515658;
|
||||
category: '#org-eclipse-ui-presentation-default';
|
||||
label: url('platform:/plugin/org.talend.themes.css.talend?message=DARK_BACKGROUND');
|
||||
}
|
||||
|
||||
ColorDefinition#org-eclipse-ui-workbench-DARK_FOREGROUND {
|
||||
color: #eeeeee;
|
||||
category: '#org-eclipse-ui-presentation-default';
|
||||
label: url('platform:/plugin/org.talend.themes.css.talend?message=DARK_FOREGROUND');
|
||||
}
|
||||
|
||||
ColorDefinition#org-eclipse-ui-workbench-INACTIVE_UNSELECTED_TABS_COLOR_START {
|
||||
color: #515658;
|
||||
category: '#org-eclipse-ui-presentation-default';
|
||||
label: url('platform:/plugin/org.talend.themes.css.talend?message=INACTIVE_UNSELECTED_TABS_COLOR_START');
|
||||
}
|
||||
|
||||
ColorDefinition#org-eclipse-ui-workbench-INACTIVE_UNSELECTED_TABS_COLOR_END {
|
||||
color: #464649;
|
||||
category: '#org-eclipse-ui-presentation-default';
|
||||
label: url('platform:/plugin/org.talend.themes.css.talend?message=INACTIVE_UNSELECTED_TABS_COLOR_END');
|
||||
}
|
||||
|
||||
ColorDefinition#org-eclipse-ui-workbench-INACTIVE_TAB_BG_START {
|
||||
color: #3B4042;
|
||||
category: '#org-eclipse-ui-presentation-default';
|
||||
label: url('platform:/plugin/org.talend.themes.css.talend?message=INACTIVE_TAB_BG_START');
|
||||
}
|
||||
|
||||
ColorDefinition#org-eclipse-ui-workbench-INACTIVE_TAB_BG_END {
|
||||
color: #313538;
|
||||
category: '#org-eclipse-ui-presentation-default';
|
||||
label: url('platform:/plugin/org.talend.themes.css.talend?message=INACTIVE_TAB_BG_END');
|
||||
}
|
||||
|
||||
ColorDefinition#org-eclipse-ui-workbench-INACTIVE_TAB_OUTER_KEYLINE_COLOR {
|
||||
color: #515658;
|
||||
category: '#org-eclipse-ui-presentation-default';
|
||||
label: url('platform:/plugin/org.talend.themes.css.talend?message=INACTIVE_TAB_OUTER_KEYLINE_COLOR');
|
||||
}
|
||||
|
||||
ColorDefinition#org-eclipse-ui-workbench-INACTIVE_TAB_INNER_KEYLINE_COLOR {
|
||||
color: #515658;
|
||||
category: '#org-eclipse-ui-presentation-default';
|
||||
label: url('platform:/plugin/org.talend.themes.css.talend?message=INACTIVE_TAB_INNER_KEYLINE_COLOR');
|
||||
}
|
||||
|
||||
ColorDefinition#org-eclipse-ui-workbench-INACTIVE_TAB_OUTLINE_COLOR {
|
||||
color: #3B4042;
|
||||
category: '#org-eclipse-ui-presentation-default';
|
||||
label: url('platform:/plugin/org.talend.themes.css.talend?message=INACTIVE_TAB_OUTLINE_COLOR');
|
||||
}
|
||||
|
||||
ColorDefinition#org-eclipse-ui-workbench-INACTIVE_TAB_TEXT_COLOR {
|
||||
color: #BBBBBB;
|
||||
category: '#org-eclipse-ui-presentation-default';
|
||||
label: url('platform:/plugin/org.talend.themes.css.talend?message=INACTIVE_TAB_TEXT_COLOR');
|
||||
}
|
||||
|
||||
ColorDefinition#org-eclipse-ui-workbench-INACTIVE_TAB_UNSELECTED_TEXT_COLOR {
|
||||
color: #BBBBBB;
|
||||
category: '#org-eclipse-ui-presentation-default';
|
||||
label: url('platform:/plugin/org.talend.themes.css.talend?message=INACTIVE_TAB_UNSELECTED_TEXT_COLOR');
|
||||
}
|
||||
|
||||
ColorDefinition#org-eclipse-ui-workbench-INACTIVE_TAB_SELECTED_TEXT_COLOR {
|
||||
color: #FFFFFF;
|
||||
category: '#org-eclipse-ui-presentation-default';
|
||||
label: url('platform:/plugin/org.talend.themes.css.talend?message=INACTIVE_TAB_SELECTED_TEXT_COLOR');
|
||||
}
|
||||
|
||||
ColorDefinition#org-eclipse-ui-workbench-ACTIVE_UNSELECTED_TABS_COLOR_START {
|
||||
color: #494A4D;
|
||||
category: '#org-eclipse-ui-presentation-default';
|
||||
label: url('platform:/plugin/org.talend.themes.css.talend?message=ACTIVE_UNSELECTED_TABS_COLOR_START');
|
||||
}
|
||||
|
||||
ColorDefinition#org-eclipse-ui-workbench-ACTIVE_UNSELECTED_TABS_COLOR_END {
|
||||
color: #404043;
|
||||
category: '#org-eclipse-ui-presentation-default';
|
||||
label: url('platform:/plugin/org.talend.themes.css.talend?message=ACTIVE_UNSELECTED_TABS_COLOR_END');
|
||||
}
|
||||
|
||||
ColorDefinition#org-eclipse-ui-workbench-ACTIVE_TAB_BG_START {
|
||||
color: #2B2C2D;
|
||||
category: '#org-eclipse-ui-presentation-default';
|
||||
label: url('platform:/plugin/org.talend.themes.css.talend?message=ACTIVE_TAB_BG_START');
|
||||
}
|
||||
|
||||
ColorDefinition#org-eclipse-ui-workbench-ACTIVE_TAB_BG_END {
|
||||
color: #292929;
|
||||
category: '#org-eclipse-ui-presentation-default';
|
||||
label: url('platform:/plugin/org.talend.themes.css.talend?message=ACTIVE_TAB_BG_END');
|
||||
}
|
||||
|
||||
ColorDefinition#org-eclipse-ui-workbench-ACTIVE_TAB_OUTER_KEYLINE_COLOR {
|
||||
color: #4B4C4F;
|
||||
category: '#org-eclipse-ui-presentation-default';
|
||||
label: url('platform:/plugin/org.talend.themes.css.talend?message=ACTIVE_TAB_OUTER_KEYLINE_COLOR');
|
||||
}
|
||||
|
||||
ColorDefinition#org-eclipse-ui-workbench-ACTIVE_TAB_INNER_KEYLINE_COLOR {
|
||||
color: #4B4C4F;
|
||||
category: '#org-eclipse-ui-presentation-default';
|
||||
label: url('platform:/plugin/org.talend.themes.css.talend?message=ACTIVE_TAB_INNER_KEYLINE_COLOR');
|
||||
}
|
||||
|
||||
ColorDefinition#org-eclipse-ui-workbench-ACTIVE_TAB_OUTLINE_COLOR {
|
||||
color: #4B4C4F;
|
||||
category: '#org-eclipse-ui-presentation-default';
|
||||
label: url('platform:/plugin/org.talend.themes.css.talend?message=ACTIVE_TAB_OUTLINE_COLOR');
|
||||
}
|
||||
|
||||
ColorDefinition#org-eclipse-ui-workbench-ACTIVE_TAB_TEXT_COLOR {
|
||||
color: #DDDDDD;
|
||||
category: '#org-eclipse-ui-presentation-default';
|
||||
label: url('platform:/plugin/org.talend.themes.css.talend?message=ACTIVE_TAB_TEXT_COLOR');
|
||||
}
|
||||
|
||||
ColorDefinition#org-eclipse-ui-workbench-ACTIVE_TAB_UNSELECTED_TEXT_COLOR {
|
||||
color: #DDDDDD;
|
||||
category: '#org-eclipse-ui-presentation-default';
|
||||
label: url('platform:/plugin/org.talend.themes.css.talend?message=ACTIVE_TAB_UNSELECTED_TEXT_COLOR');
|
||||
}
|
||||
|
||||
ColorDefinition#org-eclipse-ui-workbench-ACTIVE_TAB_SELECTED_TEXT_COLOR {
|
||||
color: #f7f8f8;
|
||||
category: '#org-eclipse-ui-presentation-default';
|
||||
label: url('platform:/plugin/org.talend.themes.css.talend?message=ACTIVE_TAB_SELECTED_TEXT_COLOR');
|
||||
}
|
||||
|
||||
ColorDefinition#org-eclipse-ui-workbench-ACTIVE_NOFOCUS_TAB_BG_START {
|
||||
color: #2B2C2D;
|
||||
category: '#org-eclipse-ui-presentation-default';
|
||||
label: url('platform:/plugin/org.talend.themes.css.talend?message=ACTIVE_NOFOCUS_TAB_BG_START');
|
||||
}
|
||||
|
||||
ColorDefinition#org-eclipse-ui-workbench-ACTIVE_NOFOCUS_TAB_BG_END {
|
||||
color: #292929;
|
||||
category: '#org-eclipse-ui-presentation-default';
|
||||
label: url('platform:/plugin/org.talend.themes.css.talend?message=ACTIVE_NOFOCUS_TAB_BG_END');
|
||||
}
|
||||
|
||||
ColorDefinition#org-eclipse-ui-workbench-ACTIVE_NOFOCUS_TAB_TEXT_COLOR {
|
||||
color: #CCCCCC;
|
||||
category: '#org-eclipse-ui-presentation-default';
|
||||
label: url('platform:/plugin/org.talend.themes.css.talend?message=ACTIVE_NOFOCUS_TAB_TEXT_COLOR');
|
||||
}
|
||||
|
||||
ColorDefinition#org-eclipse-ui-workbench-ACTIVE_NOFOCUS_TAB_SELECTED_TEXT_COLOR {
|
||||
color: #CCCCCC;
|
||||
category: '#org-eclipse-ui-presentation-default';
|
||||
label: url('platform:/plugin/org.talend.themes.css.talend?message=ACTIVE_NOFOCUS_TAB_SELECTED_TEXT_COLOR');
|
||||
}
|
||||
|
||||
ColorDefinition#org-eclipse-ui-workbench-LINK_COLOR {
|
||||
color: #6FC5EE;
|
||||
category: '#org-eclipse-ui-presentation-default';
|
||||
label: url('platform:/plugin/org.talend.themes.css.talend?message=LINK_COLOR');
|
||||
}
|
||||
@@ -0,0 +1,141 @@
|
||||
/*******************************************************************************
|
||||
* Copyright (c) 2010, 2014 Andrea Guarinoni and others.
|
||||
*
|
||||
* This program and the accompanying materials
|
||||
* are made available under the terms of the Eclipse Public License 2.0
|
||||
* which accompanies this distribution, and is available at
|
||||
* https://www.eclipse.org/legal/epl-2.0/
|
||||
*
|
||||
* SPDX-License-Identifier: EPL-2.0
|
||||
*
|
||||
* Contributors:
|
||||
* Andrea Guarinoni <andrea.guarinoni.dev@outlook.com> - initial API and implementation
|
||||
* Lars Vogel - initial API and implementation
|
||||
*******************************************************************************/
|
||||
|
||||
|
||||
/* ################################ CSS for .MParts ########################## */
|
||||
|
||||
.MPart {
|
||||
font-family: '#org-eclipse-ui-workbench-TAB_TEXT_FONT';
|
||||
background-color: #292929;
|
||||
color: #DDDDDD;
|
||||
}
|
||||
|
||||
.MPart.busy {
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
.MPart.highlighted {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.MPart Composite,
|
||||
.MPart Composite > *,
|
||||
.MPart Composite > * > *,
|
||||
.MPart Label,
|
||||
.MPart ScrolledForm,
|
||||
.MPart Form,
|
||||
.MPart Section,
|
||||
.MPart FormText,
|
||||
.MPart Link,
|
||||
.MPart Sash,
|
||||
.MPart Button,
|
||||
.MPart Group,
|
||||
.MPart SashForm,
|
||||
.MPart Tree,
|
||||
.MPart FilteredTree,
|
||||
.MPart RegistryFilteredTree,
|
||||
.MPart PageSiteComposite,
|
||||
.MPart DependenciesComposite,
|
||||
.MPart Text[style~='SWT.READ_ONLY'],
|
||||
.MPart FigureCanvas,
|
||||
.MPart ListEditorComposite,
|
||||
.MPart ScrolledComposite,
|
||||
.Mpart ScrolledComposite ProgressInfoItem,
|
||||
.MPart Form ScrolledPageBook,
|
||||
.MPart DependenciesComposite > SashForm > Section > * { /* Section > DependenciesComposite$... */
|
||||
background-color: #2F2F2F;
|
||||
color: #AAAAAA;
|
||||
}
|
||||
|
||||
|
||||
.MPart Section > Label {
|
||||
background-color: #2F2F2F;
|
||||
color: #ABCEDA;
|
||||
}
|
||||
|
||||
.MPart Table,
|
||||
.MPart Browser,
|
||||
.Mpart OleFrame,
|
||||
.MPart ViewForm,
|
||||
.MPart ViewForm > CLabel,
|
||||
.MPart PageBook > Label,
|
||||
.MPart PageBook > SashForm {
|
||||
background-color: #313538;
|
||||
color: #CCC;
|
||||
}
|
||||
|
||||
.MPart Section Tree {
|
||||
background-color: #383A3B;
|
||||
color: #DDDDDD;
|
||||
}
|
||||
|
||||
.MPart DatePicker,
|
||||
.MPart DatePicker > Text,
|
||||
.MPart ScheduleDatePicker,
|
||||
.MPart ScheduleDatePicker > Text,
|
||||
.MPart CCombo,
|
||||
.MPart Spinner,
|
||||
.MPart Composite > StyledText,
|
||||
.MPart PageBook > SashForm Label,
|
||||
.MPart SashForm > Text[style~='SWT.BORDER'] {
|
||||
background-color: #3f4447;
|
||||
color: #BBBBBB;
|
||||
}
|
||||
|
||||
.MPart FormHeading,
|
||||
.MPart FormHeading > TitleRegion,
|
||||
.MPart FormHeading > TitleRegion > Label,
|
||||
.MPart FormHeading > TitleRegion > StyledText {
|
||||
background-color: #505f70;
|
||||
color: #9ac9d8;
|
||||
}
|
||||
|
||||
.MPart FormHeading,
|
||||
.MPart FormHeading > TitleRegion {
|
||||
swt-background-mode: none;
|
||||
}
|
||||
.MPart FormHeading > CLabel {
|
||||
background-color: #505f70;
|
||||
color: #E98787;
|
||||
}
|
||||
/* ------------------------------------------------------------- */
|
||||
|
||||
#org-eclipse-jdt-ui-SourceView StyledText,
|
||||
#org-eclipse-wst-jsdt-ui-SourceView StyledText {
|
||||
background-color: #252525;
|
||||
}
|
||||
|
||||
/* ------------------------------------------------------------- */
|
||||
|
||||
#org-eclipse-ui-console-ConsoleView .MPart > Composite,
|
||||
#org-eclipse-ui-console-ConsoleView .MPart StyledText,
|
||||
#org-eclipse-ui-console-ConsoleView .MPart PageBook Label {
|
||||
background-color: #2F2F2F;
|
||||
color: #CCCCCC;
|
||||
}
|
||||
|
||||
/* ------------------------------------------------------------- */
|
||||
|
||||
#org-eclipse-e4-ui-compatibility-editor Canvas {
|
||||
background-color: inherit;
|
||||
}
|
||||
|
||||
#org-eclipse-e4-ui-compatibility-editor LayoutCanvas {
|
||||
background-color: #252525;
|
||||
color: #CCCCCC;
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,93 @@
|
||||
/*******************************************************************************
|
||||
* Copyright (c) 2014, 2015 Lars Vogel and others.
|
||||
*
|
||||
* This program and the accompanying materials
|
||||
* are made available under the terms of the Eclipse Public License 2.0
|
||||
* which accompanies this distribution, and is available at
|
||||
* https://www.eclipse.org/legal/epl-2.0/
|
||||
*
|
||||
* SPDX-License-Identifier: EPL-2.0
|
||||
*
|
||||
* Contributors:
|
||||
* Lars Vogel <Lars.Vogel@gmail.com> - initial API and implementation
|
||||
* Andrea Guarinoni - intial color schema definition
|
||||
* Lars Vogel <Lars.Vogel@vogella.com> - Ongoing maintenance
|
||||
*******************************************************************************/
|
||||
|
||||
/* ############################## Eclipse UI properties ############################## */
|
||||
|
||||
|
||||
IEclipsePreferences#org-eclipse-ui-editors:org-talend-themes-css-talend { /* pseudo attribute added to allow contributions without replacing this node, see Bug 466075 */
|
||||
preferences:
|
||||
'AbstractTextEditor.Color.Background.SystemDefault=false'
|
||||
'AbstractTextEditor.Color.SelectionForeground.SystemDefault=false'
|
||||
'AbstractTextEditor.Color.SelectionBackground.SystemDefault=false'
|
||||
'AbstractTextEditor.Color.Background=47,47,47'
|
||||
'AbstractTextEditor.Color.Foreground.SystemDefault=false'
|
||||
'AbstractTextEditor.Color.SelectionBackground=33,66,131'
|
||||
'AbstractTextEditor.Color.SelectionForeground=147,161,161'
|
||||
'AbstractTextEditor.Color.Foreground=204,204,204'
|
||||
'AbstractTextEditor.Color.FindScope=30,120,155'
|
||||
'asOccurencesIndicationColor=72,72,72'
|
||||
'breakpointIndicationColor=51,119,193'
|
||||
'currentIPColor=90,90,90'
|
||||
'currentLineColor=55,55,55'
|
||||
'deletionIndicationColor=224,226,228'
|
||||
'filteredSearchResultIndicationColor=27,98,145'
|
||||
'hyperlinkColor=102,175,249'
|
||||
'hyperlinkColor.SystemDefault=false'
|
||||
'infoIndicationColor=86,194,170'
|
||||
'lineNumberColor=119,145,154'
|
||||
'linked.slave.color=66,156,255'
|
||||
'matchingTagIndicationColor=72,72,72'
|
||||
'occurrenceIndicationColor=27,98,145'
|
||||
'overrideIndicatorColor=78,120,117'
|
||||
'printMarginColor=81,86,88'
|
||||
'searchResultHighlighting=false'
|
||||
'searchResultIndication=true'
|
||||
'searchResultIndicationColor=94,94,94'
|
||||
'searchResultTextStyle=BOX'
|
||||
'secondaryIPColor=90,90,90'
|
||||
'spellingIndicationColor=253,170,211'
|
||||
'writeOccurrenceIndicationColor=27,98,145'
|
||||
}
|
||||
|
||||
IEclipsePreferences#org-eclipse-ui-workbench:org-talend-themes-css-talend { /* pseudo attribute added to allow contributions without replacing this node, see Bug 466075 */
|
||||
preferences:
|
||||
'ACTIVE_HYPERLINK_COLOR=138,201,242'
|
||||
'CONFLICTING_COLOR=240,15,66'
|
||||
'CONTENT_ASSIST_BACKGROUND_COLOR=52,57,61'
|
||||
'CONTENT_ASSIST_FOREGROUND_COLOR=238,238,238'
|
||||
'org.eclipse.ui.workbench.INFORMATION_BACKGROUND=81,86,88'
|
||||
'org.eclipse.ui.workbench.INFORMATION_FOREGROUND=238,238,238'
|
||||
'org.eclipse.ui.workbench.HOVER_BACKGROUND=52,57,61'
|
||||
'org.eclipse.ui.workbench.HOVER_FOREGROUND=238,238,238'
|
||||
'ERROR_COLOR=247,68,117'
|
||||
'HYPERLINK_COLOR=111,197,238'
|
||||
'INCOMING_COLOR=31,179,235'
|
||||
'OUTGOING_COLOR=238,238,238'
|
||||
'RESOLVED_COLOR=108,210,17'
|
||||
'EDITION_COLOR=238,238,238'
|
||||
'org.eclipse.search.ui.match.highlight=206,92,0'
|
||||
'org.eclipse.ui.editors.rangeIndicatorColor=27,118,153'
|
||||
'org.eclipse.jface.REVISION_NEWEST_COLOR=75,44,3'
|
||||
'org.eclipse.jface.REVISION_OLDEST_COLOR=154,113,61'
|
||||
'org.talend.designer.core.lightColor=212,212,212'
|
||||
'org.talend.designer.core.darkColor=0,0,0'
|
||||
'org.talend.designer.core.alpha=95'
|
||||
'org.talend.commons.ui.BgColorForEmptyArea=#org-eclipse-ui-workbench-DARK_BACKGROUND'
|
||||
'org.talend.core.repository.REPO_STABLE_SECONDARY_ENTRY_COLOR=175,175,175'
|
||||
'org.talend.core.repository.REPO_INACTIVE_ENTRY_COLOR=138,138,138'
|
||||
'org.talend.core.repository.REPO_LOCKED_ENTRY=107,0,0'
|
||||
'org.talend.core.repository.REPO_MERGED_REFERENCED_ITEMS_COLOR=175,175,175'
|
||||
'org.talend.core.repository.TAB_START_COLOR=27,60,79'
|
||||
'org.talend.core.repository.TAB_END_COLOR=86,86,86'
|
||||
}
|
||||
|
||||
IEclipsePreferences#org-talend-designer-core:org-talend-themes-css-talend { /* pseudo attribute added to allow contributions without replacing this node, see Bug 466075 */
|
||||
preferences:
|
||||
'jobDesignerBackgroundColor=122,122,122'
|
||||
'subjobColor=0,0,0'
|
||||
'subjobTitleColor=128,255,0'
|
||||
}
|
||||
|
||||
@@ -0,0 +1,97 @@
|
||||
/*******************************************************************************
|
||||
* Copyright (c) 2018 Andrea Guarinoni and others.
|
||||
*
|
||||
* This program and the accompanying materials
|
||||
* are made available under the terms of the Eclipse Public License 2.0
|
||||
* which accompanies this distribution, and is available at
|
||||
* https://www.eclipse.org/legal/epl-2.0/
|
||||
*
|
||||
* SPDX-License-Identifier: EPL-2.0
|
||||
*
|
||||
* Contributors:
|
||||
* Andrea Guarinoni <andrea.guarinoni.dev@outlook.com> - initial API and implementation
|
||||
* Lars Vogel - initial API and implementation
|
||||
*******************************************************************************/
|
||||
|
||||
|
||||
/* ################################ CSS for Tabs ########################## */
|
||||
|
||||
#org-eclipse-ui-editorss {
|
||||
swt-tab-height: 8px;
|
||||
}
|
||||
|
||||
.MPartStack {
|
||||
font-family: '#org-eclipse-ui-workbench-TAB_TEXT_FONT';
|
||||
swt-tab-renderer: url('bundleclass://org.eclipse.e4.ui.workbench.renderers.swt/org.eclipse.e4.ui.workbench.renderers.swt.CTabRendering');
|
||||
swt-shadow-visible: false;
|
||||
}
|
||||
|
||||
CTabFolder {
|
||||
/* Set the styles for the inner tabs: */
|
||||
color: '#org-eclipse-ui-workbench-INACTIVE_TAB_TEXT_COLOR';
|
||||
swt-tab-renderer: url('bundleclass://org.eclipse.e4.ui.workbench.renderers.swt/org.eclipse.e4.ui.workbench.renderers.swt.CTabRendering');
|
||||
swt-tab-outline: '#org-eclipse-ui-workbench-ACTIVE_TAB_OUTLINE_COLOR'; /* border color for selected tab */
|
||||
swt-outer-keyline-color: '#org-eclipse-ui-workbench-ACTIVE_TAB_OUTER_KEYLINE_COLOR'; /* border color for whole tabs container */
|
||||
swt-unselected-tabs-color: '#org-eclipse-ui-workbench-ACTIVE_UNSELECTED_TABS_COLOR_START' '#org-eclipse-ui-workbench-ACTIVE_UNSELECTED_TABS_COLOR_END' 100% 100%; /* title background for unselected tab */
|
||||
swt-selected-tab-fill: '#org-eclipse-ui-workbench-ACTIVE_TAB_BG_END'; /* title background for selected tab */
|
||||
swt-shadow-visible: false;
|
||||
swt-unselected-hot-tab-color-background: #161616; /* Bug 465711 */
|
||||
swt-selected-tab-highlight: none;
|
||||
}
|
||||
|
||||
CTabFolder[style~='SWT.DOWN'][style~='SWT.BOTTOM'] {
|
||||
/* Set the styles for the bottom inner tabs (Bug 430051): */
|
||||
swt-tab-renderer: url('bundleclass://org.eclipse.e4.ui.workbench.renderers.swt/org.eclipse.e4.ui.workbench.renderers.swt.CTabRendering');
|
||||
swt-unselected-hot-tab-color-background: #161616; /* Bug 465711 */
|
||||
swt-selected-tab-highlight: #316c9b;
|
||||
swt-selected-highlight-top: false;
|
||||
}
|
||||
|
||||
|
||||
CTabFolder.active {
|
||||
swt-selected-tab-highlight: #316c9b;
|
||||
swt-selected-highlight-top: false;
|
||||
}
|
||||
|
||||
CTabItem,
|
||||
CTabItem CLabel {
|
||||
background-color: '#org-eclipse-ui-workbench-ACTIVE_TAB_BG_END'; /* HACK for background of CTabFolder inner Toolbars */
|
||||
color: '#org-eclipse-ui-workbench-INACTIVE_TAB_UNSELECTED_TEXT_COLOR';
|
||||
}
|
||||
|
||||
CTabItem:selected,
|
||||
CTabItem:selected CLabel {
|
||||
color: '#org-eclipse-ui-workbench-INACTIVE_TAB_SELECTED_TEXT_COLOR';
|
||||
}
|
||||
|
||||
.MPartStack.active > CTabItem,
|
||||
.MPartStack.active > CTabItem CLabel {
|
||||
background-color: '#org-eclipse-ui-workbench-ACTIVE_TAB_BG_END'; /* HACK for background of CTabFolder inner Toolbars */
|
||||
color: '#org-eclipse-ui-workbench-ACTIVE_TAB_UNSELECTED_TEXT_COLOR';
|
||||
}
|
||||
.MPartStack.active > CTabItem:selected,
|
||||
.MPartStack.active > CTabItem:selected CLabel {
|
||||
color: '#org-eclipse-ui-workbench-ACTIVE_TAB_SELECTED_TEXT_COLOR';
|
||||
}
|
||||
|
||||
.MPartStack.active.noFocus > CTabItem:selected {
|
||||
color: '#org-eclipse-ui-workbench-ACTIVE_NOFOCUS_TAB_SELECTED_TEXT_COLOR';
|
||||
}
|
||||
|
||||
CTabFolder > Composite#ToolbarComposite {
|
||||
background-color: '#org-eclipse-ui-workbench-ACTIVE_TAB_BG_END'; /* HACK for background of CTabFolder inner Toolbars */
|
||||
}
|
||||
|
||||
CTabFolder.MArea CTabItem,
|
||||
CTabFolder.MArea CTabItem CLabel {
|
||||
background-color: '#org-eclipse-ui-workbench-DARK_BACKGROUND'; /* Disable HACK for background of CTabFolder inner Toolbars */
|
||||
}
|
||||
|
||||
CTabItem.busy {
|
||||
color: #888888;
|
||||
}
|
||||
|
||||
CTabFolder.MArea .MPartStack,CTabFolder.MArea .MPartStack.active {
|
||||
swt-shadow-visible: false;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,47 @@
|
||||
/*******************************************************************************
|
||||
* Copyright (c) 2010, 2014 Andrea Guarinoni and others.
|
||||
*
|
||||
* This program and the accompanying materials
|
||||
* are made available under the terms of the Eclipse Public License 2.0
|
||||
* which accompanies this distribution, and is available at
|
||||
* https://www.eclipse.org/legal/epl-2.0/
|
||||
*
|
||||
* SPDX-License-Identifier: EPL-2.0
|
||||
*
|
||||
* Contributors:
|
||||
* Andrea Guarinoni <andrea.guarinoni.dev@outlook.com> - initial API and implementation
|
||||
* Lars Vogel - initial API and implementation
|
||||
*******************************************************************************/
|
||||
|
||||
@import url("platform:/plugin/org.talend.themes.css.talend/themes/dark/common/e4_globalstyle.css");
|
||||
@import url("platform:/plugin/org.talend.themes.css.talend/themes/dark/dark/e4-dark_ide_colorextensions.css");
|
||||
@import url("platform:/plugin/org.talend.themes.css.talend/themes/dark/dark/e4-dark_globalstyle.css"); /* Remove this to have ONLY the main IDE shell dark */
|
||||
@import url("platform:/plugin/org.talend.themes.css.talend/themes/dark/dark/e4-dark_partstyle.css");
|
||||
@import url("platform:/plugin/org.talend.themes.css.talend/themes/dark/dark/e4-dark_tabstyle.css");
|
||||
@import url("platform:/plugin/org.talend.themes.css.talend/themes/dark/dark/e4-dark-drag-styling.css");
|
||||
|
||||
CTabFolder Canvas {
|
||||
background-color: #2F2F2F;
|
||||
color: #CCC;
|
||||
}
|
||||
|
||||
CTabFolder Scale {
|
||||
background-color: inherit;
|
||||
}
|
||||
|
||||
.MPartStack.active CTabFolder Canvas {
|
||||
background-color: #262626;
|
||||
color: #CCC;
|
||||
}
|
||||
|
||||
|
||||
/* #################### Bottom Status Bar ######################## */
|
||||
|
||||
StatusLine,
|
||||
ImageBasedFrame,
|
||||
#org-eclipse-ui-StatusLine,
|
||||
#org-eclipse-ui-StatusLine CLabel,
|
||||
#org-eclipse-ui-ProgressBar,
|
||||
#org-eclipse-ui-ProgressBar Canvas {
|
||||
color:'#org-eclipse-ui-workbench-DARK_FOREGROUND';
|
||||
}
|
||||
@@ -0,0 +1,55 @@
|
||||
/*******************************************************************************
|
||||
* Copyright (c) 2010, 2019 Andrea Guarinoni and others.
|
||||
*
|
||||
* This program and the accompanying materials
|
||||
* are made available under the terms of the Eclipse Public License 2.0
|
||||
* which accompanies this distribution, and is available at
|
||||
* https://www.eclipse.org/legal/epl-2.0/
|
||||
*
|
||||
* SPDX-License-Identifier: EPL-2.0
|
||||
*
|
||||
* Contributors:
|
||||
* Andrea Guarinoni <andrea.guarinoni.dev@outlook.com> - initial API and implementation
|
||||
*******************************************************************************/
|
||||
|
||||
@import url("platform:/plugin/org.talend.themes.css.talend/themes/dark/common/e4_globalstyle.css");
|
||||
@import url("platform:/plugin/org.talend.themes.css.talend/themes/dark/dark/e4-dark_ide_colorextensions.css");
|
||||
@import url("platform:/plugin/org.talend.themes.css.talend/themes/dark/dark/e4-dark_globalstyle.css"); /* Remove this to have ONLY the main IDE shell dark */
|
||||
@import url("platform:/plugin/org.talend.themes.css.talend/themes/dark/dark/e4-dark_partstyle.css");
|
||||
@import url("platform:/plugin/org.talend.themes.css.talend/themes/dark/dark/e4-dark_tabstyle.css");
|
||||
@import url("platform:/plugin/org.talend.themes.css.talend/themes/dark/dark/e4-dark-drag-styling.css");
|
||||
|
||||
.MPartStack.active CTabFolder Canvas {
|
||||
background-color: #262626;
|
||||
color: #CCC;
|
||||
}
|
||||
|
||||
|
||||
/* #################### Bottom Status Bar ######################## */
|
||||
|
||||
StatusLine,
|
||||
ImageBasedFrame,
|
||||
#org-eclipse-ui-StatusLine,
|
||||
#org-eclipse-ui-StatusLine CLabel,
|
||||
#org-eclipse-ui-ProgressBar,
|
||||
#org-eclipse-ui-ProgressBar Canvas {
|
||||
color:'#org-eclipse-ui-workbench-DARK_FOREGROUND';
|
||||
}
|
||||
|
||||
/* ###################### Global Styles ########################## */
|
||||
|
||||
/* Use unset to set the foreground/background color to null */
|
||||
|
||||
Table[swt-lines-visible=true] {
|
||||
background-color: unset;
|
||||
}
|
||||
|
||||
Tree[swt-lines-visible=true] {
|
||||
background-color: unset;
|
||||
}
|
||||
|
||||
Button {
|
||||
background-color: unset;
|
||||
color: unset;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,80 @@
|
||||
/*******************************************************************************
|
||||
* Copyright (c) 2010, 2014 Andrea Guarinoni and others.
|
||||
*
|
||||
* This program and the accompanying materials
|
||||
* are made available under the terms of the Eclipse Public License 2.0
|
||||
* which accompanies this distribution, and is available at
|
||||
* https://www.eclipse.org/legal/epl-2.0/
|
||||
*
|
||||
* SPDX-License-Identifier: EPL-2.0
|
||||
*
|
||||
* Contributors:
|
||||
* Andrea Guarinoni <andrea.guarinoni.dev@outlook.com> - initial API and implementation
|
||||
*******************************************************************************/
|
||||
|
||||
@import url("platform:/plugin/org.talend.themes.css.talend/themes/dark/common/e4_globalstyle.css");
|
||||
@import url("platform:/plugin/org.talend.themes.css.talend/themes/dark/dark/e4-dark_ide_colorextensions.css");
|
||||
@import url("platform:/plugin/org.talend.themes.css.talend/themes/dark/dark/e4-dark_globalstyle.css"); /* Remove this to have ONLY the main IDE shell dark */
|
||||
@import url("platform:/plugin/org.talend.themes.css.talend/themes/dark/dark/e4-dark_partstyle.css");
|
||||
@import url("platform:/plugin/org.talend.themes.css.talend/themes/dark/dark/e4-dark_tabstyle.css");
|
||||
@import url("platform:/plugin/org.talend.themes.css.talend/themes/dark/dark/e4-dark-drag-styling.css");
|
||||
|
||||
CTabFolder Canvas {
|
||||
background-color: #2F2F2F;
|
||||
color: #CCC;
|
||||
}
|
||||
|
||||
.MPartStack.active CTabFolder Canvas {
|
||||
background-color: #262626;
|
||||
color: #CCC;
|
||||
}
|
||||
|
||||
/* #################### Bottom Status Bar ######################## */
|
||||
|
||||
StatusLine,
|
||||
ImageBasedFrame,
|
||||
#org-eclipse-ui-StatusLine,
|
||||
#org-eclipse-ui-StatusLine CLabel,
|
||||
#org-eclipse-ui-ProgressBar,
|
||||
#org-eclipse-ui-ProgressBar Canvas {
|
||||
color:'#org-eclipse-ui-workbench-DARK_FOREGROUND';
|
||||
}
|
||||
|
||||
|
||||
/* ###################### Global Styles ########################## */
|
||||
|
||||
TabFolder {
|
||||
/* background-color is not applied to the whole button,
|
||||
but text color is changed, so it appear light on light */
|
||||
background-color: '#org-eclipse-ui-workbench-DARK_BACKGROUND';
|
||||
color: #222;
|
||||
}
|
||||
|
||||
Button {
|
||||
/* background-color is not applied to the whole button,
|
||||
but text color is changed, so it appear light on light */
|
||||
background-color: #2F2F2F;
|
||||
color: #CCCCCC;
|
||||
}
|
||||
Button[style~='SWT.CHECK'] {
|
||||
/* currently, Button object isn't consistent (eg. also a checkbox is seen as Button) */
|
||||
/* so, css rules applied to Button have to be overridden for non-Button matches */
|
||||
background-color: '#org-eclipse-ui-workbench-DARK_BACKGROUND';
|
||||
color: #ddd;
|
||||
}
|
||||
Button[style~='SWT.RADIO'] {
|
||||
/* currently, Button object isn't consistent (eg. also a checkbox is seen as Button) */
|
||||
/* so, css rules applied to Button have to be overridden for non-Button matches */
|
||||
background-color: '#org-eclipse-ui-workbench-DARK_BACKGROUND';
|
||||
color: #ddd;
|
||||
}
|
||||
|
||||
Combo {
|
||||
background-color: #949DA5;
|
||||
color: #222; /* background of drop-drown list is hard-coded to white */
|
||||
}
|
||||
Combo:selected {
|
||||
background-color: #41464A;
|
||||
color: #FFF;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,120 @@
|
||||
@import url("platform:/plugin/org.talend.themes.css.talend/themes/dark/common/e4_globalstyle.css");
|
||||
@import url("platform:/plugin/org.talend.themes.css.talend/themes/dark/dark/e4-dark_ide_colorextensions.css");
|
||||
@import url("platform:/plugin/org.talend.themes.css.talend/themes/dark/dark/e4-dark_globalstyle.css"); /* Remove this to have ONLY the main IDE shell dark */
|
||||
@import url("platform:/plugin/org.talend.themes.css.talend/themes/dark/dark/e4-dark_partstyle.css");
|
||||
@import url("platform:/plugin/org.talend.themes.css.talend/themes/dark/dark/e4-dark_tabstyle.css");
|
||||
@import url("platform:/plugin/org.talend.themes.css.talend/themes/dark/dark/e4-dark-drag-styling.css");
|
||||
|
||||
CTabFolder Canvas {
|
||||
background-color: #2F2F2F;
|
||||
color: #CCC;
|
||||
}
|
||||
|
||||
CTabFolder Scale {
|
||||
background-color: inherit;
|
||||
}
|
||||
|
||||
.MPartStack.active CTabFolder Canvas {
|
||||
background-color: #262626;
|
||||
color: #CCC;
|
||||
}
|
||||
|
||||
.MPartStack.active Table {
|
||||
background-color: #2F2F2F;
|
||||
color: #CCC;
|
||||
}
|
||||
|
||||
Tree, Table {
|
||||
swt-lines-visible: false;
|
||||
}
|
||||
|
||||
/* ##################### Bottom Status Bar ####################### */
|
||||
|
||||
StatusLine,
|
||||
ImageBasedFrame,
|
||||
#org-eclipse-ui-StatusLine,
|
||||
#org-eclipse-ui-StatusLine CLabel,
|
||||
#org-eclipse-ui-ProgressBar,
|
||||
#org-eclipse-ui-ProgressBar Canvas {
|
||||
color:'#org-eclipse-ui-workbench-DARK_FOREGROUND';
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* ####################### CSS for .MParts ####################### */
|
||||
|
||||
.MPart Form Section,
|
||||
.MPart Form Label,
|
||||
.MPart Form FormText,
|
||||
.MPartStack .MPart Form MasterDetailsBlock-MDSashForm,
|
||||
.MPartStack .MPart Form SashForm,
|
||||
.MPartStack .MPart Form Sash,
|
||||
.MPart Form Button[style~='SWT.CHECK'],
|
||||
.MPart Form Button[style~='SWT.RADIO'],
|
||||
.MPartStack.active .MPart Form Section,
|
||||
.MPartStack.active .MPart Form Label,
|
||||
.MPartStack.active .MPart Form FormText,
|
||||
.MPartStack.active .MPart Form MasterDetailsBlock-MDSashForm,
|
||||
.MPartStack.active .MPart Form SashForm,
|
||||
.MPartStack.active .MPart Form Sash,
|
||||
.MPartStack.active .MPart Form Button[style~='SWT.CHECK'],
|
||||
.MPartStack.active .MPart Form Button[style~='SWT.RADIO']
|
||||
{
|
||||
background-color: inherit;
|
||||
color: #f4f7f7;
|
||||
}
|
||||
|
||||
/* Make the content of the Form brighter because the color of
|
||||
the font of some widgets is hard-coded to be black on Window */
|
||||
|
||||
.MPart Form,
|
||||
.MPart Form Link,
|
||||
.MPart Form Button,
|
||||
.MPart Form Group,
|
||||
.MPart Form ScrolledPageBook,
|
||||
.MPart Form DependenciesComposite,
|
||||
.MPart Form ListEditorComposite,
|
||||
.MPart Form Text[style~='SWT.READ_ONLY'],
|
||||
.MPart Form DependenciesComposite > SashForm > Section > *, /* Section > DependenciesComposite$... */
|
||||
.MPartStack.active .MPart Form,
|
||||
.MPartStack.active .MPart Form Link,
|
||||
.MPartStack.active .MPart Form Button,
|
||||
.MPartStack.active .MPart Form Group,
|
||||
.MPartStack.active .MPart Form ScrolledPageBook,
|
||||
.MPartStack.active .MPart Form DependenciesComposite,
|
||||
.MPartStack.active .MPart Form ListEditorComposite,
|
||||
.MPartStack.active .MPart Form Text[style~='SWT.READ_ONLY'],
|
||||
.MPartStack.active .MPart Form DependenciesComposite > SashForm > Section > * { /* Section > DependenciesComposite$... */
|
||||
background-color: #4f5355;
|
||||
color: #f4f7f7;
|
||||
}
|
||||
#org-eclipse-help-ui-HelpView Form,
|
||||
#org-eclipse-help-ui-HelpView Form Sash,
|
||||
#org-eclipse-help-ui-HelpView Form Label,
|
||||
#org-eclipse-help-ui-HelpView Form Section,
|
||||
#org-eclipse-help-ui-HelpView Form FormText,
|
||||
#org-eclipse-help-ui-HelpView Form Button,
|
||||
#org-eclipse-help-ui-HelpView Form Group,
|
||||
#org-eclipse-help-ui-HelpView Form ScrolledPageBook,
|
||||
#org-eclipse-help-ui-HelpView Form Text[style~='SWT.READ_ONLY'] {
|
||||
background-color: #2F2F2F;
|
||||
color: #CCCCCC;
|
||||
}
|
||||
.MPartStack.active #org-eclipse-help-ui-HelpView Form,
|
||||
.MPartStack.active #org-eclipse-help-ui-HelpView Form Sash,
|
||||
.MPartStack.active #org-eclipse-help-ui-HelpView Form Label,
|
||||
.MPartStack.active #org-eclipse-help-ui-HelpView Form Section,
|
||||
.MPartStack.active #org-eclipse-help-ui-HelpView Form FormText,
|
||||
.MPartStack.active #org-eclipse-help-ui-HelpView Form Button,
|
||||
.MPartStack.active #org-eclipse-help-ui-HelpView Form Group,
|
||||
.MPartStack.active #org-eclipse-help-ui-HelpView Form ScrolledPageBook,
|
||||
.MPartStack.active #org-eclipse-help-ui-HelpView Form Text[style~='SWT.READ_ONLY'] {
|
||||
background-color: #262626;
|
||||
color: #BBBBBB;
|
||||
}
|
||||
.MPart Form Section Tree,
|
||||
.MPartStack.active .MPart Form Section Tree {
|
||||
background-color: #313538;
|
||||
color: #DDDDDD;
|
||||
}
|
||||
|
||||
@@ -648,7 +648,6 @@ CTabFolder.org-talend-rcp-abstractMultiPageEditor-footer CTabItem:selected {
|
||||
.TalendStagingView StyledText {
|
||||
background-color: COLOR-LIST-BACKGROUND;
|
||||
}
|
||||
|
||||
/**************************************************
|
||||
* Palette
|
||||
**************************************************/
|
||||
@@ -657,7 +656,7 @@ CTabFolder.org-talend-rcp-abstractMultiPageEditor-footer CTabItem:selected {
|
||||
tPalette-collapsed-background-color:white;
|
||||
tPalette-mouseOver-forground-color1:#ADADAD;
|
||||
tPalette-mouseOver-forground-color2:#ADADAD;
|
||||
tPalette-mouseOver-forground-color3:#ADADAD;
|
||||
tPalette-mouseOver-forground-color3:black;
|
||||
tPalette-mouseOver-background-color1:#ADADAD;
|
||||
tPalette-mouseOver-background-color2:#ADADAD;
|
||||
tPalette-mouseOver-background-color3:#ADADAD; /* */
|
||||
@@ -678,6 +677,15 @@ CTabFolder.org-talend-rcp-abstractMultiPageEditor-footer CTabItem:selected {
|
||||
tPalette-searchButton-image:url('./default/pics/studio_6.0-repo-search.png');
|
||||
}
|
||||
|
||||
/* Repository tree */
|
||||
.TalendRepositoryLabel {
|
||||
STABLE_SECONDARY_ENTRY_COLOR: #646464;
|
||||
STABLE_PRIMARY_ENTRY_COLOR: #000000;
|
||||
INACTIVE_ENTRY_COLOR: #C8C8C8;
|
||||
LOCKED_ENTRY: #C80000;
|
||||
MERGED_REFERENCED_ITEMS_COLOR: #787878;
|
||||
|
||||
}
|
||||
/**************************************************
|
||||
* User Color and Font Changes
|
||||
**************************************************/
|
||||
|
||||
@@ -0,0 +1,33 @@
|
||||
/*******************************************************************************
|
||||
* Copyright (c) 2014, 2015 Lars Vogel and others.
|
||||
*
|
||||
* This program and the accompanying materials
|
||||
* are made available under the terms of the Eclipse Public License 2.0
|
||||
* which accompanies this distribution, and is available at
|
||||
* https://www.eclipse.org/legal/epl-2.0/
|
||||
*
|
||||
* SPDX-License-Identifier: EPL-2.0
|
||||
*
|
||||
* Contributors:
|
||||
* Lars Vogel <Lars.Vogel@gmail.com> - initial API and implementation
|
||||
* Andrea Guarinoni - intial color schema definition
|
||||
* Lars Vogel <Lars.Vogel@vogella.com> - Ongoing maintenance
|
||||
*******************************************************************************/
|
||||
|
||||
/* ############################## Eclipse UI properties ############################## */
|
||||
|
||||
|
||||
IEclipsePreferences#org-talend-designer-core:org-talend-themes-css-talend { /* pseudo attribute added to allow contributions without replacing this node, see Bug 466075 */
|
||||
preferences:
|
||||
'jobDesignerBackgroundColor=250,250,250'
|
||||
'subjobColor=207,226,236'
|
||||
'subjobTitleColor=92,131,150'
|
||||
}
|
||||
|
||||
IEclipsePreferences#org-eclipse-ui-workbench:org-talend-themes-css-talend { /* pseudo attribute added to allow contributions without replacing this node, see Bug 466075 */
|
||||
preferences:
|
||||
'org.talend.designer.core.lightColor=232,235,239'
|
||||
'org.talend.designer.core.darkColor=125,135,150'
|
||||
'org.talend.designer.core.alpha=30'
|
||||
}
|
||||
|
||||
@@ -34,7 +34,7 @@ public class DatabaseVersion4DriversTest {
|
||||
ERedshiftDriver.DRIVER_V1.name());
|
||||
assertTrue(drivers.containsAll(Arrays.asList(redshiftDrivers)));
|
||||
|
||||
redshiftDrivers = new String[] { "redshift-jdbc42-2.1.0.3.jar", "antlr4-runtime-4.8-1.jar" };
|
||||
redshiftDrivers = new String[] { "redshift-jdbc42-2.1.0.10.jar", "antlr4-runtime-4.8-1.jar" };
|
||||
drivers = EDatabaseVersion4Drivers.getDrivers(EDatabaseTypeName.REDSHIFT.getDisplayName(),
|
||||
ERedshiftDriver.DRIVER_V2.name());
|
||||
assertTrue(drivers.containsAll(Arrays.asList(redshiftDrivers)));
|
||||
@@ -47,7 +47,7 @@ public class DatabaseVersion4DriversTest {
|
||||
ERedshiftDriver.DRIVER_V1.name());
|
||||
assertTrue(drivers.containsAll(Arrays.asList(redshiftSSODrivers)));
|
||||
|
||||
redshiftSSODrivers = new String[] { "redshift-jdbc42-2.1.0.3.jar", "antlr4-runtime-4.8-1.jar",
|
||||
redshiftSSODrivers = new String[] { "redshift-jdbc42-2.1.0.10.jar", "antlr4-runtime-4.8-1.jar",
|
||||
"aws-java-sdk-1.11.848.jar", "jackson-core-2.13.4.jar", "jackson-databind-2.13.4.2.jar",
|
||||
"jackson-annotations-2.13.4.jar", "httpcore-4.4.13.jar", "httpclient-4.5.13.jar", "joda-time-2.8.1.jar",
|
||||
"commons-logging-1.2.jar", "commons-codec-1.14.jar", "aws-java-sdk-redshift-internal-1.12.x.jar" };
|
||||
|
||||
@@ -22,12 +22,12 @@
|
||||
<version>1.0.0</version>
|
||||
<type>dll</type>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<!--dependency>
|
||||
<groupId>org.talend.studio.test</groupId>
|
||||
<artifactId>nexus.upload.test.new</artifactId>
|
||||
<version>1.0.0</version>
|
||||
<type>exe</type>
|
||||
</dependency>
|
||||
</dependency-->
|
||||
<dependency>
|
||||
<groupId>org.talend.studio.test</groupId>
|
||||
<artifactId>nexus.upload.test.new</artifactId>
|
||||
@@ -45,12 +45,12 @@
|
||||
<version>1.0.0</version>
|
||||
<type>dll</type>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<!--dependency>
|
||||
<groupId>org.talend.studio.test</groupId>
|
||||
<artifactId>nexus.upload.test.old</artifactId>
|
||||
<version>1.0.0</version>
|
||||
<type>exe</type>
|
||||
</dependency>
|
||||
</dependency-->
|
||||
<dependency>
|
||||
<groupId>org.talend.studio.test</groupId>
|
||||
<artifactId>nexus.upload.test.old</artifactId>
|
||||
|
||||
@@ -66,7 +66,7 @@ public class Nexus3RepositoryHandlerTest {
|
||||
private static Properties nexusprops = new Properties();
|
||||
private static ArtifactRepositoryBean customNexusServer;
|
||||
private static IRepositoryArtifactHandler repHandler;
|
||||
private static String[] types = new String[] {"jar", "pom", "exe", "zip", "dll"};
|
||||
private static String[] types = new String[] {"jar", "pom", "zip", "dll"};
|
||||
|
||||
@BeforeClass
|
||||
public static void init() throws FileNotFoundException, IOException {
|
||||
|
||||
@@ -111,7 +111,14 @@ public class ComponentP2ExtraFeatureTest {
|
||||
assertEquals(EnumSet.of(UpdateSiteLocationType.DEFAULT_REPO), feature.getUpdateSiteCompatibleTypes());
|
||||
}
|
||||
|
||||
@Test
|
||||
/**
|
||||
* these were to try to install a custom component made with tcompv0
|
||||
* but now we don't want customers to build custom component with tcompv0... we want them to use tck so remove the
|
||||
* junits for TUP-35265
|
||||
* (testExtraFeatureInstall/testExtraFeatureHasUpdateAndInstallIt/testExtraFeatureNoUpdateAvailable)
|
||||
*
|
||||
* @throws Exception
|
||||
*/
|
||||
public void testExtraFeatureInstall() throws Exception {
|
||||
final File dataFile = BundleFileUtil.getBundleFile(this.getClass(), TEST_COMPONENTS_V1_UPDATE_SITE_FILE);
|
||||
assertTrue(dataFile.exists());
|
||||
@@ -131,7 +138,7 @@ public class ComponentP2ExtraFeatureTest {
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
public void testExtraFeatureHasUpdateAndInstallIt() throws Exception {
|
||||
final File dataV1File = BundleFileUtil.getBundleFile(this.getClass(), TEST_COMPONENTS_V1_UPDATE_SITE_FILE);
|
||||
assertTrue(dataV1File.exists());
|
||||
@@ -167,7 +174,7 @@ public class ComponentP2ExtraFeatureTest {
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
public void testExtraFeatureNoUpdateAvailable() throws Exception {
|
||||
final File dataV1File = BundleFileUtil.getBundleFile(this.getClass(), TEST_COMPONENTS_V1_UPDATE_SITE_FILE);
|
||||
assertTrue(dataV1File.exists());
|
||||
|
||||
Reference in New Issue
Block a user