aboutsummaryrefslogtreecommitdiff
path: root/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/gle2/DelegatingAction.java
diff options
context:
space:
mode:
Diffstat (limited to 'eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/gle2/DelegatingAction.java')
-rw-r--r--eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/gle2/DelegatingAction.java203
1 files changed, 203 insertions, 0 deletions
diff --git a/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/gle2/DelegatingAction.java b/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/gle2/DelegatingAction.java
new file mode 100644
index 000000000..7a41b5b15
--- /dev/null
+++ b/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/gle2/DelegatingAction.java
@@ -0,0 +1,203 @@
+/*
+ * Copyright (C) 2012 The Android Open Source Project
+ *
+ * Licensed under the Eclipse Public License, Version 1.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.eclipse.org/org/documents/epl-v10.php
+ *
+ * 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 com.android.ide.eclipse.adt.internal.editors.layout.gle2;
+
+import com.android.annotations.NonNull;
+
+import org.eclipse.jface.action.IAction;
+import org.eclipse.jface.action.IMenuCreator;
+import org.eclipse.jface.resource.ImageDescriptor;
+import org.eclipse.jface.util.IPropertyChangeListener;
+import org.eclipse.swt.events.HelpListener;
+import org.eclipse.swt.widgets.Event;
+
+/**
+ * Implementation of {@link IAction} which delegates to a different
+ * {@link IAction} which allows a subclass to wrap and customize some of the
+ * behavior of a different action
+ */
+public class DelegatingAction implements IAction {
+ private final IAction mAction;
+
+ /**
+ * Construct a new delegate of the given action
+ *
+ * @param action the action to be delegated
+ */
+ public DelegatingAction(@NonNull IAction action) {
+ mAction = action;
+ }
+
+ @Override
+ public void addPropertyChangeListener(IPropertyChangeListener listener) {
+ mAction.addPropertyChangeListener(listener);
+ }
+
+ @Override
+ public int getAccelerator() {
+ return mAction.getAccelerator();
+ }
+
+ @Override
+ public String getActionDefinitionId() {
+ return mAction.getActionDefinitionId();
+ }
+
+ @Override
+ public String getDescription() {
+ return mAction.getDescription();
+ }
+
+ @Override
+ public ImageDescriptor getDisabledImageDescriptor() {
+ return mAction.getDisabledImageDescriptor();
+ }
+
+ @Override
+ public HelpListener getHelpListener() {
+ return mAction.getHelpListener();
+ }
+
+ @Override
+ public ImageDescriptor getHoverImageDescriptor() {
+ return mAction.getHoverImageDescriptor();
+ }
+
+ @Override
+ public String getId() {
+ return mAction.getId();
+ }
+
+ @Override
+ public ImageDescriptor getImageDescriptor() {
+ return mAction.getImageDescriptor();
+ }
+
+ @Override
+ public IMenuCreator getMenuCreator() {
+ return mAction.getMenuCreator();
+ }
+
+ @Override
+ public int getStyle() {
+ return mAction.getStyle();
+ }
+
+ @Override
+ public String getText() {
+ return mAction.getText();
+ }
+
+ @Override
+ public String getToolTipText() {
+ return mAction.getToolTipText();
+ }
+
+ @Override
+ public boolean isChecked() {
+ return mAction.isChecked();
+ }
+
+ @Override
+ public boolean isEnabled() {
+ return mAction.isEnabled();
+ }
+
+ @Override
+ public boolean isHandled() {
+ return mAction.isHandled();
+ }
+
+ @Override
+ public void removePropertyChangeListener(IPropertyChangeListener listener) {
+ mAction.removePropertyChangeListener(listener);
+ }
+
+ @Override
+ public void run() {
+ mAction.run();
+ }
+
+ @Override
+ public void runWithEvent(Event event) {
+ mAction.runWithEvent(event);
+ }
+
+ @Override
+ public void setActionDefinitionId(String id) {
+ mAction.setActionDefinitionId(id);
+ }
+
+ @Override
+ public void setChecked(boolean checked) {
+ mAction.setChecked(checked);
+ }
+
+ @Override
+ public void setDescription(String text) {
+ mAction.setDescription(text);
+ }
+
+ @Override
+ public void setDisabledImageDescriptor(ImageDescriptor newImage) {
+ mAction.setDisabledImageDescriptor(newImage);
+ }
+
+ @Override
+ public void setEnabled(boolean enabled) {
+ mAction.setEnabled(enabled);
+ }
+
+ @Override
+ public void setHelpListener(HelpListener listener) {
+ mAction.setHelpListener(listener);
+ }
+
+ @Override
+ public void setHoverImageDescriptor(ImageDescriptor newImage) {
+ mAction.setHoverImageDescriptor(newImage);
+ }
+
+ @Override
+ public void setId(String id) {
+ mAction.setId(id);
+ }
+
+ @Override
+ public void setImageDescriptor(ImageDescriptor newImage) {
+ mAction.setImageDescriptor(newImage);
+ }
+
+ @Override
+ public void setMenuCreator(IMenuCreator creator) {
+ mAction.setMenuCreator(creator);
+ }
+
+ @Override
+ public void setText(String text) {
+ mAction.setText(text);
+ }
+
+ @Override
+ public void setToolTipText(String text) {
+ mAction.setToolTipText(text);
+ }
+
+ @Override
+ public void setAccelerator(int keycode) {
+ mAction.setAccelerator(keycode);
+ }
+}