Author: jflesch
Date: 2007-04-15 17:46:39 +0000 (Sun, 15 Apr 2007)
New Revision: 12752
Modified:
trunk/apps/Thaw/src/thaw/core/Logger.java
trunk/apps/Thaw/src/thaw/core/MainWindow.java
trunk/apps/Thaw/src/thaw/core/PluginManager.java
trunk/apps/Thaw/src/thaw/plugins/PeerMonitor.java
trunk/apps/Thaw/src/thaw/plugins/index/DetailPanel.java
trunk/apps/Thaw/src/thaw/plugins/index/IndexBrowserPanel.java
trunk/apps/Thaw/src/thaw/plugins/peerMonitor/PeerHelper.java
trunk/apps/Thaw/src/thaw/plugins/peerMonitor/PeerMonitorPanel.java
Log:
Add buttons in the PeerMonitor plugin to make the options to add and remove
peers more visible
Modified: trunk/apps/Thaw/src/thaw/core/Logger.java
===================================================================
--- trunk/apps/Thaw/src/thaw/core/Logger.java 2007-04-15 16:59:40 UTC (rev
12751)
+++ trunk/apps/Thaw/src/thaw/core/Logger.java 2007-04-15 17:46:39 UTC (rev
12752)
@@ -22,7 +22,7 @@
* 2 or more is recommanded.
* 4 or more is unhealthy
*/
- public final static int LOG_LEVEL = 3;
+ public final static int LOG_LEVEL = 2;
private static Vector logListeners = null;
Modified: trunk/apps/Thaw/src/thaw/core/MainWindow.java
===================================================================
--- trunk/apps/Thaw/src/thaw/core/MainWindow.java 2007-04-15 16:59:40 UTC
(rev 12751)
+++ trunk/apps/Thaw/src/thaw/core/MainWindow.java 2007-04-15 17:46:39 UTC
(rev 12752)
@@ -245,11 +245,12 @@
JToolBar newToolBar;
Logger.debug(this, "changeButtonsInTheToolbar() : Called by
"+modifier.getClass().getName());
+ Logger.debug(this, newButtons == null ? "-> no button" :
Integer.toString(newButtons.size()) + " buttons");
if ((lastToolBarModifier == null) || (newButtons != null) ||
(lastToolBarModifier == modifier)) {
lastToolBarModifier = modifier;
} else
- /* Only the modifer who added the buttons can remove
them */
+ /* Only the modifier who added the buttons can remove
them */
return;
if (newButtons == null)
Modified: trunk/apps/Thaw/src/thaw/core/PluginManager.java
===================================================================
--- trunk/apps/Thaw/src/thaw/core/PluginManager.java 2007-04-15 16:59:40 UTC
(rev 12751)
+++ trunk/apps/Thaw/src/thaw/core/PluginManager.java 2007-04-15 17:46:39 UTC
(rev 12752)
@@ -204,7 +204,8 @@
plugins.put(className, plugin);
} catch(final Exception e) {
- Logger.warning(this, "loadPlugin('"+className+"'):
Exception: "+e);
+ Logger.error(this, "loadPlugin('"+className+"'):
Exception: "+e);
+ e.printStackTrace();
return null;
}
Modified: trunk/apps/Thaw/src/thaw/plugins/PeerMonitor.java
===================================================================
--- trunk/apps/Thaw/src/thaw/plugins/PeerMonitor.java 2007-04-15 16:59:40 UTC
(rev 12751)
+++ trunk/apps/Thaw/src/thaw/plugins/PeerMonitor.java 2007-04-15 17:46:39 UTC
(rev 12752)
@@ -144,9 +144,13 @@
thaw.gui.IconBox.minPeerMonitor,
peerPanel.getTabPanel());
core.getMainWindow().setSelectedTab(peerPanel.getTabPanel());
+
+ peerPanel.showToolbarButtons();
}
public void hideTab() {
+ peerPanel.hideToolbarButtons();
+
core.getMainWindow().removeTab(peerPanel.getTabPanel());
}
}
Modified: trunk/apps/Thaw/src/thaw/plugins/index/DetailPanel.java
===================================================================
--- trunk/apps/Thaw/src/thaw/plugins/index/DetailPanel.java 2007-04-15
16:59:40 UTC (rev 12751)
+++ trunk/apps/Thaw/src/thaw/plugins/index/DetailPanel.java 2007-04-15
17:46:39 UTC (rev 12752)
@@ -1,11 +1,20 @@
package thaw.plugins.index;
import javax.swing.JPanel;
+import javax.swing.JButton;
+
+/**
+ * Initially, I wanted to use it to show details about the
+ * currently-viewed index, but in the end it will mostly
+ * be used for the comments
+ */
public class DetailPanel {
-
private JPanel panel;
+ private JButton seeComment;
+ private JButton addComment;
+
public DetailPanel() {
panel = new JPanel();
}
@@ -15,5 +24,10 @@
return panel;
}
+
+ public void setList(final FileAndLinkList l) {
+
+ }
+
}
Modified: trunk/apps/Thaw/src/thaw/plugins/index/IndexBrowserPanel.java
===================================================================
--- trunk/apps/Thaw/src/thaw/plugins/index/IndexBrowserPanel.java
2007-04-15 16:59:40 UTC (rev 12751)
+++ trunk/apps/Thaw/src/thaw/plugins/index/IndexBrowserPanel.java
2007-04-15 17:46:39 UTC (rev 12752)
@@ -155,6 +155,7 @@
protected void setList(final FileAndLinkList l) {
tables.setList(l);
+ detailPanel.setList(l);
}
protected void setFileList(final FileList l) {
Modified: trunk/apps/Thaw/src/thaw/plugins/peerMonitor/PeerHelper.java
===================================================================
--- trunk/apps/Thaw/src/thaw/plugins/peerMonitor/PeerHelper.java
2007-04-15 16:59:40 UTC (rev 12751)
+++ trunk/apps/Thaw/src/thaw/plugins/peerMonitor/PeerHelper.java
2007-04-15 17:46:39 UTC (rev 12752)
@@ -156,8 +156,10 @@
this.queueManager = queueManager;
this.src = actionSource;
- if (actionSource != null)
+ if (actionSource != null) {
actionSource.addActionListener(this);
+ actionSource.setEnabled(false);
+ }
}
public void setTarget(Peer peer) {
Modified: trunk/apps/Thaw/src/thaw/plugins/peerMonitor/PeerMonitorPanel.java
===================================================================
--- trunk/apps/Thaw/src/thaw/plugins/peerMonitor/PeerMonitorPanel.java
2007-04-15 16:59:40 UTC (rev 12751)
+++ trunk/apps/Thaw/src/thaw/plugins/peerMonitor/PeerMonitorPanel.java
2007-04-15 17:46:39 UTC (rev 12752)
@@ -10,6 +10,7 @@
import javax.swing.ListCellRenderer;
import javax.swing.BorderFactory;
+import javax.swing.JButton;
import javax.swing.JMenu;
import javax.swing.JPopupMenu;
import javax.swing.JMenuItem;
@@ -37,11 +38,12 @@
import thaw.plugins.PeerMonitor;
+import thaw.plugins.ToolbarModifier;
+
import thaw.core.Config;
import thaw.core.I18n;
import thaw.core.Logger;
-
import thaw.fcp.FCPQueueManager;
import thaw.gui.IconBox;
@@ -100,7 +102,7 @@
private JPopupMenu rightClickMenu;
- private Vector rightClickActions;
+ private Vector buttonActions;
private JButton closeTabButton;
@@ -108,13 +110,18 @@
private PeerMonitor peerMonitor;
+ private ToolbarModifier toolbarModifier;
+
public PeerMonitorPanel(PeerMonitor peerMonitor,
FCPQueueManager queueManager,
Config config,
thaw.core.MainWindow mainWindow) {
+ buttonActions = new Vector();
this.peerMonitor = peerMonitor;
+ toolbarModifier = new ToolbarModifier(mainWindow);
+
advanced =
Boolean.valueOf(config.getValue("advancedMode")).booleanValue();
tabPanel = new JPanel(new BorderLayout(10, 10));
@@ -146,22 +153,47 @@
nodeThreads = new JLabel("");
thawThreads = new JLabel("");
+
+ JPanel southSouth = new JPanel(new BorderLayout(5, 5));
+
JPanel threadPanel = new JPanel(new GridLayout(2, 1));
threadPanel.add(nodeThreads);
threadPanel.add(thawThreads);
+ southSouth.add(threadPanel, BorderLayout.CENTER);
+ JPanel littleButtonPanel = new JPanel(new GridLayout(1, 2));
+
+ JButton littleButton;
+
+ littleButton = new JButton(IconBox.minAdd);
+
littleButton.setToolTipText(I18n.getMessage("thaw.plugin.peerMonitor.addPeer"));
+ buttonActions.add(new PeerHelper.PeerAdder(queueManager,
mainWindow, littleButton));
+ littleButtonPanel.add(littleButton);
+
+ littleButton = new JButton(IconBox.minDelete);
+
littleButton.setToolTipText(I18n.getMessage("thaw.plugin.peerMonitor.removePeer"));
+ buttonActions.add(new PeerHelper.PeerRemover(queueManager,
littleButton));
+ littleButtonPanel.add(littleButton);
+
+ southSouth.add(littleButtonPanel, BorderLayout.WEST);
+
+
+
peerPanel.add(peerListLabel, BorderLayout.NORTH);
peerPanel.add(new JScrollPane(peerList), BorderLayout.CENTER);
JPanel memPanel = new JPanel(new GridLayout(3, 1));
+ memPanel.add(southSouth);
memPanel.add(nodeMemBar);
memPanel.add(thawMemBar);
- memPanel.add(threadPanel);
+
peerPanel.add(memPanel, BorderLayout.SOUTH);
+
+
mainPanel = new JPanel(new GridLayout(2, 1, 10, 10));
@@ -208,22 +240,35 @@
tabPanel.add(headPanel, BorderLayout.NORTH);
rightClickMenu = new JPopupMenu();
- rightClickActions = new Vector();
+
JMenuItem item;
item = new
JMenuItem(I18n.getMessage("thaw.plugin.peerMonitor.addPeer"),
IconBox.minAdd);
- rightClickActions.add(new PeerHelper.PeerAdder(queueManager,
mainWindow, item));
+ buttonActions.add(new PeerHelper.PeerAdder(queueManager,
mainWindow, item));
rightClickMenu.add(item);
item = new
JMenuItem(I18n.getMessage("thaw.plugin.peerMonitor.removePeer"),
IconBox.minDelete);
- rightClickActions.add(new PeerHelper.PeerRemover(queueManager,
item));
+ buttonActions.add(new PeerHelper.PeerRemover(queueManager,
item));
rightClickMenu.add(item);
peerList.addMouseListener(this);
+
+
+ JButton toolbarButton;
+
+ toolbarButton = new JButton(IconBox.add);
+
toolbarButton.setToolTipText(I18n.getMessage("thaw.plugin.peerMonitor.addPeer"));
+ buttonActions.add(new PeerHelper.PeerAdder(queueManager,
mainWindow, toolbarButton));
+ toolbarModifier.addButtonToTheToolbar(toolbarButton);
+
+ toolbarButton = new JButton(IconBox.delete);
+
toolbarButton.setToolTipText(I18n.getMessage("thaw.plugin.peerMonitor.removePeer"));
+ buttonActions.add(new PeerHelper.PeerRemover(queueManager,
toolbarButton));
+ toolbarModifier.addButtonToTheToolbar(toolbarButton);
}
@@ -530,6 +575,13 @@
private void clicked() {
+
+ if (peerList.getSelectedValue() instanceof Peer) {
+ updateButtonState(((Peer)peerList.getSelectedValue()));
+ } else
+ updateButtonState(null);
+
+
if (peerList.getSelectedValue() == null
|| !(peerList.getSelectedValue() instanceof Peer)) {
displayInfos(I18n.getMessage("thaw.plugin.peerMonitor.nodeInfos"), nodeInfos);
@@ -550,8 +602,8 @@
}
- public void updateMenuState(Peer target) {
- for (Iterator it = rightClickActions.iterator();
+ public void updateButtonState(Peer target) {
+ for (Iterator it = buttonActions.iterator();
it.hasNext();) {
PeerHelper.PeerAction a =
((PeerHelper.PeerAction)it.next());
a.setTarget(target);
@@ -576,14 +628,17 @@
protected void showPopupMenu(final MouseEvent e) {
if(e.isPopupTrigger()) {
- if (peerList.getSelectedValue() instanceof Peer) {
-
updateMenuState(((Peer)peerList.getSelectedValue()));
- } else
- updateMenuState(null);
-
rightClickMenu.show(e.getComponent(), e.getX(),
e.getY());
}
}
+ public void showToolbarButtons() {
+ toolbarModifier.displayButtonsInTheToolbar();
+ }
+
+ public void hideToolbarButtons() {
+ toolbarModifier.hideButtonsInTheToolbar();
+ }
+
}