LibraryManager: category is now topic, type added to list official/contributed/recommended libs

This commit is contained in:
Federico Fissore 2015-03-26 13:59:56 +01:00
parent b0a357f5d3
commit a1d99b9a9b
6 changed files with 12 additions and 22 deletions

View File

@ -28,10 +28,10 @@
*/ */
package cc.arduino.contributions.libraries.ui; package cc.arduino.contributions.libraries.ui;
import cc.arduino.contributions.VersionComparator;
import cc.arduino.contributions.libraries.ContributedLibrary; import cc.arduino.contributions.libraries.ContributedLibrary;
import cc.arduino.contributions.libraries.LibrariesIndexer; import cc.arduino.contributions.libraries.LibrariesIndexer;
import cc.arduino.contributions.packages.ContributedPlatform; import cc.arduino.contributions.packages.ContributedPlatform;
import cc.arduino.contributions.VersionComparator;
import cc.arduino.contributions.ui.FilteredAbstractTableModel; import cc.arduino.contributions.ui.FilteredAbstractTableModel;
import com.google.common.base.Predicate; import com.google.common.base.Predicate;
import com.google.common.base.Predicates; import com.google.common.base.Predicates;
@ -279,10 +279,12 @@ public class LibrariesIndexTableModel extends FilteredAbstractTableModel<Contrib
private void updateContributions() { private void updateContributions() {
contributions.clear(); contributions.clear();
for (ContributedLibrary l : indexer.getIndex().getLibraries()) for (ContributedLibrary l : indexer.getIndex().getLibraries()) {
applyFilterToLibrary(l); applyFilterToLibrary(l);
for (ContributedLibrary l : indexer.getInstalledLibraries()) }
for (ContributedLibrary l : indexer.getInstalledLibraries()) {
applyFilterToLibrary(l); applyFilterToLibrary(l);
}
Collections.sort(contributions); Collections.sort(contributions);
} }

View File

@ -87,7 +87,7 @@ public class LibraryManagerUI extends InstallerJDialog<ContributedLibrary> {
public LibraryManagerUI(Frame parent) { public LibraryManagerUI(Frame parent) {
super(parent, "Library Manager", Dialog.ModalityType.APPLICATION_MODAL, _("No internet connection available, the list of available libraries is not complete. You will be able to manage only the libraries you've already installed.")); super(parent, "Library Manager", Dialog.ModalityType.APPLICATION_MODAL, _("No internet connection available, the list of available libraries is not complete. You will be able to manage only the libraries you've already installed."));
filtersContainer.add(new JLabel(_("Category:")), 1); filtersContainer.add(new JLabel(_("Topic")), 1);
filtersContainer.remove(2); filtersContainer.remove(2);
typeChooser = new JComboBox(); typeChooser = new JComboBox();
@ -95,8 +95,9 @@ public class LibraryManagerUI extends InstallerJDialog<ContributedLibrary> {
typeChooser.setEnabled(false); typeChooser.setEnabled(false);
filtersContainer.add(Box.createHorizontalStrut(5), 0); filtersContainer.add(Box.createHorizontalStrut(5), 0);
filtersContainer.add(new JLabel(_("Type:")), 1); filtersContainer.add(new JLabel(_("Type")), 1);
filtersContainer.add(typeChooser, 2); filtersContainer.add(Box.createHorizontalStrut(5), 2);
filtersContainer.add(typeChooser, 3);
} }
protected final ActionListener typeChooserActionListener = new ActionListener() { protected final ActionListener typeChooserActionListener = new ActionListener() {
@ -136,8 +137,6 @@ public class LibraryManagerUI extends InstallerJDialog<ContributedLibrary> {
// Load categories // Load categories
categoryChooser.addItem(new DropdownAllItem()); categoryChooser.addItem(new DropdownAllItem());
categoryChooser.addItem(new DropdownInstalledContributionItem());
categoryChooser.addItem(new DropdownBuiltInLibrariesItem());
Collection<String> categories = indexer.getIndex().getCategories(); Collection<String> categories = indexer.getIndex().getCategories();
for (String category : categories) { for (String category : categories) {
categoryChooser.addItem(new DropdownLibraryOfCategoryItem(category)); categoryChooser.addItem(new DropdownLibraryOfCategoryItem(category));
@ -151,13 +150,13 @@ public class LibraryManagerUI extends InstallerJDialog<ContributedLibrary> {
typeFilter = null; typeFilter = null;
typeChooser.removeAllItems(); typeChooser.removeAllItems();
typeChooser.addItem(new DropdownAllItem()); typeChooser.addItem(new DropdownAllItem());
typeChooser.addItem(new DropdownInstalledContributionItem());
Collection<String> types = indexer.getIndex().getTypes(); Collection<String> types = indexer.getIndex().getTypes();
for (String type : types) { for (String type : types) {
typeChooser.addItem(new DropdownLibraryOfTypeItem(type)); typeChooser.addItem(new DropdownLibraryOfTypeItem(type));
} }
typeChooser.setEnabled(typeChooser.getItemCount() > 1); typeChooser.setEnabled(typeChooser.getItemCount() > 1);
typeChooser.addActionListener(typeChooserActionListener); typeChooser.addActionListener(typeChooserActionListener);
typeChooser.setSelectedIndex(1);
filterField.setEnabled(contribModel.getRowCount() > 0); filterField.setEnabled(contribModel.getRowCount() > 0);

View File

@ -111,7 +111,7 @@ public abstract class InstallerJDialog<T> extends JDialog {
filtersContainer = new JPanel(); filtersContainer = new JPanel();
filtersContainer.setLayout(new BoxLayout(filtersContainer, BoxLayout.X_AXIS)); filtersContainer.setLayout(new BoxLayout(filtersContainer, BoxLayout.X_AXIS));
filtersContainer.add(Box.createHorizontalStrut(5)); filtersContainer.add(Box.createHorizontalStrut(5));
filtersContainer.add(new JLabel(_("Type:"))); filtersContainer.add(new JLabel(_("Type")));
filtersContainer.add(Box.createHorizontalStrut(5)); filtersContainer.add(Box.createHorizontalStrut(5));
filtersContainer.add(categoryChooser); filtersContainer.add(categoryChooser);
filtersContainer.add(Box.createHorizontalStrut(5)); filtersContainer.add(Box.createHorizontalStrut(5));

View File

@ -58,8 +58,6 @@ public abstract class ContributedLibrary extends DownloadableContribution {
public abstract String getSentence(); public abstract String getSentence();
public abstract String getSupportLevel();
public abstract List<String> getArchitectures(); public abstract List<String> getArchitectures();
public abstract List<String> getTypes(); public abstract List<String> getTypes();
@ -91,8 +89,7 @@ public abstract class ContributedLibrary extends DownloadableContribution {
* @return * @return
*/ */
public boolean supportsArchitecture(String reqArch) { public boolean supportsArchitecture(String reqArch) {
return getArchitectures().contains(reqArch) || return getArchitectures().contains(reqArch) || getArchitectures().contains("*");
getArchitectures().contains("*");
} }
/** /**

View File

@ -123,8 +123,4 @@ public class LegacyUserLibrary extends UserLibrary {
return "LegacyLibrary:" + name + "\n"; return "LegacyLibrary:" + name + "\n";
} }
@Override
public String getSupportLevel() {
return "Unsupported";
}
} }

View File

@ -278,8 +278,4 @@ public class UserLibrary extends ContributedLibrary {
return res; return res;
} }
@Override
public String getSupportLevel() {
return "Unsupported";
}
} }