aboutsummaryrefslogtreecommitdiffstats
path: root/eclipse
diff options
context:
space:
mode:
authorXavier Ducrohet <xav@android.com>2012-10-18 11:04:45 -0700
committerXavier Ducrohet <xav@android.com>2012-10-18 11:04:45 -0700
commit7b12d7af066c7e21429da4d3f51bbb52dcff3dc9 (patch)
treeed737fb770bb3cded64225dc32e41a9751cf1bce /eclipse
parentb8bd06476ddbaa2cf745270e1223508407505217 (diff)
downloadsdk-7b12d7af066c7e21429da4d3f51bbb52dcff3dc9.zip
sdk-7b12d7af066c7e21429da4d3f51bbb52dcff3dc9.tar.gz
sdk-7b12d7af066c7e21429da4d3f51bbb52dcff3dc9.tar.bz2
Move HardwareConfigHelper to sdk_common.
Change-Id: Iae39e23f6c72f5a2e1444c39da1eb1a78894e9f4
Diffstat (limited to 'eclipse')
-rw-r--r--eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/gle2/HardwareConfigHelper.java153
-rw-r--r--eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/gle2/RenderService.java1
2 files changed, 1 insertions, 153 deletions
diff --git a/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/gle2/HardwareConfigHelper.java b/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/gle2/HardwareConfigHelper.java
deleted file mode 100644
index db1c1f1..0000000
--- a/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/gle2/HardwareConfigHelper.java
+++ /dev/null
@@ -1,153 +0,0 @@
-/*
- * 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.ide.common.rendering.api.HardwareConfig;
-import com.android.resources.ScreenOrientation;
-import com.android.sdklib.devices.ButtonType;
-import com.android.sdklib.devices.Device;
-import com.android.sdklib.devices.Screen;
-
-/**
- * Helper method to create a {@link HardwareConfig} object.
- *
- * The base data comes from a {@link Device} object, with additional data provided on the helper
- * object.
- *
- * Since {@link HardwareConfig} is immutable, this allows creating one in several (optional)
- * steps more easily.
- *
- */
-public class HardwareConfigHelper {
-
- private final Device mDevice;
- private ScreenOrientation mScreenOrientation = ScreenOrientation.PORTRAIT;
-
- // optional
- private int mMaxRenderWidth = -1;
- private int mMaxRenderHeight = -1;
- private int mOverrideRenderWidth = -1;
- private int mOverrideRenderHeight = -1;
-
- /**
- * Creates a new helper for a given device.
- * @param device the device to provide the base data.
- */
- public HardwareConfigHelper(Device device) {
- mDevice = device;
- }
-
- /**
- * Sets the orientation of the config.
- * @param screenOrientation the orientation.
- * @return this (such that chains of setters can be stringed together)
- */
- public HardwareConfigHelper setOrientation(ScreenOrientation screenOrientation) {
- mScreenOrientation = screenOrientation;
- return this;
- }
-
- /**
- * Overrides the width and height to be used during rendering.
- *
- * A value of -1 will make the rendering use the normal width and height coming from the
- * {@link Device} object.
- *
- * @param overrideRenderWidth the width in pixels of the layout to be rendered
- * @param overrideRenderHeight the height in pixels of the layout to be rendered
- * @return this (such that chains of setters can be stringed together)
- */
- public HardwareConfigHelper setOverrideRenderSize(int overrideRenderWidth,
- int overrideRenderHeight) {
- mOverrideRenderWidth = overrideRenderWidth;
- mOverrideRenderHeight = overrideRenderHeight;
- return this;
- }
-
- /**
- * Sets the max width and height to be used during rendering.
- *
- * A value of -1 will make the rendering use the normal width and height coming from the
- * {@link Device} object.
- *
- * @param maxRenderWidth the max width in pixels of the layout to be rendered
- * @param maxRenderHeight the max height in pixels of the layout to be rendered
- * @return this (such that chains of setters can be stringed together)
- */
- public HardwareConfigHelper setMaxRenderSize(int maxRenderWidth, int maxRenderHeight) {
- mMaxRenderWidth = maxRenderWidth;
- mMaxRenderHeight = maxRenderHeight;
- return this;
- }
-
- /**
- * Creates and returns the HardwareConfig object.
- * @return the config
- */
- public HardwareConfig getConfig() {
- Screen screen = mDevice.getDefaultHardware().getScreen();
-
- // compute width and height to take orientation into account.
- int x = screen.getXDimension();
- int y = screen.getYDimension();
- int width, height;
-
- if (x > y) {
- if (mScreenOrientation == ScreenOrientation.LANDSCAPE) {
- width = x;
- height = y;
- } else {
- width = y;
- height = x;
- }
- } else {
- if (mScreenOrientation == ScreenOrientation.LANDSCAPE) {
- width = y;
- height = x;
- } else {
- width = x;
- height = y;
- }
- }
-
- if (mOverrideRenderHeight != -1) {
- width = mOverrideRenderWidth;
- }
-
- if (mOverrideRenderHeight != -1) {
- height = mOverrideRenderHeight;
- }
-
- if (mMaxRenderWidth != -1) {
- width = mMaxRenderWidth;
- }
-
- if (mMaxRenderHeight != -1) {
- height = mMaxRenderHeight;
- }
-
- return new HardwareConfig(
- width,
- height,
- screen.getPixelDensity(),
- (float) screen.getXdpi(),
- (float) screen.getYdpi(),
- screen.getSize(),
- mScreenOrientation,
- mDevice.getDefaultHardware().getButtonType() == ButtonType.SOFT);
- }
-}
diff --git a/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/gle2/RenderService.java b/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/gle2/RenderService.java
index 065e327..0dd81b2 100644
--- a/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/gle2/RenderService.java
+++ b/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/gle2/RenderService.java
@@ -21,6 +21,7 @@ import com.android.annotations.NonNull;
import com.android.ide.common.api.IClientRulesEngine;
import com.android.ide.common.api.INode;
import com.android.ide.common.api.Rect;
+import com.android.ide.common.rendering.HardwareConfigHelper;
import com.android.ide.common.rendering.LayoutLibrary;
import com.android.ide.common.rendering.api.Capability;
import com.android.ide.common.rendering.api.DrawableParams;