diff --git a/designer-chart/src/main/java/com/fr/design/chart/AutoChartTypePane.java b/designer-chart/src/main/java/com/fr/design/chart/AutoChartTypePane.java index b7974fb6e..589028ae5 100644 --- a/designer-chart/src/main/java/com/fr/design/chart/AutoChartTypePane.java +++ b/designer-chart/src/main/java/com/fr/design/chart/AutoChartTypePane.java @@ -63,6 +63,8 @@ public class AutoChartTypePane extends ChartWizardPane implements CallbackEvent private AutoProgressBar connectionBar; private SwingWorker worker; + private static final String MESSAGE = Toolkit.i18nText("Fine-Design_Chart_Auto_No_Match"); + public AutoChartTypePane() { this.setLayout(FRGUIPaneFactory.createBorderLayout()); initButtonGroup(); @@ -226,6 +228,9 @@ public class AutoChartTypePane extends ChartWizardPane implements CallbackEvent chartResultModel.addElement(autoChartIcon); } chartViewList.setSelectedIndex(0); + } else { + FineJOptionPane.showMessageDialog(AutoChartTypePane.this, MESSAGE, + Toolkit.i18nText("Fine-Design_Basic_Message"), JOptionPane.INFORMATION_MESSAGE, UIManager.getIcon("OptionPane.informationIcon")); } } catch (Exception e) { if (!(e instanceof CancellationException)) { diff --git a/designer-chart/src/main/java/com/fr/design/chart/auto/AutoTypeCalculate.java b/designer-chart/src/main/java/com/fr/design/chart/auto/AutoTypeCalculate.java index c30679e0e..c504a5064 100644 --- a/designer-chart/src/main/java/com/fr/design/chart/auto/AutoTypeCalculate.java +++ b/designer-chart/src/main/java/com/fr/design/chart/auto/AutoTypeCalculate.java @@ -102,22 +102,22 @@ public class AutoTypeCalculate { } private static boolean isNumberData(List values) { - for (String value : values) { - if (!isNumberData(value)) { - return false; + for (Pattern pattern : dataPatterns) { + if (isNumberData(values, pattern)) { + return true; } } - return true; + return false; } - private static boolean isNumberData(String value) { - for (Pattern pattern : dataPatterns) { + private static boolean isNumberData(List values, Pattern pattern) { + for (String value : values) { Matcher matcher = pattern.matcher(value); - if (matcher.matches()) { - return true; + if (!matcher.matches()) { + return false; } } - return false; + return true; } private static List calculateField(String tableName, List columns) { diff --git a/designer-form/src/main/java/com/fr/design/designer/beans/models/AddingModel.java b/designer-form/src/main/java/com/fr/design/designer/beans/models/AddingModel.java index 637279bf2..c0b6cd400 100644 --- a/designer-form/src/main/java/com/fr/design/designer/beans/models/AddingModel.java +++ b/designer-form/src/main/java/com/fr/design/designer/beans/models/AddingModel.java @@ -133,13 +133,13 @@ public class AddingModel { Rectangle rect = ComponentUtils.getRelativeBounds(container); if (!ComparatorUtils.equals(container.getOuterLayout(), container.getBackupParent())) { added = container.getLayoutAdapter().addBean(creator, - x + designer.getArea().getHorizontalValue(), - y + designer.getArea().getVerticalValue()); + x + designer.getHorizontalScaleValue(), + y + designer.getVerticalScaleValue() ); return added; } added = container.getLayoutAdapter().addBean(creator, - x + designer.getArea().getHorizontalValue() - rect.x, - y + designer.getArea().getVerticalValue() - rect.y); + x + designer.getHorizontalScaleValue() - rect.x, + y + designer.getVerticalScaleValue() - rect.y); return added; } } diff --git a/designer-form/src/main/java/com/fr/design/mainframe/EditingMouseListener.java b/designer-form/src/main/java/com/fr/design/mainframe/EditingMouseListener.java index 3754e5109..183c0b08c 100644 --- a/designer-form/src/main/java/com/fr/design/mainframe/EditingMouseListener.java +++ b/designer-form/src/main/java/com/fr/design/mainframe/EditingMouseListener.java @@ -11,7 +11,13 @@ import com.fr.design.designer.beans.location.Direction; import com.fr.design.designer.beans.location.Location; import com.fr.design.designer.beans.models.SelectionModel; import com.fr.design.designer.beans.models.StateModel; -import com.fr.design.designer.creator.*; +import com.fr.design.designer.creator.XChartEditor; +import com.fr.design.designer.creator.XCreator; +import com.fr.design.designer.creator.XCreatorUtils; +import com.fr.design.designer.creator.XEditorHolder; +import com.fr.design.designer.creator.XElementCase; +import com.fr.design.designer.creator.XLayoutContainer; +import com.fr.design.designer.creator.XWFitLayout; import com.fr.design.designer.creator.cardlayout.XCardSwitchButton; import com.fr.design.designer.creator.cardlayout.XWCardLayout; import com.fr.design.form.util.XCreatorConstants; @@ -22,14 +28,20 @@ import com.fr.design.icon.IconPathConstants; import com.fr.design.utils.ComponentUtils; import com.fr.design.utils.gui.GUICoreUtils; import com.fr.design.utils.gui.LayoutUtils; - import com.fr.share.ShareConstants; import com.fr.stable.Constants; - import com.fr.stable.StringUtils; -import javax.swing.*; + +import javax.swing.BorderFactory; +import javax.swing.JComponent; +import javax.swing.JPopupMenu; +import javax.swing.JWindow; +import javax.swing.SwingUtilities; import javax.swing.event.MouseInputAdapter; -import java.awt.*; +import java.awt.Color; +import java.awt.Container; +import java.awt.Cursor; +import java.awt.Rectangle; import java.awt.event.MouseEvent; /** @@ -165,10 +177,13 @@ public class EditingMouseListener extends MouseInputAdapter { if (designer.isDrawLineMode()) { designer.updateDrawLineMode(e); } else { + int relativeX = Math.max(0, designer.getRelativeX(e.getX())); + int relativeY = Math.max(0, designer.getRelativeY(e.getY())); + if (selectionModel.hasSelectionComponent() && selectionModel.getSelection().getRelativeBounds().contains( - designer.getArea().getHorizontalValue() + e.getX(), - designer.getArea().getVerticalValue() + e.getY())) { + designer.getHorizontalScaleValue() + relativeX, + designer.getVerticalScaleValue() + relativeY)) { lastPressEvent = e; lastXCreator = selectionModel.getSelection().getSelectedCreator(); } else { diff --git a/designer-form/src/main/java/com/fr/design/mainframe/FormDesignerUI.java b/designer-form/src/main/java/com/fr/design/mainframe/FormDesignerUI.java index 68ea5c2b8..26547229b 100644 --- a/designer-form/src/main/java/com/fr/design/mainframe/FormDesignerUI.java +++ b/designer-form/src/main/java/com/fr/design/mainframe/FormDesignerUI.java @@ -409,8 +409,8 @@ public class FormDesignerUI extends ComponentUI { clipg = g.create( -designer.getHorizontalScaleValue(), -designer.getVerticalScaleValue() + designer.getParaHeight(), - (int) ((parent.getSize().width + designer.getArea().getHorizontalValue()) / designer.getScale()), - (int) ((parent.getSize().height + designer.getArea().getVerticalValue()) / designer.getScale())); + parent.getSize().width + designer.getHorizontalScaleValue(), + parent.getSize().height + designer.getVerticalScaleValue()); designer.paintContent(clipg); paintWatermark((Graphics2D) clipg); @@ -435,8 +435,8 @@ public class FormDesignerUI extends ComponentUI { Graphics clipg1; clipg1 = g.create(-designer.getHorizontalScaleValue(), -designer.getVerticalScaleValue(), - (int) ((parent.getSize().width + designer.getArea().getHorizontalValue()) / designer.getScale()), - (int) ((designer.getParaHeight() + designer.getArea().getVerticalValue()) / designer.getScale())); + parent.getSize().width + designer.getHorizontalScaleValue(), + designer.getParaHeight() + designer.getVerticalScaleValue()); designer.paintPara(clipg1); clipg1.dispose();