You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
52 lines
2.2 KiB
52 lines
2.2 KiB
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.base.mode.DesignModeContext; |
|
import com.fr.design.file.HistoryTemplateListCache; |
|
import com.fr.design.fun.DefaultValueAdjustProvider; |
|
import com.fr.design.mainframe.JTemplate; |
|
import com.fr.design.utils.DesignUtils; |
|
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().getCurrentOpeningOrEditingTemplate(); |
|
if (JTemplate.isValid(template)) { |
|
TemplateTheme theme = template.getTemplateTheme(); |
|
ThemedCellStyle themedCellStyle = theme.getCellStyleList().getUse4Default(); |
|
if (themedCellStyle != null) { |
|
NameStyle nameStyle = NameStyle.getPassiveInstance(themedCellStyle.getName(), themedCellStyle.getStyle()); |
|
cellElement.setStyle(DesignModeContext.isDuchampMode() ? nameStyle.getRealStyle() : nameStyle); |
|
} |
|
} |
|
DefaultValueAdjustProvider adjustProvider = DesignUtils.getValueAdjust(); |
|
if (adjustProvider != null) { |
|
adjustProvider.adjustCellElement(cellElement); |
|
} |
|
return cellElement; |
|
} |
|
}
|
|
|