|
|
|
package com.fr.plugin.form.widget.ui;
|
|
|
|
|
|
|
|
import com.fr.design.designer.creator.CRPropertyDescriptor;
|
|
|
|
import com.fr.design.designer.creator.XWidgetCreator;
|
|
|
|
import com.fr.design.form.util.XCreatorConstants;
|
|
|
|
import com.fr.design.gui.itextfield.UITextField;
|
|
|
|
import com.fr.design.layout.FRGUIPaneFactory;
|
|
|
|
import com.fr.design.mainframe.widget.editors.WidgetValueEditor;
|
|
|
|
import com.fr.general.Inter;
|
|
|
|
import com.fr.plugin.form.widget.core.RHIframe;
|
|
|
|
import com.fr.plugin.form.widget.core.RHIframeAttr;
|
|
|
|
import com.fr.plugin.form.widget.core.RHIframeSource;
|
|
|
|
import com.fr.plugin.form.widget.ui.editor.RHIframeModelEditor;
|
|
|
|
import com.fr.plugin.form.widget.ui.render.RHIframeModelRenderer;
|
|
|
|
import com.fr.stable.ArrayUtils;
|
|
|
|
import com.fr.stable.StringUtils;
|
|
|
|
|
|
|
|
import javax.swing.*;
|
|
|
|
import java.awt.*;
|
|
|
|
import java.beans.IntrospectionException;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Created by richie on 15/12/2.
|
|
|
|
*/
|
|
|
|
public class XRHIframe extends XWidgetCreator {
|
|
|
|
|
|
|
|
public XRHIframe(RHIframe widget, Dimension initSize) {
|
|
|
|
super(widget, initSize);
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public CRPropertyDescriptor[] supportedDescriptor() throws IntrospectionException {
|
|
|
|
return (CRPropertyDescriptor[]) ArrayUtils.addAll(super.supportedDescriptor(), new CRPropertyDescriptor[]{
|
|
|
|
new CRPropertyDescriptor("attr", this.toData().getClass())
|
|
|
|
.setI18NName(Inter.getLocText("Plugin-RH_Iframe_Value"))
|
|
|
|
.setEditorClass(RHIframeModelEditor.class)
|
|
|
|
.setRendererClass(RHIframeModelRenderer.class),
|
|
|
|
new CRPropertyDescriptor("overflowX", this.data.getClass()).setI18NName(
|
|
|
|
Inter.getLocText("Preference-Horizontal_Scroll_Bar_Visible")).putKeyValue(
|
|
|
|
XCreatorConstants.PROPERTY_CATEGORY, "Advanced"),
|
|
|
|
new CRPropertyDescriptor("overflowY", this.data.getClass()).setI18NName(
|
|
|
|
Inter.getLocText("Preference-Vertical_Scroll_Bar_Visible")).putKeyValue(
|
|
|
|
XCreatorConstants.PROPERTY_CATEGORY, "Advanced")});
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
protected JComponent initEditor() {
|
|
|
|
if (editor == null) {
|
|
|
|
editor = FRGUIPaneFactory.createBorderLayout_S_Pane();
|
|
|
|
UITextField address = new UITextField(showDescriptionText());
|
|
|
|
editor.add(address, BorderLayout.NORTH);
|
|
|
|
JPanel contentPane = FRGUIPaneFactory.createNormalFlowInnerContainer_S_Pane();
|
|
|
|
contentPane.setBackground(Color.white);
|
|
|
|
editor.add(contentPane, BorderLayout.CENTER);
|
|
|
|
}
|
|
|
|
return editor;
|
|
|
|
}
|
|
|
|
|
|
|
|
private String showDescriptionText() {
|
|
|
|
RHIframe iframe = (RHIframe) toData();
|
|
|
|
if (iframe != null) {
|
|
|
|
RHIframeAttr attr = iframe.getAttr();
|
|
|
|
if (attr != null) {
|
|
|
|
RHIframeSource source = iframe.getAttr().getSource();
|
|
|
|
if (source != null) {
|
|
|
|
return source.toString();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
return StringUtils.EMPTY;
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public Dimension initEditorSize() {
|
|
|
|
return new Dimension(160, 80);
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* 该组件是否可以拖入参数面板
|
|
|
|
* 这里控制 网页预定义控件在工具栏不显示
|
|
|
|
*
|
|
|
|
* @return 是则返回true
|
|
|
|
*/
|
|
|
|
public boolean canEnterIntoParaPane() {
|
|
|
|
return false;
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public String getIconPath() {
|
|
|
|
return "/com/fr/plugin/form/widget/images/rh_iframe.png";
|
|
|
|
}
|
|
|
|
}
|