条件属性扩展示例。
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.

61 lines
2.3 KiB

package com.fr.plugin.cell.highlight.ui;
//import com.fr.design.condition.ConditionAttrSingleConditionPane;
import com.fr.design.condition.ConditionAttributesPane;
import com.fanruan.api.design.ui.condition.ConditionAttrSingleConditionPane;
//import com.fanruan.api.design.ui.condition.ConditionAttributesPane;
import com.fr.design.gui.icombobox.UIComboBox;
import com.fr.design.gui.icombobox.UIDictionaryComboBox;
import com.fr.general.Inter;
import com.fr.plugin.cell.highlight.fun.AlignHighlightAction;
import com.fr.report.cell.cellattr.highlight.HighlightAction;
import com.fr.stable.Constants;
import javax.swing.*;
/**
* @author richie
* @date 2015-03-26
* @since 8.0
*/
public class AlignHighlightPane extends ConditionAttrSingleConditionPane<HighlightAction> {
private UIDictionaryComboBox<Integer> alignComboBox;
private JComboBox scopeComboBox;
public AlignHighlightPane(ConditionAttributesPane conditionAttributesPane) {
super(conditionAttributesPane);
this.alignComboBox = new UIDictionaryComboBox<Integer>(
new Integer[]{Constants.LEFT, Constants.CENTER, Constants.RIGHT},
new String[]{
Inter.getLocText("Plugin-Highlight_Align_Left"),
Inter.getLocText("Plugin-Highlight_Align_Center"),
Inter.getLocText("Plugin-Highlight_Align_Right")}
);
add(alignComboBox);
this.scopeComboBox = new UIComboBox(new String[]{
Inter.getLocText("Plugin-Highlight_Align_Current_Cell"),
Inter.getLocText("Plugin-Highlight_Align_Current_Row"),
Inter.getLocText("Plugin-Highlight_Align_Current_Column")});
this.add(this.scopeComboBox);
}
@Override
public String nameForPopupMenuItem() {
return Inter.getLocText("Plugin-Highlight_Align");
}
@Override
public void populate(HighlightAction condition) {
AlignHighlightAction action = (AlignHighlightAction) condition;
scopeComboBox.setSelectedIndex(action.getScope());
alignComboBox.setSelectedItem(action.getAlign());
}
@Override
public HighlightAction update() {
return new AlignHighlightAction(alignComboBox.getSelectedItem(), scopeComboBox.getSelectedIndex());
}
}