diff options
Diffstat (limited to 'eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/gle2/EmptyViewsOverlay.java')
-rw-r--r-- | eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/gle2/EmptyViewsOverlay.java | 96 |
1 files changed, 0 insertions, 96 deletions
diff --git a/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/gle2/EmptyViewsOverlay.java b/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/gle2/EmptyViewsOverlay.java deleted file mode 100644 index daa3e0eae..000000000 --- a/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/gle2/EmptyViewsOverlay.java +++ /dev/null @@ -1,96 +0,0 @@ -/* - * Copyright (C) 2010 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 org.eclipse.swt.graphics.Color; -import org.eclipse.swt.graphics.Device; -import org.eclipse.swt.graphics.GC; -import org.eclipse.swt.graphics.Rectangle; - -/** - * The {@link EmptyViewsOverlay} paints bounding rectangles for any of the empty and - * invisible container views in the scene. - */ -public class EmptyViewsOverlay extends Overlay { - /** The {@link ViewHierarchy} containing visible view information. */ - private final ViewHierarchy mViewHierarchy; - - /** Border color to paint the bounding boxes with. */ - private Color mBorderColor; - - /** Vertical scaling & scrollbar information. */ - private CanvasTransform mVScale; - - /** Horizontal scaling & scrollbar information. */ - private CanvasTransform mHScale; - - /** - * Constructs a new {@link EmptyViewsOverlay} linked to the given view hierarchy. - * - * @param viewHierarchy The {@link ViewHierarchy} to render. - * @param hScale The {@link CanvasTransform} to use to transfer horizontal layout - * coordinates to screen coordinates. - * @param vScale The {@link CanvasTransform} to use to transfer vertical layout coordinates - * to screen coordinates. - */ - public EmptyViewsOverlay( - ViewHierarchy viewHierarchy, - CanvasTransform hScale, - CanvasTransform vScale) { - super(); - mViewHierarchy = viewHierarchy; - mHScale = hScale; - mVScale = vScale; - } - - @Override - public void create(Device device) { - mBorderColor = new Color(device, SwtDrawingStyle.EMPTY.getStrokeColor()); - } - - @Override - public void dispose() { - if (mBorderColor != null) { - mBorderColor.dispose(); - mBorderColor = null; - } - } - - @Override - public void paint(GC gc) { - gc.setForeground(mBorderColor); - gc.setLineDash(null); - gc.setLineStyle(SwtDrawingStyle.EMPTY.getLineStyle()); - int oldAlpha = gc.getAlpha(); - gc.setAlpha(SwtDrawingStyle.EMPTY.getStrokeAlpha()); - gc.setLineWidth(SwtDrawingStyle.EMPTY.getLineWidth()); - - for (CanvasViewInfo info : mViewHierarchy.getInvisibleViews()) { - Rectangle r = info.getAbsRect(); - - int x = mHScale.translate(r.x); - int y = mVScale.translate(r.y); - int w = mHScale.scale(r.width); - int h = mVScale.scale(r.height); - - // +1: See explanation in equivalent code in {@link OutlineOverlay#paint} - gc.drawRectangle(x, y, w + 1, h + 1); - } - - gc.setAlpha(oldAlpha); - } -} |