summaryrefslogtreecommitdiffstats
path: root/tools/eclipse
diff options
context:
space:
mode:
authorXavier Ducrohet <xav@android.com>2009-09-23 20:33:13 -0700
committerXavier Ducrohet <xav@android.com>2009-09-23 20:40:36 -0700
commit0d3e110b36e23dd0e740c0d7f90657f8550d2706 (patch)
treeb1c5b0a2aaa27598d289e7afe952b1e79334073c /tools/eclipse
parent5b6f3cbe4b88a98262a8b30b546543b8394e1f67 (diff)
downloadandroid_development-0d3e110b36e23dd0e740c0d7f90657f8550d2706.tar.gz
android_development-0d3e110b36e23dd0e740c0d7f90657f8550d2706.tar.bz2
android_development-0d3e110b36e23dd0e740c0d7f90657f8550d2706.zip
Disable clipping toggle when not supported.
This is only supported in Eclair+, so the toggle button is disable if the edited file is donut or before. Change-Id: I8bf1f8a8aa3604f269cb226d788c5e1438a5ae0b
Diffstat (limited to 'tools/eclipse')
-rwxr-xr-xtools/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/GraphicalEditorPart.java16
-rw-r--r--tools/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/GraphicalLayoutEditor.java16
-rwxr-xr-xtools/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/IGraphicalLayoutEditor.java2
-rw-r--r--tools/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/LayoutEditor.java1
-rw-r--r--tools/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/configuration/ConfigurationComposite.java17
5 files changed, 41 insertions, 11 deletions
diff --git a/tools/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/GraphicalEditorPart.java b/tools/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/GraphicalEditorPart.java
index b2534f081..cab6829eb 100755
--- a/tools/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/GraphicalEditorPart.java
+++ b/tools/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/GraphicalEditorPart.java
@@ -41,7 +41,6 @@ import com.android.layoutlib.api.ILayoutResult;
import com.android.layoutlib.api.IProjectCallback;
import com.android.layoutlib.api.IResourceValue;
import com.android.layoutlib.api.IXmlPullParser;
-import com.android.layoutlib.api.ILayoutResult.ILayoutViewInfo;
import com.android.sdklib.IAndroidTarget;
import org.eclipse.core.resources.IFile;
@@ -76,7 +75,6 @@ import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.PrintStream;
-import java.util.List;
import java.util.Map;
/**
@@ -484,7 +482,6 @@ public class GraphicalEditorPart extends EditorPart implements IGraphicalLayoutE
// to trigger the edit of the new file.
res.refreshLocal(IResource.DEPTH_INFINITE, new IProgressMonitor() {
public void done() {
- mConfigComposite.setConfig(config);
mConfigComposite.getDisplay().asyncExec(new Runnable() {
public void run() {
onConfigurationChange();
@@ -970,6 +967,19 @@ public class GraphicalEditorPart extends EditorPart implements IGraphicalLayoutE
}
}
+ public void reloadConfigurationUi() {
+ // enable the clipping button if it's supported.
+ Sdk currentSdk = Sdk.getCurrent();
+ if (currentSdk != null) {
+ IAndroidTarget target = currentSdk.getTarget(mEditedFile.getProject());
+ AndroidTargetData data = currentSdk.getTargetData(target);
+ if (data != null) {
+ LayoutBridge bridge = data.getLayoutBridge();
+ mConfigComposite.setClippingSupport(bridge.apiLevel >= 4);
+ }
+ }
+ }
+
/**
* Used by LayoutEditor.UiEditorActions.selectUiNode to select a new UI Node
* created by {@link ElementCreateCommand#execute()}.
diff --git a/tools/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/GraphicalLayoutEditor.java b/tools/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/GraphicalLayoutEditor.java
index 42c85e12a..1c9cac3cb 100644
--- a/tools/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/GraphicalLayoutEditor.java
+++ b/tools/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/GraphicalLayoutEditor.java
@@ -547,6 +547,8 @@ public class GraphicalLayoutEditor extends GraphicalEditorWithPalette
// enable the create button if the current and edited config are not equals
mConfigComposite.setEnabledCreate(
mEditedConfig.equals(mConfigComposite.getCurrentConfig()) == false);
+
+ reloadConfigurationUi();
}
public Rectangle getBounds() {
@@ -728,7 +730,18 @@ public class GraphicalLayoutEditor extends GraphicalEditorWithPalette
PaletteFactory.createPaletteRoot(mPaletteRoot, mLayoutEditor.getTargetData());
}
-
+ public void reloadConfigurationUi() {
+ // enable the clipping button if it's supported.
+ Sdk currentSdk = Sdk.getCurrent();
+ if (currentSdk != null) {
+ IAndroidTarget target = currentSdk.getTarget(mEditedFile.getProject());
+ AndroidTargetData data = currentSdk.getTargetData(target);
+ if (data != null) {
+ LayoutBridge bridge = data.getLayoutBridge();
+ mConfigComposite.setClippingSupport(bridge.apiLevel >= 4);
+ }
+ }
+ }
/**
* Looks for a file matching the new {@link FolderConfiguration} and attempts to open it.
@@ -1231,7 +1244,6 @@ public class GraphicalLayoutEditor extends GraphicalEditorWithPalette
// to trigger the edit of the new file.
res.refreshLocal(IResource.DEPTH_INFINITE, new IProgressMonitor() {
public void done() {
- mConfigComposite.setConfig(config);
mParent.getDisplay().asyncExec(new Runnable() {
public void run() {
onConfigurationChange();
diff --git a/tools/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/IGraphicalLayoutEditor.java b/tools/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/IGraphicalLayoutEditor.java
index 4c9c7142a..664edcb5f 100755
--- a/tools/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/IGraphicalLayoutEditor.java
+++ b/tools/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/IGraphicalLayoutEditor.java
@@ -82,4 +82,6 @@ import org.eclipse.ui.IEditorPart;
abstract Clipboard getClipboard();
+ abstract void reloadConfigurationUi();
+
}
diff --git a/tools/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/LayoutEditor.java b/tools/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/LayoutEditor.java
index caa9658d6..ca11fc7bb 100644
--- a/tools/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/LayoutEditor.java
+++ b/tools/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/LayoutEditor.java
@@ -410,6 +410,7 @@ public class LayoutEditor extends AndroidEditor implements IShowEditorInput, IPa
if (mGraphicalEditor != null) {
mGraphicalEditor.reloadEditor();
mGraphicalEditor.reloadPalette();
+ mGraphicalEditor.reloadConfigurationUi();
mGraphicalEditor.recomputeLayout();
}
}
diff --git a/tools/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/configuration/ConfigurationComposite.java b/tools/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/configuration/ConfigurationComposite.java
index 52d1923e9..fe98ee81a 100644
--- a/tools/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/configuration/ConfigurationComposite.java
+++ b/tools/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/configuration/ConfigurationComposite.java
@@ -227,11 +227,6 @@ public class ConfigurationComposite extends Composite {
onDeviceConfigChange();
}
- public void setConfig(FolderConfiguration config) {
-// mCurrentConfig.set(config);
- throw new UnsupportedOperationException("setConfig");
- }
-
public FolderConfiguration getCurrentConfig() {
return mCurrentConfig;
}
@@ -429,6 +424,17 @@ public class ConfigurationComposite extends Composite {
mCreateButton.setEnabled(enabled);
}
+ public void setClippingSupport(boolean b) {
+ mClippingButton.setEnabled(b);
+ if (b) {
+ mClippingButton.setToolTipText("Toggles screen clipping on/off");
+ } else {
+ mClipping = true;
+ mClippingButton.setSelection(true);
+ mClippingButton.setToolTipText("Non clipped rendering is not supported");
+ }
+ }
+
/**
* Update the UI controls state with a given {@link FolderConfiguration}.
* <p/>If <var>force</var> is set to <code>true</code> the UI will be changed to exactly reflect
@@ -596,5 +602,4 @@ public class ConfigurationComposite extends Composite {
return false;
}
-
}