mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
lazy caption component
This commit is contained in:
@@ -145,37 +145,26 @@ public class DomFileEditor<T extends BasicDomElementComponent> extends Perspecti
|
||||
}
|
||||
|
||||
public static DomFileEditor createDomFileEditor(final String name,
|
||||
@Nullable final Icon icon,
|
||||
final DomElement element,
|
||||
final CaptionComponent captionComponent,
|
||||
final CommittablePanel committablePanel) {
|
||||
final DomFileEditor editor = createDomFileEditor(name, element, captionComponent, new Factory<CommittablePanel>() {
|
||||
public CommittablePanel create() {
|
||||
return committablePanel;
|
||||
}
|
||||
});
|
||||
Disposer.register(editor, committablePanel);
|
||||
return editor;
|
||||
}
|
||||
|
||||
public static DomFileEditor createDomFileEditor(final String name,
|
||||
final DomElement element,
|
||||
final CaptionComponent captionComponent,
|
||||
final Factory<? extends CommittablePanel> committablePanel) {
|
||||
|
||||
final XmlFile file = DomUtil.getFile(element);
|
||||
final Factory<BasicDomElementComponent> factory = new Factory<BasicDomElementComponent>() {
|
||||
public BasicDomElementComponent create() {
|
||||
return createComponentWithCaption(committablePanel.create(), captionComponent, element);
|
||||
|
||||
CaptionComponent captionComponent = new CaptionComponent(name, icon);
|
||||
captionComponent.initErrorPanel(element);
|
||||
BasicDomElementComponent component = createComponentWithCaption(committablePanel.create(), captionComponent, element);
|
||||
Disposer.register(component, captionComponent);
|
||||
return component;
|
||||
}
|
||||
};
|
||||
return new DomFileEditor<BasicDomElementComponent>(file.getProject(), file.getVirtualFile(), name, factory) {
|
||||
public JComponent getPreferredFocusedComponent() {
|
||||
return null;
|
||||
}
|
||||
};
|
||||
final DomFileEditor<BasicDomElementComponent> editor =
|
||||
new DomFileEditor<BasicDomElementComponent>(file.getProject(), file.getVirtualFile(), name, factory) {
|
||||
public JComponent getPreferredFocusedComponent() {
|
||||
return null;
|
||||
}
|
||||
};
|
||||
Disposer.register(editor, captionComponent);
|
||||
return editor;
|
||||
}
|
||||
|
||||
public static BasicDomElementComponent createComponentWithCaption(final CommittablePanel committablePanel,
|
||||
|
||||
Reference in New Issue
Block a user