You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mina.apache.org by mj...@apache.org on 2009/08/15 11:56:51 UTC
svn commit: r804446 - in
/mina/sandbox/vysper/trunk/demo/pubsub/client/src/main/java/org/apache/vysper/demo/pubsub/client:
PubsubClientGUI.java PubsubNode.java
Author: mjakl
Date: Sat Aug 15 09:56:51 2009
New Revision: 804446
URL: http://svn.apache.org/viewvc?rev=804446&view=rev
Log:
Fixed enabling and disabling of the delete button.
Modified:
mina/sandbox/vysper/trunk/demo/pubsub/client/src/main/java/org/apache/vysper/demo/pubsub/client/PubsubClientGUI.java
mina/sandbox/vysper/trunk/demo/pubsub/client/src/main/java/org/apache/vysper/demo/pubsub/client/PubsubNode.java
Modified: mina/sandbox/vysper/trunk/demo/pubsub/client/src/main/java/org/apache/vysper/demo/pubsub/client/PubsubClientGUI.java
URL: http://svn.apache.org/viewvc/mina/sandbox/vysper/trunk/demo/pubsub/client/src/main/java/org/apache/vysper/demo/pubsub/client/PubsubClientGUI.java?rev=804446&r1=804445&r2=804446&view=diff
==============================================================================
--- mina/sandbox/vysper/trunk/demo/pubsub/client/src/main/java/org/apache/vysper/demo/pubsub/client/PubsubClientGUI.java (original)
+++ mina/sandbox/vysper/trunk/demo/pubsub/client/src/main/java/org/apache/vysper/demo/pubsub/client/PubsubClientGUI.java Sat Aug 15 09:56:51 2009
@@ -175,19 +175,37 @@
public void valueChanged(ListSelectionEvent e) {
ListSelectionModel lsm = (ListSelectionModel)e.getSource();
- if(lsm.isSelectionEmpty()) {
- // disable delete button
- delete.setEnabled(false);
- pcm.deselectNode();
- } else {
- // store the node and enable delete button
- PubsubTableModel tableModel = pcm.getTableModel();
- String selectedNode = (String)tableModel.getValueAt(e.getFirstIndex(), 0);
- pcm.selectNode(selectedNode);
- if((Boolean)tableModel.getValueAt(e.getFirstIndex(), 2)) { //owner
- delete.setEnabled(true);
+ if(e.getValueIsAdjusting()) {
+ if(lsm.isSelectionEmpty()) {
+ // disable delete button
+ delete.setEnabled(false);
+ pcm.deselectNode();
+ } else {
+ // store the node and enable delete button
+ PubsubTableModel tableModel = pcm.getTableModel();
+
+ int idx = getNewSelectionIndex(e, tableModel);
+
+ String selectedNode = (String)tableModel.getValueAt(idx, 0);
+ pcm.selectNode(selectedNode);
+ Boolean owner = (Boolean)tableModel.getValueAt(idx, 2);
+ if(owner !=null && owner == Boolean.TRUE ) { //owner
+ delete.setEnabled(true);
+ } else {
+ delete.setEnabled(false);
+ }
}
}
}
+ private int getNewSelectionIndex(ListSelectionEvent e, PubsubTableModel tableModel) {
+ int idx = e.getFirstIndex(); // check which one is the right index (the new one)
+ String selectedNode = (String)tableModel.getValueAt(idx, 0);
+ if(pcm.getSelectedNode() != null && pcm.getSelectedNode().equals(selectedNode)) {
+ idx = e.getLastIndex();
+
+ }
+ return idx;
+ }
+
}
Modified: mina/sandbox/vysper/trunk/demo/pubsub/client/src/main/java/org/apache/vysper/demo/pubsub/client/PubsubNode.java
URL: http://svn.apache.org/viewvc/mina/sandbox/vysper/trunk/demo/pubsub/client/src/main/java/org/apache/vysper/demo/pubsub/client/PubsubNode.java?rev=804446&r1=804445&r2=804446&view=diff
==============================================================================
--- mina/sandbox/vysper/trunk/demo/pubsub/client/src/main/java/org/apache/vysper/demo/pubsub/client/PubsubNode.java (original)
+++ mina/sandbox/vysper/trunk/demo/pubsub/client/src/main/java/org/apache/vysper/demo/pubsub/client/PubsubNode.java Sat Aug 15 09:56:51 2009
@@ -31,6 +31,8 @@
public PubsubNode(String node) {
this.node = node;
+ this.subscribed = false;
+ this.ownership = false;
}
public String getNode() {
@@ -39,13 +41,13 @@
public Boolean getSubscribed() {
return subscribed;
}
- public void setSubscribed(Boolean subscribed) {
+ public void setSubscribed(boolean subscribed) {
this.subscribed = subscribed;
}
- public Boolean getOwnership() {
+ public boolean getOwnership() {
return ownership;
}
- public void setOwnership(Boolean owner) {
+ public void setOwnership(boolean owner) {
this.ownership = owner;
}