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.
51 lines
1.8 KiB
51 lines
1.8 KiB
1 year ago
|
package com.fr.widgettheme.designer;
|
||
|
|
||
|
import com.fr.base.io.BaseBook;
|
||
|
import com.fr.base.svg.IconUtils;
|
||
|
import com.fr.design.actions.JTemplateAction;
|
||
|
import com.fr.widgettheme.util.WidgetThemeDesignerUtils;
|
||
|
import com.fr.design.dialog.DialogActionAdapter;
|
||
|
import com.fr.design.file.HistoryTemplateListCache;
|
||
|
import com.fr.design.i18n.Toolkit;
|
||
|
import com.fr.design.mainframe.DesignerContext;
|
||
|
import com.fr.design.mainframe.JTemplate;
|
||
|
import com.fr.widgettheme.control.attr.WidgetDisplayEnhanceMarkAttr;
|
||
|
|
||
|
import java.awt.event.ActionEvent;
|
||
|
|
||
|
/**
|
||
|
* 控件主题显示增强菜单action
|
||
|
*
|
||
|
* @author Bruce.Deng
|
||
|
* @since 11.0
|
||
|
* Created on 2022/11/28
|
||
|
*/
|
||
|
public class WidgetThemeDisplayAction<T extends JTemplate<?, ?>> extends JTemplateAction<T> {
|
||
|
|
||
|
public WidgetThemeDisplayAction(T jwb) {
|
||
|
super(jwb);
|
||
|
setName(Toolkit.i18nText("Fine-Design_Widget_Display_Enhance"));
|
||
|
this.setSmallIcon(IconUtils.readIcon("/com/fr/widgettheme/menu.svg"));
|
||
|
}
|
||
|
|
||
|
@Override
|
||
|
public void actionPerformed(ActionEvent e) {
|
||
|
final T jTemplate = getEditingComponent();
|
||
|
if (!JTemplate.isValid(jTemplate)) {
|
||
|
return;
|
||
|
}
|
||
|
BaseBook baseBook = jTemplate.getTarget();
|
||
|
WidgetDisplayEnhanceMarkAttr attr = WidgetThemeDesignerUtils.getStrongestControlAttrFromTemplate(baseBook);
|
||
|
final WidgetThemeDisplayConfigPane configPane = new WidgetThemeDisplayConfigPane();
|
||
|
configPane.populate(attr);
|
||
|
configPane.showSmallWindow(DesignerContext.getDesignerFrame(), new DialogActionAdapter() {
|
||
|
@Override
|
||
|
public void doOk() {
|
||
|
baseBook.addAttrMark(configPane.update());
|
||
|
jTemplate.fireTargetModified();
|
||
|
HistoryTemplateListCache.getInstance().getCurrentEditingTemplate().activeOldJTemplate();
|
||
|
}
|
||
|
}).setVisible(true);
|
||
|
}
|
||
|
}
|