Author: pwang
Date: 2009-03-23 11:55:34 -0700 (Mon, 23 Mar 2009)
New Revision: 16323
Modified:
csplugins/trunk/ucsd/pwang/cyprovision/org.eclipse.equinox.p2.ui2/src/org/eclipse/equinox/internal/provisional/p2/ui2/dialogs/InstallNewSoftwarePanel.java
Log:
Handle events from UI components
Modified:
csplugins/trunk/ucsd/pwang/cyprovision/org.eclipse.equinox.p2.ui2/src/org/eclipse/equinox/internal/provisional/p2/ui2/dialogs/InstallNewSoftwarePanel.java
===================================================================
---
csplugins/trunk/ucsd/pwang/cyprovision/org.eclipse.equinox.p2.ui2/src/org/eclipse/equinox/internal/provisional/p2/ui2/dialogs/InstallNewSoftwarePanel.java
2009-03-23 18:11:18 UTC (rev 16322)
+++
csplugins/trunk/ucsd/pwang/cyprovision/org.eclipse.equinox.p2.ui2/src/org/eclipse/equinox/internal/provisional/p2/ui2/dialogs/InstallNewSoftwarePanel.java
2009-03-23 18:55:34 UTC (rev 16323)
@@ -2,18 +2,32 @@
import java.awt.event.*;
import javax.swing.*;
-
+import javax.swing.tree.TreePath;
+import java.net.URISyntaxException;
import org.eclipse.equinox.internal.p2.ui2.ProvUIMessages;
+import org.eclipse.equinox.internal.p2.ui2.model.MetadataRepositoryElement;
+import org.eclipse.equinox.internal.p2.ui2.model.CategoryElement;
import
org.eclipse.equinox.internal.provisional.p2.ui2.QueryableMetadataRepositoryManager;
import org.eclipse.equinox.internal.provisional.p2.ui2.dialogs.AddSiteDialog;
+import
org.eclipse.equinox.internal.provisional.p2.ui2.model.MetadataRepositories;
import
org.eclipse.equinox.internal.provisional.p2.ui2.policy.IUViewQueryContext;
import org.eclipse.equinox.internal.provisional.p2.ui2.policy.Policy;
+import org.eclipse.equinox.internal.p2.ui2.model.QueriedElement;
+import org.eclipse.equinox.internal.p2.ui2.model.AvailableIUElement;
+import org.eclipse.equinox.internal.provisional.p2.metadata.IInstallableUnit;
+import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.net.URI;
import
org.eclipse.equinox.internal.provisional.p2.ui2.dialogs.RepositoryManipulationDialog;
+import javax.swing.tree.DefaultMutableTreeNode;
+import javax.swing.tree.DefaultTreeModel;
+import javax.swing.event.TreeSelectionListener;
+import javax.swing.event.TreeSelectionEvent;
+
+
public class InstallNewSoftwarePanel extends JPanel implements ActionListener,
ItemListener,MouseListener {
JDialog dlg;
@@ -22,14 +36,23 @@
QueryableMetadataRepositoryManager manager;
IUViewQueryContext queryContext;
URI[] comboRepos;
- private static final String ALL =
ProvUIMessages.AvailableIUsPage_AllSites;
- private static final int INDEX_ALL = 0;
+ //private static final String ALL =
ProvUIMessages.AvailableIUsPage_AllSites;
+ //private static final int INDEX_ALL = 0;
private String AllAvailableSites = "All Available Sites";
+ private URI repositoryFilter = null;
+ private RepositorySetting lastRepositorySetting = new
RepositorySetting(); // use default setting
/** Creates new form AvailableSoftwarePanel */
public InstallNewSoftwarePanel(JDialog dlg, Policy policy, String
profileId, QueryableMetadataRepositoryManager manager) {
initComponents();
+
+ // filter is a place-holder (not implemented yet), we may need
it in the future
+ tfFilter.setVisible(false);
+
+ // we only implemented useCategoty, but we leave a place-holder
for future
+ useCategoriesCheckbox.setVisible(false);
+
this.dlg = dlg;
this.policy = policy;
this.profileId = profileId;
@@ -38,10 +61,65 @@
fillRepoCombo(null);
- repoCombo.addItemListener(this);
+ // now initialize the repository tree
+ initRepoTree();
- //taAvailableSoftware.setEditable(false);
+ addEventListeners();
+ }
+
+
+ private void initRepoTree(){
+ jTree1.setRootVisible(false);
+ jTree1.setShowsRootHandles(true);
+
+ CheckBoxTreeCellRenderer r = new
CheckBoxTreeCellRenderer(jTree1, jTree1.getCellRenderer());
+ jTree1.setCellRenderer(r);
+
+ jTree1.addMouseListener(new MouseAdapter() {
+ public void mouseReleased(MouseEvent e) {
+ // Invoke later to ensure all mouse handling is completed
+ SwingUtilities.invokeLater(new Runnable() { public void run() {
+ CheckBoxTreeCellRenderer rr =
(CheckBoxTreeCellRenderer)jTree1.getCellRenderer();
+ String text1 = createText(rr.getCheckedPaths());
+
+ System.out.println("\tgetCheckedPaths():\n"+ text1);
+ }});
+ }
+ });
+
+ DefaultTreeModel model= rebuildTreeModel();
+ jTree1.setModel(model);
+
+ }
+
+
+ private static String createText(TreePath[] paths) {
+ if (paths.length == 0) {
+ return "Nothing checked";
+ }
+ String checked = "Checked:\n";
+ for (int i=0;i < paths.length;i++) {
+ checked += paths[i] + "\n";
+ }
+ return checked;
+ }
+
+
+ Object getNewInput() {
+
+ System.out.println("getNewInput(): repositoryFilter
="+repositoryFilter);
+
+ if (repositoryFilter != null) {
+ return new MetadataRepositoryElement(queryContext,
policy, repositoryFilter, true);
+ }
+ return new MetadataRepositories(queryContext, policy, manager);
+ }
+
+
+ private void addEventListeners(){
+ repoCombo.addItemListener(this);
+
btnCancel.addActionListener(this);
btnInstall.addActionListener(this);
btnAddSite.addActionListener(this);
@@ -51,28 +129,58 @@
hideInstalledCheckbox.addItemListener(this);
lbAvailableSoftwareSites.addMouseListener(this);
- lbAlreadyInstalled.addMouseListener(this);
+ lbAlreadyInstalled.addMouseListener(this);
+ TreeSelectionListener treeSelectionListener = new
TreeSelectionListener(){
+ public void valueChanged(TreeSelectionEvent tse){
+ JTree theTree = (JTree) tse.getSource();
+ TreePath[] selectedPaths =
theTree.getSelectionPaths();
+
+ if (selectedPaths.length == 1){
+ TreePath thePath = selectedPaths[0];
+ DefaultMutableTreeNode theNode =
(DefaultMutableTreeNode) thePath.getLastPathComponent();
+ Object node_userObj =
theNode.getUserObject();
+
//System.out.println("node_userObj.getClass() = "+node_userObj.getClass());
+ if (node_userObj instanceof
AvailableIUElement){
+ AvailableIUElement
avail_iu_element = (AvailableIUElement) node_userObj;
+
+ IInstallableUnit installUnit
=avail_iu_element.getIU();
+ if
(installUnit.getProperty(IInstallableUnit.PROP_DESCRIPTION) == null){
+ taDetails.setText("No
description is available");
+ }
+ else {
+
taDetails.setText(installUnit.getProperty(IInstallableUnit.PROP_DESCRIPTION));
+ }
+ }
+ }
+ else if (selectedPaths.length > 1){
+ taDetails.setText("");
+ }
+
+ }
+ };
+ jTree1.addTreeSelectionListener(treeSelectionListener);
+
}
-
void fillRepoCombo(final String selection) {
-
- //System.out.println("fillRepoCombo");
-
+
if (repoCombo == null || policy.getRepositoryManipulator() ==
null)
return;
comboRepos =
policy.getRepositoryManipulator().getKnownRepositories();
final String[] items = new String[comboRepos.length + 1];
- items[0] = AllAvailableSites;
+ items[0] = AllAvailableSites; // i.e. "All Available Sites"
for (int i = 0; i < comboRepos.length; i++){
items[i + 1] = comboRepos[i].toString();
- //System.out.println("\t"+ items[i + 1]);
}
DefaultComboBoxModel model = new DefaultComboBoxModel(items);
- repoCombo.setModel(model);
+ repoCombo.setModel(model);
+
+ if (selection !=null && !selection.equals("")){
+ repoCombo.setSelectedItem(selection);
+ }
}
@@ -106,9 +214,15 @@
if (defaultQueryContext.getHideAlreadyInstalled()) {
queryContext.hideAlreadyInstalled(profileId);
}
+ //queryContext.showAlreadyInstalled();//profileId);
+ //System.out.println();
+
+ //queryContext.setShowLatestVersionsOnly(false);
queryContext.setShowLatestVersionsOnly(defaultQueryContext.getShowLatestVersionsOnly());
-
queryContext.setVisibleAvailableIUProperty(defaultQueryContext.getVisibleAvailableIUProperty());
-
queryContext.setVisibleInstalledIUProperty(defaultQueryContext.getVisibleInstalledIUProperty());
+
+
queryContext.setVisibleAvailableIUProperty(defaultQueryContext.getVisibleAvailableIUProperty());
// org.eclipse.equinox.p2.type.group
+
queryContext.setVisibleInstalledIUProperty(defaultQueryContext.getVisibleInstalledIUProperty());
// org.eclipse.equinox.p2.type.root
+
}
@@ -126,7 +240,6 @@
addSiteDlg.setSize(400, 150);
addSiteDlg.setVisible(true);
}
-
}
}
@@ -141,67 +254,219 @@
} else if (chk == hideInstalledCheckbox) {
//System.out.println("btnAddSite is clicked");
}
- //updateJTree();
}
if (ie.getSource() instanceof JComboBox) {
JComboBox cmb = (JComboBox) ie.getSource();
if (cmb == repoCombo) {
- //updateJTree();
+ //System.out.println("repoCombo state changed");
}
}
+
updateJTree();
}
private void updateJTree(){
- // make sure do update only if there is any change in the
setting
+ // make sure do updating only if there is any change in the
setting
RepositorySetting currentRepSetting = new
RepositorySetting((String)repoCombo.getSelectedItem(),
useCategoriesCheckbox.isSelected(),showLatestVersionsCheckbox.isSelected(),hideInstalledCheckbox.isSelected());
+
+ // If there is no change in setting, do not update the tree
if (currentRepSetting.equals(lastRepositorySetting)){
return;
}
else {
lastRepositorySetting = currentRepSetting;
}
+
+ // The setting has been changed, do updating now
System.out.println("updateJTree()...");
+
+ try {
+ repositoryFilter =new
URI(currentRepSetting.getSelectedRepository());
+ }
+ catch (URISyntaxException uri_e){
+ repositoryFilter = null;
+ }
+
+ if
(currentRepSetting.getSelectedRepository().equalsIgnoreCase(this.AllAvailableSites)){
+ repositoryFilter = null;
+ }
+ updateQueryContext(currentRepSetting);
+
+ DefaultTreeModel newModel= rebuildTreeModel();
+ jTree1.setModel(newModel);
+ }
+
+
+ private DefaultTreeModel rebuildTreeModel(){
+
+ DefaultMutableTreeNode root = new
DefaultMutableTreeNode("JTree");
+ DefaultMutableTreeNode parent;
+
+ Object obj = getNewInput();
+
+ System.out.println("obj.getClass()"+ obj.getClass());
+
+ if (obj instanceof MetadataRepositories){
+
+ System.out.println("Case for MetadataRepositories");
+
+ MetadataRepositories repos = (MetadataRepositories) obj;
+
+ if (!repos.hasChildren(null)){
+ return new DefaultTreeModel(null);
+ }
+
+ Object[] catElementObjs = repos.getChildren(null);
+ for (int i=0; i< catElementObjs.length; i++){
+ parent = new DefaultMutableTreeNode();
+ parent.setUserObject(catElementObjs[i]);
+
+ CategoryElement catElement = (CategoryElement)
catElementObjs[i];
+
+ if (catElement.hasChildren(null)){
+ Object[] cat_children =
catElement.getChildren(null);
+ for (int j=0; j<cat_children.length;
j++){
+ DefaultMutableTreeNode iu2 =
new DefaultMutableTreeNode();
+
iu2.setUserObject(cat_children[j]);
+ parent.add(iu2);
+ }
+ }
+ root.add(parent);
+ }
+ }
+ else if (obj instanceof MetadataRepositoryElement){
+ MetadataRepositoryElement repoElement =
(MetadataRepositoryElement) obj;
+
+ if (!repoElement.hasChildren(null)){
+ return new DefaultTreeModel(null);
+ }
+
+ //parent = new DefaultMutableTreeNode();
+ //parent.setUserObject(repoElement);
+
+
+ Object[] cat_children = repoElement.getChildren(null);
+
+ System.out.println("repoElement has " +
cat_children.length+ " Children");
+
+ for (int j=0; j<cat_children.length; j++){
+
+ System.out.println("\t child type : "
+cat_children[j].getClass());
+
+ parent = new DefaultMutableTreeNode();
+ parent.setUserObject(cat_children[j]);
+
+ if (cat_children[j] instanceof CategoryElement){
+ CategoryElement cat_element =
(CategoryElement) cat_children[j];
+ Object[] childrenObjs =
cat_element.getChildren(null);
+
+ for (int k=0; k<childrenObjs.length;
k++){
+
+ DefaultMutableTreeNode iu3 =
new DefaultMutableTreeNode();
+
iu3.setUserObject(childrenObjs[k]);
+ parent.add(iu3);
+ }
+
+ }
+
+ root.add(parent);
+ }
+
+
+
+ }
+ else {
+ //this should not happen, otherwise there is something
wrong
+ }
+
+ return new DefaultTreeModel(root);
+ }
+
+
+ private DefaultTreeModel rebuildTreeModel_1(){
+ DefaultMutableTreeNode root = new DefaultMutableTreeNode("JTree");
+ DefaultMutableTreeNode parent;
- //System.out.println("\tCurrent setting:");
- //String selectedItem = (String) repoCombo.getSelectedItem();
- //System.out.println("\tRespitory combobox: selectedItem = "+
selectedItem);
- //System.out.println("\tuseCategoriesCheckbox.isSelected()
="+useCategoriesCheckbox.isSelected());
- //System.out.println("\tshowLatestVersionsCheckbox.isSelected()
="+showLatestVersionsCheckbox.isSelected());
- //System.out.println("\thideInstalledCheckbox.isSelected()
="+hideInstalledCheckbox.isSelected());
-
- System.out.println("\tQuery metadataRepository based on setting
...");
- updateQueryContext(currentRepSetting);
-
+ if (repositoryFilter != null){
+ MetadataRepositoryElement repoElement =
(MetadataRepositoryElement)getNewInput();
+
+ String name =
((AvailableIUElement)repoElement.getChildren(null)[0]).getIU().getProperty("org.eclipse.equinox.p2.name");
+ parent = new DefaultMutableTreeNode(name);
+
+ Object[] availIUElementObjs =
repoElement.getChildren(null);
+
+ for (int j=0; j<availIUElementObjs.length; j++){
+ AvailableIUElement availIUElement =
(AvailableIUElement) availIUElementObjs[j];
+
+ String iu_name_version =
availIUElement.getIU().getProperty("org.eclipse.equinox.p2.name") + " ---
version " +availIUElement.getIU().getVersion();
+ DefaultMutableTreeNode iu1 = new
DefaultMutableTreeNode(iu_name_version);
+ parent.add(iu1);
+ }
+
+ root.add(parent);
+ }
+ else { //repositoryFilter = null, i.e. Selected "All Available
Sites"
+ MetadataRepositories repos = (MetadataRepositories)
getNewInput();
+
+ Object [] objs = repos.getChildren(null);
+
+ int repoCount = objs.length;
+
+ for (int i=0; i< repoCount; i++){
+ CategoryElement catElement = (CategoryElement) objs[i];
+
+ String cat_name =
catElement.getIU().getProperty("org.eclipse.equinox.p2.name");
+ parent = new DefaultMutableTreeNode(cat_name);
+
+ Object[] availIUElementObjs =
catElement.getChildren(null);
+
+ for (int j=0; j<availIUElementObjs.length; j++){
+ AvailableIUElement availIUElement =
(AvailableIUElement) availIUElementObjs[j];
+
+ String iu_name_version =
availIUElement.getIU().getProperty("org.eclipse.equinox.p2.name") + " ---
version " +availIUElement.getIU().getVersion();
+ DefaultMutableTreeNode iu1 = new
DefaultMutableTreeNode(iu_name_version);
+ parent.add(iu1);
+ }
+
+ root.add(parent);
+ }
+ }
+
+ return new DefaultTreeModel(root);
}
+
-
private void updateQueryContext(RepositorySetting pRepQuerySetting){
//
IUViewQueryContext defaultQueryContext =
policy.getQueryContext();
- queryContext = new
IUViewQueryContext(defaultQueryContext.getViewType());
+ queryContext = new
IUViewQueryContext(defaultQueryContext.getViewType()); //
defaultQueryContext.getViewType() =1
-
//System.out.println("defaultQueryContext.getViewType()="+defaultQueryContext.getViewType());
// 1
+
queryContext.setArtifactRepositoryFlags(defaultQueryContext.getArtifactRepositoryFlags());
//defaultQueryContext.getArtifactRepositoryFlags()=2
+
queryContext.setMetadataRepositoryFlags(defaultQueryContext.getMetadataRepositoryFlags());
-
queryContext.setArtifactRepositoryFlags(defaultQueryContext.getArtifactRepositoryFlags());
-
-
//System.out.println("defaultQueryContext.getArtifactRepositoryFlags()="+defaultQueryContext.getArtifactRepositoryFlags());
//2
-
-
queryContext.setMetadataRepositoryFlags(defaultQueryContext.getMetadataRepositoryFlags());
if (pRepQuerySetting.getHideInstalled()) {
queryContext.hideAlreadyInstalled(profileId);
}
queryContext.setShowLatestVersionsOnly(pRepQuerySetting.getShowLatestVersions());
-
queryContext.setUseCategories(pRepQuerySetting.getUseCategories());
+
//queryContext.setUseCategories(pRepQuerySetting.getUseCategories());
+ queryContext.setUseCategories(true);
+
if
(pRepQuerySetting.getSelectedRepository().equalsIgnoreCase(AllAvailableSites)) {
//availableIUGroup.setRepositoryFilter(null);
+ repositoryFilter = null;
} else {
//availableIUGroup.setRepositoryFilter(pRepQuerySetting.getSelectedRepository());
+ try {
+ repositoryFilter = new
URI(pRepQuerySetting.getSelectedRepository());
+ }
+ catch (URISyntaxException uri_exp){
+ repositoryFilter = null;
+ }
}
queryContext.setVisibleAvailableIUProperty(defaultQueryContext.getVisibleAvailableIUProperty());
@@ -209,11 +474,7 @@
}
-
-
- private RepositorySetting lastRepositorySetting = new
RepositorySetting(); // use default setting
-
-
+
// mouseListener
public void mouseClicked(MouseEvent e) {
if (e.getSource() instanceof JLabel){
@@ -237,6 +498,7 @@
public void mousePressed(MouseEvent e) {}
public void mouseReleased(MouseEvent e) {}
+
/** This method is called from within the constructor to
@@ -262,7 +524,9 @@
pnlTree = new javax.swing.JPanel();
jScrollPane1 = new javax.swing.JScrollPane();
jTree1 = new javax.swing.JTree();
+ jScrollPane2 = new javax.swing.JScrollPane();
pnlDetails = new javax.swing.JPanel();
+ taDetails = new javax.swing.JTextArea();
jPanel3 = new javax.swing.JPanel();
showLatestVersionsCheckbox = new javax.swing.JCheckBox();
useCategoriesCheckbox = new javax.swing.JCheckBox();
@@ -296,7 +560,7 @@
gridBagConstraints.insets = new java.awt.Insets(0, 0, 0, 5);
jPanel5.add(jLabel3, gridBagConstraints);
- repoCombo.setModel(new javax.swing.DefaultComboBoxModel(new String[] {
AllAvailableSites, "Item 4" }));
+ repoCombo.setModel(new javax.swing.DefaultComboBoxModel(new String[] {
"All Available Sites", "Item 4" }));
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.weightx = 1.0;
@@ -383,31 +647,35 @@
gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
gridBagConstraints.weightx = 1.0;
- gridBagConstraints.weighty = 1.0;
+ gridBagConstraints.weighty = 0.8;
gridBagConstraints.insets = new java.awt.Insets(10, 10, 10, 10);
add(pnlTree, gridBagConstraints);
-
pnlDetails.setBorder(javax.swing.BorderFactory.createTitledBorder("Details"));
+
jScrollPane2.setBorder(javax.swing.BorderFactory.createTitledBorder("Details"));
+ pnlDetails.setLayout(new java.awt.GridBagLayout());
+
pnlDetails.setMinimumSize(new java.awt.Dimension(0, 50));
pnlDetails.setPreferredSize(new java.awt.Dimension(0, 50));
- javax.swing.GroupLayout pnlDetailsLayout = new
javax.swing.GroupLayout(pnlDetails);
- pnlDetails.setLayout(pnlDetailsLayout);
- pnlDetailsLayout.setHorizontalGroup(
-
pnlDetailsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGap(0, 620, Short.MAX_VALUE)
- );
- pnlDetailsLayout.setVerticalGroup(
-
pnlDetailsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGap(0, 24, Short.MAX_VALUE)
- );
+ taDetails.setBackground(new java.awt.Color(212, 208, 200));
+ taDetails.setColumns(20);
+ taDetails.setEditable(false);
+ taDetails.setRows(5);
gridBagConstraints = new java.awt.GridBagConstraints();
+ gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
+ gridBagConstraints.weightx = 1.0;
+ gridBagConstraints.weighty = 1.0;
+ pnlDetails.add(taDetails, gridBagConstraints);
+
+ jScrollPane2.setViewportView(pnlDetails);
+
+ gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 6;
- gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
- gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
+ gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
gridBagConstraints.weightx = 1.0;
+ gridBagConstraints.weighty = 0.5;
gridBagConstraints.insets = new java.awt.Insets(0, 10, 10, 10);
- add(pnlDetails, gridBagConstraints);
+ add(jScrollPane2, gridBagConstraints);
jPanel3.setLayout(new java.awt.GridBagLayout());
@@ -419,6 +687,7 @@
gridBagConstraints.insets = new java.awt.Insets(0, 0, 5, 0);
jPanel3.add(showLatestVersionsCheckbox, gridBagConstraints);
+ useCategoriesCheckbox.setSelected(true);
useCategoriesCheckbox.setText("Group items by category");
useCategoriesCheckbox.setBorder(javax.swing.BorderFactory.createEmptyBorder(0,
0, 0, 0));
useCategoriesCheckbox.setMargin(new java.awt.Insets(0, 0, 0, 0));
@@ -428,6 +697,7 @@
gridBagConstraints.insets = new java.awt.Insets(0, 0, 5, 0);
jPanel3.add(useCategoriesCheckbox, gridBagConstraints);
+ hideInstalledCheckbox.setSelected(true);
hideInstalledCheckbox.setText("Hide items that are already installed");
hideInstalledCheckbox.setBorder(javax.swing.BorderFactory.createEmptyBorder(0,
0, 0, 0));
hideInstalledCheckbox.setMargin(new java.awt.Insets(0, 0, 0, 0));
@@ -441,6 +711,7 @@
jLabel2.setText("What is ");
gridBagConstraints = new java.awt.GridBagConstraints();
+ gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 1;
gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
gridBagConstraints.insets = new java.awt.Insets(0, 40, 0, 0);
@@ -497,6 +768,7 @@
private javax.swing.JPanel jPanel3;
private javax.swing.JPanel jPanel5;
private javax.swing.JScrollPane jScrollPane1;
+ private javax.swing.JScrollPane jScrollPane2;
private javax.swing.JTree jTree1;
private javax.swing.JLabel lbAlreadyInstalled;
private javax.swing.JLabel lbAvailableSoftwareSites;
@@ -506,16 +778,20 @@
private javax.swing.JComboBox repoCombo;
private javax.swing.JCheckBox showLatestVersionsCheckbox;
private javax.swing.JTextArea taAvailableSoftware;
+ private javax.swing.JTextArea taDetails;
private javax.swing.JTextField tfFilter;
private javax.swing.JCheckBox useCategoriesCheckbox;
// End of variables declaration
-
+
+
+
+
class RepositorySetting {
// default setting
private String selectedRepository = AllAvailableSites;
- boolean useCategories = false;
- boolean showLatestVersions = true;
- boolean hideInstalled = false;
+ private boolean useCategories = true;
+ private boolean showLatestVersions = true;
+ private boolean hideInstalled = false;
// default constructor
public RepositorySetting(){}
@@ -527,30 +803,30 @@
this.hideInstalled = hideInstalled;
}
- String getSelectedRepository(){
+ public String getSelectedRepository(){
return selectedRepository;
}
- boolean getUseCategories(){
+ public boolean getUseCategories(){
return useCategories;
}
- boolean getShowLatestVersions(){
+ public boolean getShowLatestVersions(){
return showLatestVersions;
}
- boolean getHideInstalled(){
+ public boolean getHideInstalled(){
return hideInstalled;
}
- void setSelectedRepository(String pRepositoryName){
+ public void setSelectedRepository(String pRepositoryName){
selectedRepository = pRepositoryName;
}
- void setUseCategories(boolean pUseCategories){
+ public void setUseCategories(boolean pUseCategories){
useCategories = pUseCategories;
}
- void setShowLatestVersions(boolean pShowLatestVersions){
+ public void setShowLatestVersions(boolean pShowLatestVersions){
showLatestVersions = pShowLatestVersions;
}
- void setHideInstalled(boolean pHideInstalled){
+ public void setHideInstalled(boolean pHideInstalled){
hideInstalled = pHideInstalled;
}
@@ -569,7 +845,16 @@
}
return true;
}
+
+ public String toString(){
+
+ String retValue = "\tCurrent setting:";
+ retValue += "\tRespitory combobox: selectedItem = "+
selectedRepository;
+ retValue += "\tuseCategoriesCheckbox.isSelected()
="+useCategories;
+ retValue += "\tshowLatestVersionsCheckbox.isSelected()
="+showLatestVersions;
+ retValue += "\thideInstalledCheckbox.isSelected() ="+
hideInstalled;
+
+ return retValue;
+ }
}
-
-
}
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"cytoscape-cvs" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/cytoscape-cvs?hl=en
-~----------~----~----~----~------~----~------~--~---