diff options
Diffstat (limited to 'eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/assetstudio/ChooseAssetTypePage.java')
-rw-r--r-- | eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/assetstudio/ChooseAssetTypePage.java | 225 |
1 files changed, 0 insertions, 225 deletions
diff --git a/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/assetstudio/ChooseAssetTypePage.java b/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/assetstudio/ChooseAssetTypePage.java deleted file mode 100644 index a26a22e49..000000000 --- a/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/assetstudio/ChooseAssetTypePage.java +++ /dev/null @@ -1,225 +0,0 @@ -/* - * Copyright (C) 2011 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.assetstudio; - -import com.android.ide.eclipse.adt.internal.project.ProjectChooserHelper; -import com.android.ide.eclipse.adt.internal.project.ProjectChooserHelper.ProjectCombo; -import com.android.ide.eclipse.adt.internal.resources.ResourceNameValidator; -import com.android.resources.ResourceFolderType; - -import org.eclipse.jface.dialogs.IMessageProvider; -import org.eclipse.jface.wizard.WizardPage; -import org.eclipse.swt.SWT; -import org.eclipse.swt.dnd.Clipboard; -import org.eclipse.swt.dnd.TextTransfer; -import org.eclipse.swt.dnd.Transfer; -import org.eclipse.swt.events.ModifyEvent; -import org.eclipse.swt.events.ModifyListener; -import org.eclipse.swt.events.SelectionEvent; -import org.eclipse.swt.events.SelectionListener; -import org.eclipse.swt.layout.GridData; -import org.eclipse.swt.layout.GridLayout; -import org.eclipse.swt.widgets.Button; -import org.eclipse.swt.widgets.Composite; -import org.eclipse.swt.widgets.Label; -import org.eclipse.swt.widgets.Text; - -/** Page for choosing the type of asset to create, as well as the target project */ -public class ChooseAssetTypePage extends WizardPage implements SelectionListener, ModifyListener { - private final CreateAssetSetWizardState mValues; - private ProjectCombo mProjectButton; - private Button mClipboardButton; - private Text mNameText; - private boolean mNameModified; - private Label mResourceName; - - /** - * Create the wizard. - */ - public ChooseAssetTypePage(CreateAssetSetWizardState values) { - super("chooseAssetTypePage"); - mValues = values; - setTitle("Choose Icon Set Type"); - setDescription("Select the type of icon set to create:"); - } - - /** - * Create contents of the wizard. - * - * @param parent the parent composite - */ - @Override - public void createControl(Composite parent) { - Composite container = new Composite(parent, SWT.NULL); - - setControl(container); - container.setLayout(new GridLayout(3, false)); - - for (AssetType type : AssetType.values()) { - Button button = new Button(container, SWT.RADIO); - button.setData(type); - button.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, false, false, 3, 1)); - button.setSelection(type == mValues.type); - button.setText(type.getDisplayName()); - button.addSelectionListener(this); - } - - Label separator = new Label(container, SWT.SEPARATOR | SWT.HORIZONTAL); - GridData gdSeparator = new GridData(SWT.FILL, SWT.CENTER, false, false, 3, 1); - gdSeparator.heightHint = 20; - separator.setLayoutData(gdSeparator); - - Label projectLabel = new Label(container, SWT.NONE); - projectLabel.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1)); - projectLabel.setText("Project:"); - - ProjectChooserHelper helper = - new ProjectChooserHelper(getShell(), null /* filter */); - mProjectButton = new ProjectCombo(helper, container, mValues.project); - mProjectButton.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 2, 1)); - mProjectButton.addSelectionListener(this); - - Label assetLabel = new Label(container, SWT.NONE); - assetLabel.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1)); - assetLabel.setText("Icon Name:"); - - mNameText = new Text(container, SWT.BORDER); - mNameText.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 2, 1)); - mNameText.addModifyListener(this); - - Label resourceLabel = new Label(container, SWT.NONE); - resourceLabel.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1)); - resourceLabel.setText("Resource:"); - - mResourceName = new Label(container, SWT.NONE); - mResourceName.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1)); - - mClipboardButton = new Button(container, SWT.FLAT); - mClipboardButton.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1)); - mClipboardButton.setText("Copy Name to Clipboard"); - - mClipboardButton.addSelectionListener(this); - - updateAssetType(); - validatePage(); - parent.getDisplay().asyncExec(new Runnable() { - @Override - public void run() { - mNameText.setFocus(); - } - }); - } - - private void updateAssetType() { - if (!mNameModified) { - // Default name suggestion, possibly as a suffix, e.g. "ic_menu_<name>" - String replace = "name"; - String suggestedName = String.format(mValues.type.getDefaultNameFormat(), replace); - mNameText.setText(suggestedName); - mValues.outputName = suggestedName; - - updateResourceLabel(); - mNameModified = false; - int start = suggestedName.indexOf(replace); - if (start != -1) { - mNameText.setSelection(start, start + replace.length()); - } else { - mNameText.selectAll(); - } - } else { - mNameText.selectAll(); - } - } - - private void updateResourceLabel() { - mResourceName.setText("@drawable/" + getOutputName()); //$NON-NLS-1$ - } - - @Override - public boolean canFlipToNextPage() { - return mValues.project != null; - } - - @Override - public void widgetSelected(SelectionEvent e) { - Object source = e.getSource(); - if (source == mProjectButton) { - mValues.project = mProjectButton.getSelectedProject(); - validatePage(); - } else if (source == mClipboardButton) { - Clipboard clipboard = new Clipboard(getShell().getDisplay()); - TextTransfer textTransfer = TextTransfer.getInstance(); - clipboard.setContents( - new Object[] { mResourceName.getText() }, - new Transfer[] { textTransfer }); - clipboard.dispose(); - } else if (source instanceof Button) { - // User selected a different asset type to be created - Object data = ((Button) source).getData(); - if (data instanceof AssetType) { - mValues.type = (AssetType) data; - CreateAssetSetWizardState.sLastType = mValues.type; - updateAssetType(); - } - } - } - - @Override - public void widgetDefaultSelected(SelectionEvent e) { - } - - @Override - public void modifyText(ModifyEvent e) { - Object source = e.getSource(); - if (source == mNameText) { - mNameModified = true; - mValues.outputName = mNameText.getText().trim(); - updateResourceLabel(); - } - - validatePage(); - } - - private String getOutputName() { - return mNameText.getText().trim(); - } - - private void validatePage() { - String error = null; - - if (mValues.project == null) { - error = "Please select an Android project."; - } else { - String outputName = getOutputName(); - if (outputName == null || outputName.length() == 0) { - error = "Please enter a name"; - } else { - ResourceNameValidator validator = - ResourceNameValidator.create(true, ResourceFolderType.DRAWABLE); - error = validator.isValid(outputName); - } - } - - setPageComplete(error == null); - if (error != null) { - setMessage(error, IMessageProvider.ERROR); - } else { - setErrorMessage(null); - setMessage(null); - } - } -} |