Author: stefanegli
Date: Wed Aug 28 15:02:21 2013
New Revision: 1518236
URL: http://svn.apache.org/r1518236
Log:
SLING-3033 : for externally started/controlled launchpads, try to adjust the
icons in the servers view, so that eg the 'stop' button looks rather more like
a 'disconnect' button (to avoid user confusion)
Added:
sling/trunk/tooling/ide/eclipse-ui/src/org/apache/sling/ide/eclipse/ui/internal/ServersActionModeFiddlerActionDelegate.java
(with props)
sling/trunk/tooling/ide/eclipse-ui/src/org/apache/sling/ide/eclipse/ui/internal/connectOverlay.png
(with props)
Modified:
sling/trunk/tooling/ide/eclipse-ui/src/org/apache/sling/ide/eclipse/ui/internal/SharedImages.java
Added:
sling/trunk/tooling/ide/eclipse-ui/src/org/apache/sling/ide/eclipse/ui/internal/ServersActionModeFiddlerActionDelegate.java
URL:
http://svn.apache.org/viewvc/sling/trunk/tooling/ide/eclipse-ui/src/org/apache/sling/ide/eclipse/ui/internal/ServersActionModeFiddlerActionDelegate.java?rev=1518236&view=auto
==============================================================================
---
sling/trunk/tooling/ide/eclipse-ui/src/org/apache/sling/ide/eclipse/ui/internal/ServersActionModeFiddlerActionDelegate.java
(added)
+++
sling/trunk/tooling/ide/eclipse-ui/src/org/apache/sling/ide/eclipse/ui/internal/ServersActionModeFiddlerActionDelegate.java
Wed Aug 28 15:02:21 2013
@@ -0,0 +1,114 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.sling.ide.eclipse.ui.internal;
+
+import org.eclipse.jface.action.IAction;
+import org.eclipse.jface.util.IPropertyChangeListener;
+import org.eclipse.jface.util.PropertyChangeEvent;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.ui.IActionBars;
+import org.eclipse.ui.IViewActionDelegate;
+import org.eclipse.ui.IViewPart;
+
+/** prototype for changing icons and tooltip in the wst servers view - tbd
properly **/
+public class ServersActionModeFiddlerActionDelegate implements
+ IViewActionDelegate {
+
+ private IActionBars actionBars;
+ private IViewPart view;
+ private IPropertyChangeListener runTooltipListener;
+ private IPropertyChangeListener debugTooltipListener;
+ private IPropertyChangeListener disconnectTooltipListener;
+
+ @Override
+ public void run(IAction action) {
+
+ }
+
+ @Override
+ public void selectionChanged(IAction action, ISelection selection) {
+ action.setEnabled(true);
+ final IAction serverRunAction =
actionBars.getGlobalActionHandler("org.eclipse.wst.server.run");
+ final IAction serverDebugAction =
actionBars.getGlobalActionHandler("org.eclipse.wst.server.debug");
+ IAction stopRunAction =
actionBars.getGlobalActionHandler("org.eclipse.wst.server.stop");
+ if (serverRunAction==null || stopRunAction==null ||
serverDebugAction==null) {
+ return;
+ }
+// serverRunAction.setHoverImageDescriptor(SharedImages.SLING_LOG);
+
serverRunAction.setHoverImageDescriptor(SharedImages.RUN_CONNECT);
+
serverDebugAction.setHoverImageDescriptor(SharedImages.DEBUG_CONNECT);
+ stopRunAction.setHoverImageDescriptor(SharedImages.DISCONNECT);
+
+ final String runText = "Connect to server in run mode";
+ if (runTooltipListener==null) {
+ runTooltipListener = new IPropertyChangeListener() {
+
+ @Override
+ public void propertyChange(PropertyChangeEvent
event) {
+ if
(event.getProperty().equals(IAction.TOOL_TIP_TEXT) ) {
+ if
(!event.getNewValue().equals(runText)) {
+
serverRunAction.setToolTipText(runText);
+ }
+ }
+ }
+ };
+
serverRunAction.addPropertyChangeListener(runTooltipListener);
+ }
+ final String debugText = "Connect to server in debug mode";
+ if (debugTooltipListener==null) {
+ debugTooltipListener = new IPropertyChangeListener() {
+
+ @Override
+ public void propertyChange(PropertyChangeEvent
event) {
+ if
(event.getProperty().equals(IAction.TOOL_TIP_TEXT)) {
+ if
(!event.getNewValue().equals(debugText)) {
+
serverDebugAction.setToolTipText(debugText);
+ }
+ }
+ }
+ };
+
serverDebugAction.addPropertyChangeListener(debugTooltipListener);
+ }
+ final String disconnectText = "Disconnect from server";
+ if (disconnectTooltipListener==null) {
+ disconnectTooltipListener = new
IPropertyChangeListener() {
+
+ @Override
+ public void propertyChange(PropertyChangeEvent
event) {
+ if
(event.getProperty().equals(IAction.TOOL_TIP_TEXT)) {
+ if
(!event.getNewValue().equals(disconnectText)) {
+
serverRunAction.setToolTipText(disconnectText);
+ }
+ }
+ }
+ };
+
stopRunAction.addPropertyChangeListener(disconnectTooltipListener);
+ }
+
+ serverRunAction.setToolTipText(runText);
+ serverDebugAction.setToolTipText(debugText);
+ stopRunAction.setToolTipText(disconnectText);
+
+ }
+
+ @Override
+ public void init(IViewPart view) {
+ this.view = view;
+ actionBars = view.getViewSite().getActionBars();
+ }
+
+}
Propchange:
sling/trunk/tooling/ide/eclipse-ui/src/org/apache/sling/ide/eclipse/ui/internal/ServersActionModeFiddlerActionDelegate.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Modified:
sling/trunk/tooling/ide/eclipse-ui/src/org/apache/sling/ide/eclipse/ui/internal/SharedImages.java
URL:
http://svn.apache.org/viewvc/sling/trunk/tooling/ide/eclipse-ui/src/org/apache/sling/ide/eclipse/ui/internal/SharedImages.java?rev=1518236&r1=1518235&r2=1518236&view=diff
==============================================================================
---
sling/trunk/tooling/ide/eclipse-ui/src/org/apache/sling/ide/eclipse/ui/internal/SharedImages.java
(original)
+++
sling/trunk/tooling/ide/eclipse-ui/src/org/apache/sling/ide/eclipse/ui/internal/SharedImages.java
Wed Aug 28 15:02:21 2013
@@ -16,16 +16,25 @@
*/
package org.apache.sling.ide.eclipse.ui.internal;
+import org.eclipse.debug.internal.ui.DebugPluginImages;
+import org.eclipse.debug.ui.IDebugUIConstants;
import org.eclipse.jface.resource.ImageDescriptor;
+import org.eclipse.jface.viewers.DecorationOverlayIcon;
+import org.eclipse.jface.viewers.IDecoration;
/**
* The <tt>SharedImages</tt> class contains references to images
*
*/
+@SuppressWarnings("restriction")
public final class SharedImages {
public static final ImageDescriptor SLING_LOG =
ImageDescriptor.createFromFile(SharedImages.class, "sling-logo.png");
public static final ImageDescriptor SLING_ICON =
ImageDescriptor.createFromFile(SharedImages.class, "sling.gif");
+
+ public static final ImageDescriptor DISCONNECT =
DebugPluginImages.getImageDescriptor(IDebugUIConstants.IMG_LCL_DISCONNECT);
+ public static final ImageDescriptor RUN_CONNECT = new
DecorationOverlayIcon(DebugPluginImages.getImageDescriptor(IDebugUIConstants.IMG_ACT_RUN).createImage(),
ImageDescriptor.createFromFile(SharedImages.class, "connectOverlay.png"),
IDecoration.BOTTOM_RIGHT);
+ public static final ImageDescriptor DEBUG_CONNECT = new
DecorationOverlayIcon(DebugPluginImages.getImageDescriptor(IDebugUIConstants.IMG_ACT_DEBUG).createImage(),
ImageDescriptor.createFromFile(SharedImages.class, "connectOverlay.png"),
IDecoration.BOTTOM_RIGHT);
private SharedImages() {
}
Added:
sling/trunk/tooling/ide/eclipse-ui/src/org/apache/sling/ide/eclipse/ui/internal/connectOverlay.png
URL:
http://svn.apache.org/viewvc/sling/trunk/tooling/ide/eclipse-ui/src/org/apache/sling/ide/eclipse/ui/internal/connectOverlay.png?rev=1518236&view=auto
==============================================================================
Binary file - no diff available.
Propchange:
sling/trunk/tooling/ide/eclipse-ui/src/org/apache/sling/ide/eclipse/ui/internal/connectOverlay.png
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream