diff options
author | Greg Hartman <ghartman@google.com> | 2018-08-17 12:43:34 -0700 |
---|---|---|
committer | Greg Hartman <ghartman@google.com> | 2018-08-23 17:24:52 -0700 |
commit | 8cf8f6b088cc014921e1a9b3d4ebc93c3b5de8b8 (patch) | |
tree | d4968732d8516f2940cfcb340bacdf7693e0ceb3 /eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/wizards/templates/NewTemplateWizardState.java | |
parent | 182e4691d1c5e724fc60ed94b6de8a3356018cb6 (diff) | |
download | device_generic_opengl-transport-8cf8f6b088cc014921e1a9b3d4ebc93c3b5de8b8.tar.gz device_generic_opengl-transport-8cf8f6b088cc014921e1a9b3d4ebc93c3b5de8b8.tar.bz2 device_generic_opengl-transport-8cf8f6b088cc014921e1a9b3d4ebc93c3b5de8b8.zip |
distrib/android-emugl: Move Android GPU emulation sources here.
This patch is used to add the unmodified sources of the GPU
emulation libraries that are normally under sdk/emulator/opengl/.
These sources were originally built with the platform build system,
but this is no longer the case. Since they are only built through
the emulator's own build system (i.e. android-rebuild.sh), it's
easier to put them under external/qemu/ to ensure that they are
always in sync with the rest of the emulator.
Note that the encoder sources are still in the platform under
device/generic/goldfish/opengl/.
A future patch will update the emulator build system to pick
the sources from here, and another one will remove the sources
from sdk/ after that.
Note: these are the unmodified sources from the following
commit in https://android.googlesource.com/platform/sdk.git :
182e469 emulator/opengl: Fix Windows cross-build.
Change-Id: If2010577ef4af4c6755ab345f424af0b546f9282
Diffstat (limited to 'eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/wizards/templates/NewTemplateWizardState.java')
-rw-r--r-- | eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/wizards/templates/NewTemplateWizardState.java | 215 |
1 files changed, 0 insertions, 215 deletions
diff --git a/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/wizards/templates/NewTemplateWizardState.java b/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/wizards/templates/NewTemplateWizardState.java deleted file mode 100644 index 2c97003f2..000000000 --- a/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/wizards/templates/NewTemplateWizardState.java +++ /dev/null @@ -1,215 +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.wizards.templates; - -import static com.android.ide.eclipse.adt.internal.wizards.templates.NewProjectWizard.ATTR_BUILD_API; -import static com.android.ide.eclipse.adt.internal.wizards.templates.NewProjectWizard.ATTR_COPY_ICONS; -import static com.android.ide.eclipse.adt.internal.wizards.templates.NewProjectWizard.ATTR_MIN_API; -import static com.android.ide.eclipse.adt.internal.wizards.templates.NewProjectWizard.ATTR_MIN_API_LEVEL; -import static com.android.ide.eclipse.adt.internal.wizards.templates.NewProjectWizard.ATTR_PACKAGE_NAME; -import static com.android.ide.eclipse.adt.internal.wizards.templates.NewProjectWizard.ATTR_TARGET_API; -import static com.android.ide.eclipse.adt.internal.wizards.templates.NewProjectWizard.IS_LIBRARY_PROJECT; -import static com.android.ide.eclipse.adt.internal.wizards.templates.NewProjectWizard.IS_NEW_PROJECT; -import static com.android.ide.eclipse.adt.internal.wizards.templates.NewTemplateWizard.BLANK_ACTIVITY; - -import com.android.annotations.NonNull; -import com.android.annotations.Nullable; -import com.android.ide.eclipse.adt.internal.assetstudio.ConfigureAssetSetPage; -import com.android.ide.eclipse.adt.internal.assetstudio.CreateAssetSetWizardState; -import com.android.ide.eclipse.adt.internal.editors.manifest.ManifestInfo; -import com.android.ide.eclipse.adt.internal.sdk.ProjectState; -import com.android.ide.eclipse.adt.internal.sdk.Sdk; -import com.android.sdklib.IAndroidTarget; - -import org.eclipse.core.resources.IProject; -import org.eclipse.core.runtime.CoreException; -import org.eclipse.core.runtime.IProgressMonitor; -import org.eclipse.ltk.core.refactoring.Change; -import org.eclipse.ltk.core.refactoring.NullChange; - -import java.io.File; -import java.util.Collections; -import java.util.HashMap; -import java.util.HashSet; -import java.util.List; -import java.util.Map; -import java.util.Set; - -/** - * Value object which holds the current state of the wizard pages for the - * {@link NewTemplateWizard} - */ -public class NewTemplateWizardState { - /** Template handler responsible for instantiating templates and reading resources */ - private TemplateHandler mTemplateHandler; - - /** Configured parameters, by id */ - public final Map<String, Object> parameters = new HashMap<String, Object>(); - - /** Configured defaults for the parameters, by id */ - public final Map<String, String> defaults = new HashMap<String, String>(); - - /** Ids for parameters which should be hidden (because the client wizard already - * has information for these parameters) */ - public final Set<String> hidden = new HashSet<String>(); - - /** - * The chosen project (which may be null if the wizard page is being - * embedded in the new project wizard) - */ - public IProject project; - - /** The minimum API level to use for this template */ - public int minSdkLevel; - - /** Location of the template being created */ - private File mTemplateLocation; - - /** - * State for the asset studio wizard, used to create custom icons provided - * the icon requests it with an {@code <icons>} element - */ - private CreateAssetSetWizardState mIconState; - - /** - * Create a new state object for use by the {@link NewTemplatePage} - */ - public NewTemplateWizardState() { - parameters.put(IS_NEW_PROJECT, false); - } - - @NonNull - TemplateHandler getTemplateHandler() { - if (mTemplateHandler == null) { - File inputPath; - if (mTemplateLocation != null) { - inputPath = mTemplateLocation; - } else { - // Default - inputPath = TemplateManager.getTemplateLocation(BLANK_ACTIVITY); - } - mTemplateHandler = TemplateHandler.createFromPath(inputPath); - } - - return mTemplateHandler; - } - - /** Sets the current template */ - void setTemplateLocation(File file) { - if (!file.equals(mTemplateLocation)) { - mTemplateLocation = file; - mTemplateHandler = null; - } - } - - /** Returns the current template */ - File getTemplateLocation() { - return mTemplateLocation; - } - - /** Returns the min SDK version to use */ - int getMinSdk() { - if (project == null) { - return -1; - } - ManifestInfo manifest = ManifestInfo.get(project); - return manifest.getMinSdkVersion(); - } - - /** Returns the build API version to use */ - int getBuildApi() { - if (project == null) { - return -1; - } - IAndroidTarget target = Sdk.getCurrent().getTarget(project); - if (target != null) { - return target.getVersion().getApiLevel(); - } - - return getMinSdk(); - } - - /** Computes the changes this wizard will make */ - @NonNull - List<Change> computeChanges() { - if (project == null) { - return Collections.emptyList(); - } - - ManifestInfo manifest = ManifestInfo.get(project); - parameters.put(ATTR_PACKAGE_NAME, manifest.getPackage()); - parameters.put(ATTR_MIN_API, manifest.getMinSdkName()); - parameters.put(ATTR_MIN_API_LEVEL, manifest.getMinSdkVersion()); - parameters.put(ATTR_TARGET_API, manifest.getTargetSdkVersion()); - parameters.put(ATTR_BUILD_API, getBuildApi()); - parameters.put(ATTR_COPY_ICONS, mIconState == null); - ProjectState projectState = Sdk.getProjectState(project); - parameters.put(IS_LIBRARY_PROJECT, - projectState != null ? projectState.isLibrary() : false); - - TemplateHandler.addDirectoryParameters(parameters, project); - - List<Change> changes = getTemplateHandler().render(project, parameters); - - if (mIconState != null) { - String title = String.format("Generate icons (res/drawable-<density>/%1$s.png)", - mIconState.outputName); - changes.add(new NullChange(title) { - @Override - public Change perform(IProgressMonitor pm) throws CoreException { - ConfigureAssetSetPage.generateIcons(mIconState.project, - mIconState, false, null); - - // Not undoable: just return null instead of an undo-change. - return null; - } - }); - - } - - return changes; - } - - @NonNull - CreateAssetSetWizardState getIconState() { - if (mIconState == null) { - TemplateHandler handler = getTemplateHandler(); - if (handler != null) { - TemplateMetadata template = handler.getTemplate(); - if (template != null) { - mIconState = template.getIconState(project); - } - } - } - - return mIconState; - } - - /** - * Updates the icon state, such as the output name, based on other parameter settings - * @param evaluator the string evaluator, or null if none exists - */ - public void updateIconState(@Nullable StringEvaluator evaluator) { - TemplateMetadata template = getTemplateHandler().getTemplate(); - if (template != null) { - if (evaluator == null) { - evaluator = new StringEvaluator(); - } - template.updateIconName(template.getParameters(), evaluator); - } - } -} |