aboutsummaryrefslogtreecommitdiff
path: root/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/lint/ConvertToDpFix.java
diff options
context:
space:
mode:
Diffstat (limited to 'eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/lint/ConvertToDpFix.java')
-rw-r--r--eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/lint/ConvertToDpFix.java113
1 files changed, 0 insertions, 113 deletions
diff --git a/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/lint/ConvertToDpFix.java b/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/lint/ConvertToDpFix.java
deleted file mode 100644
index 628972f8c..000000000
--- a/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/lint/ConvertToDpFix.java
+++ /dev/null
@@ -1,113 +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.lint;
-
-import static com.android.SdkConstants.UNIT_PX;
-import static com.android.SdkConstants.VALUE_N_DP;
-
-import com.android.ide.eclipse.adt.AdtPlugin;
-
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.jface.dialogs.IInputValidator;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.wst.sse.core.internal.provisional.IStructuredModel;
-import org.w3c.dom.Attr;
-import org.w3c.dom.Element;
-import org.w3c.dom.NamedNodeMap;
-import org.w3c.dom.Node;
-
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
-
-@SuppressWarnings("restriction") // DOM model
-final class ConvertToDpFix extends DocumentFix implements IInputValidator {
- private ConvertToDpFix(String id, IMarker marker) {
- super(id, marker);
- }
-
- @Override
- public boolean needsFocus() {
- return false;
- }
-
- @Override
- public boolean isCancelable() {
- return true;
- }
-
- @Override
- protected void apply(IDocument document, IStructuredModel model, Node node, int start,
- int end) {
- Shell shell = AdtPlugin.getShell();
- InputDensityDialog densityDialog = new InputDensityDialog(shell);
- if (densityDialog.open() == Window.OK) {
- int dpi = densityDialog.getDensity();
- Element element = (Element) node;
- Pattern pattern = Pattern.compile("(\\d+)px"); //$NON-NLS-1$
- NamedNodeMap attributes = element.getAttributes();
- for (int i = 0, n = attributes.getLength(); i < n; i++) {
- Attr attribute = (Attr) attributes.item(i);
- String value = attribute.getValue();
- if (value.endsWith(UNIT_PX)) {
- Matcher matcher = pattern.matcher(value);
- if (matcher.matches()) {
- String numberString = matcher.group(1);
- try {
- int px = Integer.parseInt(numberString);
- int dp = px * 160 / dpi;
- String newValue = String.format(VALUE_N_DP, dp);
- attribute.setNodeValue(newValue);
- } catch (NumberFormatException nufe) {
- AdtPlugin.log(nufe, null);
- }
- }
- }
- }
- }
- }
-
- @Override
- public String getDisplayString() {
- return "Convert to \"dp\"...";
- }
-
- @Override
- public Image getImage() {
- return AdtPlugin.getAndroidLogo();
- }
-
- // ---- Implements IInputValidator ----
-
- @Override
- public String isValid(String input) {
- if (input == null || input.length() == 0)
- return " "; //$NON-NLS-1$
-
- try {
- int i = Integer.parseInt(input);
- if (i <= 0 || i > 1000) {
- return "Invalid range";
- }
- } catch (NumberFormatException x) {
- return "Enter a valid number";
- }
-
- return null;
- }
-}