Author: jflesch
Date: 2007-03-09 20:41:01 +0000 (Fri, 09 Mar 2007)
New Revision: 12072

Added:
   trunk/apps/Thaw/src/thaw/core/gui/
   trunk/apps/Thaw/src/thaw/core/gui/MDNSDiscoveryPanel.java
   trunk/apps/Thaw/src/thaw/gui/GUIHelper.java
   trunk/apps/Thaw/src/thaw/gui/IconBox.java
Removed:
   trunk/apps/Thaw/src/thaw/core/GUIHelper.java
   trunk/apps/Thaw/src/thaw/core/IconBox.java
   trunk/apps/Thaw/src/thaw/gui/MDNSDiscoveryPanel.java
Modified:
   trunk/apps/Thaw/src/thaw/core/ConfigWindow.java
   trunk/apps/Thaw/src/thaw/core/Core.java
   trunk/apps/Thaw/src/thaw/core/MainWindow.java
   trunk/apps/Thaw/src/thaw/core/PluginManager.java
   trunk/apps/Thaw/src/thaw/plugins/FetchPlugin.java
   trunk/apps/Thaw/src/thaw/plugins/Hsqldb.java
   trunk/apps/Thaw/src/thaw/plugins/IndexBrowser.java
   trunk/apps/Thaw/src/thaw/plugins/IndexExporter.java
   trunk/apps/Thaw/src/thaw/plugins/InsertPlugin.java
   trunk/apps/Thaw/src/thaw/plugins/LogConsole.java
   trunk/apps/Thaw/src/thaw/plugins/QueueWatcher.java
   trunk/apps/Thaw/src/thaw/plugins/SqlConsole.java
   trunk/apps/Thaw/src/thaw/plugins/StatusBar.java
   trunk/apps/Thaw/src/thaw/plugins/fetchPlugin/FetchPanel.java
   trunk/apps/Thaw/src/thaw/plugins/index/FileTable.java
   trunk/apps/Thaw/src/thaw/plugins/index/IndexConfigPanel.java
   trunk/apps/Thaw/src/thaw/plugins/index/IndexManagementHelper.java
   trunk/apps/Thaw/src/thaw/plugins/index/IndexTree.java
   trunk/apps/Thaw/src/thaw/plugins/index/LinkTable.java
   trunk/apps/Thaw/src/thaw/plugins/index/UnknownIndexList.java
   trunk/apps/Thaw/src/thaw/plugins/queueWatcher/QueuePanel.java
Log:
Fix thaw build (bis) + move some files

Modified: trunk/apps/Thaw/src/thaw/core/ConfigWindow.java
===================================================================
--- trunk/apps/Thaw/src/thaw/core/ConfigWindow.java     2007-03-09 20:13:38 UTC 
(rev 12071)
+++ trunk/apps/Thaw/src/thaw/core/ConfigWindow.java     2007-03-09 20:41:01 UTC 
(rev 12072)
@@ -13,6 +13,7 @@
 import javax.swing.JPanel;
 import javax.swing.JTabbedPane;

+import thaw.gui.IconBox;


 /**

Modified: trunk/apps/Thaw/src/thaw/core/Core.java
===================================================================
--- trunk/apps/Thaw/src/thaw/core/Core.java     2007-03-09 20:13:38 UTC (rev 
12071)
+++ trunk/apps/Thaw/src/thaw/core/Core.java     2007-03-09 20:41:01 UTC (rev 
12072)
@@ -14,8 +14,10 @@
 import thaw.fcp.FCPQueueLoader;
 import thaw.fcp.FCPQueueManager;
 import thaw.fcp.FCPWatchGlobal;
-import thaw.gui.MDNSDiscoveryPanel;
+import thaw.core.gui.MDNSDiscoveryPanel;

+import thaw.gui.IconBox;
+
 /**
  * A "core" contains references to all the main parts of Thaw.
  * The Core has all the functions needed to initialize Thaw / stop Thaw.
@@ -144,7 +146,7 @@
                        config.setDefaultValues();
                        new MDNSDiscoveryPanel(config).run();
                }
-               
+
                return true;
        }


Deleted: trunk/apps/Thaw/src/thaw/core/GUIHelper.java
===================================================================
--- trunk/apps/Thaw/src/thaw/core/GUIHelper.java        2007-03-09 20:13:38 UTC 
(rev 12071)
+++ trunk/apps/Thaw/src/thaw/core/GUIHelper.java        2007-03-09 20:41:01 UTC 
(rev 12072)
@@ -1,57 +0,0 @@
-package thaw.core;
-
-import java.awt.Toolkit;
-import java.awt.datatransfer.Clipboard;
-import java.awt.datatransfer.DataFlavor;
-import java.awt.datatransfer.Transferable;
-import java.awt.event.ActionEvent;
-import java.awt.event.ActionListener;
-
-import javax.swing.AbstractButton;
-import javax.swing.text.JTextComponent;
-
-public class GUIHelper {
-
-       public GUIHelper() {
-
-       }
-
-       public static class PasteHelper implements ActionListener {
-               JTextComponent txtComp;
-
-               public PasteHelper(final AbstractButton src, final 
JTextComponent txtComp) {
-                       if (src != null)
-                               src.addActionListener(this);
-                       this.txtComp = txtComp;
-               }
-
-               public void actionPerformed(final ActionEvent evt) {
-                       GUIHelper.pasteToComponent(txtComp);
-               }
-       }
-
-       public static void pasteToComponent(final JTextComponent txtComp) {
-               final Toolkit tk = Toolkit.getDefaultToolkit();
-               final Clipboard cp = tk.getSystemClipboard();
-
-               String result;
-               final Transferable contents = cp.getContents(null);
-
-               final boolean hasTransferableText = ((contents != null) &&
-                                              
contents.isDataFlavorSupported(DataFlavor.stringFlavor));
-
-               try {
-                       if ( hasTransferableText ) {
-                               result = 
(String)contents.getTransferData(DataFlavor.stringFlavor);
-                               txtComp.setText(txtComp.getText() + result);
-                       } else {
-                               Logger.notice(new GUIHelper(), "Nothing to get 
from clipboard");
-                       }
-               } catch(final java.awt.datatransfer.UnsupportedFlavorException 
e) {
-                       Logger.error(new GUIHelper(), "Error while pasting: 
UnsupportedFlavorException: "+e.toString());
-               } catch(final java.io.IOException e) {
-                       Logger.error(new GUIHelper(), "Error while pasting: 
IOException: "+e.toString());
-               }
-       }
-
-}

Deleted: trunk/apps/Thaw/src/thaw/core/IconBox.java
===================================================================
--- trunk/apps/Thaw/src/thaw/core/IconBox.java  2007-03-09 20:13:38 UTC (rev 
12071)
+++ trunk/apps/Thaw/src/thaw/core/IconBox.java  2007-03-09 20:41:01 UTC (rev 
12072)
@@ -1,168 +0,0 @@
-package thaw.core;
-
-import java.net.URL;
-
-import javax.swing.ImageIcon;
-
-/**
- * This class is simply an helper to find and load quickly some common icons.
- */
-public class IconBox {
-
-       /**
-        * Freenet logo :)
-        */
-       public static ImageIcon blueBunny;
-
-       public static ImageIcon connectAction;
-       public static ImageIcon minConnectAction;
-
-       public static ImageIcon disconnectAction;
-
-       public static ImageIcon queue;
-       public static ImageIcon minQueue;
-
-       public static ImageIcon insertions;
-       public static ImageIcon minInsertions;
-
-       public static ImageIcon downloads;
-       public static ImageIcon minDownloads;
-
-       public static ImageIcon indexBrowser;
-       public static ImageIcon minIndexBrowser;
-
-       public static ImageIcon addToIndexAction;
-
-       public static ImageIcon insertAndAddToIndexAction;
-
-       public static ImageIcon makeALinkAction;
-
-       public static ImageIcon minIndex;
-       public static ImageIcon minIndexReadOnly;
-
-       public static ImageIcon indexNew;
-       public static ImageIcon indexReuse;
-
-       public static ImageIcon delete;
-
-       public static ImageIcon refreshAction;
-
-       public static ImageIcon settings;
-       public static ImageIcon minSettings;
-
-       public static ImageIcon reconnectAction;
-       public static ImageIcon minReconnectAction;
-
-       public static ImageIcon quitAction;
-       public static ImageIcon minQuitAction;
-
-       public static ImageIcon key;
-
-       public static ImageIcon help;
-       public static ImageIcon minHelp;
-
-       public static ImageIcon folderNew;
-
-       public static ImageIcon mainWindow;
-
-       public static ImageIcon add;
-       public static ImageIcon remove;
-
-       public static ImageIcon terminal;
-       public static ImageIcon minTerminal;
-       public static ImageIcon queueWatcher;
-       public static ImageIcon importExport;
-
-       public static ImageIcon peerMonitor;
-       public static ImageIcon minPeerMonitor;
-
-
-       public static ImageIcon minImportAction;
-       public static ImageIcon minExportAction;
-
-       public static ImageIcon database;
-
-       /**
-        * Not really used
-        */
-       public IconBox() {
-
-       }
-
-       protected static ImageIcon loadIcon(final String fileName) {
-               URL url;
-               Class daClass;
-               ClassLoader classLoader;
-
-               daClass = (new IconBox()).getClass();
-
-               if (daClass == null) {
-                       Logger.error(new IconBox(), "Icon '"+fileName+"' not 
found ! (Class)");
-                       return null;
-               }
-
-               classLoader = daClass.getClassLoader();
-
-               if (classLoader == null) {
-                       Logger.error(new IconBox(), "Icon '"+fileName+"' not 
found ! (ClassLoader)");
-                       return null;
-               }
-
-               url = classLoader.getResource(fileName);
-
-               if (url == null) {
-                       Logger.error(new IconBox(), "Icon '"+fileName+"' not 
found ! (Resource)");
-                       return null;
-               }
-
-               return new ImageIcon(url);
-       }
-
-
-       public static void loadIcons() {
-               IconBox.blueBunny          = IconBox.loadIcon("blueBunny.png");
-               IconBox.connectAction      = IconBox.loadIcon("connect.png");
-               IconBox.minConnectAction   = 
IconBox.loadIcon("min-connect.png");
-               IconBox.disconnectAction   = IconBox.loadIcon("disconnect.png");
-               IconBox.queue              = IconBox.loadIcon("connect.png");
-               IconBox.minQueue           = 
IconBox.loadIcon("min-connect.png");
-               IconBox.insertions         = IconBox.loadIcon("insertion.png");
-               IconBox.minInsertions      = 
IconBox.loadIcon("min-insertion.png");
-               IconBox.minIndex           = IconBox.loadIcon("min-index.png");
-               IconBox.minIndexReadOnly   = 
IconBox.loadIcon("min-indexReadOnly.png");
-               IconBox.indexNew           = IconBox.loadIcon("index-new.png");
-               IconBox.indexReuse         = 
IconBox.loadIcon("indexReadOnly.png");
-               IconBox.downloads          = IconBox.loadIcon("download.png");
-               IconBox.minDownloads       = 
IconBox.loadIcon("min-download.png");
-               IconBox.settings           = IconBox.loadIcon("settings.png");
-               IconBox.minSettings        = 
IconBox.loadIcon("min-settings.png");
-               IconBox.indexBrowser       = IconBox.loadIcon("index.png");
-               IconBox.minIndexBrowser    = IconBox.loadIcon("min-index.png");
-               IconBox.addToIndexAction   = IconBox.loadIcon("add.png");
-               IconBox.add                = IconBox.loadIcon("add.png");
-               IconBox.insertAndAddToIndexAction = 
IconBox.loadIcon("index.png");
-               IconBox.makeALinkAction    = IconBox.loadIcon("makeLink.png");
-               IconBox.reconnectAction    = IconBox.loadIcon("refresh.png");
-               IconBox.minReconnectAction = 
IconBox.loadIcon("min-refresh.png");
-               IconBox.refreshAction      = IconBox.loadIcon("refresh.png");
-               IconBox.quitAction         = IconBox.loadIcon("quit.png");
-               IconBox.minQuitAction      = IconBox.loadIcon("min-quit.png");
-               IconBox.key                = IconBox.loadIcon("key.png");
-               IconBox.delete             = IconBox.loadIcon("delete.png");
-               IconBox.folderNew          = IconBox.loadIcon("folder-new.png");
-               IconBox.help               = IconBox.loadIcon("help.png");
-               IconBox.minHelp            = IconBox.loadIcon("min-help.png");
-               IconBox.mainWindow         = IconBox.loadIcon("mainWindow.png");
-               IconBox.terminal           = IconBox.loadIcon("terminal.png");
-               IconBox.minTerminal        = 
IconBox.loadIcon("min-terminal.png");
-               IconBox.remove             = IconBox.loadIcon("remove.png");
-               IconBox.queueWatcher       = 
IconBox.loadIcon("queueWatcher.png");
-               IconBox.importExport       = IconBox.loadIcon("refresh.png");
-               IconBox.minImportAction    = IconBox.loadIcon("min-import.png");
-               IconBox.minExportAction    = IconBox.loadIcon("min-export.png");
-               IconBox.database           = IconBox.loadIcon("database.png");
-               IconBox.minPeerMonitor     = 
IconBox.loadIcon("min-peerMonitor.png");
-               IconBox.peerMonitor        = 
IconBox.loadIcon("peerMonitor.png");
-       }
-
-}

Modified: trunk/apps/Thaw/src/thaw/core/MainWindow.java
===================================================================
--- trunk/apps/Thaw/src/thaw/core/MainWindow.java       2007-03-09 20:13:38 UTC 
(rev 12071)
+++ trunk/apps/Thaw/src/thaw/core/MainWindow.java       2007-03-09 20:41:01 UTC 
(rev 12072)
@@ -20,6 +20,9 @@
 import javax.swing.WindowConstants;


+import thaw.gui.IconBox;
+
+
 /**
  * MainWindow. This class create the main window.
  *

Modified: trunk/apps/Thaw/src/thaw/core/PluginManager.java
===================================================================
--- trunk/apps/Thaw/src/thaw/core/PluginManager.java    2007-03-09 20:13:38 UTC 
(rev 12071)
+++ trunk/apps/Thaw/src/thaw/core/PluginManager.java    2007-03-09 20:41:01 UTC 
(rev 12072)
@@ -127,7 +127,7 @@
                                        if ((icon = plugin.getIcon()) != null)
                                                
core.getSplashScreen().addIcon(icon);
                                        else
-                                               
core.getSplashScreen().addIcon(IconBox.add);
+                                               
core.getSplashScreen().addIcon(thaw.gui.IconBox.add);

                                        plugin.run(core);
                                }

Copied: trunk/apps/Thaw/src/thaw/core/gui/MDNSDiscoveryPanel.java (from rev 
12071, trunk/apps/Thaw/src/thaw/gui/MDNSDiscoveryPanel.java)
===================================================================
--- trunk/apps/Thaw/src/thaw/core/gui/MDNSDiscoveryPanel.java                   
        (rev 0)
+++ trunk/apps/Thaw/src/thaw/core/gui/MDNSDiscoveryPanel.java   2007-03-09 
20:41:01 UTC (rev 12072)
@@ -0,0 +1,223 @@
+/* This code is part of Freenet. It is distributed under the GNU General
+ * Public License, version 2 (or at your option any later version). See
+ * http://www.gnu.org/ for further details of the GPL. */
+
+package thaw.core.gui;
+
+import java.io.IOException;
+import java.util.HashMap;
+
+import javax.jmdns.JmDNS;
+import javax.jmdns.ServiceEvent;
+import javax.jmdns.ServiceInfo;
+import javax.jmdns.ServiceListener;
+import javax.swing.DefaultListModel;
+import java.awt.GridLayout;
+import java.awt.BorderLayout;
+import javax.swing.JFrame;
+import javax.swing.JLabel;
+import javax.swing.JList;
+import javax.swing.JProgressBar;
+import javax.swing.JScrollPane;
+import javax.swing.event.ListSelectionEvent;
+import javax.swing.event.ListSelectionListener;
+
+import thaw.core.Config;
+import thaw.core.Logger;
+import thaw.fcp.FCPConnection;
+
+/**
+ * This panel implements Zeroconf (called Bonjour/RendezVous by apple) 
discovery for Thaw
+ *
+ * WARNING: for it to work, you must have a running freenet node on the same 
network subnet, using the MDNSDiscovery panel
+ *
+ * @author Florent Daignière <nextgens at freenetproject.org>
+ *
+ * @see http://wiki.freenetproject.org/MDNSDiscoverypanel
+ *
+ * @see http://www.dns-sd.org/ServiceTypes.html
+ * @see http://www.multicastdns.org/
+ * @see http://jmdns.sourceforge.net/
+ *
+ * TODO: implement the "Manual" mode
+ * TODO: maybe we should have a small progressbar shown in a new popup to 
introduce a "delay" at startup
+ */
+public class MDNSDiscoveryPanel extends JFrame implements 
ListSelectionListener {
+       private static final long serialVersionUID = 1L;
+
+       private static final String FCP_SERVICE_TYPE = "_fcp._tcp.local.";
+
+       private boolean goon = true;
+       private ServiceInfo selectedValue;
+
+       private final JScrollPane panel;
+       private final JProgressBar progressBar;
+       private final JList list;
+       private final DefaultListModel listModel;
+       private final JLabel label;
+
+       private final Config config;
+       private final HashMap foundNodes;
+       private final JmDNS jmdns;
+
+       public MDNSDiscoveryPanel(Config conf) {
+               this.config = conf;
+               this.foundNodes = new HashMap();
+               try {
+                       // Spawn the mdns listener
+                       this.jmdns = new JmDNS();
+
+                       // Start listening for new nodes
+                       
jmdns.addServiceListener(MDNSDiscoveryPanel.FCP_SERVICE_TYPE, new 
FCPMDNSListener(this));
+
+               } catch (Exception e) {
+                       e.printStackTrace();
+                       throw new RuntimeException("Error loading 
MDNSDiscoveryPanel : " + e.getMessage());
+               }
+
+               // The UI
+               panel = new JScrollPane();
+               progressBar = new JProgressBar(0, 30);
+               list = new JList();
+               listModel = new DefaultListModel();
+               label = new JLabel();
+
+               listModel.addElement("Manual configuration (not recommended) : 
NotYetImplemented ;)");
+
+               list.setModel(listModel);
+               
list.setSelectionMode(javax.swing.ListSelectionModel.SINGLE_SELECTION);
+               list.addListSelectionListener(this);
+
+               label.setText("Select the freenet node you want to connect to 
from the list below :");
+
+               panel.setLayout(new BorderLayout());
+               panel.add(label, BorderLayout.NORTH);
+               panel.add(list, BorderLayout.CENTER);
+               panel.add(progressBar, BorderLayout.SOUTH);
+
+               setContentPane(panel);
+
+               pack();
+
+               super.setLocationRelativeTo(this.getParent());
+               this.setTitle("ZeroConf discovery plugin... Please hold on");
+               
this.setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
+               this.setVisible(true);
+
+               Logger.notice(this, "The configuration file doesn't seems to be 
valid... MDNSDiscovery is starting!");
+       }
+
+
+       private class FCPMDNSListener implements ServiceListener {
+               private final MDNSDiscoveryPanel panel;
+
+               public FCPMDNSListener(MDNSDiscoveryPanel panel) {
+                       this.panel = panel;
+               }
+
+               public void serviceAdded(ServiceEvent event) {
+                       Logger.notice(this, "Service added   : " + 
event.getName()+"."+event.getType());
+                       // Force the gathering of informations
+                       
jmdns.getServiceInfo(MDNSDiscoveryPanel.FCP_SERVICE_TYPE, event.getName());
+               }
+
+               public synchronized void serviceRemoved(ServiceEvent event) {
+                       Logger.notice(this, "Service removed : " + 
event.getName()+"."+event.getType());
+                       ServiceInfo service = event.getInfo();
+
+                       synchronized (panel) {
+                               panel.foundNodes.remove(service.getName());
+                               
panel.listModel.removeElement(service.getName());
+                               notify();
+                       }
+               }
+
+               public synchronized void serviceResolved(ServiceEvent event) {
+                       Logger.debug(this, "Service resolved: " + 
event.getInfo());
+                       ServiceInfo service = event.getInfo();
+
+                       synchronized (panel) {
+                               panel.foundNodes.put(service.getName(), 
service);
+                               panel.listModel.addElement(service.getName());
+                               notify();
+                       }
+               }
+       }
+
+       /**
+        * The user has selected something: notify the main loop and process 
the data.
+        */
+       public void valueChanged(ListSelectionEvent e) {
+               if (e.getValueIsAdjusting() == false) {
+                       if(list.getSelectedValue() == null) return; // Ignore 
the user if he clicks nowhere
+
+                       synchronized (this) {
+                               selectedValue = (ServiceInfo) 
foundNodes.get(list.getSelectedValue());
+                               goon = false;
+                               notify();
+                       }
+                       Logger.debug(this, "User has selected : 
"+foundNodes.get(list.getSelectedValue()));
+               }
+       }
+
+       /**
+        * The main loop : TheRealMeat(TM)
+        *
+        */
+       public void run() {
+               boolean isConfigValid = false;
+               FCPConnection fcp = null;
+
+               do {
+                       // Loop until a selection is done
+                       while(goon) {
+                               try {
+                                       synchronized (this) {
+                                               wait(Long.MAX_VALUE);
+                                       }
+                               } catch (InterruptedException e) {}
+
+                               list.repaint();
+                       }
+
+                       if(selectedValue == null) continue; // TODO: implement 
the "manual" popup there
+
+                       Logger.debug(this, "We got something from the UI : 
let's try to connect");
+
+                       // We try to connect to the server
+                       fcp = new FCPConnection(selectedValue.getHostAddress(), 
selectedValue.getPort(), -1, true, true);
+                       isConfigValid = fcp.connect();
+
+                       Logger.debug(this, "isConfigValid ="+isConfigValid);
+
+                       // Reload, just in  case it failed...
+                       goon = true;
+                       list.removeSelectionInterval(0, foundNodes.size());
+               } while(!isConfigValid);
+
+               Logger.debug(this, "We got something that looks valid from the 
UI : let's propagate changes to  the config");
+
+               // Save the config. now that we know it's valid
+               config.setValue("nodeAddress", selectedValue.getHostAddress());
+               config.setValue("nodePort", new 
Integer(selectedValue.getPort()).toString());
+               try {
+                       config.setValue("sameComputer", 
(jmdns.getInterface().equals(selectedValue.getAddress()) ? "true" : "false"));
+               } catch (IOException e ) {} // What can we do except assuming 
default is fine ?
+
+
+               Logger.info(this, "We are done : configuration has been saved 
sucessfully.");
+
+               // Close the fcp socket we have openned, cleanup
+               fcp.disconnect();
+               jmdns.close();
+               this.setVisible(false);
+       }
+
+       /**
+        * Convenient testing function function.
+        */
+       public static void main(String[] args) {
+               new MDNSDiscoveryPanel(new Config("/tmp/conf.ini")).run();
+               System.exit(0);
+       }
+}

Copied: trunk/apps/Thaw/src/thaw/gui/GUIHelper.java (from rev 12055, 
trunk/apps/Thaw/src/thaw/core/GUIHelper.java)
===================================================================
--- trunk/apps/Thaw/src/thaw/gui/GUIHelper.java                         (rev 0)
+++ trunk/apps/Thaw/src/thaw/gui/GUIHelper.java 2007-03-09 20:41:01 UTC (rev 
12072)
@@ -0,0 +1,59 @@
+package thaw.gui;
+
+import java.awt.Toolkit;
+import java.awt.datatransfer.Clipboard;
+import java.awt.datatransfer.DataFlavor;
+import java.awt.datatransfer.Transferable;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+
+import javax.swing.AbstractButton;
+import javax.swing.text.JTextComponent;
+
+import thaw.core.Logger;
+
+public class GUIHelper {
+
+       public GUIHelper() {
+
+       }
+
+       public static class PasteHelper implements ActionListener {
+               JTextComponent txtComp;
+
+               public PasteHelper(final AbstractButton src, final 
JTextComponent txtComp) {
+                       if (src != null)
+                               src.addActionListener(this);
+                       this.txtComp = txtComp;
+               }
+
+               public void actionPerformed(final ActionEvent evt) {
+                       GUIHelper.pasteToComponent(txtComp);
+               }
+       }
+
+       public static void pasteToComponent(final JTextComponent txtComp) {
+               final Toolkit tk = Toolkit.getDefaultToolkit();
+               final Clipboard cp = tk.getSystemClipboard();
+
+               String result;
+               final Transferable contents = cp.getContents(null);
+
+               final boolean hasTransferableText = ((contents != null) &&
+                                              
contents.isDataFlavorSupported(DataFlavor.stringFlavor));
+
+               try {
+                       if ( hasTransferableText ) {
+                               result = 
(String)contents.getTransferData(DataFlavor.stringFlavor);
+                               txtComp.setText(txtComp.getText() + result);
+                       } else {
+                               Logger.notice(new GUIHelper(), "Nothing to get 
from clipboard");
+                       }
+               } catch(final java.awt.datatransfer.UnsupportedFlavorException 
e) {
+                       Logger.error(new GUIHelper(), "Error while pasting: 
UnsupportedFlavorException: "+e.toString());
+               } catch(final java.io.IOException e) {
+                       Logger.error(new GUIHelper(), "Error while pasting: 
IOException: "+e.toString());
+               }
+       }
+
+}

Copied: trunk/apps/Thaw/src/thaw/gui/IconBox.java (from rev 12071, 
trunk/apps/Thaw/src/thaw/core/IconBox.java)
===================================================================
--- trunk/apps/Thaw/src/thaw/gui/IconBox.java                           (rev 0)
+++ trunk/apps/Thaw/src/thaw/gui/IconBox.java   2007-03-09 20:41:01 UTC (rev 
12072)
@@ -0,0 +1,171 @@
+package thaw.gui;
+
+import java.net.URL;
+
+import javax.swing.ImageIcon;
+
+import thaw.core.Logger;
+
+
+/**
+ * This class is simply an helper to find and load quickly some common icons.
+ */
+public class IconBox {
+
+       /**
+        * Freenet logo :)
+        */
+       public static ImageIcon blueBunny;
+
+       public static ImageIcon connectAction;
+       public static ImageIcon minConnectAction;
+
+       public static ImageIcon disconnectAction;
+
+       public static ImageIcon queue;
+       public static ImageIcon minQueue;
+
+       public static ImageIcon insertions;
+       public static ImageIcon minInsertions;
+
+       public static ImageIcon downloads;
+       public static ImageIcon minDownloads;
+
+       public static ImageIcon indexBrowser;
+       public static ImageIcon minIndexBrowser;
+
+       public static ImageIcon addToIndexAction;
+
+       public static ImageIcon insertAndAddToIndexAction;
+
+       public static ImageIcon makeALinkAction;
+
+       public static ImageIcon minIndex;
+       public static ImageIcon minIndexReadOnly;
+
+       public static ImageIcon indexNew;
+       public static ImageIcon indexReuse;
+
+       public static ImageIcon delete;
+
+       public static ImageIcon refreshAction;
+
+       public static ImageIcon settings;
+       public static ImageIcon minSettings;
+
+       public static ImageIcon reconnectAction;
+       public static ImageIcon minReconnectAction;
+
+       public static ImageIcon quitAction;
+       public static ImageIcon minQuitAction;
+
+       public static ImageIcon key;
+
+       public static ImageIcon help;
+       public static ImageIcon minHelp;
+
+       public static ImageIcon folderNew;
+
+       public static ImageIcon mainWindow;
+
+       public static ImageIcon add;
+       public static ImageIcon remove;
+
+       public static ImageIcon terminal;
+       public static ImageIcon minTerminal;
+       public static ImageIcon queueWatcher;
+       public static ImageIcon importExport;
+
+       public static ImageIcon peerMonitor;
+       public static ImageIcon minPeerMonitor;
+
+
+       public static ImageIcon minImportAction;
+       public static ImageIcon minExportAction;
+
+       public static ImageIcon database;
+
+       /**
+        * Not really used
+        */
+       public IconBox() {
+
+       }
+
+       protected static ImageIcon loadIcon(final String fileName) {
+               URL url;
+               Class daClass;
+               ClassLoader classLoader;
+
+               daClass = (new IconBox()).getClass();
+
+               if (daClass == null) {
+                       Logger.error(new IconBox(), "Icon '"+fileName+"' not 
found ! (Class)");
+                       return null;
+               }
+
+               classLoader = daClass.getClassLoader();
+
+               if (classLoader == null) {
+                       Logger.error(new IconBox(), "Icon '"+fileName+"' not 
found ! (ClassLoader)");
+                       return null;
+               }
+
+               url = classLoader.getResource(fileName);
+
+               if (url == null) {
+                       Logger.error(new IconBox(), "Icon '"+fileName+"' not 
found ! (Resource)");
+                       return null;
+               }
+
+               return new ImageIcon(url);
+       }
+
+
+       public static void loadIcons() {
+               IconBox.blueBunny          = IconBox.loadIcon("blueBunny.png");
+               IconBox.connectAction      = IconBox.loadIcon("connect.png");
+               IconBox.minConnectAction   = 
IconBox.loadIcon("min-connect.png");
+               IconBox.disconnectAction   = IconBox.loadIcon("disconnect.png");
+               IconBox.queue              = IconBox.loadIcon("connect.png");
+               IconBox.minQueue           = 
IconBox.loadIcon("min-connect.png");
+               IconBox.insertions         = IconBox.loadIcon("insertion.png");
+               IconBox.minInsertions      = 
IconBox.loadIcon("min-insertion.png");
+               IconBox.minIndex           = IconBox.loadIcon("min-index.png");
+               IconBox.minIndexReadOnly   = 
IconBox.loadIcon("min-indexReadOnly.png");
+               IconBox.indexNew           = IconBox.loadIcon("index-new.png");
+               IconBox.indexReuse         = 
IconBox.loadIcon("indexReadOnly.png");
+               IconBox.downloads          = IconBox.loadIcon("download.png");
+               IconBox.minDownloads       = 
IconBox.loadIcon("min-download.png");
+               IconBox.settings           = IconBox.loadIcon("settings.png");
+               IconBox.minSettings        = 
IconBox.loadIcon("min-settings.png");
+               IconBox.indexBrowser       = IconBox.loadIcon("index.png");
+               IconBox.minIndexBrowser    = IconBox.loadIcon("min-index.png");
+               IconBox.addToIndexAction   = IconBox.loadIcon("add.png");
+               IconBox.add                = IconBox.loadIcon("add.png");
+               IconBox.insertAndAddToIndexAction = 
IconBox.loadIcon("index.png");
+               IconBox.makeALinkAction    = IconBox.loadIcon("makeLink.png");
+               IconBox.reconnectAction    = IconBox.loadIcon("refresh.png");
+               IconBox.minReconnectAction = 
IconBox.loadIcon("min-refresh.png");
+               IconBox.refreshAction      = IconBox.loadIcon("refresh.png");
+               IconBox.quitAction         = IconBox.loadIcon("quit.png");
+               IconBox.minQuitAction      = IconBox.loadIcon("min-quit.png");
+               IconBox.key                = IconBox.loadIcon("key.png");
+               IconBox.delete             = IconBox.loadIcon("delete.png");
+               IconBox.folderNew          = IconBox.loadIcon("folder-new.png");
+               IconBox.help               = IconBox.loadIcon("help.png");
+               IconBox.minHelp            = IconBox.loadIcon("min-help.png");
+               IconBox.mainWindow         = IconBox.loadIcon("mainWindow.png");
+               IconBox.terminal           = IconBox.loadIcon("terminal.png");
+               IconBox.minTerminal        = 
IconBox.loadIcon("min-terminal.png");
+               IconBox.remove             = IconBox.loadIcon("remove.png");
+               IconBox.queueWatcher       = 
IconBox.loadIcon("queueWatcher.png");
+               IconBox.importExport       = IconBox.loadIcon("refresh.png");
+               IconBox.minImportAction    = IconBox.loadIcon("min-import.png");
+               IconBox.minExportAction    = IconBox.loadIcon("min-export.png");
+               IconBox.database           = IconBox.loadIcon("database.png");
+               IconBox.minPeerMonitor     = 
IconBox.loadIcon("min-peerMonitor.png");
+               IconBox.peerMonitor        = 
IconBox.loadIcon("peerMonitor.png");
+       }
+
+}

Deleted: trunk/apps/Thaw/src/thaw/gui/MDNSDiscoveryPanel.java
===================================================================
--- trunk/apps/Thaw/src/thaw/gui/MDNSDiscoveryPanel.java        2007-03-09 
20:13:38 UTC (rev 12071)
+++ trunk/apps/Thaw/src/thaw/gui/MDNSDiscoveryPanel.java        2007-03-09 
20:41:01 UTC (rev 12072)
@@ -1,223 +0,0 @@
-/* This code is part of Freenet. It is distributed under the GNU General
- * Public License, version 2 (or at your option any later version). See
- * http://www.gnu.org/ for further details of the GPL. */
-
-package thaw.gui;
-
-import java.io.IOException;
-import java.util.HashMap;
-
-import javax.jmdns.JmDNS;
-import javax.jmdns.ServiceEvent;
-import javax.jmdns.ServiceInfo;
-import javax.jmdns.ServiceListener;
-import javax.swing.DefaultListModel;
-import java.awt.GridLayout;
-import java.awt.BorderLayout;
-import javax.swing.JFrame;
-import javax.swing.JLabel;
-import javax.swing.JList;
-import javax.swing.JProgressBar;
-import javax.swing.JScrollPane;
-import javax.swing.event.ListSelectionEvent;
-import javax.swing.event.ListSelectionListener;
-
-import thaw.core.Config;
-import thaw.core.Logger;
-import thaw.fcp.FCPConnection;
-
-/**
- * This panel implements Zeroconf (called Bonjour/RendezVous by apple) 
discovery for Thaw
- *
- * WARNING: for it to work, you must have a running freenet node on the same 
network subnet, using the MDNSDiscovery panel
- *
- * @author Florent Daignière <nextgens at freenetproject.org>
- *
- * @see http://wiki.freenetproject.org/MDNSDiscoverypanel
- *
- * @see http://www.dns-sd.org/ServiceTypes.html
- * @see http://www.multicastdns.org/
- * @see http://jmdns.sourceforge.net/
- *
- * TODO: implement the "Manual" mode
- * TODO: maybe we should have a small progressbar shown in a new popup to 
introduce a "delay" at startup
- */
-public class MDNSDiscoveryPanel extends JFrame implements 
ListSelectionListener {
-       private static final long serialVersionUID = 1L;
-
-       private static final String FCP_SERVICE_TYPE = "_fcp._tcp.local.";
-
-       private boolean goon = true;
-       private ServiceInfo selectedValue;
-
-       private final JScrollPane panel;
-       private final JProgressBar progressBar;
-       private final JList list;
-       private final DefaultListModel listModel;
-       private final JLabel label;
-
-       private final Config config;
-       private final HashMap foundNodes;
-       private final JmDNS jmdns;
-
-       public MDNSDiscoveryPanel(Config conf) {
-               this.config = conf;
-               this.foundNodes = new HashMap();
-               try {
-                       // Spawn the mdns listener
-                       this.jmdns = new JmDNS();
-
-                       // Start listening for new nodes
-                       
jmdns.addServiceListener(MDNSDiscoveryPanel.FCP_SERVICE_TYPE, new 
FCPMDNSListener(this));
-
-               } catch (Exception e) {
-                       e.printStackTrace();
-                       throw new RuntimeException("Error loading 
MDNSDiscoveryPanel : " + e.getMessage());
-               }
-
-               // The UI
-               panel = new JScrollPane();
-               progressBar = new JProgressBar(0, 30);
-               list = new JList();
-               listModel = new DefaultListModel();
-               label = new JLabel();
-
-               listModel.addElement("Manual configuration (not recommended) : 
NotYetImplemented ;)");
-
-               list.setModel(listModel);
-               
list.setSelectionMode(javax.swing.ListSelectionModel.SINGLE_SELECTION);
-               list.addListSelectionListener(this);
-
-               label.setText("Select the freenet node you want to connect to 
from the list below :");
-
-               panel.setLayout(new BorderLayout());
-               panel.add(label, BorderLayout.NORTH);
-               panel.add(list, BorderLayout.CENTER);
-               panel.add(progressBar, BorderLayout.SOUTH);
-
-               setContentPane(panel);
-
-               pack();
-               super.setAlwaysOnTop(true);
-               super.setLocationRelativeTo(this.getParent());
-               this.setTitle("ZeroConf discovery plugin... Please hold on");
-               
this.setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
-               this.setVisible(true);
-
-               Logger.notice(this, "The configuration file doesn't seems to be 
valid... MDNSDiscovery is starting!");
-       }
-
-
-       private class FCPMDNSListener implements ServiceListener {
-               private final MDNSDiscoveryPanel panel;
-
-               public FCPMDNSListener(MDNSDiscoveryPanel panel) {
-                       this.panel = panel;
-               }
-
-               public void serviceAdded(ServiceEvent event) {
-                       Logger.notice(this, "Service added   : " + 
event.getName()+"."+event.getType());
-                       // Force the gathering of informations
-                       
jmdns.getServiceInfo(MDNSDiscoveryPanel.FCP_SERVICE_TYPE, event.getName());
-               }
-
-               public synchronized void serviceRemoved(ServiceEvent event) {
-                       Logger.notice(this, "Service removed : " + 
event.getName()+"."+event.getType());
-                       ServiceInfo service = event.getInfo();
-
-                       synchronized (panel) {
-                               panel.foundNodes.remove(service.getName());
-                               
panel.listModel.removeElement(service.getName());
-                               notify();
-                       }
-               }
-
-               public synchronized void serviceResolved(ServiceEvent event) {
-                       Logger.debug(this, "Service resolved: " + 
event.getInfo());
-                       ServiceInfo service = event.getInfo();
-
-                       synchronized (panel) {
-                               panel.foundNodes.put(service.getName(), 
service);
-                               panel.listModel.addElement(service.getName());
-                               notify();
-                       }
-               }
-       }
-
-       /**
-        * The user has selected something: notify the main loop and process 
the data.
-        */
-       public void valueChanged(ListSelectionEvent e) {
-               if (e.getValueIsAdjusting() == false) {
-                       if(list.getSelectedValue() == null) return; // Ignore 
the user if he clicks nowhere
-
-                       synchronized (this) {
-                               selectedValue = (ServiceInfo) 
foundNodes.get(list.getSelectedValue());
-                               goon = false;
-                               notify();
-                       }
-                       Logger.debug(this, "User has selected : 
"+foundNodes.get(list.getSelectedValue()));
-               }
-       }
-
-       /**
-        * The main loop : TheRealMeat(TM)
-        *
-        */
-       public void run() {
-               boolean isConfigValid = false;
-               FCPConnection fcp = null;
-
-               do {
-                       // Loop until a selection is done
-                       while(goon) {
-                               try {
-                                       synchronized (this) {
-                                               wait(Long.MAX_VALUE);
-                                       }
-                               } catch (InterruptedException e) {}
-
-                               list.repaint();
-                       }
-
-                       if(selectedValue == null) continue; // TODO: implement 
the "manual" popup there
-
-                       Logger.debug(this, "We got something from the UI : 
let's try to connect");
-
-                       // We try to connect to the server
-                       fcp = new FCPConnection(selectedValue.getHostAddress(), 
selectedValue.getPort(), -1, true, true);
-                       isConfigValid = fcp.connect();
-
-                       Logger.debug(this, "isConfigValid ="+isConfigValid);
-
-                       // Reload, just in  case it failed...
-                       goon = true;
-                       list.removeSelectionInterval(0, foundNodes.size());
-               } while(!isConfigValid);
-
-               Logger.debug(this, "We got something that looks valid from the 
UI : let's propagate changes to  the config");
-
-               // Save the config. now that we know it's valid
-               config.setValue("nodeAddress", selectedValue.getHostAddress());
-               config.setValue("nodePort", new 
Integer(selectedValue.getPort()).toString());
-               try {
-                       config.setValue("sameComputer", 
(jmdns.getInterface().equals(selectedValue.getAddress()) ? "true" : "false"));
-               } catch (IOException e ) {} // What can we do except assuming 
default is fine ?
-
-
-               Logger.info(this, "We are done : configuration has been saved 
sucessfully.");
-
-               // Close the fcp socket we have openned, cleanup
-               fcp.disconnect();
-               jmdns.close();
-               this.setVisible(false);
-       }
-
-       /**
-        * Convenient testing function function.
-        */
-       public static void main(String[] args) {
-               new MDNSDiscoveryPanel(new Config("/tmp/conf.ini")).run();
-               System.exit(0);
-       }
-}

Modified: trunk/apps/Thaw/src/thaw/plugins/FetchPlugin.java
===================================================================
--- trunk/apps/Thaw/src/thaw/plugins/FetchPlugin.java   2007-03-09 20:13:38 UTC 
(rev 12071)
+++ trunk/apps/Thaw/src/thaw/plugins/FetchPlugin.java   2007-03-09 20:41:01 UTC 
(rev 12072)
@@ -11,7 +11,7 @@
 import thaw.core.Core;
 import thaw.core.FreenetURIHelper;
 import thaw.core.I18n;
-import thaw.core.IconBox;
+import thaw.gui.IconBox;
 import thaw.core.Logger;
 import thaw.fcp.FCPClientGet;
 import thaw.plugins.fetchPlugin.FetchPanel;
@@ -146,6 +146,6 @@


        public javax.swing.ImageIcon getIcon() {
-               return thaw.core.IconBox.downloads;
+               return thaw.gui.IconBox.downloads;
        }
 }

Modified: trunk/apps/Thaw/src/thaw/plugins/Hsqldb.java
===================================================================
--- trunk/apps/Thaw/src/thaw/plugins/Hsqldb.java        2007-03-09 20:13:38 UTC 
(rev 12071)
+++ trunk/apps/Thaw/src/thaw/plugins/Hsqldb.java        2007-03-09 20:41:01 UTC 
(rev 12072)
@@ -109,6 +109,6 @@
        }

        public javax.swing.ImageIcon getIcon() {
-               return thaw.core.IconBox.database;
+               return thaw.gui.IconBox.database;
        }
 }

Modified: trunk/apps/Thaw/src/thaw/plugins/IndexBrowser.java
===================================================================
--- trunk/apps/Thaw/src/thaw/plugins/IndexBrowser.java  2007-03-09 20:13:38 UTC 
(rev 12071)
+++ trunk/apps/Thaw/src/thaw/plugins/IndexBrowser.java  2007-03-09 20:41:01 UTC 
(rev 12072)
@@ -7,7 +7,7 @@

 import thaw.core.Core;
 import thaw.core.I18n;
-import thaw.core.IconBox;
+import thaw.gui.IconBox;
 import thaw.core.Logger;
 import thaw.core.Plugin;
 import thaw.plugins.index.AutoRefresh;
@@ -142,6 +142,6 @@
        }

        public javax.swing.ImageIcon getIcon() {
-               return thaw.core.IconBox.indexBrowser;
+               return thaw.gui.IconBox.indexBrowser;
        }
 }

Modified: trunk/apps/Thaw/src/thaw/plugins/IndexExporter.java
===================================================================
--- trunk/apps/Thaw/src/thaw/plugins/IndexExporter.java 2007-03-09 20:13:38 UTC 
(rev 12071)
+++ trunk/apps/Thaw/src/thaw/plugins/IndexExporter.java 2007-03-09 20:41:01 UTC 
(rev 12072)
@@ -10,7 +10,7 @@
 import thaw.core.Core;
 import thaw.core.FileChooser;
 import thaw.core.I18n;
-import thaw.core.IconBox;
+import thaw.gui.IconBox;
 import thaw.core.Logger;
 import thaw.core.Plugin;
 import thaw.plugins.index.DatabaseManager;

Modified: trunk/apps/Thaw/src/thaw/plugins/InsertPlugin.java
===================================================================
--- trunk/apps/Thaw/src/thaw/plugins/InsertPlugin.java  2007-03-09 20:13:38 UTC 
(rev 12071)
+++ trunk/apps/Thaw/src/thaw/plugins/InsertPlugin.java  2007-03-09 20:41:01 UTC 
(rev 12072)
@@ -12,7 +12,7 @@

 import thaw.core.Core;
 import thaw.core.I18n;
-import thaw.core.IconBox;
+import thaw.gui.IconBox;
 import thaw.core.Logger;
 import thaw.core.WarningWindow;
 import thaw.fcp.FCPClientPut;
@@ -160,6 +160,6 @@
        }

        public javax.swing.ImageIcon getIcon() {
-               return thaw.core.IconBox.insertions;
+               return thaw.gui.IconBox.insertions;
        }
 }

Modified: trunk/apps/Thaw/src/thaw/plugins/LogConsole.java
===================================================================
--- trunk/apps/Thaw/src/thaw/plugins/LogConsole.java    2007-03-09 20:13:38 UTC 
(rev 12071)
+++ trunk/apps/Thaw/src/thaw/plugins/LogConsole.java    2007-03-09 20:41:01 UTC 
(rev 12072)
@@ -67,7 +67,7 @@
                consolePanel.add(logAreaScrollPane, BorderLayout.CENTER);
                consolePanel.add(saveToFile, BorderLayout.SOUTH);

-               
core.getMainWindow().addTab(I18n.getMessage("thaw.plugin.console.console"), 
thaw.core.IconBox.minTerminal, consolePanel);
+               
core.getMainWindow().addTab(I18n.getMessage("thaw.plugin.console.console"), 
thaw.gui.IconBox.minTerminal, consolePanel);

                Logger.addLogListener(this);

@@ -203,6 +203,6 @@


        public javax.swing.ImageIcon getIcon() {
-               return thaw.core.IconBox.terminal;
+               return thaw.gui.IconBox.terminal;
        }
 }

Modified: trunk/apps/Thaw/src/thaw/plugins/QueueWatcher.java
===================================================================
--- trunk/apps/Thaw/src/thaw/plugins/QueueWatcher.java  2007-03-09 20:13:38 UTC 
(rev 12071)
+++ trunk/apps/Thaw/src/thaw/plugins/QueueWatcher.java  2007-03-09 20:41:01 UTC 
(rev 12072)
@@ -14,7 +14,7 @@

 import thaw.core.Core;
 import thaw.core.I18n;
-import thaw.core.IconBox;
+import thaw.gui.IconBox;
 import thaw.core.Logger;
 import thaw.core.MainWindow;
 import thaw.fcp.FCPTransferQuery;
@@ -248,6 +248,6 @@


        public javax.swing.ImageIcon getIcon() {
-               return thaw.core.IconBox.queueWatcher;
+               return thaw.gui.IconBox.queueWatcher;
        }
 }

Modified: trunk/apps/Thaw/src/thaw/plugins/SqlConsole.java
===================================================================
--- trunk/apps/Thaw/src/thaw/plugins/SqlConsole.java    2007-03-09 20:13:38 UTC 
(rev 12071)
+++ trunk/apps/Thaw/src/thaw/plugins/SqlConsole.java    2007-03-09 20:41:01 UTC 
(rev 12072)
@@ -64,7 +64,7 @@
                panel = getPanel();

                
core.getMainWindow().addTab(I18n.getMessage("thaw.plugin.hsqldb.console"),
-                                           thaw.core.IconBox.minTerminal,
+                                           thaw.gui.IconBox.minTerminal,
                                            panel);

                return true;
@@ -307,6 +307,6 @@
        }

        public javax.swing.ImageIcon getIcon() {
-               return thaw.core.IconBox.terminal;
+               return thaw.gui.IconBox.terminal;
        }
 }

Modified: trunk/apps/Thaw/src/thaw/plugins/StatusBar.java
===================================================================
--- trunk/apps/Thaw/src/thaw/plugins/StatusBar.java     2007-03-09 20:13:38 UTC 
(rev 12071)
+++ trunk/apps/Thaw/src/thaw/plugins/StatusBar.java     2007-03-09 20:41:01 UTC 
(rev 12072)
@@ -147,6 +147,6 @@
        }

        public javax.swing.ImageIcon getIcon() {
-               return thaw.core.IconBox.remove;
+               return thaw.gui.IconBox.remove;
        }
 }

Modified: trunk/apps/Thaw/src/thaw/plugins/fetchPlugin/FetchPanel.java
===================================================================
--- trunk/apps/Thaw/src/thaw/plugins/fetchPlugin/FetchPanel.java        
2007-03-09 20:13:38 UTC (rev 12071)
+++ trunk/apps/Thaw/src/thaw/plugins/fetchPlugin/FetchPanel.java        
2007-03-09 20:41:01 UTC (rev 12072)
@@ -22,7 +22,7 @@

 import thaw.core.Core;
 import thaw.core.FileChooser;
-import thaw.core.GUIHelper;
+import thaw.gui.GUIHelper;
 import thaw.core.I18n;
 import thaw.core.Logger;
 import thaw.core.WarningWindow;

Modified: trunk/apps/Thaw/src/thaw/plugins/index/FileTable.java
===================================================================
--- trunk/apps/Thaw/src/thaw/plugins/index/FileTable.java       2007-03-09 
20:13:38 UTC (rev 12071)
+++ trunk/apps/Thaw/src/thaw/plugins/index/FileTable.java       2007-03-09 
20:41:01 UTC (rev 12072)
@@ -30,7 +30,7 @@
 import thaw.core.Config;
 import thaw.core.FreenetURIHelper;
 import thaw.core.I18n;
-import thaw.core.IconBox;
+import thaw.gui.IconBox;
 import thaw.core.Logger;
 import thaw.fcp.FCPClientGet;
 import thaw.fcp.FCPClientPut;

Modified: trunk/apps/Thaw/src/thaw/plugins/index/IndexConfigPanel.java
===================================================================
--- trunk/apps/Thaw/src/thaw/plugins/index/IndexConfigPanel.java        
2007-03-09 20:13:38 UTC (rev 12071)
+++ trunk/apps/Thaw/src/thaw/plugins/index/IndexConfigPanel.java        
2007-03-09 20:41:01 UTC (rev 12072)
@@ -68,7 +68,7 @@

        public void addTab() {
                
configWindow.addTab(I18n.getMessage("thaw.plugin.index.indexes"),
-                                   thaw.core.IconBox.minIndex,
+                                   thaw.gui.IconBox.minIndex,
                                    panel);
        }


Modified: trunk/apps/Thaw/src/thaw/plugins/index/IndexManagementHelper.java
===================================================================
--- trunk/apps/Thaw/src/thaw/plugins/index/IndexManagementHelper.java   
2007-03-09 20:13:38 UTC (rev 12071)
+++ trunk/apps/Thaw/src/thaw/plugins/index/IndexManagementHelper.java   
2007-03-09 20:41:01 UTC (rev 12072)
@@ -330,7 +330,7 @@
                        popupMenuA = new JPopupMenu();
                        JMenuItem item = new 
JMenuItem(I18n.getMessage("thaw.common.paste"));
                        popupMenuA.add(item);
-                       new thaw.core.GUIHelper.PasteHelper(item, 
publicKeyField);
+                       new thaw.gui.GUIHelper.PasteHelper(item, 
publicKeyField);
                        publicKeyField.addMouseListener(this);

                        if (askPrivateKey) {
@@ -340,7 +340,7 @@
                                popupMenuB = new JPopupMenu();
                                item = new 
JMenuItem(I18n.getMessage("thaw.common.paste"));
                                popupMenuB.add(item);
-                               new thaw.core.GUIHelper.PasteHelper(item, 
privateKeyField);
+                               new thaw.gui.GUIHelper.PasteHelper(item, 
privateKeyField);
                                privateKeyField.addMouseListener(this);
                        }

@@ -1250,7 +1250,7 @@
                        final JMenuItem item = new 
JMenuItem(I18n.getMessage("thaw.common.paste"));
                        popupMenu.add(item);
                        textArea.addMouseListener(this);
-                       new thaw.core.GUIHelper.PasteHelper(item, textArea);
+                       new thaw.gui.GUIHelper.PasteHelper(item, textArea);

                        cancelButton.addActionListener(this);
                        okButton.addActionListener(this);

Modified: trunk/apps/Thaw/src/thaw/plugins/index/IndexTree.java
===================================================================
--- trunk/apps/Thaw/src/thaw/plugins/index/IndexTree.java       2007-03-09 
20:13:38 UTC (rev 12071)
+++ trunk/apps/Thaw/src/thaw/plugins/index/IndexTree.java       2007-03-09 
20:41:01 UTC (rev 12072)
@@ -30,7 +30,7 @@
 import thaw.core.Config;
 import thaw.core.FreenetURIHelper;
 import thaw.core.I18n;
-import thaw.core.IconBox;
+import thaw.gui.IconBox;
 import thaw.core.Logger;
 import thaw.fcp.FCPQueueManager;
 import thaw.gui.JDragTree;

Modified: trunk/apps/Thaw/src/thaw/plugins/index/LinkTable.java
===================================================================
--- trunk/apps/Thaw/src/thaw/plugins/index/LinkTable.java       2007-03-09 
20:13:38 UTC (rev 12071)
+++ trunk/apps/Thaw/src/thaw/plugins/index/LinkTable.java       2007-03-09 
20:41:01 UTC (rev 12072)
@@ -23,7 +23,7 @@
 import javax.swing.table.DefaultTableCellRenderer;

 import thaw.core.I18n;
-import thaw.core.IconBox;
+import thaw.gui.IconBox;
 import thaw.fcp.FCPQueueManager;
 import thaw.plugins.ToolbarModifier;


Modified: trunk/apps/Thaw/src/thaw/plugins/index/UnknownIndexList.java
===================================================================
--- trunk/apps/Thaw/src/thaw/plugins/index/UnknownIndexList.java        
2007-03-09 20:13:38 UTC (rev 12071)
+++ trunk/apps/Thaw/src/thaw/plugins/index/UnknownIndexList.java        
2007-03-09 20:41:01 UTC (rev 12072)
@@ -15,7 +15,7 @@
 import javax.swing.JScrollPane;

 import thaw.core.I18n;
-import thaw.core.IconBox;
+import thaw.gui.IconBox;
 import thaw.fcp.FCPQueueManager;
 import thaw.plugins.ToolbarModifier;


Modified: trunk/apps/Thaw/src/thaw/plugins/queueWatcher/QueuePanel.java
===================================================================
--- trunk/apps/Thaw/src/thaw/plugins/queueWatcher/QueuePanel.java       
2007-03-09 20:13:38 UTC (rev 12071)
+++ trunk/apps/Thaw/src/thaw/plugins/queueWatcher/QueuePanel.java       
2007-03-09 20:41:01 UTC (rev 12072)
@@ -37,7 +37,7 @@
 import thaw.core.Core;
 import thaw.core.FileChooser;
 import thaw.core.I18n;
-import thaw.core.IconBox;
+import thaw.gui.IconBox;
 import thaw.core.Logger;
 import thaw.fcp.FCPClientGet;
 import thaw.fcp.FCPTransferQuery;


Reply via email to