Browse Source

REPORT-58398 【主题切换】新单元格的默认样式确定

【问题原因】
所有设计器层面交互创建新单元格/浮动元素的场景,新创建的单元格使用当前模版主题
的"默认"样式进行初始化,包括且不限于如下场景:
1. 复制粘贴
2. 新增行列
3. 选中空单元格后输入文本
4. 格式刷

【改动思路】
同上
fix-lag
Starryi 3 years ago
parent
commit
5f17d51064
  1. 45
      designer-base/src/main/java/com/fr/design/mainframe/theme/utils/DefaultThemedTemplateCellElementCase.java
  2. 5
      designer-form/src/test/java/com/fr/design/mainframe/template/info/JFormProcessInfoTest.java
  3. 6
      designer-realize/src/main/java/com/fr/design/actions/cell/AbstractCellElementAction.java
  4. 4
      designer-realize/src/main/java/com/fr/design/actions/cell/NewPresentAction.java
  5. 4
      designer-realize/src/main/java/com/fr/design/actions/columnrow/DSColumnBasicAction.java
  6. 6
      designer-realize/src/main/java/com/fr/design/actions/utils/ReportActionUtils.java
  7. 4
      designer-realize/src/main/java/com/fr/design/dscolumn/DSColumnPane.java
  8. 4
      designer-realize/src/main/java/com/fr/design/mainframe/CellElementPropertyPane.java
  9. 6
      designer-realize/src/main/java/com/fr/design/mainframe/CellWidgetPropertyPane.java
  10. 4
      designer-realize/src/main/java/com/fr/design/mainframe/ElementCasePane.java
  11. 9
      designer-realize/src/main/java/com/fr/design/mainframe/ElementCasePaneAuthorityEditPane.java
  12. 6
      designer-realize/src/main/java/com/fr/design/mainframe/FormatBrushAction.java
  13. 5
      designer-realize/src/main/java/com/fr/design/mainframe/cell/CellElementEditPane.java
  14. 4
      designer-realize/src/main/java/com/fr/design/mainframe/cell/settingpane/AbstractCellAttrPane.java
  15. 4
      designer-realize/src/main/java/com/fr/design/mainframe/cell/settingpane/CellExpandAttrPane.java
  16. 4
      designer-realize/src/main/java/com/fr/design/mainframe/cell/settingpane/CellOtherSetPane.java
  17. 4
      designer-realize/src/main/java/com/fr/design/mainframe/cell/settingpane/CellPresentPane.java
  18. 6
      designer-realize/src/main/java/com/fr/design/mainframe/cell/settingpane/CellStylePane.java
  19. 4
      designer-realize/src/main/java/com/fr/design/present/CellWriteAttrPane.java
  20. 4
      designer-realize/src/main/java/com/fr/design/present/ConditionAttributesGroupPane.java
  21. 4
      designer-realize/src/main/java/com/fr/design/report/ReportStylePane.java
  22. 6
      designer-realize/src/main/java/com/fr/design/style/BorderUtils.java
  23. 4
      designer-realize/src/main/java/com/fr/design/style/StylePane.java
  24. 6
      designer-realize/src/main/java/com/fr/grid/Grid.java
  25. 6
      designer-realize/src/main/java/com/fr/grid/IntelliElements.java
  26. 7
      designer-realize/src/main/java/com/fr/grid/dnd/ElementCasePaneDropTarget.java
  27. 11
      designer-realize/src/main/java/com/fr/grid/selection/CellSelection.java
  28. 4
      designer-realize/src/main/java/com/fr/quickeditor/cellquick/CellFormulaQuickEditor.java
  29. 4
      designer-realize/src/main/java/com/fr/quickeditor/cellquick/CellStringQuickEditor.java
  30. 7
      designer-realize/src/test/java/com.fr/design/mainframe/JFileTest.java

45
designer-base/src/main/java/com/fr/design/mainframe/theme/utils/DefaultThemedTemplateCellElementCase.java

@ -0,0 +1,45 @@
package com.fr.design.mainframe.theme.utils;
import com.fr.base.NameStyle;
import com.fr.base.theme.TemplateTheme;
import com.fr.base.theme.settings.ThemedCellStyle;
import com.fr.design.file.HistoryTemplateListCache;
import com.fr.design.mainframe.JTemplate;
import com.fr.report.cell.DefaultTemplateCellElement;
/**
* @author Starryi
* @version 1.0
* Created by Starryi on 2021/8/31
*/
public class DefaultThemedTemplateCellElementCase {
public static DefaultTemplateCellElement createInstance() {
return themingCellElement(new DefaultTemplateCellElement());
}
public static DefaultTemplateCellElement createInstance(int column, int row) {
return themingCellElement(new DefaultTemplateCellElement(column, row));
}
public static DefaultTemplateCellElement createInstance(int column, int row, Object value) {
return themingCellElement(new DefaultTemplateCellElement(column, row, value));
}
public static DefaultTemplateCellElement createInstance(int column, int row, int columnSpan, int rowSpan, Object value) {
return themingCellElement(new DefaultTemplateCellElement(column, row, columnSpan, rowSpan, value));
}
private static DefaultTemplateCellElement themingCellElement(DefaultTemplateCellElement cellElement) {
JTemplate<?,?> template = HistoryTemplateListCache.getInstance().getCurrentEditingTemplate();
if (template != null) {
TemplateTheme theme = template.getTemplateTheme();
ThemedCellStyle themedCellStyle = theme.getCellStyleList().getDefaultCellStyle4New();
if (themedCellStyle != null) {
NameStyle nameStyle = NameStyle.getPassiveInstance(themedCellStyle.getName(), themedCellStyle.getStyle());
cellElement.setStyle(nameStyle);
}
}
return cellElement;
}
}

5
designer-form/src/test/java/com/fr/design/mainframe/template/info/JFormProcessInfoTest.java

@ -2,6 +2,7 @@ package com.fr.design.mainframe.template.info;
import com.fr.base.background.ColorBackground; import com.fr.base.background.ColorBackground;
import com.fr.chart.chartattr.ChartCollection; import com.fr.chart.chartattr.ChartCollection;
import com.fr.design.mainframe.theme.utils.DefaultThemedTemplateCellElementCase;
import com.fr.form.main.Form; import com.fr.form.main.Form;
import com.fr.form.ui.CardSwitchButton; import com.fr.form.ui.CardSwitchButton;
import com.fr.form.ui.ChartEditor; import com.fr.form.ui.ChartEditor;
@ -41,11 +42,11 @@ public class JFormProcessInfoTest {
boolean result = Reflect.on(jFormProcessInfo).call("hasTestECReport").get(); boolean result = Reflect.on(jFormProcessInfo).call("hasTestECReport").get();
Assert.assertTrue(result); Assert.assertTrue(result);
elementCase.addCellElement(new DefaultTemplateCellElement()); elementCase.addCellElement(DefaultThemedTemplateCellElementCase.createInstance());
result = Reflect.on(jFormProcessInfo).call("hasTestECReport").get(); result = Reflect.on(jFormProcessInfo).call("hasTestECReport").get();
Assert.assertTrue(result); Assert.assertTrue(result);
DefaultTemplateCellElement templateCellElement = new DefaultTemplateCellElement(); DefaultTemplateCellElement templateCellElement = DefaultThemedTemplateCellElementCase.createInstance();
templateCellElement.setValue(123); templateCellElement.setValue(123);
elementCase.addCellElement(templateCellElement); elementCase.addCellElement(templateCellElement);

6
designer-realize/src/main/java/com/fr/design/actions/cell/AbstractCellElementAction.java

@ -6,9 +6,9 @@ import com.fr.design.dialog.BasicPane;
import com.fr.design.dialog.DialogActionAdapter; import com.fr.design.dialog.DialogActionAdapter;
import com.fr.design.mainframe.DesignerContext; import com.fr.design.mainframe.DesignerContext;
import com.fr.design.mainframe.ElementCasePane; import com.fr.design.mainframe.ElementCasePane;
import com.fr.design.mainframe.theme.utils.DefaultThemedTemplateCellElementCase;
import com.fr.grid.GridUtils; import com.fr.grid.GridUtils;
import com.fr.grid.selection.CellSelection; import com.fr.grid.selection.CellSelection;
import com.fr.report.cell.DefaultTemplateCellElement;
import com.fr.report.cell.TemplateCellElement; import com.fr.report.cell.TemplateCellElement;
import com.fr.report.core.SheetUtils; import com.fr.report.core.SheetUtils;
import com.fr.report.elementcase.TemplateElementCase; import com.fr.report.elementcase.TemplateElementCase;
@ -35,7 +35,7 @@ public abstract class AbstractCellElementAction extends CellSelectionAction {
final TemplateElementCase tplEC = ePane.getEditingElementCase(); final TemplateElementCase tplEC = ePane.getEditingElementCase();
TemplateCellElement editCellElement = tplEC.getTemplateCellElement(cs.getColumn(), cs.getRow()); TemplateCellElement editCellElement = tplEC.getTemplateCellElement(cs.getColumn(), cs.getRow());
if (editCellElement == null) { if (editCellElement == null) {
editCellElement = new DefaultTemplateCellElement(cs.getColumn(), cs.getRow()); editCellElement = DefaultThemedTemplateCellElementCase.createInstance(cs.getColumn(), cs.getRow());
tplEC.addCellElement(editCellElement); tplEC.addCellElement(editCellElement);
} }
SheetUtils.calculateDefaultParent(tplEC); SheetUtils.calculateDefaultParent(tplEC);
@ -52,7 +52,7 @@ public abstract class AbstractCellElementAction extends CellSelectionAction {
int row = j + finalCS.getRow(); int row = j + finalCS.getRow();
TemplateCellElement editCellElement = tplEC.getTemplateCellElement(column, row); TemplateCellElement editCellElement = tplEC.getTemplateCellElement(column, row);
if (editCellElement == null) { if (editCellElement == null) {
editCellElement = new DefaultTemplateCellElement(column, row); editCellElement = DefaultThemedTemplateCellElementCase.createInstance(column, row);
tplEC.addCellElement(editCellElement); tplEC.addCellElement(editCellElement);
} }
// alex:不加这一句话会导致跨行跨列的格子被多次update // alex:不加这一句话会导致跨行跨列的格子被多次update

4
designer-realize/src/main/java/com/fr/design/actions/cell/NewPresentAction.java

@ -4,12 +4,12 @@ import com.fr.base.present.Present;
import com.fr.design.actions.PresentCheckBoxAction; import com.fr.design.actions.PresentCheckBoxAction;
import com.fr.design.mainframe.CellElementPropertyPane; import com.fr.design.mainframe.CellElementPropertyPane;
import com.fr.design.mainframe.ElementCasePane; import com.fr.design.mainframe.ElementCasePane;
import com.fr.design.mainframe.theme.utils.DefaultThemedTemplateCellElementCase;
import com.fr.general.ComparatorUtils; import com.fr.general.ComparatorUtils;
import com.fr.general.GeneralUtils; import com.fr.general.GeneralUtils;
import com.fr.grid.selection.CellSelection; import com.fr.grid.selection.CellSelection;
import com.fr.grid.selection.Selection; import com.fr.grid.selection.Selection;
import com.fr.report.cell.DefaultTemplateCellElement;
import com.fr.report.cell.TemplateCellElement; import com.fr.report.cell.TemplateCellElement;
import com.fr.report.elementcase.TemplateElementCase; import com.fr.report.elementcase.TemplateElementCase;
import com.fr.stable.StableUtils; import com.fr.stable.StableUtils;
@ -46,7 +46,7 @@ public class NewPresentAction extends PresentCheckBoxAction {
int row = j + cellRectangle.y; int row = j + cellRectangle.y;
TemplateCellElement cellElement = elementCase.getTemplateCellElement(column, row); TemplateCellElement cellElement = elementCase.getTemplateCellElement(column, row);
if (cellElement == null) { if (cellElement == null) {
cellElement = new DefaultTemplateCellElement(column, row); cellElement = DefaultThemedTemplateCellElementCase.createInstance(column, row);
elementCase.addCellElement(cellElement); elementCase.addCellElement(cellElement);
} else if (cellElement.getPresent() != null) { } else if (cellElement.getPresent() != null) {
cellElement.setPresent(null); cellElement.setPresent(null);

4
designer-realize/src/main/java/com/fr/design/actions/columnrow/DSColumnBasicAction.java

@ -9,8 +9,8 @@ import com.fr.design.dialog.BasicDialog;
import com.fr.design.dialog.DialogActionAdapter; import com.fr.design.dialog.DialogActionAdapter;
import com.fr.design.mainframe.ElementCasePane; import com.fr.design.mainframe.ElementCasePane;
import com.fr.design.mainframe.theme.utils.DefaultThemedTemplateCellElementCase;
import com.fr.grid.selection.CellSelection; import com.fr.grid.selection.CellSelection;
import com.fr.report.cell.DefaultTemplateCellElement;
import com.fr.report.cell.TemplateCellElement; import com.fr.report.cell.TemplateCellElement;
import com.fr.report.core.SheetUtils; import com.fr.report.core.SheetUtils;
import com.fr.report.elementcase.TemplateElementCase; import com.fr.report.elementcase.TemplateElementCase;
@ -61,7 +61,7 @@ public class DSColumnBasicAction extends CellSelectionAction {
editCellElement = report.getTemplateCellElement(column, row); editCellElement = report.getTemplateCellElement(column, row);
if (editCellElement == null) { if (editCellElement == null) {
editCellElement = new DefaultTemplateCellElement(column, row); editCellElement = DefaultThemedTemplateCellElementCase.createInstance(column, row);
report.addCellElement(editCellElement); report.addCellElement(editCellElement);
} }
// update cell attributes // update cell attributes

6
designer-realize/src/main/java/com/fr/design/actions/utils/ReportActionUtils.java

@ -4,12 +4,12 @@ import com.fr.base.Style;
import com.fr.design.actions.cell.style.StyleActionInterface; import com.fr.design.actions.cell.style.StyleActionInterface;
import com.fr.design.mainframe.DesignOperationEvent; import com.fr.design.mainframe.DesignOperationEvent;
import com.fr.design.mainframe.ElementCasePane; import com.fr.design.mainframe.ElementCasePane;
import com.fr.design.mainframe.theme.utils.DefaultThemedTemplateCellElementCase;
import com.fr.event.EventDispatcher; import com.fr.event.EventDispatcher;
import com.fr.grid.selection.CellSelection; import com.fr.grid.selection.CellSelection;
import com.fr.grid.selection.FloatSelection; import com.fr.grid.selection.FloatSelection;
import com.fr.grid.selection.Selection; import com.fr.grid.selection.Selection;
import com.fr.report.cell.CellElement; import com.fr.report.cell.CellElement;
import com.fr.report.cell.DefaultTemplateCellElement;
import com.fr.report.cell.FloatElement; import com.fr.report.cell.FloatElement;
import com.fr.report.cell.TemplateCellElement; import com.fr.report.cell.TemplateCellElement;
import com.fr.report.elementcase.ElementCase; import com.fr.report.elementcase.ElementCase;
@ -42,7 +42,7 @@ public class ReportActionUtils {
TemplateElementCase report = reportPane.getEditingElementCase(); TemplateElementCase report = reportPane.getEditingElementCase();
TemplateCellElement editCellElement = report.getTemplateCellElement(((CellSelection) sel).getColumn(), ((CellSelection) sel).getRow()); TemplateCellElement editCellElement = report.getTemplateCellElement(((CellSelection) sel).getColumn(), ((CellSelection) sel).getRow());
if (editCellElement == null) { if (editCellElement == null) {
editCellElement = new DefaultTemplateCellElement(((CellSelection) sel).getColumn(), ((CellSelection) sel).getRow()); editCellElement = DefaultThemedTemplateCellElementCase.createInstance(((CellSelection) sel).getColumn(), ((CellSelection) sel).getRow());
report.addCellElement(editCellElement); report.addCellElement(editCellElement);
} }
@ -75,7 +75,7 @@ public class ReportActionUtils {
TemplateCellElement editCellElement = report.getTemplateCellElement(column, row); TemplateCellElement editCellElement = report.getTemplateCellElement(column, row);
if (editCellElement == null) { if (editCellElement == null) {
editCellElement = new DefaultTemplateCellElement(column, row); editCellElement = DefaultThemedTemplateCellElementCase.createInstance(column, row);
report.addCellElement(editCellElement); report.addCellElement(editCellElement);
} else { } else {
// 对于合并的格子,我们不多次计算的Style. // 对于合并的格子,我们不多次计算的Style.

4
designer-realize/src/main/java/com/fr/design/dscolumn/DSColumnPane.java

@ -5,9 +5,9 @@ import com.fr.design.dialog.BasicPane;
import com.fr.design.gui.frpane.UITabbedPane; import com.fr.design.gui.frpane.UITabbedPane;
import com.fr.design.layout.FRGUIPaneFactory; import com.fr.design.layout.FRGUIPaneFactory;
import com.fr.design.mainframe.ElementCasePane; import com.fr.design.mainframe.ElementCasePane;
import com.fr.design.mainframe.theme.utils.DefaultThemedTemplateCellElementCase;
import com.fr.log.FineLoggerFactory; import com.fr.log.FineLoggerFactory;
import com.fr.report.cell.CellElement; import com.fr.report.cell.CellElement;
import com.fr.report.cell.DefaultTemplateCellElement;
import com.fr.report.cell.TemplateCellElement; import com.fr.report.cell.TemplateCellElement;
import javax.swing.JPanel; import javax.swing.JPanel;
@ -127,7 +127,7 @@ public class DSColumnPane extends BasicPane {
if (tds == null || cellElement == null) { if (tds == null || cellElement == null) {
// _denny: 我不认为这种情况应该出现,以防万一 // _denny: 我不认为这种情况应该出现,以防万一
this.cellElement = new DefaultTemplateCellElement(); this.cellElement = DefaultThemedTemplateCellElementCase.createInstance();
return; return;
} }
// _denny: 这边需要克隆一下,因为在设置时,可能改变字段cellElement,但改变真实值是不被期望的 // _denny: 这边需要克隆一下,因为在设置时,可能改变字段cellElement,但改变真实值是不被期望的

4
designer-realize/src/main/java/com/fr/design/mainframe/CellElementPropertyPane.java

@ -15,6 +15,7 @@ import com.fr.design.gui.frpane.UITitlePanel;
import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.ilable.UILabel;
import com.fr.design.gui.itabpane.TitleChangeListener; import com.fr.design.gui.itabpane.TitleChangeListener;
import com.fr.design.mainframe.cell.CellElementEditPane; import com.fr.design.mainframe.cell.CellElementEditPane;
import com.fr.design.mainframe.theme.utils.DefaultThemedTemplateCellElementCase;
import com.fr.general.GeneralContext; import com.fr.general.GeneralContext;
import com.fr.grid.selection.CellSelection; import com.fr.grid.selection.CellSelection;
@ -25,7 +26,6 @@ import com.fr.plugin.injectable.PluginModule;
import com.fr.plugin.manage.PluginFilter; import com.fr.plugin.manage.PluginFilter;
import com.fr.plugin.observer.PluginEvent; import com.fr.plugin.observer.PluginEvent;
import com.fr.plugin.observer.PluginEventListener; import com.fr.plugin.observer.PluginEventListener;
import com.fr.report.cell.DefaultTemplateCellElement;
import com.fr.report.cell.Elem; import com.fr.report.cell.Elem;
import com.fr.report.elementcase.TemplateElementCase; import com.fr.report.elementcase.TemplateElementCase;
@ -138,7 +138,7 @@ public class CellElementPropertyPane extends DockingView {
} }
if (element == null) { if (element == null) {
element = new DefaultTemplateCellElement(0, 0); element = DefaultThemedTemplateCellElementCase.createInstance(0, 0);
} }
return element; return element;
} }

6
designer-realize/src/main/java/com/fr/design/mainframe/CellWidgetPropertyPane.java

@ -3,6 +3,7 @@ package com.fr.design.mainframe;
import com.fr.design.actions.utils.ReportActionUtils; import com.fr.design.actions.utils.ReportActionUtils;
import com.fr.design.dialog.BasicPane; import com.fr.design.dialog.BasicPane;
import com.fr.design.layout.FRGUIPaneFactory; import com.fr.design.layout.FRGUIPaneFactory;
import com.fr.design.mainframe.theme.utils.DefaultThemedTemplateCellElementCase;
import com.fr.design.widget.WidgetPane; import com.fr.design.widget.WidgetPane;
import com.fr.form.ui.NoneWidget; import com.fr.form.ui.NoneWidget;
import com.fr.form.ui.Widget; import com.fr.form.ui.Widget;
@ -11,7 +12,6 @@ import com.fr.grid.selection.Selection;
import com.fr.log.FineLoggerFactory; import com.fr.log.FineLoggerFactory;
import com.fr.privilege.finegrain.WidgetPrivilegeControl; import com.fr.privilege.finegrain.WidgetPrivilegeControl;
import com.fr.report.cell.CellElement; import com.fr.report.cell.CellElement;
import com.fr.report.cell.DefaultTemplateCellElement;
import com.fr.report.cell.TemplateCellElement; import com.fr.report.cell.TemplateCellElement;
import com.fr.report.elementcase.TemplateElementCase; import com.fr.report.elementcase.TemplateElementCase;
@ -59,7 +59,7 @@ public class CellWidgetPropertyPane extends BasicPane {
public void populate(TemplateCellElement cellElement) { public void populate(TemplateCellElement cellElement) {
if (cellElement == null) {// 利用默认的CellElement. if (cellElement == null) {// 利用默认的CellElement.
cellElement = new DefaultTemplateCellElement(0, 0, null); cellElement = DefaultThemedTemplateCellElementCase.createInstance(0, 0, null);
} }
Widget cellWidget = cellElement.getWidget(); Widget cellWidget = cellElement.getWidget();
@ -88,7 +88,7 @@ public class CellWidgetPropertyPane extends BasicPane {
final TemplateElementCase tplEC = ePane.getEditingElementCase(); final TemplateElementCase tplEC = ePane.getEditingElementCase();
TemplateCellElement editCellElement = tplEC.getTemplateCellElement(cs.getColumn(), cs.getRow()); TemplateCellElement editCellElement = tplEC.getTemplateCellElement(cs.getColumn(), cs.getRow());
if (editCellElement == null) { if (editCellElement == null) {
editCellElement = new DefaultTemplateCellElement(cs.getColumn(), cs.getRow()); editCellElement = DefaultThemedTemplateCellElementCase.createInstance(cs.getColumn(), cs.getRow());
} }
this.cellElement = editCellElement; this.cellElement = editCellElement;
this.populate(editCellElement); this.populate(editCellElement);

4
designer-realize/src/main/java/com/fr/design/mainframe/ElementCasePane.java

@ -72,6 +72,7 @@ import com.fr.design.fun.ElementUIProvider;
import com.fr.design.gui.ibutton.UIButton; import com.fr.design.gui.ibutton.UIButton;
import com.fr.design.gui.imenu.UIPopupMenu; import com.fr.design.gui.imenu.UIPopupMenu;
import com.fr.design.mainframe.cell.QuickEditorRegion; import com.fr.design.mainframe.cell.QuickEditorRegion;
import com.fr.design.mainframe.theme.utils.DefaultThemedTemplateCellElementCase;
import com.fr.design.menu.KeySetUtils; import com.fr.design.menu.KeySetUtils;
import com.fr.design.menu.MenuDef; import com.fr.design.menu.MenuDef;
import com.fr.design.menu.NameSeparator; import com.fr.design.menu.NameSeparator;
@ -96,7 +97,6 @@ import com.fr.page.PageAttributeGetter;
import com.fr.page.ReportPageAttrProvider; import com.fr.page.ReportPageAttrProvider;
import com.fr.poly.creator.PolyElementCasePane; import com.fr.poly.creator.PolyElementCasePane;
import com.fr.report.ReportHelper; import com.fr.report.ReportHelper;
import com.fr.report.cell.DefaultTemplateCellElement;
import com.fr.report.cell.FloatElement; import com.fr.report.cell.FloatElement;
import com.fr.report.cell.TemplateCellElement; import com.fr.report.cell.TemplateCellElement;
import com.fr.report.cell.cellattr.core.RichText; import com.fr.report.cell.cellattr.core.RichText;
@ -569,7 +569,7 @@ public abstract class ElementCasePane<T extends TemplateElementCase> extends Tar
int row = j + cellRectangle.y; int row = j + cellRectangle.y;
TemplateCellElement cellElement = elementCase.getTemplateCellElement(column, row); TemplateCellElement cellElement = elementCase.getTemplateCellElement(column, row);
if (cellElement == null) { if (cellElement == null) {
cellElement = new DefaultTemplateCellElement(column, row); cellElement = DefaultThemedTemplateCellElementCase.createInstance(column, row);
elementCase.addCellElement(cellElement); elementCase.addCellElement(cellElement);
} }
Style style = cellElement.getStyle(); Style style = cellElement.getStyle();

9
designer-realize/src/main/java/com/fr/design/mainframe/ElementCasePaneAuthorityEditPane.java

@ -11,6 +11,7 @@ import com.fr.design.gui.ilable.UILabel;
import com.fr.design.gui.itree.refreshabletree.ExpandMutableTreeNode; import com.fr.design.gui.itree.refreshabletree.ExpandMutableTreeNode;
import com.fr.design.layout.TableLayout; import com.fr.design.layout.TableLayout;
import com.fr.design.layout.TableLayoutHelper; import com.fr.design.layout.TableLayoutHelper;
import com.fr.design.mainframe.theme.utils.DefaultThemedTemplateCellElementCase;
import com.fr.design.mainframe.toolbar.AuthorityEditToolBarComponent; import com.fr.design.mainframe.toolbar.AuthorityEditToolBarComponent;
import com.fr.design.roleAuthority.ReportAndFSManagePane; import com.fr.design.roleAuthority.ReportAndFSManagePane;
import com.fr.design.roleAuthority.RolesAlreadyEditedPane; import com.fr.design.roleAuthority.RolesAlreadyEditedPane;
@ -291,7 +292,7 @@ public class ElementCasePaneAuthorityEditPane extends AuthorityEditPane {
int row = j + cellRectangle.y; int row = j + cellRectangle.y;
TemplateCellElement editCellElement = elementCase.getTemplateCellElement(column, row); TemplateCellElement editCellElement = elementCase.getTemplateCellElement(column, row);
if (editCellElement == null) { if (editCellElement == null) {
editCellElement = new DefaultTemplateCellElement(column, row); editCellElement = DefaultThemedTemplateCellElementCase.createInstance(column, row);
elementCase.addCellElement(editCellElement); elementCase.addCellElement(editCellElement);
} else { } else {
// 对于合并的格子,我们不多次计算的权限. // 对于合并的格子,我们不多次计算的权限.
@ -371,7 +372,7 @@ public class ElementCasePaneAuthorityEditPane extends AuthorityEditPane {
Rectangle cellRectangle = cellSelection.getCellRectangle(0); Rectangle cellRectangle = cellSelection.getCellRectangle(0);
DefaultTemplateCellElement cellElement = (DefaultTemplateCellElement) elementCase.getCellElement(cellRectangle.x, cellRectangle.y); DefaultTemplateCellElement cellElement = (DefaultTemplateCellElement) elementCase.getCellElement(cellRectangle.x, cellRectangle.y);
if (cellElement == null) { if (cellElement == null) {
cellElement = new DefaultTemplateCellElement(cellRectangle.x, cellRectangle.y); cellElement = DefaultThemedTemplateCellElementCase.createInstance(cellRectangle.x, cellRectangle.y);
} }
boolean firstCellDoneaAuthority = cellElement.isDoneAuthority( boolean firstCellDoneaAuthority = cellElement.isDoneAuthority(
ReportAndFSManagePane.getInstance().getRoleTree().getSelectedRoleName()); ReportAndFSManagePane.getInstance().getRoleTree().getSelectedRoleName());
@ -507,7 +508,7 @@ public class ElementCasePaneAuthorityEditPane extends AuthorityEditPane {
int row = j + cellRectangle.y; int row = j + cellRectangle.y;
DefaultTemplateCellElement cellElement = (DefaultTemplateCellElement) elementCase.getCellElement(column, row); DefaultTemplateCellElement cellElement = (DefaultTemplateCellElement) elementCase.getCellElement(column, row);
if (cellElement == null) { if (cellElement == null) {
cellElement = new DefaultTemplateCellElement(cellSelection.getColumn(), cellSelection.getRow()); cellElement = DefaultThemedTemplateCellElementCase.createInstance(cellSelection.getColumn(), cellSelection.getRow());
} }
if (cellElement.getCellWidgetAttr() == null) { if (cellElement.getCellWidgetAttr() == null) {
isAllHasWidget = false; isAllHasWidget = false;
@ -562,7 +563,7 @@ public class ElementCasePaneAuthorityEditPane extends AuthorityEditPane {
final TemplateElementCase elementCase = elementCasePane.getEditingElementCase(); final TemplateElementCase elementCase = elementCasePane.getEditingElementCase();
DefaultTemplateCellElement cellElement = (DefaultTemplateCellElement) elementCase.getCellElement(cellSelection.getColumn(), cellSelection.getRow()); DefaultTemplateCellElement cellElement = (DefaultTemplateCellElement) elementCase.getCellElement(cellSelection.getColumn(), cellSelection.getRow());
if (cellElement == null) { if (cellElement == null) {
cellElement = new DefaultTemplateCellElement(cellSelection.getColumn(), cellSelection.getRow()); cellElement = DefaultThemedTemplateCellElementCase.createInstance(cellSelection.getColumn(), cellSelection.getRow());
} }
//单元格带控件 //单元格带控件
if (cellElement.getCellWidgetAttr() != null) { if (cellElement.getCellWidgetAttr() != null) {

6
designer-realize/src/main/java/com/fr/design/mainframe/FormatBrushAction.java

@ -4,9 +4,9 @@ import com.fr.base.Style;
import com.fr.design.actions.ElementCaseAction; import com.fr.design.actions.ElementCaseAction;
import com.fr.design.mainframe.theme.utils.DefaultThemedTemplateCellElementCase;
import com.fr.grid.selection.CellSelection; import com.fr.grid.selection.CellSelection;
import com.fr.grid.selection.Selection; import com.fr.grid.selection.Selection;
import com.fr.report.cell.DefaultTemplateCellElement;
import com.fr.report.cell.TemplateCellElement; import com.fr.report.cell.TemplateCellElement;
import com.fr.report.elementcase.TemplateElementCase; import com.fr.report.elementcase.TemplateElementCase;
@ -129,7 +129,7 @@ public class FormatBrushAction extends ElementCaseAction {
int row = j + cs.getRow(); int row = j + cs.getRow();
TemplateCellElement cellElement = elementCase.getTemplateCellElement(column, row); TemplateCellElement cellElement = elementCase.getTemplateCellElement(column, row);
if (cellElement == null) { if (cellElement == null) {
cellElement = new DefaultTemplateCellElement(column, row); cellElement = DefaultThemedTemplateCellElementCase.createInstance(column, row);
elementCase.addCellElement(cellElement); elementCase.addCellElement(cellElement);
} }
cellElement.setStyle(referencedStyle[i % columnSpan][j % rowSpan]); cellElement.setStyle(referencedStyle[i % columnSpan][j % rowSpan]);
@ -152,7 +152,7 @@ public class FormatBrushAction extends ElementCaseAction {
int row = j + cellRectangle.y; int row = j + cellRectangle.y;
TemplateCellElement cellElement = elementCase.getTemplateCellElement(column, row); TemplateCellElement cellElement = elementCase.getTemplateCellElement(column, row);
if (cellElement == null) { if (cellElement == null) {
cellElement = new DefaultTemplateCellElement(column, row); cellElement = DefaultThemedTemplateCellElementCase.createInstance(column, row);
elementCase.addCellElement(cellElement); elementCase.addCellElement(cellElement);
} }
Style style = cellElement.getStyle(); Style style = cellElement.getStyle();

5
designer-realize/src/main/java/com/fr/design/mainframe/cell/CellElementEditPane.java

@ -8,13 +8,12 @@ import com.fr.design.gui.ibutton.UIHeadGroup;
import com.fr.design.gui.itabpane.TitleChangeListener; import com.fr.design.gui.itabpane.TitleChangeListener;
import com.fr.design.mainframe.ElementCasePane; import com.fr.design.mainframe.ElementCasePane;
import com.fr.design.mainframe.cell.settingpane.*; import com.fr.design.mainframe.cell.settingpane.*;
import com.fr.design.mainframe.theme.utils.DefaultThemedTemplateCellElementCase;
import com.fr.design.utils.DesignUtils; import com.fr.design.utils.DesignUtils;
import com.fr.general.ComparatorUtils; import com.fr.general.ComparatorUtils;
import com.fr.grid.selection.CellSelection; import com.fr.grid.selection.CellSelection;
import com.fr.grid.selection.Selection; import com.fr.grid.selection.Selection;
import com.fr.report.cell.CellElement; import com.fr.report.cell.CellElement;
import com.fr.report.cell.DefaultTemplateCellElement;
import com.fr.report.cell.TemplateCellElement; import com.fr.report.cell.TemplateCellElement;
import com.fr.report.elementcase.TemplateElementCase; import com.fr.report.elementcase.TemplateElementCase;
@ -112,7 +111,7 @@ public class CellElementEditPane extends BasicPane {
CellElement cellElement = elementCase.getCellElement(cs.getColumn(), cs.getRow()); CellElement cellElement = elementCase.getCellElement(cs.getColumn(), cs.getRow());
if (cellElement == null) { if (cellElement == null) {
cellElement = new DefaultTemplateCellElement(cs.getColumn(), cs.getRow()); cellElement = DefaultThemedTemplateCellElementCase.createInstance(cs.getColumn(), cs.getRow());
//默认选中的是A1单元格,所以若是A1单元格没有加到列表时要加上,否则在聚合报表时会出错 //默认选中的是A1单元格,所以若是A1单元格没有加到列表时要加上,否则在聚合报表时会出错
if (cs.isSelectedOneCell(elementCasePane) && (cs.getColumn() + cs.getRow() == 0)) { if (cs.isSelectedOneCell(elementCasePane) && (cs.getColumn() + cs.getRow() == 0)) {
elementCase.addCellElement((TemplateCellElement) cellElement); elementCase.addCellElement((TemplateCellElement) cellElement);

4
designer-realize/src/main/java/com/fr/design/mainframe/cell/settingpane/AbstractCellAttrPane.java

@ -2,9 +2,9 @@ package com.fr.design.mainframe.cell.settingpane;
import com.fr.design.mainframe.AbstractAttrPane; import com.fr.design.mainframe.AbstractAttrPane;
import com.fr.design.mainframe.ElementCasePane; import com.fr.design.mainframe.ElementCasePane;
import com.fr.design.mainframe.theme.utils.DefaultThemedTemplateCellElementCase;
import com.fr.grid.selection.CellSelection; import com.fr.grid.selection.CellSelection;
import com.fr.grid.selection.FloatSelection; import com.fr.grid.selection.FloatSelection;
import com.fr.report.cell.DefaultTemplateCellElement;
import com.fr.report.cell.TemplateCellElement; import com.fr.report.cell.TemplateCellElement;
import com.fr.report.elementcase.TemplateElementCase; import com.fr.report.elementcase.TemplateElementCase;
@ -52,7 +52,7 @@ public abstract class AbstractCellAttrPane extends AbstractAttrPane {
TemplateElementCase elementCase = elementCasePane.getEditingElementCase(); TemplateElementCase elementCase = elementCasePane.getEditingElementCase();
TemplateCellElement cellElement = elementCase.getTemplateCellElement(cs.getColumn(), cs.getRow()); TemplateCellElement cellElement = elementCase.getTemplateCellElement(cs.getColumn(), cs.getRow());
if (cellElement == null) { if (cellElement == null) {
cellElement = new DefaultTemplateCellElement(cs.getColumn(), cs.getRow()); cellElement = DefaultThemedTemplateCellElementCase.createInstance(cs.getColumn(), cs.getRow());
} }
this.cellElement = cellElement; this.cellElement = cellElement;
elementCase.addCellElement(this.cellElement); elementCase.addCellElement(this.cellElement);

4
designer-realize/src/main/java/com/fr/design/mainframe/cell/settingpane/CellExpandAttrPane.java

@ -12,9 +12,9 @@ import com.fr.design.gui.ilable.UILabel;
import com.fr.design.i18n.Toolkit; import com.fr.design.i18n.Toolkit;
import com.fr.design.layout.TableLayout; import com.fr.design.layout.TableLayout;
import com.fr.design.layout.TableLayoutHelper; import com.fr.design.layout.TableLayoutHelper;
import com.fr.design.mainframe.theme.utils.DefaultThemedTemplateCellElementCase;
import com.fr.general.ComparatorUtils; import com.fr.general.ComparatorUtils;
import com.fr.general.IOUtils; import com.fr.general.IOUtils;
import com.fr.report.cell.DefaultTemplateCellElement;
import com.fr.report.cell.TemplateCellElement; import com.fr.report.cell.TemplateCellElement;
import com.fr.report.cell.cellattr.CellExpandAttr; import com.fr.report.cell.cellattr.CellExpandAttr;
import com.fr.report.elementcase.TemplateElementCase; import com.fr.report.elementcase.TemplateElementCase;
@ -239,7 +239,7 @@ public class CellExpandAttrPane extends AbstractCellAttrPane {
int row = j + cellRectangle.y; int row = j + cellRectangle.y;
TemplateCellElement cellElement = elementCase.getTemplateCellElement(column, row); TemplateCellElement cellElement = elementCase.getTemplateCellElement(column, row);
if (cellElement == null) { if (cellElement == null) {
cellElement = new DefaultTemplateCellElement(column, row); cellElement = DefaultThemedTemplateCellElementCase.createInstance(column, row);
elementCase.addCellElement(cellElement); elementCase.addCellElement(cellElement);
} }
updateBean(cellElement); updateBean(cellElement);

4
designer-realize/src/main/java/com/fr/design/mainframe/cell/settingpane/CellOtherSetPane.java

@ -17,10 +17,10 @@ import com.fr.design.layout.TableLayoutHelper;
import com.fr.design.layout.VerticalFlowLayout; import com.fr.design.layout.VerticalFlowLayout;
import com.fr.design.mainframe.EastRegionContainerPane; import com.fr.design.mainframe.EastRegionContainerPane;
import com.fr.design.mainframe.JTemplate; import com.fr.design.mainframe.JTemplate;
import com.fr.design.mainframe.theme.utils.DefaultThemedTemplateCellElementCase;
import com.fr.design.utils.gui.UIComponentUtils; import com.fr.design.utils.gui.UIComponentUtils;
import com.fr.design.widget.FRWidgetFactory; import com.fr.design.widget.FRWidgetFactory;
import com.fr.general.ComparatorUtils; import com.fr.general.ComparatorUtils;
import com.fr.report.cell.DefaultTemplateCellElement;
import com.fr.report.cell.TemplateCellElement; import com.fr.report.cell.TemplateCellElement;
import com.fr.report.cell.cellattr.CellGUIAttr; import com.fr.report.cell.cellattr.CellGUIAttr;
import com.fr.report.cell.cellattr.CellInsertPolicyAttr; import com.fr.report.cell.cellattr.CellInsertPolicyAttr;
@ -570,7 +570,7 @@ public class CellOtherSetPane extends AbstractCellAttrPane {
int row = j + cellRectangle.y; int row = j + cellRectangle.y;
TemplateCellElement cellElement = elementCase.getTemplateCellElement(column, row); TemplateCellElement cellElement = elementCase.getTemplateCellElement(column, row);
if (cellElement == null) { if (cellElement == null) {
cellElement = new DefaultTemplateCellElement(column, row); cellElement = DefaultThemedTemplateCellElementCase.createInstance(column, row);
elementCase.addCellElement(cellElement); elementCase.addCellElement(cellElement);
} }
updateBean(cellElement); updateBean(cellElement);

4
designer-realize/src/main/java/com/fr/design/mainframe/cell/settingpane/CellPresentPane.java

@ -2,9 +2,9 @@ package com.fr.design.mainframe.cell.settingpane;
import com.fr.base.present.Present; import com.fr.base.present.Present;
import com.fr.design.constants.UIConstants; import com.fr.design.constants.UIConstants;
import com.fr.design.mainframe.theme.utils.DefaultThemedTemplateCellElementCase;
import com.fr.design.present.PresentPane; import com.fr.design.present.PresentPane;
import com.fr.report.cell.DefaultTemplateCellElement;
import com.fr.report.cell.TemplateCellElement; import com.fr.report.cell.TemplateCellElement;
import com.fr.report.elementcase.TemplateElementCase; import com.fr.report.elementcase.TemplateElementCase;
@ -67,7 +67,7 @@ public class CellPresentPane extends AbstractCellAttrPane {
int row = j + cellRectangle.y; int row = j + cellRectangle.y;
TemplateCellElement cellElement = elementCase.getTemplateCellElement(column, row); TemplateCellElement cellElement = elementCase.getTemplateCellElement(column, row);
if (cellElement == null) { if (cellElement == null) {
cellElement = new DefaultTemplateCellElement(column, row); cellElement = DefaultThemedTemplateCellElementCase.createInstance(column, row);
elementCase.addCellElement(cellElement); elementCase.addCellElement(cellElement);
} }
cellElement.setPresent(present); cellElement.setPresent(present);

6
designer-realize/src/main/java/com/fr/design/mainframe/cell/settingpane/CellStylePane.java

@ -4,10 +4,10 @@ import com.fr.base.Style;
import com.fr.design.actions.utils.ReportActionUtils; import com.fr.design.actions.utils.ReportActionUtils;
import com.fr.design.constants.UIConstants; import com.fr.design.constants.UIConstants;
import com.fr.design.mainframe.cell.settingpane.style.StylePane; import com.fr.design.mainframe.cell.settingpane.style.StylePane;
import com.fr.design.mainframe.theme.utils.DefaultThemedTemplateCellElementCase;
import com.fr.design.style.BorderUtils; import com.fr.design.style.BorderUtils;
import com.fr.design.utils.gui.GUICoreUtils; import com.fr.design.utils.gui.GUICoreUtils;
import com.fr.report.cell.DefaultTemplateCellElement;
import com.fr.report.cell.TemplateCellElement; import com.fr.report.cell.TemplateCellElement;
import com.fr.report.elementcase.TemplateElementCase; import com.fr.report.elementcase.TemplateElementCase;
@ -82,7 +82,7 @@ public class CellStylePane extends AbstractCellAttrPane {
int row = j + cellRectangle.y; int row = j + cellRectangle.y;
TemplateCellElement cellElement = elementCase.getTemplateCellElement(column, row); TemplateCellElement cellElement = elementCase.getTemplateCellElement(column, row);
if (cellElement == null) { if (cellElement == null) {
cellElement = new DefaultTemplateCellElement(column, row); cellElement = DefaultThemedTemplateCellElementCase.createInstance(column, row);
elementCase.addCellElement(cellElement); elementCase.addCellElement(cellElement);
} }
cellElement.setStyle(s); cellElement.setStyle(s);
@ -100,7 +100,7 @@ public class CellStylePane extends AbstractCellAttrPane {
int row = j + cellRectangle.y; int row = j + cellRectangle.y;
TemplateCellElement cellElement = elementCase.getTemplateCellElement(column, row); TemplateCellElement cellElement = elementCase.getTemplateCellElement(column, row);
if (cellElement == null) { if (cellElement == null) {
cellElement = new DefaultTemplateCellElement(column, row); cellElement = DefaultThemedTemplateCellElementCase.createInstance(column, row);
elementCase.addCellElement(cellElement); elementCase.addCellElement(cellElement);
} }
Style style = cellElement.getStyle(); Style style = cellElement.getStyle();

4
designer-realize/src/main/java/com/fr/design/present/CellWriteAttrPane.java

@ -6,6 +6,7 @@ import com.fr.design.dialog.DialogActionAdapter;
import com.fr.design.layout.FRGUIPaneFactory; import com.fr.design.layout.FRGUIPaneFactory;
import com.fr.design.mainframe.DesignerContext; import com.fr.design.mainframe.DesignerContext;
import com.fr.design.mainframe.ElementCasePane; import com.fr.design.mainframe.ElementCasePane;
import com.fr.design.mainframe.theme.utils.DefaultThemedTemplateCellElementCase;
import com.fr.design.widget.WidgetPane; import com.fr.design.widget.WidgetPane;
import com.fr.form.ui.NoneWidget; import com.fr.form.ui.NoneWidget;
import com.fr.form.ui.Widget; import com.fr.form.ui.Widget;
@ -13,7 +14,6 @@ import com.fr.grid.selection.CellSelection;
import com.fr.grid.selection.Selection; import com.fr.grid.selection.Selection;
import com.fr.log.FineLoggerFactory; import com.fr.log.FineLoggerFactory;
import com.fr.privilege.finegrain.WidgetPrivilegeControl; import com.fr.privilege.finegrain.WidgetPrivilegeControl;
import com.fr.report.cell.DefaultTemplateCellElement;
import com.fr.report.cell.TemplateCellElement; import com.fr.report.cell.TemplateCellElement;
import com.fr.report.elementcase.TemplateElementCase; import com.fr.report.elementcase.TemplateElementCase;
@ -67,7 +67,7 @@ public class CellWriteAttrPane extends BasicPane {
public void populate(TemplateCellElement cellElement) { public void populate(TemplateCellElement cellElement) {
if (cellElement == null) {// 利用默认的CellElement. if (cellElement == null) {// 利用默认的CellElement.
cellElement = new DefaultTemplateCellElement(0, 0, null); cellElement = DefaultThemedTemplateCellElementCase.createInstance(0, 0, null);
} }
Widget cellWidget = cellElement.getWidget(); Widget cellWidget = cellElement.getWidget();

4
designer-realize/src/main/java/com/fr/design/present/ConditionAttributesGroupPane.java

@ -7,12 +7,12 @@ import com.fr.design.gui.controlpane.NameableCreator;
import com.fr.design.gui.controlpane.UIListControlPane; import com.fr.design.gui.controlpane.UIListControlPane;
import com.fr.design.mainframe.DesignerContext; import com.fr.design.mainframe.DesignerContext;
import com.fr.design.mainframe.ElementCasePane; import com.fr.design.mainframe.ElementCasePane;
import com.fr.design.mainframe.theme.utils.DefaultThemedTemplateCellElementCase;
import com.fr.general.NameObject; import com.fr.general.NameObject;
import com.fr.grid.selection.CellSelection; import com.fr.grid.selection.CellSelection;
import com.fr.grid.selection.Selection; import com.fr.grid.selection.Selection;
import com.fr.log.FineLoggerFactory; import com.fr.log.FineLoggerFactory;
import com.fr.report.cell.CellElement; import com.fr.report.cell.CellElement;
import com.fr.report.cell.DefaultTemplateCellElement;
import com.fr.report.cell.TemplateCellElement; import com.fr.report.cell.TemplateCellElement;
import com.fr.report.cell.cellattr.highlight.DefaultHighlight; import com.fr.report.cell.cellattr.highlight.DefaultHighlight;
import com.fr.report.cell.cellattr.highlight.Highlight; import com.fr.report.cell.cellattr.highlight.Highlight;
@ -82,7 +82,7 @@ public class ConditionAttributesGroupPane extends UIListControlPane {
final TemplateElementCase tplEC = ePane.getEditingElementCase(); final TemplateElementCase tplEC = ePane.getEditingElementCase();
editCellElement = tplEC.getTemplateCellElement(cs.getColumn(), cs.getRow()); editCellElement = tplEC.getTemplateCellElement(cs.getColumn(), cs.getRow());
if (editCellElement == null) { if (editCellElement == null) {
editCellElement = new DefaultTemplateCellElement(cs.getColumn(), cs.getRow()); editCellElement = DefaultThemedTemplateCellElementCase.createInstance(cs.getColumn(), cs.getRow());
} }
SheetUtils.calculateDefaultParent(tplEC); // 不知道这行代码的作用,怕去掉之后会出问题,先放在这里 SheetUtils.calculateDefaultParent(tplEC); // 不知道这行代码的作用,怕去掉之后会出问题,先放在这里

4
designer-realize/src/main/java/com/fr/design/report/ReportStylePane.java

@ -20,6 +20,7 @@ import com.fr.design.layout.TableLayoutHelper;
import com.fr.design.mainframe.ElementCasePane; import com.fr.design.mainframe.ElementCasePane;
import com.fr.design.mainframe.cell.settingpane.style.ThemedCellStyleListPane; import com.fr.design.mainframe.cell.settingpane.style.ThemedCellStyleListPane;
import com.fr.design.mainframe.theme.ui.NoEdgeTitleBorder; import com.fr.design.mainframe.theme.ui.NoEdgeTitleBorder;
import com.fr.design.mainframe.theme.utils.DefaultThemedTemplateCellElementCase;
import com.fr.design.style.AlignmentPane; import com.fr.design.style.AlignmentPane;
import com.fr.design.style.BorderPane; import com.fr.design.style.BorderPane;
import com.fr.design.style.BorderUtils; import com.fr.design.style.BorderUtils;
@ -33,7 +34,6 @@ import com.fr.grid.selection.Selection;
import com.fr.log.FineLoggerFactory; import com.fr.log.FineLoggerFactory;
import com.fr.plugin.solution.sandbox.collection.PluginSandboxCollections; import com.fr.plugin.solution.sandbox.collection.PluginSandboxCollections;
import com.fr.report.cell.CellElement; import com.fr.report.cell.CellElement;
import com.fr.report.cell.DefaultTemplateCellElement;
import com.fr.report.cell.FloatElement; import com.fr.report.cell.FloatElement;
import com.fr.report.cell.TemplateCellElement; import com.fr.report.cell.TemplateCellElement;
import com.fr.report.elementcase.ElementCase; import com.fr.report.elementcase.ElementCase;
@ -282,7 +282,7 @@ public class ReportStylePane extends BasicPane {
editCellElement = report.getTemplateCellElement(column, row); editCellElement = report.getTemplateCellElement(column, row);
if (editCellElement == null) { if (editCellElement == null) {
editCellElement = new DefaultTemplateCellElement(column, row); editCellElement = DefaultThemedTemplateCellElementCase.createInstance(column, row);
report.addCellElement(editCellElement); report.addCellElement(editCellElement);
} }

6
designer-realize/src/main/java/com/fr/design/style/BorderUtils.java

@ -9,12 +9,12 @@ import java.util.List;
import com.fr.base.CellBorderStyle; import com.fr.base.CellBorderStyle;
import com.fr.base.Style; import com.fr.base.Style;
import com.fr.design.mainframe.ElementCasePane; import com.fr.design.mainframe.ElementCasePane;
import com.fr.design.mainframe.theme.utils.DefaultThemedTemplateCellElementCase;
import com.fr.general.ComparatorUtils; import com.fr.general.ComparatorUtils;
import com.fr.grid.selection.CellSelection; import com.fr.grid.selection.CellSelection;
import com.fr.grid.selection.FloatSelection; import com.fr.grid.selection.FloatSelection;
import com.fr.grid.selection.Selection; import com.fr.grid.selection.Selection;
import com.fr.report.cell.CellElement; import com.fr.report.cell.CellElement;
import com.fr.report.cell.DefaultTemplateCellElement;
import com.fr.report.cell.FloatElement; import com.fr.report.cell.FloatElement;
import com.fr.report.cell.TemplateCellElement; import com.fr.report.cell.TemplateCellElement;
import com.fr.report.elementcase.ElementCase; import com.fr.report.elementcase.ElementCase;
@ -433,7 +433,7 @@ public abstract class BorderUtils {
for (int j = row; j < row + rowSpan; j++) { for (int j = row; j < row + rowSpan; j++) {
TemplateCellElement tmpCellElement = report.getTemplateCellElement(i, j); TemplateCellElement tmpCellElement = report.getTemplateCellElement(i, j);
if (tmpCellElement == null) { if (tmpCellElement == null) {
tmpCellElement = new DefaultTemplateCellElement(i, j); tmpCellElement = DefaultThemedTemplateCellElementCase.createInstance(i, j);
report.addCellElement(tmpCellElement); report.addCellElement(tmpCellElement);
} }
Style style = tmpCellElement.getStyle(); Style style = tmpCellElement.getStyle();
@ -516,7 +516,7 @@ public abstract class BorderUtils {
for (int j = row; j < row + rowSpan; j++) { for (int j = row; j < row + rowSpan; j++) {
TemplateCellElement tmpCellElement = report.getTemplateCellElement(i, j); TemplateCellElement tmpCellElement = report.getTemplateCellElement(i, j);
if (tmpCellElement == null) { if (tmpCellElement == null) {
tmpCellElement = new DefaultTemplateCellElement(i, j); tmpCellElement = DefaultThemedTemplateCellElementCase.createInstance(i, j);
report.addCellElement(tmpCellElement); report.addCellElement(tmpCellElement);
} }
Style style = tmpCellElement.getStyle(); Style style = tmpCellElement.getStyle();

4
designer-realize/src/main/java/com/fr/design/style/StylePane.java

@ -16,6 +16,7 @@ import com.fr.design.fun.StyleUIConfigProvider;
import com.fr.design.gui.frpane.UITabbedPane; import com.fr.design.gui.frpane.UITabbedPane;
import com.fr.design.layout.FRGUIPaneFactory; import com.fr.design.layout.FRGUIPaneFactory;
import com.fr.design.mainframe.ElementCasePane; import com.fr.design.mainframe.ElementCasePane;
import com.fr.design.mainframe.theme.utils.DefaultThemedTemplateCellElementCase;
import com.fr.design.style.background.BackgroundPane; import com.fr.design.style.background.BackgroundPane;
import com.fr.design.utils.gui.GUICoreUtils; import com.fr.design.utils.gui.GUICoreUtils;
import com.fr.grid.selection.CellSelection; import com.fr.grid.selection.CellSelection;
@ -24,7 +25,6 @@ import com.fr.grid.selection.Selection;
import com.fr.log.FineLoggerFactory; import com.fr.log.FineLoggerFactory;
import com.fr.plugin.solution.sandbox.collection.PluginSandboxCollections; import com.fr.plugin.solution.sandbox.collection.PluginSandboxCollections;
import com.fr.report.cell.CellElement; import com.fr.report.cell.CellElement;
import com.fr.report.cell.DefaultTemplateCellElement;
import com.fr.report.cell.FloatElement; import com.fr.report.cell.FloatElement;
import com.fr.report.cell.TemplateCellElement; import com.fr.report.cell.TemplateCellElement;
import com.fr.report.elementcase.ElementCase; import com.fr.report.elementcase.ElementCase;
@ -322,7 +322,7 @@ public class StylePane extends BasicBeanPane<Style> implements ChangeListener {
editCellElement = report.getTemplateCellElement(column, row); editCellElement = report.getTemplateCellElement(column, row);
if (editCellElement == null) { if (editCellElement == null) {
editCellElement = new DefaultTemplateCellElement(column, row); editCellElement = DefaultThemedTemplateCellElementCase.createInstance(column, row);
report.addCellElement(editCellElement); report.addCellElement(editCellElement);
} }

6
designer-realize/src/main/java/com/fr/grid/Grid.java

@ -18,6 +18,7 @@ import com.fr.design.gui.itextfield.UITextField;
import com.fr.design.mainframe.DesignOperationEvent; import com.fr.design.mainframe.DesignOperationEvent;
import com.fr.design.mainframe.ElementCasePane; import com.fr.design.mainframe.ElementCasePane;
import com.fr.design.mainframe.JTemplate; import com.fr.design.mainframe.JTemplate;
import com.fr.design.mainframe.theme.utils.DefaultThemedTemplateCellElementCase;
import com.fr.design.utils.gui.GUICoreUtils; import com.fr.design.utils.gui.GUICoreUtils;
import com.fr.event.EventDispatcher; import com.fr.event.EventDispatcher;
import com.fr.general.ComparatorUtils; import com.fr.general.ComparatorUtils;
@ -30,7 +31,6 @@ import com.fr.grid.selection.FloatSelection;
import com.fr.grid.selection.Selection; import com.fr.grid.selection.Selection;
import com.fr.report.ReportHelper; import com.fr.report.ReportHelper;
import com.fr.report.cell.CellElement; import com.fr.report.cell.CellElement;
import com.fr.report.cell.DefaultTemplateCellElement;
import com.fr.report.cell.FloatElement; import com.fr.report.cell.FloatElement;
import com.fr.report.cell.TemplateCellElement; import com.fr.report.cell.TemplateCellElement;
import com.fr.report.cell.cellattr.CellGUIAttr; import com.fr.report.cell.cellattr.CellGUIAttr;
@ -870,7 +870,7 @@ public class Grid extends BaseGridComponent {
} }
// 必须保证editingCellElement不是null。 // 必须保证editingCellElement不是null。
if (editingCellElement == null) { if (editingCellElement == null) {
editingCellElement = new DefaultTemplateCellElement(column, row); editingCellElement = DefaultThemedTemplateCellElementCase.createInstance(column, row);
} }
editorComponent = getCellEditingComp(); editorComponent = getCellEditingComp();
if (editorComponent == null) { if (editorComponent == null) {
@ -1034,7 +1034,7 @@ public class Grid extends BaseGridComponent {
} }
// 必须保证editingCellElement不是null。 // 必须保证editingCellElement不是null。
if (editingCellElement == null) { if (editingCellElement == null) {
editingCellElement = new DefaultTemplateCellElement(editingColumn, editingRow); editingCellElement = DefaultThemedTemplateCellElementCase.createInstance(editingColumn, editingRow);
tplEC.addCellElement(editingCellElement); tplEC.addCellElement(editingCellElement);
} }
if (setValue4EditingElement(newValue)) { if (setValue4EditingElement(newValue)) {

6
designer-realize/src/main/java/com/fr/grid/IntelliElements.java

@ -5,11 +5,11 @@ import com.fr.base.BaseUtils;
import com.fr.design.cell.clipboard.CellElementsClip; import com.fr.design.cell.clipboard.CellElementsClip;
import com.fr.design.cell.clipboard.ElementsTransferable; import com.fr.design.cell.clipboard.ElementsTransferable;
import com.fr.design.mainframe.ElementCasePane; import com.fr.design.mainframe.ElementCasePane;
import com.fr.design.mainframe.theme.utils.DefaultThemedTemplateCellElementCase;
import com.fr.general.script.FunctionHelper; import com.fr.general.script.FunctionHelper;
import com.fr.grid.selection.CellSelection; import com.fr.grid.selection.CellSelection;
import com.fr.log.FineLoggerFactory; import com.fr.log.FineLoggerFactory;
import com.fr.report.cell.CellElement; import com.fr.report.cell.CellElement;
import com.fr.report.cell.DefaultTemplateCellElement;
import com.fr.report.cell.TemplateCellElement; import com.fr.report.cell.TemplateCellElement;
import com.fr.report.cell.cellattr.core.group.DSColumn; import com.fr.report.cell.cellattr.core.group.DSColumn;
import com.fr.report.elementcase.TemplateElementCase; import com.fr.report.elementcase.TemplateElementCase;
@ -189,9 +189,9 @@ public class IntelliElements {
TemplateCellElement sourceCellElement = getSourceCellElementByColumnRow(colIndex, rowIndex); TemplateCellElement sourceCellElement = getSourceCellElementByColumnRow(colIndex, rowIndex);
if (sourceCellElement == null) { if (sourceCellElement == null) {
sourceCellElement = new DefaultTemplateCellElement(); sourceCellElement = DefaultThemedTemplateCellElementCase.createInstance();
} }
TemplateCellElement newCellElement = new DefaultTemplateCellElement(colIndex, rowIndex); TemplateCellElement newCellElement = DefaultThemedTemplateCellElementCase.createInstance(colIndex, rowIndex);
applyStyle(newCellElement, sourceCellElement);//style applyStyle(newCellElement, sourceCellElement);//style
if (sourceCellElement.getValue() instanceof DSColumn) { if (sourceCellElement.getValue() instanceof DSColumn) {
try{ try{

7
designer-realize/src/main/java/com/fr/grid/dnd/ElementCasePaneDropTarget.java

@ -5,6 +5,7 @@ import com.fr.design.actions.UpdateAction;
import com.fr.design.dialog.FineJOptionPane; import com.fr.design.dialog.FineJOptionPane;
import com.fr.design.gui.ibutton.UIToggleButton; import com.fr.design.gui.ibutton.UIToggleButton;
import com.fr.design.mainframe.ElementCasePane; import com.fr.design.mainframe.ElementCasePane;
import com.fr.design.mainframe.theme.utils.DefaultThemedTemplateCellElementCase;
import com.fr.design.utils.gui.GUICoreUtils; import com.fr.design.utils.gui.GUICoreUtils;
import com.fr.general.data.TableDataColumn; import com.fr.general.data.TableDataColumn;
import com.fr.grid.Grid; import com.fr.grid.Grid;
@ -13,7 +14,6 @@ import com.fr.grid.selection.CellSelection;
import com.fr.grid.selection.Selection; import com.fr.grid.selection.Selection;
import com.fr.log.FineLoggerFactory; import com.fr.log.FineLoggerFactory;
import com.fr.report.cell.CellElement; import com.fr.report.cell.CellElement;
import com.fr.report.cell.DefaultTemplateCellElement;
import com.fr.report.cell.TemplateCellElement; import com.fr.report.cell.TemplateCellElement;
import com.fr.report.cell.cellattr.CellExpandAttr; import com.fr.report.cell.cellattr.CellExpandAttr;
import com.fr.report.cell.cellattr.core.group.DSColumn; import com.fr.report.cell.cellattr.core.group.DSColumn;
@ -24,7 +24,6 @@ import com.fr.report.worksheet.WorkSheet;
import com.fr.stable.ArrayUtils; import com.fr.stable.ArrayUtils;
import com.fr.stable.Constants; import com.fr.stable.Constants;
import javax.swing.JOptionPane;
import javax.swing.JPopupMenu; import javax.swing.JPopupMenu;
import java.awt.Point; import java.awt.Point;
import java.awt.datatransfer.DataFlavor; import java.awt.datatransfer.DataFlavor;
@ -223,7 +222,7 @@ public class ElementCasePaneDropTarget extends DropTargetAdapter {
private void paintDropCellElement(int i) { private void paintDropCellElement(int i) {
TemplateElementCase report = ePane.getEditingElementCase(); TemplateElementCase report = ePane.getEditingElementCase();
TemplateCellElement curCellElement = new DefaultTemplateCellElement(); TemplateCellElement curCellElement = DefaultThemedTemplateCellElementCase.createInstance();
if (report instanceof WorkSheet || report instanceof PolyECBlock || report instanceof FormElementCase) { if (report instanceof WorkSheet || report instanceof PolyECBlock || report instanceof FormElementCase) {
String[] attribute = doubleArray[i]; String[] attribute = doubleArray[i];
if (ArrayUtils.isEmpty(attribute)) { if (ArrayUtils.isEmpty(attribute)) {
@ -250,7 +249,7 @@ public class ElementCasePaneDropTarget extends DropTargetAdapter {
CellExpandAttr cellExPandAttr = new CellExpandAttr(); CellExpandAttr cellExPandAttr = new CellExpandAttr();
cellExPandAttr.setDirection(Constants.TOP_TO_BOTTOM); cellExPandAttr.setDirection(Constants.TOP_TO_BOTTOM);
if (curCellElement == null) { if (curCellElement == null) {
curCellElement = new DefaultTemplateCellElement(cs.getColumn(), cs.getRow(), cs.getColumnSpan(), cs.getRowSpan(), newLinearDSColumn); curCellElement = DefaultThemedTemplateCellElementCase.createInstance(cs.getColumn(), cs.getRow(), cs.getColumnSpan(), cs.getRowSpan(), newLinearDSColumn);
report.addCellElement(curCellElement); report.addCellElement(curCellElement);
} else { } else {

11
designer-realize/src/main/java/com/fr/grid/selection/CellSelection.java

@ -1,13 +1,9 @@
package com.fr.grid.selection; package com.fr.grid.selection;
import com.fr.base.BaseFormula; import com.fr.base.BaseFormula;
import com.fr.base.BaseUtils;
import com.fr.base.NameStyle;
import com.fr.base.Utils; import com.fr.base.Utils;
import com.fr.base.vcs.DesignerMode; import com.fr.base.vcs.DesignerMode;
import com.fr.cache.list.IntList; import com.fr.cache.list.IntList;
import com.fr.config.ServerPreferenceConfig;
import com.fr.design.actions.UpdateAction;
import com.fr.design.actions.cell.CellAttributeAction; import com.fr.design.actions.cell.CellAttributeAction;
import com.fr.design.actions.cell.CellExpandAttrAction; import com.fr.design.actions.cell.CellExpandAttrAction;
import com.fr.design.actions.cell.CellStyleAttrAction; import com.fr.design.actions.cell.CellStyleAttrAction;
@ -33,12 +29,11 @@ import com.fr.design.mainframe.CellWidgetPropertyPane;
import com.fr.design.mainframe.ElementCasePane; import com.fr.design.mainframe.ElementCasePane;
import com.fr.design.mainframe.ElementCasePane.Clear; import com.fr.design.mainframe.ElementCasePane.Clear;
import com.fr.design.mainframe.JTemplate; import com.fr.design.mainframe.JTemplate;
import com.fr.design.menu.KeySetUtils; import com.fr.design.mainframe.theme.utils.DefaultThemedTemplateCellElementCase;
import com.fr.design.report.RowColumnPane; import com.fr.design.report.RowColumnPane;
import com.fr.design.selection.QuickEditor; import com.fr.design.selection.QuickEditor;
import com.fr.grid.GridUtils; import com.fr.grid.GridUtils;
import com.fr.report.cell.CellElement; import com.fr.report.cell.CellElement;
import com.fr.report.cell.DefaultTemplateCellElement;
import com.fr.report.cell.TemplateCellElement; import com.fr.report.cell.TemplateCellElement;
import com.fr.report.cell.cellattr.CellGUIAttr; import com.fr.report.cell.cellattr.CellGUIAttr;
import com.fr.report.elementcase.TemplateElementCase; import com.fr.report.elementcase.TemplateElementCase;
@ -347,7 +342,7 @@ public class CellSelection extends Selection {
TemplateCellElement cellElement = ec.getTemplateCellElement(column, row); TemplateCellElement cellElement = ec.getTemplateCellElement(column, row);
if (cellElement == null) { if (cellElement == null) {
cellElement = new DefaultTemplateCellElement(column, row, ob); cellElement = DefaultThemedTemplateCellElementCase.createInstance(column, row, ob);
ec.addCellElement(cellElement, false); ec.addCellElement(cellElement, false);
} else { } else {
cellElement.setValue(ob); cellElement.setValue(ob);
@ -443,7 +438,7 @@ public class CellSelection extends Selection {
} }
// 不覆盖以前的元素 // 不覆盖以前的元素
ec.addCellElement(new DefaultTemplateCellElement(kc, kr), false); ec.addCellElement(DefaultThemedTemplateCellElementCase.createInstance(kc, kr), false);
} }
} }
} }

4
designer-realize/src/main/java/com/fr/quickeditor/cellquick/CellFormulaQuickEditor.java

@ -13,12 +13,12 @@ import com.fr.design.gui.itextfield.UITextField;
import com.fr.design.layout.TableLayout; import com.fr.design.layout.TableLayout;
import com.fr.design.layout.TableLayoutHelper; import com.fr.design.layout.TableLayoutHelper;
import com.fr.design.mainframe.DesignerContext; import com.fr.design.mainframe.DesignerContext;
import com.fr.design.mainframe.theme.utils.DefaultThemedTemplateCellElementCase;
import com.fr.general.IOUtils; import com.fr.general.IOUtils;
import com.fr.grid.selection.CellSelection; import com.fr.grid.selection.CellSelection;
import com.fr.quickeditor.CellQuickEditor; import com.fr.quickeditor.CellQuickEditor;
import com.fr.report.ReportHelper; import com.fr.report.ReportHelper;
import com.fr.report.cell.DefaultTemplateCellElement;
import com.fr.report.cell.TemplateCellElement; import com.fr.report.cell.TemplateCellElement;
import com.fr.stable.ColumnRow; import com.fr.stable.ColumnRow;
import com.fr.stable.StringUtils; import com.fr.stable.StringUtils;
@ -158,7 +158,7 @@ public class CellFormulaQuickEditor extends CellQuickEditor {
if (cellElement == null) { if (cellElement == null) {
CellSelection cs = (CellSelection) tc.getSelection(); CellSelection cs = (CellSelection) tc.getSelection();
cellElement = new DefaultTemplateCellElement(cs.getColumn(), cs.getRow()); cellElement = DefaultThemedTemplateCellElementCase.createInstance(cs.getColumn(), cs.getRow());
tc.getEditingElementCase().addCellElement(cellElement, false); tc.getEditingElementCase().addCellElement(cellElement, false);
} }
if (tmpText != null && (tmpText.length() > 0 && tmpText.charAt(0) == '=')) { if (tmpText != null && (tmpText.length() > 0 && tmpText.charAt(0) == '=')) {

4
designer-realize/src/main/java/com/fr/quickeditor/cellquick/CellStringQuickEditor.java

@ -4,11 +4,11 @@ import com.fr.base.BaseFormula;
import com.fr.base.Style; import com.fr.base.Style;
import com.fr.base.TextFormat; import com.fr.base.TextFormat;
import com.fr.design.gui.itextarea.UITextArea; import com.fr.design.gui.itextarea.UITextArea;
import com.fr.design.mainframe.theme.utils.DefaultThemedTemplateCellElementCase;
import com.fr.grid.GridKeyListener; import com.fr.grid.GridKeyListener;
import com.fr.grid.selection.CellSelection; import com.fr.grid.selection.CellSelection;
import com.fr.quickeditor.CellQuickEditor; import com.fr.quickeditor.CellQuickEditor;
import com.fr.report.ReportHelper; import com.fr.report.ReportHelper;
import com.fr.report.cell.DefaultTemplateCellElement;
import com.fr.stable.ColumnRow; import com.fr.stable.ColumnRow;
import com.fr.stable.StringUtils; import com.fr.stable.StringUtils;
@ -107,7 +107,7 @@ public class CellStringQuickEditor extends CellQuickEditor {
if (cellElement == null) { if (cellElement == null) {
CellSelection cs = (CellSelection) tc.getSelection(); CellSelection cs = (CellSelection) tc.getSelection();
cellElement = new DefaultTemplateCellElement(cs.getColumn(), cs.getRow()); cellElement = DefaultThemedTemplateCellElementCase.createInstance(cs.getColumn(), cs.getRow());
tc.getEditingElementCase().addCellElement(cellElement, false); tc.getEditingElementCase().addCellElement(cellElement, false);
} }
if (tmpText != null && (tmpText.length() > 0 && tmpText.charAt(0) == '=')) { if (tmpText != null && (tmpText.length() > 0 && tmpText.charAt(0) == '=')) {

7
designer-realize/src/test/java/com.fr/design/mainframe/JFileTest.java

@ -4,12 +4,12 @@ import com.fr.config.dao.DaoContext;
import com.fr.config.dao.impl.LocalClassHelperDao; import com.fr.config.dao.impl.LocalClassHelperDao;
import com.fr.config.dao.impl.LocalEntityDao; import com.fr.config.dao.impl.LocalEntityDao;
import com.fr.config.dao.impl.LocalXmlEntityDao; import com.fr.config.dao.impl.LocalXmlEntityDao;
import com.fr.design.mainframe.theme.utils.DefaultThemedTemplateCellElementCase;
import com.fr.form.main.Form; import com.fr.form.main.Form;
import com.fr.form.ui.ElementCaseEditor; import com.fr.form.ui.ElementCaseEditor;
import com.fr.general.ImageWithSuffix; import com.fr.general.ImageWithSuffix;
import com.fr.general.ModuleContext; import com.fr.general.ModuleContext;
import com.fr.main.impl.WorkBook; import com.fr.main.impl.WorkBook;
import com.fr.report.cell.DefaultTemplateCellElement;
import com.fr.report.cell.TemplateCellElement; import com.fr.report.cell.TemplateCellElement;
import com.fr.report.cell.cellattr.CellImage; import com.fr.report.cell.cellattr.CellImage;
import com.fr.report.restriction.CellCountRestriction; import com.fr.report.restriction.CellCountRestriction;
@ -18,7 +18,6 @@ import com.fr.report.worksheet.FormElementCase;
import com.fr.report.worksheet.WorkSheet; import com.fr.report.worksheet.WorkSheet;
import com.fr.restriction.Restrictions; import com.fr.restriction.Restrictions;
import com.fr.stable.module.Module; import com.fr.stable.module.Module;
import com.fr.start.Designer;
import com.fr.start.MainDesigner; import com.fr.start.MainDesigner;
import junit.framework.TestCase; import junit.framework.TestCase;
import org.junit.Assert; import org.junit.Assert;
@ -41,7 +40,7 @@ public class JFileTest extends TestCase {
WorkBook workBook = new WorkBook(); WorkBook workBook = new WorkBook();
WorkSheet workSheet = new WorkSheet(); WorkSheet workSheet = new WorkSheet();
workBook.addReport("sheet1", workSheet); workBook.addReport("sheet1", workSheet);
TemplateCellElement cellElement = new DefaultTemplateCellElement(); TemplateCellElement cellElement = DefaultThemedTemplateCellElementCase.createInstance();
workSheet.addCellElement(cellElement); workSheet.addCellElement(cellElement);
ImageWithSuffix imageWithSuffix = ImageWithSuffix.build(new BufferedImage(100, 100, BufferedImage.TYPE_INT_ARGB), "jpg"); ImageWithSuffix imageWithSuffix = ImageWithSuffix.build(new BufferedImage(100, 100, BufferedImage.TYPE_INT_ARGB), "jpg");
CellImage cellImage = new CellImage(); CellImage cellImage = new CellImage();
@ -55,7 +54,7 @@ public class JFileTest extends TestCase {
Form form = new Form(); Form form = new Form();
ElementCaseEditor editor = new ElementCaseEditor(); ElementCaseEditor editor = new ElementCaseEditor();
FormElementCase elementCase = new FormElementCase(); FormElementCase elementCase = new FormElementCase();
TemplateCellElement cellElement = new DefaultTemplateCellElement(); TemplateCellElement cellElement = DefaultThemedTemplateCellElementCase.createInstance();
elementCase.addCellElement(cellElement); elementCase.addCellElement(cellElement);
editor.setElementCase(elementCase); editor.setElementCase(elementCase);
form.getContainer().addWidget(editor); form.getContainer().addWidget(editor);

Loading…
Cancel
Save