|
|
|
@ -6,8 +6,6 @@ import com.fr.base.Parameter;
|
|
|
|
|
import com.fr.base.Releasable; |
|
|
|
|
import com.fr.base.extension.FileExtension; |
|
|
|
|
import com.fr.base.iofile.attr.ExtendSharableAttrMark; |
|
|
|
|
import com.fr.base.theme.FineColorGather; |
|
|
|
|
import com.fr.base.theme.FineColorManager; |
|
|
|
|
import com.fr.base.theme.FineColorSynchronizer; |
|
|
|
|
import com.fr.base.theme.FormTheme; |
|
|
|
|
import com.fr.base.theme.TemplateTheme; |
|
|
|
@ -17,8 +15,8 @@ import com.fr.base.vcs.DesignerMode;
|
|
|
|
|
import com.fr.design.DesignModelAdapter; |
|
|
|
|
import com.fr.design.DesignState; |
|
|
|
|
import com.fr.design.DesignerEnvManager; |
|
|
|
|
import com.fr.design.actions.FormMobileAttrAction; |
|
|
|
|
import com.fr.design.actions.FormECParallelCalAction; |
|
|
|
|
import com.fr.design.actions.FormMobileAttrAction; |
|
|
|
|
import com.fr.design.actions.TemplateParameterAction; |
|
|
|
|
import com.fr.design.actions.core.WorkBookSupportable; |
|
|
|
|
import com.fr.design.actions.file.export.EmbeddedFormExportExportAction; |
|
|
|
@ -56,8 +54,8 @@ import com.fr.design.layout.FRGUIPaneFactory;
|
|
|
|
|
import com.fr.design.mainframe.form.FormECCompositeProvider; |
|
|
|
|
import com.fr.design.mainframe.form.FormECDesignerProvider; |
|
|
|
|
import com.fr.design.mainframe.reuse.ComponentReuseNotificationInfo; |
|
|
|
|
import com.fr.design.mainframe.share.collect.ComponentCollector; |
|
|
|
|
import com.fr.design.mainframe.share.ComponentShareUtil; |
|
|
|
|
import com.fr.design.mainframe.share.collect.ComponentCollector; |
|
|
|
|
import com.fr.design.mainframe.template.info.JFormProcessInfo; |
|
|
|
|
import com.fr.design.mainframe.template.info.TemplateProcessInfo; |
|
|
|
|
import com.fr.design.mainframe.theme.dialog.TemplateThemeUsingDialog; |
|
|
|
@ -71,7 +69,6 @@ import com.fr.design.parameter.ParameterPropertyPane;
|
|
|
|
|
import com.fr.design.preview.FormPreview; |
|
|
|
|
import com.fr.design.preview.MobilePreview; |
|
|
|
|
import com.fr.design.roleAuthority.RolesAlreadyEditedPane; |
|
|
|
|
import com.fr.design.ui.util.UIUtil; |
|
|
|
|
import com.fr.design.utils.gui.LayoutUtils; |
|
|
|
|
import com.fr.file.FILE; |
|
|
|
|
import com.fr.file.FILEChooserPane; |
|
|
|
@ -110,7 +107,14 @@ import javax.swing.JComponent;
|
|
|
|
|
import javax.swing.JPanel; |
|
|
|
|
import javax.swing.SwingConstants; |
|
|
|
|
import javax.swing.tree.TreePath; |
|
|
|
|
import java.awt.*; |
|
|
|
|
import java.awt.BorderLayout; |
|
|
|
|
import java.awt.CardLayout; |
|
|
|
|
import java.awt.Color; |
|
|
|
|
import java.awt.Component; |
|
|
|
|
import java.awt.Dimension; |
|
|
|
|
import java.awt.Font; |
|
|
|
|
import java.awt.Insets; |
|
|
|
|
import java.awt.Rectangle; |
|
|
|
|
import java.awt.event.ActionEvent; |
|
|
|
|
import java.awt.event.ActionListener; |
|
|
|
|
import java.awt.image.BufferedImage; |
|
|
|
@ -1266,46 +1270,48 @@ public class JForm extends JTemplate<Form, FormUndoState> implements BaseJForm<F
|
|
|
|
|
private void refreshTarget(Form form) { |
|
|
|
|
setTarget(form); |
|
|
|
|
|
|
|
|
|
if (HistoryTemplateListCache.getInstance().getCurrentEditingTemplate() == this) { |
|
|
|
|
if (this.index == FORM_TAB) { |
|
|
|
|
// save state
|
|
|
|
|
FormArea formArea = formDesign.getArea(); |
|
|
|
|
int horizontalValue = formArea.getHorizontalValue(); |
|
|
|
|
int verticalValue = formArea.getVerticalValue(); |
|
|
|
|
Dimension areaSize = formArea.getAreaSize(); |
|
|
|
|
double widthValue = formArea.getWidthPaneValue(); |
|
|
|
|
double heightValue = formArea.getHeightPaneValue(); |
|
|
|
|
double slideValue = formArea.getSlideValue(); |
|
|
|
|
Widget[] selectedWidgets = formArea.getFormEditor().getSelectionModel().getSelection().getSelectedWidgets(); |
|
|
|
|
|
|
|
|
|
// refresh ui
|
|
|
|
|
JForm.this.refreshRoot(); |
|
|
|
|
|
|
|
|
|
// restore state
|
|
|
|
|
formDesign.getArea().setAreaSize(areaSize, horizontalValue, verticalValue, widthValue, heightValue, slideValue); |
|
|
|
|
formDesign.getArea().undoFixLayoutState(formArea.isFixLayout()); |
|
|
|
|
this.formDesign.getSelectionModel().setSelectedCreators(FormSelectionUtils.rebuildSelection(formDesign.getRootComponent(), |
|
|
|
|
formDesign.getRootComponent() == selectedBodyLayout() ? selectedWidgets : new Widget[]{selectedBodyLayout().toData()})); |
|
|
|
|
if (HistoryTemplateListCache.getInstance().getCurrentEditingTemplate() != this) { |
|
|
|
|
return; |
|
|
|
|
} |
|
|
|
|
// save state
|
|
|
|
|
FormArea formArea = formDesign.getArea(); |
|
|
|
|
int horizontalValue = formArea.getHorizontalValue(); |
|
|
|
|
int verticalValue = formArea.getVerticalValue(); |
|
|
|
|
Dimension areaSize = formArea.getAreaSize(); |
|
|
|
|
double widthValue = formArea.getWidthPaneValue(); |
|
|
|
|
double heightValue = formArea.getHeightPaneValue(); |
|
|
|
|
double slideValue = formArea.getSlideValue(); |
|
|
|
|
Widget[] selectedWidgets = formArea.getFormEditor().getSelectionModel().getSelection().getSelectedWidgets(); |
|
|
|
|
|
|
|
|
|
// refresh ui
|
|
|
|
|
JForm.this.refreshRoot(); |
|
|
|
|
|
|
|
|
|
// restore state
|
|
|
|
|
formDesign.getArea().setAreaSize(areaSize, horizontalValue, verticalValue, widthValue, heightValue, slideValue); |
|
|
|
|
formDesign.getArea().undoFixLayoutState(formArea.isFixLayout()); |
|
|
|
|
this.formDesign.getSelectionModel().setSelectedCreators(FormSelectionUtils.rebuildSelection(formDesign.getRootComponent(), |
|
|
|
|
formDesign.getRootComponent() == selectedBodyLayout() ? selectedWidgets : new Widget[]{selectedBodyLayout().toData()})); |
|
|
|
|
|
|
|
|
|
refreshToolArea(); |
|
|
|
|
refreshToolArea(); |
|
|
|
|
|
|
|
|
|
// 停止编辑 恢复浮层展示
|
|
|
|
|
TreePath[] treePaths = FormHierarchyTreePane.getInstance(formDesign).getComponentTree().getSelectedTreePath(); |
|
|
|
|
if (treePaths != null) { |
|
|
|
|
for (TreePath path : treePaths) { |
|
|
|
|
if (path != null) { |
|
|
|
|
formDesign.stopEditing(path); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
// 停止编辑 恢复浮层展示
|
|
|
|
|
TreePath[] treePaths = FormHierarchyTreePane.getInstance(formDesign).getComponentTree().getSelectedTreePath(); |
|
|
|
|
if (treePaths != null) { |
|
|
|
|
for (TreePath path : treePaths) { |
|
|
|
|
if (path != null) { |
|
|
|
|
formDesign.stopEditing(path); |
|
|
|
|
} |
|
|
|
|
} else { |
|
|
|
|
String widgetName = this.formDesign.getElementCaseContainerName(); |
|
|
|
|
FormElementCaseProvider dataTable = form.getElementCaseByName(widgetName); |
|
|
|
|
this.reportComposite.setSelectedWidget(dataTable); |
|
|
|
|
formDesign.setElementCase(dataTable); |
|
|
|
|
} |
|
|
|
|
TableDataTreePane.getInstance(DesignModelAdapter.getCurrentModelAdapter()).refreshDockingView(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if (this.index != FORM_TAB) { |
|
|
|
|
String widgetName = this.formDesign.getElementCaseContainerName(); |
|
|
|
|
FormElementCaseProvider dataTable = form.getElementCaseByName(widgetName); |
|
|
|
|
this.reportComposite.setSelectedWidget(dataTable); |
|
|
|
|
formDesign.setElementCase(dataTable); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
TableDataTreePane.getInstance(DesignModelAdapter.getCurrentModelAdapter()).refreshDockingView(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|