Refactoring: move visual presentation to end-plugins

This commit is contained in:
Alexander Lobas
2013-02-11 18:21:11 +04:00
parent b926bacaf4
commit f2eb193357
22 changed files with 81 additions and 22 deletions
@@ -0,0 +1,28 @@
package com.intellij.android.designer.designSurface.feedbacks;
import com.intellij.designer.designSurface.feedbacks.AbstractTextFeedback;
import com.intellij.ui.Colors;
import com.intellij.ui.LightColors;
import com.intellij.ui.SimpleTextAttributes;
import java.awt.*;
/**
* @author Alexander Lobas
*/
public class TextFeedback extends AbstractTextFeedback {
private static SimpleTextAttributes DIMENSION_ATTRIBUTES = new SimpleTextAttributes(SimpleTextAttributes.STYLE_BOLD, Color.lightGray);
private static SimpleTextAttributes SNAP_ATTRIBUTES = new SimpleTextAttributes(SimpleTextAttributes.STYLE_BOLD, Colors.DARK_GREEN);
public TextFeedback() {
setBackground(LightColors.YELLOW);
}
public void dimension(String text) {
append(text, DIMENSION_ATTRIBUTES);
}
public void snap(String text) {
append(text, SNAP_ATTRIBUTES);
}
}
@@ -0,0 +1,30 @@
package com.intellij.android.designer.designSurface.layout;
import com.intellij.designer.designSurface.OperationContext;
import com.intellij.designer.designSurface.feedbacks.LineInsertFeedback;
import com.intellij.designer.designSurface.feedbacks.RectangleFeedback;
import com.intellij.designer.model.RadComponent;
import java.awt.*;
/**
* @author Alexander Lobas
*/
public abstract class AbstractFlowBaseOperation extends com.intellij.designer.designSurface.AbstractFlowBaseOperation {
public AbstractFlowBaseOperation(RadComponent container,
OperationContext context, boolean horizontal) {
super(container, context, horizontal);
}
@Override
protected void createInsertFeedback() {
myInsertFeedback = new LineInsertFeedback(Color.green, !myHorizontal);
myInsertFeedback.size(myBounds.width, myBounds.height);
}
@Override
protected void createFirstInsertFeedback() {
myFirstInsertFeedback = new RectangleFeedback(Color.green, 2);
myFirstInsertFeedback.setBounds(myBounds);
}
}
@@ -17,12 +17,12 @@ package com.intellij.android.designer.designSurface.layout;
import com.android.SdkConstants;
import com.intellij.android.designer.designSurface.AbstractEditOperation;
import com.intellij.android.designer.designSurface.feedbacks.TextFeedback;
import com.intellij.android.designer.model.RadViewComponent;
import com.intellij.android.designer.model.layout.Gravity;
import com.intellij.designer.designSurface.FeedbackLayer;
import com.intellij.designer.designSurface.OperationContext;
import com.intellij.designer.designSurface.feedbacks.AlphaFeedback;
import com.intellij.designer.designSurface.feedbacks.TextFeedback;
import com.intellij.designer.model.RadComponent;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.util.Pair;
@@ -16,6 +16,7 @@
package com.intellij.android.designer.designSurface.layout;
import com.android.SdkConstants;
import com.intellij.android.designer.designSurface.feedbacks.TextFeedback;
import com.intellij.android.designer.designSurface.layout.actions.ResizeOperation;
import com.intellij.android.designer.designSurface.layout.flow.FlowBaseOperation;
import com.intellij.android.designer.model.ModelParser;
@@ -23,7 +24,6 @@ import com.intellij.android.designer.model.RadViewComponent;
import com.intellij.android.designer.model.layout.Gravity;
import com.intellij.designer.designSurface.FeedbackLayer;
import com.intellij.designer.designSurface.OperationContext;
import com.intellij.designer.designSurface.feedbacks.TextFeedback;
import com.intellij.designer.model.RadComponent;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.util.Pair;
@@ -17,6 +17,7 @@ package com.intellij.android.designer.designSurface.layout;
import com.intellij.android.designer.designSurface.AbstractEditOperation;
import com.intellij.android.designer.designSurface.RootView;
import com.intellij.android.designer.designSurface.feedbacks.TextFeedback;
import com.intellij.android.designer.designSurface.layout.relative.*;
import com.intellij.android.designer.model.ModelParser;
import com.intellij.android.designer.model.RadViewComponent;
@@ -24,7 +25,6 @@ import com.intellij.android.designer.model.layout.relative.RelativeInfo;
import com.intellij.designer.designSurface.FeedbackLayer;
import com.intellij.designer.designSurface.OperationContext;
import com.intellij.designer.designSurface.feedbacks.AlphaFeedback;
import com.intellij.designer.designSurface.feedbacks.TextFeedback;
import com.intellij.designer.model.RadComponent;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.psi.xml.XmlTag;
@@ -16,6 +16,7 @@
package com.intellij.android.designer.designSurface.layout.actions;
import com.android.SdkConstants;
import com.intellij.android.designer.designSurface.feedbacks.TextFeedback;
import com.intellij.android.designer.model.ModelParser;
import com.intellij.android.designer.model.RadViewComponent;
import com.intellij.designer.designSurface.DecorationLayer;
@@ -24,7 +25,6 @@ import com.intellij.designer.designSurface.FeedbackLayer;
import com.intellij.designer.designSurface.OperationContext;
import com.intellij.designer.designSurface.feedbacks.LineMarginBorder;
import com.intellij.designer.designSurface.feedbacks.RectangleFeedback;
import com.intellij.designer.designSurface.feedbacks.TextFeedback;
import com.intellij.designer.designSurface.selection.DirectionResizePoint;
import com.intellij.designer.designSurface.selection.EmptyPoint;
import com.intellij.designer.designSurface.selection.ResizeSelectionDecorator;
@@ -16,6 +16,7 @@
package com.intellij.android.designer.designSurface.layout.actions;
import com.android.SdkConstants;
import com.intellij.android.designer.designSurface.feedbacks.TextFeedback;
import com.intellij.android.designer.designSurface.layout.grid.GridSelectionDecorator;
import com.intellij.android.designer.model.ModelParser;
import com.intellij.android.designer.model.RadViewComponent;
@@ -28,7 +29,6 @@ import com.intellij.designer.designSurface.OperationContext;
import com.intellij.designer.designSurface.feedbacks.AlphaFeedback;
import com.intellij.designer.designSurface.feedbacks.LineMarginBorder;
import com.intellij.designer.designSurface.feedbacks.RectangleFeedback;
import com.intellij.designer.designSurface.feedbacks.TextFeedback;
import com.intellij.designer.designSurface.selection.DirectionResizePoint;
import com.intellij.designer.model.RadComponent;
import com.intellij.designer.utils.Position;
@@ -16,6 +16,7 @@
package com.intellij.android.designer.designSurface.layout.actions;
import com.android.SdkConstants;
import com.intellij.android.designer.designSurface.feedbacks.TextFeedback;
import com.intellij.android.designer.designSurface.layout.RelativeLayoutOperation;
import com.intellij.android.designer.designSurface.layout.relative.*;
import com.intellij.android.designer.model.RadViewComponent;
@@ -23,7 +24,6 @@ import com.intellij.designer.designSurface.EditOperation;
import com.intellij.designer.designSurface.FeedbackLayer;
import com.intellij.designer.designSurface.OperationContext;
import com.intellij.designer.designSurface.feedbacks.RectangleFeedback;
import com.intellij.designer.designSurface.feedbacks.TextFeedback;
import com.intellij.designer.designSurface.selection.DirectionResizePoint;
import com.intellij.designer.designSurface.selection.ResizeSelectionDecorator;
import com.intellij.designer.model.RadComponent;
@@ -16,6 +16,7 @@
package com.intellij.android.designer.designSurface.layout.actions;
import com.android.SdkConstants;
import com.intellij.android.designer.designSurface.feedbacks.TextFeedback;
import com.intellij.android.designer.model.RadViewComponent;
import com.intellij.android.designer.propertyTable.renderers.ResourceRenderer;
import com.intellij.designer.designSurface.EditOperation;
@@ -23,7 +24,6 @@ import com.intellij.designer.designSurface.FeedbackLayer;
import com.intellij.designer.designSurface.OperationContext;
import com.intellij.designer.designSurface.feedbacks.LineMarginBorder;
import com.intellij.designer.designSurface.feedbacks.RectangleFeedback;
import com.intellij.designer.designSurface.feedbacks.TextFeedback;
import com.intellij.designer.designSurface.selection.DirectionResizePoint;
import com.intellij.designer.designSurface.selection.ResizeSelectionDecorator;
import com.intellij.designer.model.RadComponent;
@@ -15,10 +15,10 @@
*/
package com.intellij.android.designer.designSurface.layout.caption;
import com.intellij.android.designer.designSurface.layout.AbstractFlowBaseOperation;
import com.intellij.android.designer.model.RadViewComponent;
import com.intellij.designer.designSurface.EditableArea;
import com.intellij.designer.designSurface.FeedbackLayer;
import com.intellij.designer.designSurface.FlowBaseOperation;
import com.intellij.designer.designSurface.OperationContext;
import com.intellij.designer.designSurface.feedbacks.LineInsertFeedback;
import com.intellij.designer.model.RadComponent;
@@ -31,7 +31,7 @@ import java.util.List;
/**
* @author Alexander Lobas
*/
public abstract class HorizontalCaptionFlowBaseOperation<T extends RadViewComponent> extends FlowBaseOperation {
public abstract class HorizontalCaptionFlowBaseOperation<T extends RadViewComponent> extends AbstractFlowBaseOperation {
protected final T myMainContainer;
private final EditableArea myMainArea;
private LineInsertFeedback myMainInsertFeedback;
@@ -15,10 +15,10 @@
*/
package com.intellij.android.designer.designSurface.layout.caption;
import com.intellij.android.designer.designSurface.layout.AbstractFlowBaseOperation;
import com.intellij.android.designer.model.RadViewComponent;
import com.intellij.designer.designSurface.EditableArea;
import com.intellij.designer.designSurface.FeedbackLayer;
import com.intellij.designer.designSurface.FlowBaseOperation;
import com.intellij.designer.designSurface.OperationContext;
import com.intellij.designer.designSurface.feedbacks.LineInsertFeedback;
import com.intellij.designer.model.RadComponent;
@@ -31,7 +31,7 @@ import java.util.List;
/**
* @author Alexander Lobas
*/
public abstract class VerticalCaptionFlowBaseOperation<T extends RadViewComponent> extends FlowBaseOperation {
public abstract class VerticalCaptionFlowBaseOperation<T extends RadViewComponent> extends AbstractFlowBaseOperation {
protected final T myMainContainer;
private final EditableArea myMainArea;
private LineInsertFeedback myMainInsertFeedback;
@@ -16,6 +16,7 @@
package com.intellij.android.designer.designSurface.layout.flow;
import com.intellij.android.designer.designSurface.AbstractEditOperation;
import com.intellij.android.designer.designSurface.layout.AbstractFlowBaseOperation;
import com.intellij.android.designer.model.RadViewComponent;
import com.intellij.designer.designSurface.FeedbackLayer;
import com.intellij.designer.designSurface.OperationContext;
@@ -27,7 +28,7 @@ import java.awt.*;
/**
* @author Alexander Lobas
*/
public class FlowBaseOperation extends com.intellij.designer.designSurface.FlowBaseOperation {
public class FlowBaseOperation extends AbstractFlowBaseOperation {
public FlowBaseOperation(RadComponent container, OperationContext context, boolean horizontal) {
super(container, context, horizontal);
}
@@ -16,6 +16,7 @@
package com.intellij.android.designer.designSurface.layout.grid;
import com.intellij.android.designer.designSurface.AbstractEditOperation;
import com.intellij.android.designer.designSurface.feedbacks.TextFeedback;
import com.intellij.android.designer.designSurface.layout.BorderStaticDecorator;
import com.intellij.android.designer.model.grid.GridInfo;
import com.intellij.android.designer.model.grid.GridInsertType;
@@ -24,7 +25,6 @@ import com.intellij.designer.designSurface.FeedbackLayer;
import com.intellij.designer.designSurface.OperationContext;
import com.intellij.designer.designSurface.feedbacks.AlphaFeedback;
import com.intellij.designer.designSurface.feedbacks.InsertFeedback;
import com.intellij.designer.designSurface.feedbacks.TextFeedback;
import com.intellij.designer.model.RadComponent;
import com.intellij.ui.IdeBorderFactory;
import com.intellij.ui.JBColor;
@@ -16,9 +16,9 @@
package com.intellij.android.designer.designSurface.layout.relative;
import com.android.SdkConstants;
import com.intellij.android.designer.designSurface.feedbacks.TextFeedback;
import com.intellij.android.designer.model.ModelParser;
import com.intellij.android.designer.model.RadViewComponent;
import com.intellij.designer.designSurface.feedbacks.TextFeedback;
import com.intellij.designer.model.RadComponent;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.psi.xml.XmlTag;
@@ -16,8 +16,8 @@
package com.intellij.android.designer.designSurface.layout.relative;
import com.android.SdkConstants;
import com.intellij.android.designer.designSurface.feedbacks.TextFeedback;
import com.intellij.android.designer.model.RadViewComponent;
import com.intellij.designer.designSurface.feedbacks.TextFeedback;
import com.intellij.designer.model.RadComponent;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.psi.xml.XmlTag;
@@ -16,9 +16,9 @@
package com.intellij.android.designer.designSurface.layout.relative;
import com.android.SdkConstants;
import com.intellij.android.designer.designSurface.feedbacks.TextFeedback;
import com.intellij.android.designer.model.RadViewComponent;
import com.intellij.designer.componentTree.AttributeWrapper;
import com.intellij.designer.designSurface.feedbacks.TextFeedback;
import com.intellij.designer.model.RadComponent;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.psi.xml.XmlTag;
@@ -16,9 +16,9 @@
package com.intellij.android.designer.designSurface.layout.relative;
import com.android.SdkConstants;
import com.intellij.android.designer.designSurface.feedbacks.TextFeedback;
import com.intellij.android.designer.model.RadViewComponent;
import com.intellij.designer.componentTree.AttributeWrapper;
import com.intellij.designer.designSurface.feedbacks.TextFeedback;
import com.intellij.designer.model.RadComponent;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.psi.xml.XmlTag;
@@ -16,8 +16,8 @@
package com.intellij.android.designer.designSurface.layout.relative;
import com.android.SdkConstants;
import com.intellij.android.designer.designSurface.feedbacks.TextFeedback;
import com.intellij.android.designer.model.RadViewComponent;
import com.intellij.designer.designSurface.feedbacks.TextFeedback;
import com.intellij.designer.model.RadComponent;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.psi.xml.XmlTag;
@@ -15,9 +15,9 @@
*/
package com.intellij.android.designer.designSurface.layout.relative;
import com.intellij.android.designer.designSurface.feedbacks.TextFeedback;
import com.intellij.android.designer.model.ModelParser;
import com.intellij.android.designer.model.RadViewComponent;
import com.intellij.designer.designSurface.feedbacks.TextFeedback;
import com.intellij.designer.model.RadComponent;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.psi.xml.XmlTag;
@@ -15,9 +15,9 @@
*/
package com.intellij.android.designer.designSurface.layout.relative;
import com.intellij.android.designer.designSurface.feedbacks.TextFeedback;
import com.intellij.android.designer.model.ModelParser;
import com.intellij.android.designer.model.RadViewComponent;
import com.intellij.designer.designSurface.feedbacks.TextFeedback;
import com.intellij.designer.model.RadComponent;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.psi.xml.XmlTag;
@@ -15,9 +15,9 @@
*/
package com.intellij.android.designer.designSurface.layout.relative;
import com.intellij.android.designer.designSurface.feedbacks.TextFeedback;
import com.intellij.android.designer.model.RadViewComponent;
import com.intellij.designer.componentTree.TreeComponentDecorator;
import com.intellij.designer.designSurface.feedbacks.TextFeedback;
import com.intellij.designer.model.RadComponent;
import java.awt.*;
@@ -16,9 +16,9 @@
package com.intellij.android.designer.designSurface.layout.relative;
import com.android.SdkConstants;
import com.intellij.android.designer.designSurface.feedbacks.TextFeedback;
import com.intellij.android.designer.model.ModelParser;
import com.intellij.android.designer.model.RadViewComponent;
import com.intellij.designer.designSurface.feedbacks.TextFeedback;
import com.intellij.designer.model.RadComponent;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.psi.xml.XmlTag;