forked from fanruan/finekit
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.
63 lines
1.6 KiB
63 lines
1.6 KiB
package com.fanruan.api.design.ui.editor; |
|
|
|
import com.fanruan.api.design.DesignKit; |
|
import com.fanruan.api.design.work.component.ParameterComboBox; |
|
import com.fr.design.editor.editor.Editor; |
|
import com.fr.stable.ParameterProvider; |
|
|
|
import java.awt.*; |
|
|
|
/** |
|
* @author richie |
|
* @version 10.0 |
|
* Created by richie on 2019/11/1 |
|
* 用于编辑和展示参数的编辑器 |
|
* TODO:待补充文档 |
|
*/ |
|
public class TypeParameterEditor extends Editor<ParameterProvider> { |
|
|
|
private ParameterComboBox parameterCombobox; |
|
|
|
public TypeParameterEditor() { |
|
this(null); |
|
} |
|
|
|
public TypeParameterEditor(ParameterProvider parameter) { |
|
parameterCombobox = new ParameterComboBox(); |
|
parameterCombobox.setEditable(true); |
|
this.setLayout(new BorderLayout()); |
|
this.add(parameterCombobox, BorderLayout.CENTER); |
|
this.setValue(parameter); |
|
this.setName(DesignKit.i18nText("Fine-Design_Basic_Parameter")); |
|
} |
|
|
|
@Override |
|
public boolean accept(Object object) { |
|
return object instanceof ParameterProvider; |
|
} |
|
|
|
@Override |
|
public ParameterProvider getValue() { |
|
return parameterCombobox.getSelectedItem(); |
|
} |
|
|
|
@Override |
|
public void setValue(ParameterProvider value) { |
|
parameterCombobox.setSelectedParameter(value); |
|
} |
|
|
|
@Override |
|
public void setEnabled(boolean enabled) { |
|
super.setEnabled(enabled); |
|
parameterCombobox.setEnabled(enabled); |
|
} |
|
|
|
@Override |
|
public void requestFocus() { |
|
parameterCombobox.requestFocus(); |
|
} |
|
|
|
public String getIconName() { |
|
return "parameter"; |
|
} |
|
} |