private void selectLibrary (Node[] nodes) {
int tabCount = this.properties.getTabCount();
for (int i=0; i<tabCount; i++) {
this.properties.removeTabAt(0);
}
this.libraryName.setEnabled(false);
this.libraryName.setText(""); //NOI18N
this.jLabel1.setVisible(false);
this.libraryName.setVisible(false);
this.properties.setVisible(false);
this.deleteButton.setEnabled(false);
if (nodes.length != 1) {
return;
}
LibraryImplementation impl = nodes[0].getLookup().lookup(LibraryImplementation.class);
if (impl == null) {
return;
}
this.jLabel1.setVisible(true);
this.libraryName.setVisible(true);
this.properties.setVisible(true);
boolean editable = model.isLibraryEditable (impl);
this.libraryName.setEnabled(editable && LibrariesSupport.supportsDisplayName(impl));
this.deleteButton.setEnabled(editable);
this.libraryName.setText (LibrariesSupport.getLocalizedName(impl));
LibraryTypeProvider provider = nodes[0].getLookup().lookup(LibraryTypeProvider.class);
if (provider == null) {
return;
}
LibraryCustomizerContextWrapper customizerContext;
LibraryStorageArea area = nodes[0].getLookup().lookup(LibraryStorageArea.class);
if (area != LibraryStorageArea.GLOBAL) {
customizerContext = new LibraryCustomizerContextWrapper(impl, area);
File f = Utilities.toFile(URI.create(area.getLocation().toExternalForm()));
this.libraryLocation.setText(f.getPath());
} else {
customizerContext = new LibraryCustomizerContextWrapper(impl, null);
this.libraryLocation.setText(LABEL_Global_Libraries());
}
String[] volumeTypes = provider.getSupportedVolumeTypes();
for (int i=0; i< volumeTypes.length; i++) {
Customizer c = provider.getCustomizer (volumeTypes[i]);
if (c instanceof JComponent) {
c.setObject (customizerContext);
JComponent component = (JComponent) c;
component.setEnabled (editable);
String tabName = component.getName();
if (tabName == null) {
tabName = volumeTypes[i];
}
this.properties.addTab(tabName, component);
}
}
}
LibrariesCustomizer.java 文件源码
java
阅读 28
收藏 0
点赞 0
评论 0
项目:incubator-netbeans
作者:
评论列表
文章目录