[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

[vidalia-svn] r3895: NetworkMapPlugin loads, had to discard const qualifier to do (in vidalia/branches/extension-api/src/vidalia: . NetworkMapPlugin)



Author: tyree731
Date: 2009-06-26 00:36:42 -0400 (Fri, 26 Jun 2009)
New Revision: 3895

Modified:
   vidalia/branches/extension-api/src/vidalia/MainWindow.cpp
   vidalia/branches/extension-api/src/vidalia/NetworkMapPlugin/NetViewer.cpp
   vidalia/branches/extension-api/src/vidalia/NetworkMapPlugin/NetViewer.h
   vidalia/branches/extension-api/src/vidalia/NetworkMapPlugin/NetworkMapPlugin.cpp
   vidalia/branches/extension-api/src/vidalia/NetworkMapPlugin/NetworkMapPlugin.h
   vidalia/branches/extension-api/src/vidalia/VidaliaPanel.h
   vidalia/branches/extension-api/src/vidalia/VidaliaPluginInterface.h
Log:
NetworkMapPlugin loads, had to discard const qualifier to do it. Icons not loading properly.


Modified: vidalia/branches/extension-api/src/vidalia/MainWindow.cpp
===================================================================
--- vidalia/branches/extension-api/src/vidalia/MainWindow.cpp	2009-06-25 05:35:01 UTC (rev 3894)
+++ vidalia/branches/extension-api/src/vidalia/MainWindow.cpp	2009-06-26 04:36:42 UTC (rev 3895)
@@ -479,7 +479,9 @@
   _exitAct->setIcon(QIcon(IMG_EXIT));
   _bandwidthAct->setIcon(QIcon(IMG_BWGRAPH));
   _messageAct->setIcon(QIcon(IMG_MESSAGELOG));
+#if 0
   _networkAct->setIcon(QIcon(IMG_NETWORK));
+#endif
   _controlPanelAct->setIcon(QIcon(IMG_CONTROL_PANEL));
   _configAct->setIcon(QIcon(IMG_CONFIG));
   _aboutAct->setIcon(QIcon(IMG_ABOUT));
@@ -510,7 +512,9 @@
   menu->addSeparator();
   menu->addAction(_bandwidthAct);
   menu->addAction(_messageAct);
+#if 0
   menu->addAction(_networkAct);
+#endif
   menu->addAction(_newIdentityAct);
   menu->addSeparator();
   menu->addAction(_controlPanelAct);

Modified: vidalia/branches/extension-api/src/vidalia/NetworkMapPlugin/NetViewer.cpp
===================================================================
--- vidalia/branches/extension-api/src/vidalia/NetworkMapPlugin/NetViewer.cpp	2009-06-25 05:35:01 UTC (rev 3894)
+++ vidalia/branches/extension-api/src/vidalia/NetworkMapPlugin/NetViewer.cpp	2009-06-26 04:36:42 UTC (rev 3895)
@@ -39,8 +39,8 @@
 /** Constructor. Loads settings from VidaliaSettings.
  * \param parent The parent widget of this NetViewer object.\
  */
-NetViewer::NetViewer()
-  : VidaliaPanel()
+NetViewer::NetViewer(QWidget* parent)
+  : VidaliaPanel(parent)
 {
   /* Invoke Qt Designer generated QObject setup routine */
   ui.setupUi(this);

Modified: vidalia/branches/extension-api/src/vidalia/NetworkMapPlugin/NetViewer.h
===================================================================
--- vidalia/branches/extension-api/src/vidalia/NetworkMapPlugin/NetViewer.h	2009-06-25 05:35:01 UTC (rev 3894)
+++ vidalia/branches/extension-api/src/vidalia/NetworkMapPlugin/NetViewer.h	2009-06-26 04:36:42 UTC (rev 3895)
@@ -37,6 +37,7 @@
 #include <QEvent>
 #include <QTimer>
 #include <QHash>
+#include <QWidget>
 
 
 class NetViewer : public VidaliaPanel
@@ -45,7 +46,7 @@
 
 public:
   /** Default constructor */
-  NetViewer();
+  NetViewer(QWidget* parent = 0);
 
 public slots:
   /** Displays the network map window. */

Modified: vidalia/branches/extension-api/src/vidalia/NetworkMapPlugin/NetworkMapPlugin.cpp
===================================================================
--- vidalia/branches/extension-api/src/vidalia/NetworkMapPlugin/NetworkMapPlugin.cpp	2009-06-25 05:35:01 UTC (rev 3894)
+++ vidalia/branches/extension-api/src/vidalia/NetworkMapPlugin/NetworkMapPlugin.cpp	2009-06-26 04:36:42 UTC (rev 3895)
@@ -18,17 +18,26 @@
 
 NetworkMapPlugin::NetworkMapPlugin()
 {
-  _netViewer = new NetViewer();
+  _netViewer = 0;
 }
 
 NetworkMapPlugin::~NetworkMapPlugin()
 {
-  delete _netViewer;
+  if (_netViewer)
+    delete _netViewer;
 }
 
+void
+NetworkMapPlugin::init()
+{
+  _netViewer = new NetViewer();
+}
+
 VidaliaPanel*
-NetworkMapPlugin::panel() const
+NetworkMapPlugin::panel()
 {
+  if (!_netViewer)
+    init();
   return _netViewer;
 }
 

Modified: vidalia/branches/extension-api/src/vidalia/NetworkMapPlugin/NetworkMapPlugin.h
===================================================================
--- vidalia/branches/extension-api/src/vidalia/NetworkMapPlugin/NetworkMapPlugin.h	2009-06-25 05:35:01 UTC (rev 3894)
+++ vidalia/branches/extension-api/src/vidalia/NetworkMapPlugin/NetworkMapPlugin.h	2009-06-26 04:36:42 UTC (rev 3895)
@@ -34,8 +34,11 @@
   NetworkMapPlugin();
   ~NetworkMapPlugin();
 
+  /** Bit of hackery to work around static plugin system. Can not instantiate a VidaliaPanel while qApp doesn't exist. */
+  void init();
+
   /** Returns the vidalia panel to be displayed in the main window. */
-  VidaliaPanel* panel() const;
+  VidaliaPanel* panel();
   /** Returns the human readable plugin name for adding and removing plugins. */
   QString pluginHumanName() const;
 private:

Modified: vidalia/branches/extension-api/src/vidalia/VidaliaPanel.h
===================================================================
--- vidalia/branches/extension-api/src/vidalia/VidaliaPanel.h	2009-06-25 05:35:01 UTC (rev 3894)
+++ vidalia/branches/extension-api/src/vidalia/VidaliaPanel.h	2009-06-26 04:36:42 UTC (rev 3895)
@@ -20,6 +20,7 @@
 #include <QIcon>
 #include <QMainWindow>
 #include <QString>
+#include <QWidget>
 
 /** A Vidalia Panel. Includes a tab entry on the main window and a displayable
  * panel for when the tab is highlighted. */
@@ -27,7 +28,7 @@
 {
 public:
   /** Constructor for a Vidalia Panel. */
-  VidaliaPanel() {}
+  VidaliaPanel(QWidget* parent = 0) : QMainWindow(parent) {}
   /** Destructor for a Vidalia Panel. */
   virtual ~VidaliaPanel() {}
   /** Returns the label to be displayed on the panel's tab. */

Modified: vidalia/branches/extension-api/src/vidalia/VidaliaPluginInterface.h
===================================================================
--- vidalia/branches/extension-api/src/vidalia/VidaliaPluginInterface.h	2009-06-25 05:35:01 UTC (rev 3894)
+++ vidalia/branches/extension-api/src/vidalia/VidaliaPluginInterface.h	2009-06-26 04:36:42 UTC (rev 3895)
@@ -36,9 +36,9 @@
   /** Virtual destructor */
   virtual ~VidaliaPluginInterface() {}
   /** Virtual class to allow for display of a panel name */
-  virtual VidaliaPanel* panel() const { return 0; }
+  virtual VidaliaPanel* panel() { return 0; }
   /** Virtual function to return a plugin's widget. */
-  virtual VidaliaWidget* widget() const { return 0; }
+  virtual VidaliaWidget* widget() { return 0; }
   /** Virtual function to return any file menu entries a plugin has. */
   virtual QAction* fileMenuEntry() const { return 0; }
   /** Virtual function to return any tray menu entries a plugin has. */
@@ -50,11 +50,10 @@
   /** Virtual function to return a human readable name for a plugin. */
   virtual QString pluginHumanName() const = 0;
   /** Virtual function to return a plugin's description. */
-  virtual QString pluginDescription() const { return QString(""); }
+  virtual QString pluginDescription() const { return QString(); }
 };
 
 Q_DECLARE_INTERFACE(VidaliaPluginInterface, 
 		    "net.vidalia-project.vidalia.VidaliaPluginInterface/1.0")
 
-
 #endif