This is the mail archive of the
rhdb@sources.redhat.com
mailing list for the RHDB project.
Re: [patch] multiple selection in rhdb-explain db configuration
- From: Fernando Nasser <fnasser at redhat dot com>
- To: Liam Stewart <liam at ualberta dot ca>
- Cc: rhdb at sources dot redhat dot com
- Date: Wed, 25 Jun 2003 09:11:36 -0400
- Subject: Re: [patch] multiple selection in rhdb-explain db configuration
- Organization: Red Hat Canada
- References: <20030625012235.GB23872@ualberta.ca>
Liam Stewart wrote:
This patch adds multiple selection in the database configuration box (it
comes from not using the program after a long time :) The items selected
can be copied or deleted. The first one selected will be the one edited
if 'edit' is pressed.
Liam
Humm, I am not sure we want to do that. It does make it easier for
someone to delete connections and copy them but it makes it a little bit
confusing for the Edit option. And how many times one will be deleting
connections (except when testing the tool itself)? Copying several at a
time seems even less useful. IMO the disadvantages outweigh the gains
on this one.
But I will ask/wait for other people's opinions and consult the GUI
guidelines before we rule this out.
Weather we use it or not, thanks for taking the time to create the
patch. Please keep them coming ;-)
Best regards,
Fernando
------------------------------------------------------------------------
Index: rhdb-explain/src/com/redhat/rhdb/vise/DatabasesDialog.java
===================================================================
RCS file: /cvs/rhdb/src/rhdb-explain/src/com/redhat/rhdb/vise/DatabasesDialog.java,v
retrieving revision 1.1.1.1
diff -c -r1.1.1.1 DatabasesDialog.java
*** rhdb-explain/src/com/redhat/rhdb/vise/DatabasesDialog.java 27 Feb 2003 16:29:23 -0000 1.1.1.1
--- rhdb-explain/src/com/redhat/rhdb/vise/DatabasesDialog.java 25 Jun 2003 00:20:05 -0000
***************
*** 304,310 ****
private void removeEntry()
{
! cm.removeDatabaseModel(dblist.getSelectedIndex());
}
private void editEntry()
--- 304,315 ----
private void removeEntry()
{
! if (dblist.getSelectedIndex() == -1)
! return;
!
! int[] indices = dblist.getSelectedIndices();
! for (int i = indices.length - 1; i >= 0; i--)
! cm.removeDatabaseModel(indices[i]);
}
private void editEntry()
***************
*** 335,362 ****
if (dblist.getSelectedIndex() == -1)
return;
! DatabaseModel sel = cm.getDatabaseModel(dblist.getSelectedIndex());
! DatabaseModel copy = (DatabaseModel) sel.clone();
! boolean ok = false;
! String orig = copy.getName();
! int i = 1;
!
! while (!ok)
! {
! copy.setName(ExplainResources.getString(ExplainResources.PREFS_COPYDB_NAME,
! new Integer(i),
! orig));
! i++;
! try {
! cm.addDatabaseModel(copy);
! select(dblm.getSize() - 1);
! ok = true;
! } catch (ConfigurationException ex) {
! // ignore
}
}
}
private void initComponents()
--- 340,372 ----
if (dblist.getSelectedIndex() == -1)
return;
! int[] indices = dblist.getSelectedIndices();
! for (int i = 0; i < indices.length; i++)
! {
! DatabaseModel sel = cm.getDatabaseModel(indices[i]);
! DatabaseModel copy = (DatabaseModel) sel.clone();
! boolean ok = false;
! String orig = copy.getName();
! int j = 1;
! while (!ok)
! {
! copy.setName(ExplainResources.getString(ExplainResources.PREFS_COPYDB_NAME,
! new Integer(j),
! orig));
! j++;
!
! try {
! cm.addDatabaseModel(copy);
! ok = true;
! } catch (ConfigurationException ex) {
! // ignore
! }
}
}
+
+ select(dblm.getSize() - 1);
}
private void initComponents()
***************
*** 405,411 ****
// the list
dblist = new JList();
- dblist.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
dblist.addListSelectionListener(dblsl);
dblist.addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent e)
--- 415,420 ----
***************
*** 508,518 ****
removeAction.setEnabled(false);
copyAction.setEnabled(false);
}
! else
{
configAction.setEnabled(true);
removeAction.setEnabled(true);
copyAction.setEnabled(true);
}
}
}
--- 517,533 ----
removeAction.setEnabled(false);
copyAction.setEnabled(false);
}
! else if (dblist.getMinSelectionIndex() == dblist.getMaxSelectionIndex())
{
configAction.setEnabled(true);
removeAction.setEnabled(true);
copyAction.setEnabled(true);
+ }
+ else
+ {
+ configAction.setEnabled(false);
+ removeAction.setEnabled(true);
+ copyAction.setEnabled(true);
}
}
}
--
Fernando Nasser
Red Hat Canada Ltd. E-Mail: fnasser@redhat.com
2323 Yonge Street, Suite #300
Toronto, Ontario M4P 2C9