提交 e3889284 编写于 作者: J jurgen

Driver editor fix.

上级 bfa11548
......@@ -618,6 +618,16 @@ public class DriverDescriptor extends AbstractDescriptor implements DBPDriver
return libraries;
}
public List<DBPDriverLibrary> getEnabledDriverLibraries() {
List<DBPDriverLibrary> filtered = new ArrayList<>();
for (DBPDriverLibrary lib : libraries) {
if (!lib.isDisabled()) {
filtered.add(lib);
}
}
return filtered;
}
public DBPDriverLibrary getDriverLibrary(String path)
{
for (DBPDriverLibrary lib : libraries) {
......
......@@ -614,10 +614,17 @@ public class DriverEditDialog extends HelpEnabledDialog
private void changeLibContent()
{
libTable.setInput(new ArrayList<>(driver.getDriverLibraries()));
int itemCount = libTable.getTable().getItemCount();
findClassButton.setEnabled(provider.isDriversManagable() && itemCount > 0);
updateVersionButton.setEnabled(itemCount > 0);
libTable.setInput(driver.getEnabledDriverLibraries());
boolean hasFiles = false, hasDownloads = false;
for (DBPDriverLibrary library : driver.getDriverLibraries()) {
if (library.isDownloadable()) {
hasDownloads = true;
break;
}
hasFiles = true;
}
findClassButton.setEnabled(provider.isDriversManagable() && hasFiles);
updateVersionButton.setEnabled(hasDownloads);
}
private void changeLibSelection()
......@@ -656,7 +663,7 @@ public class DriverEditDialog extends HelpEnabledDialog
resetLibraries();
}
if (libTable != null) {
libTable.setInput(new ArrayList<>(driver.getDriverLibraries()));
libTable.setInput(driver.getEnabledDriverLibraries());
changeLibContent();
changeLibSelection();
}
......@@ -688,6 +695,7 @@ public class DriverEditDialog extends HelpEnabledDialog
private void resetLibraries() {
// Set libraries
for (DBPDriverLibrary lib : CommonUtils.safeCollection(origLibList)) {
lib.setDisabled(false);
driver.addDriverLibrary(lib);
}
for (DBPDriverLibrary lib : CommonUtils.copyList(driver.getDriverLibraries())) {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册