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

[vidalia-svn] r4008: Move the plugin and torcontrol libraries into shared librari (in vidalia/branches/extension-api/src: plugins torcontrol vidalia)



Author: edmanm
Date: 2009-08-04 22:03:31 -0400 (Tue, 04 Aug 2009)
New Revision: 4008

Added:
   vidalia/branches/extension-api/src/plugins/plugin_export.h
Modified:
   vidalia/branches/extension-api/src/plugins/CMakeLists.txt
   vidalia/branches/extension-api/src/plugins/ConfigPage.h
   vidalia/branches/extension-api/src/plugins/PluginManager.h
   vidalia/branches/extension-api/src/plugins/VidaliaPanel.h
   vidalia/branches/extension-api/src/plugins/VidaliaPluginInterface.h
   vidalia/branches/extension-api/src/plugins/VidaliaWidget.h
   vidalia/branches/extension-api/src/torcontrol/AddressMap.h
   vidalia/branches/extension-api/src/torcontrol/AddressMapEvent.h
   vidalia/branches/extension-api/src/torcontrol/BootstrapStatus.h
   vidalia/branches/extension-api/src/torcontrol/BootstrapStatusEvent.h
   vidalia/branches/extension-api/src/torcontrol/CMakeLists.txt
   vidalia/branches/extension-api/src/torcontrol/Circuit.h
   vidalia/branches/extension-api/src/torcontrol/CircuitEstablishedEvent.h
   vidalia/branches/extension-api/src/torcontrol/CircuitEvent.h
   vidalia/branches/extension-api/src/torcontrol/ClientStatusEvent.h
   vidalia/branches/extension-api/src/torcontrol/DangerousPortEvent.h
   vidalia/branches/extension-api/src/torcontrol/DangerousVersionEvent.h
   vidalia/branches/extension-api/src/torcontrol/GeneralStatusEvent.h
   vidalia/branches/extension-api/src/torcontrol/LogEvent.h
   vidalia/branches/extension-api/src/torcontrol/NewDescriptorEvent.h
   vidalia/branches/extension-api/src/torcontrol/OrConnEvent.h
   vidalia/branches/extension-api/src/torcontrol/ProtocolInfo.h
   vidalia/branches/extension-api/src/torcontrol/RouterDescriptor.h
   vidalia/branches/extension-api/src/torcontrol/RouterStatus.h
   vidalia/branches/extension-api/src/torcontrol/ServerStatusEvent.h
   vidalia/branches/extension-api/src/torcontrol/StatusEvent.h
   vidalia/branches/extension-api/src/torcontrol/Stream.h
   vidalia/branches/extension-api/src/torcontrol/StreamEvent.h
   vidalia/branches/extension-api/src/torcontrol/TorControl.h
   vidalia/branches/extension-api/src/torcontrol/TorEvents.h
   vidalia/branches/extension-api/src/torcontrol/TorProcess.h
   vidalia/branches/extension-api/src/torcontrol/TorService.h
   vidalia/branches/extension-api/src/torcontrol/TorSignal.h
   vidalia/branches/extension-api/src/torcontrol/UnrecognizedClientStatusEvent.h
   vidalia/branches/extension-api/src/torcontrol/UnrecognizedGeneralStatusEvent.h
   vidalia/branches/extension-api/src/torcontrol/UnrecognizedServerStatusEvent.h
   vidalia/branches/extension-api/src/torcontrol/tcglobal.h
   vidalia/branches/extension-api/src/vidalia/CMakeLists.txt
Log:

Move the plugin and torcontrol libraries into shared libraries and export
a bunch of classes that plugins and Vidalia itself want to use.


Modified: vidalia/branches/extension-api/src/plugins/CMakeLists.txt
===================================================================
--- vidalia/branches/extension-api/src/plugins/CMakeLists.txt	2009-08-04 21:30:27 UTC (rev 4007)
+++ vidalia/branches/extension-api/src/plugins/CMakeLists.txt	2009-08-05 02:03:31 UTC (rev 4008)
@@ -11,6 +11,7 @@
 ##
 
 
+add_definitions(-DVIDALIA_PLUGIN_LIBRARY=1)
 set(plugin_SRCS
   PluginManager.cpp
   VidaliaPluginInterface.cpp
@@ -22,7 +23,7 @@
   ConfigPage.h
 )
 
-add_library(vidaliaplugin STATIC ${plugin_SRCS})
+add_library(vidaliaplugin SHARED ${plugin_SRCS})
 target_link_libraries(vidaliaplugin ${QT_LIBRARIES})
 
 if (WITH_HERDICTWEB_PLUGIN)

Modified: vidalia/branches/extension-api/src/plugins/ConfigPage.h
===================================================================
--- vidalia/branches/extension-api/src/plugins/ConfigPage.h	2009-08-04 21:30:27 UTC (rev 4007)
+++ vidalia/branches/extension-api/src/plugins/ConfigPage.h	2009-08-05 02:03:31 UTC (rev 4008)
@@ -17,10 +17,12 @@
 #ifndef _CONFIGPAGE_H
 #define _CONFIGPAGE_H
 
+#include "plugin_export.h"
+
 #include <QWidget>
 
 
-class ConfigPage : public QWidget
+class VIDALIA_PLUGIN_EXPORT ConfigPage : public QWidget
 {
   Q_OBJECT
 

Modified: vidalia/branches/extension-api/src/plugins/PluginManager.h
===================================================================
--- vidalia/branches/extension-api/src/plugins/PluginManager.h	2009-08-04 21:30:27 UTC (rev 4007)
+++ vidalia/branches/extension-api/src/plugins/PluginManager.h	2009-08-05 02:03:31 UTC (rev 4008)
@@ -19,6 +19,7 @@
 
 #include "TorControl.h"
 #include "VidaliaPluginInterface.h"
+#include "plugin_export.h"
 
 #include <QList>
 #include <QObject>
@@ -39,7 +40,7 @@
  * Vidalia. Provides an interface for plugins to interact with the Vidalia
  * application as well providing a number of useful functions for interplugin
  * communication. */
-class PluginManager : public QObject
+class VIDALIA_PLUGIN_EXPORT PluginManager : public QObject
 {
   Q_OBJECT
 

Modified: vidalia/branches/extension-api/src/plugins/VidaliaPanel.h
===================================================================
--- vidalia/branches/extension-api/src/plugins/VidaliaPanel.h	2009-08-04 21:30:27 UTC (rev 4007)
+++ vidalia/branches/extension-api/src/plugins/VidaliaPanel.h	2009-08-05 02:03:31 UTC (rev 4008)
@@ -18,6 +18,7 @@
 #define _VIDALIAPANEL_H
 
 #include "VidaliaPluginInterface.h"
+#include "plugin_export.h"
 
 #include <QIcon>
 #include <QMainWindow>
@@ -28,7 +29,7 @@
 
 /** A Vidalia Panel. Includes a tab entry on the main window and a displayable
  * panel for when the tab is highlighted. */
-class VidaliaPanel : public QMainWindow
+class VIDALIA_PLUGIN_EXPORT VidaliaPanel : public QMainWindow
 {
   Q_OBJECT
 

Modified: vidalia/branches/extension-api/src/plugins/VidaliaPluginInterface.h
===================================================================
--- vidalia/branches/extension-api/src/plugins/VidaliaPluginInterface.h	2009-08-04 21:30:27 UTC (rev 4007)
+++ vidalia/branches/extension-api/src/plugins/VidaliaPluginInterface.h	2009-08-05 02:03:31 UTC (rev 4008)
@@ -21,6 +21,7 @@
 #include "VidaliaPanel.h"
 #include "VidaliaWidget.h"
 #include "ConfigPage.h"
+#include "plugin_export.h"
 
 #include <QObject>
 #include <QtPlugin>
@@ -35,7 +36,7 @@
  * included functions in order to display themselves and have menu entries. If
  * a plugin does not implement a given function then that functionality will
  * not be included for the plugin. */
-class VidaliaPluginInterface : public QObject
+class VIDALIA_PLUGIN_EXPORT VidaliaPluginInterface : public QObject
 {
   Q_OBJECT
 

Modified: vidalia/branches/extension-api/src/plugins/VidaliaWidget.h
===================================================================
--- vidalia/branches/extension-api/src/plugins/VidaliaWidget.h	2009-08-04 21:30:27 UTC (rev 4007)
+++ vidalia/branches/extension-api/src/plugins/VidaliaWidget.h	2009-08-05 02:03:31 UTC (rev 4008)
@@ -14,11 +14,14 @@
 ** \brief Defines the Vidalia widget, a displayable entity living on the dashboard.
 */
 
+#include "plugin_export.h"
+
 #include <QWidget>
 
+
 /** A Vidalia Widget. A displayable entity that lives on a user's dashboard.
  * Typically "lighter" than a VidaliaPanel. */
-class VidaliaWidget : public QWidget
+class VIDALIA_PLUGIN_EXPORT VidaliaWidget : public QWidget
 {
 public:
   /** Constructor for a Vidalia Widget. */

Added: vidalia/branches/extension-api/src/plugins/plugin_export.h
===================================================================
--- vidalia/branches/extension-api/src/plugins/plugin_export.h	                        (rev 0)
+++ vidalia/branches/extension-api/src/plugins/plugin_export.h	2009-08-05 02:03:31 UTC (rev 4008)
@@ -0,0 +1,23 @@
+/*
+**  This file is part of Vidalia, and is subject to the license terms in the
+**  LICENSE file, found in the top level directory of this distribution. If you
+**  did not receive the LICENSE file with this file, you may obtain it from the
+**  Vidalia source package distributed by the Vidalia Project at
+**  http://www.vidalia-project.net/. No part of Vidalia, including this file,
+**  may be copied, modified, propagated, or distributed except according to the
+**  terms described in the LICENSE file.
+*/
+
+#ifndef PLUGIN_EXPORT_H
+#define PLUGIN_EXPORT_H
+
+#include <QtGlobal>
+
+#if defined(VIDALIA_PLUGIN_LIBRARY)
+#define VIDALIA_PLUGIN_EXPORT Q_DECL_EXPORT
+#else
+#define VIDALIA_PLUGIN_EXPORT Q_DECL_IMPORT
+#endif
+
+#endif
+


Property changes on: vidalia/branches/extension-api/src/plugins/plugin_export.h
___________________________________________________________________
Added: svn:keywords
   + Id
Added: svn:eol-style
   + native

Modified: vidalia/branches/extension-api/src/torcontrol/AddressMap.h
===================================================================
--- vidalia/branches/extension-api/src/torcontrol/AddressMap.h	2009-08-04 21:30:27 UTC (rev 4007)
+++ vidalia/branches/extension-api/src/torcontrol/AddressMap.h	2009-08-05 02:03:31 UTC (rev 4008)
@@ -17,6 +17,8 @@
 #ifndef _ADDRESSMAP_H
 #define _ADDRESSMAP_H
 
+#include "tcglobal.h"
+
 #include <QHash>
 #include <QDateTime>
 #include <QPair>
@@ -26,7 +28,7 @@
 typedef QPair<QString, QDateTime> AddressMapEntry;
 
 
-class AddressMap : public QHash<QString, AddressMapEntry>
+class TORCONTROL_EXPORT AddressMap : public QHash<QString, AddressMapEntry>
 {
 public:
   /** Types of address mappings. */

Modified: vidalia/branches/extension-api/src/torcontrol/AddressMapEvent.h
===================================================================
--- vidalia/branches/extension-api/src/torcontrol/AddressMapEvent.h	2009-08-04 21:30:27 UTC (rev 4007)
+++ vidalia/branches/extension-api/src/torcontrol/AddressMapEvent.h	2009-08-05 02:03:31 UTC (rev 4008)
@@ -18,12 +18,14 @@
 #ifndef _ADDRESSMAPEVENT_H
 #define _ADDRESSMAPEVENT_H
 
+#include "tcglobal.h"
+
 #include <QEvent>
 #include <QString>
 #include <QDateTime>
 
 
-class AddressMapEvent : public QEvent
+class TORCONTROL_EXPORT AddressMapEvent : public QEvent
 {
 public:
   /** Constructor */

Modified: vidalia/branches/extension-api/src/torcontrol/BootstrapStatus.h
===================================================================
--- vidalia/branches/extension-api/src/torcontrol/BootstrapStatus.h	2009-08-04 21:30:27 UTC (rev 4007)
+++ vidalia/branches/extension-api/src/torcontrol/BootstrapStatus.h	2009-08-05 02:03:31 UTC (rev 4008)
@@ -22,7 +22,7 @@
 #include <QString>
 
 
-class BootstrapStatus
+class TORCONTROL_EXPORT BootstrapStatus
 {
 public:
   /** Currently enumerated bootstrapping states defined by Tor's control

Modified: vidalia/branches/extension-api/src/torcontrol/BootstrapStatusEvent.h
===================================================================
--- vidalia/branches/extension-api/src/torcontrol/BootstrapStatusEvent.h	2009-08-04 21:30:27 UTC (rev 4007)
+++ vidalia/branches/extension-api/src/torcontrol/BootstrapStatusEvent.h	2009-08-05 02:03:31 UTC (rev 4008)
@@ -24,7 +24,7 @@
 #include <QString>
 
 
-class BootstrapStatusEvent : public ClientStatusEvent
+class TORCONTROL_EXPORT BootstrapStatusEvent : public ClientStatusEvent
 {
 public:
   /** Constructor. */

Modified: vidalia/branches/extension-api/src/torcontrol/CMakeLists.txt
===================================================================
--- vidalia/branches/extension-api/src/torcontrol/CMakeLists.txt	2009-08-04 21:30:27 UTC (rev 4007)
+++ vidalia/branches/extension-api/src/torcontrol/CMakeLists.txt	2009-08-05 02:03:31 UTC (rev 4008)
@@ -11,6 +11,8 @@
 ##
 
 
+add_definitions(-DTORCONTROL_LIBRARY=1)
+
 set(torcontrol_SRCS 
   AddressMap.cpp
   BootstrapStatus.cpp
@@ -56,6 +58,6 @@
 endif(WIN32)
 
 
-add_library(torcontrol STATIC  ${torcontrol_SRCS})
+add_library(torcontrol SHARED ${torcontrol_SRCS})
 target_link_libraries(torcontrol ${QT_LIBRARIES} common)
 

Modified: vidalia/branches/extension-api/src/torcontrol/Circuit.h
===================================================================
--- vidalia/branches/extension-api/src/torcontrol/Circuit.h	2009-08-04 21:30:27 UTC (rev 4007)
+++ vidalia/branches/extension-api/src/torcontrol/Circuit.h	2009-08-05 02:03:31 UTC (rev 4008)
@@ -17,6 +17,8 @@
 #ifndef _CIRCUIT_H
 #define _CIRCUIT_H
 
+#include "tcglobal.h"
+
 #include <QCoreApplication>
 #include <QStringList>
 
@@ -24,7 +26,7 @@
 typedef QString CircuitId;
 
 
-class Circuit
+class TORCONTROL_EXPORT Circuit
 {
   Q_DECLARE_TR_FUNCTIONS(Circuit)
 

Modified: vidalia/branches/extension-api/src/torcontrol/CircuitEstablishedEvent.h
===================================================================
--- vidalia/branches/extension-api/src/torcontrol/CircuitEstablishedEvent.h	2009-08-04 21:30:27 UTC (rev 4007)
+++ vidalia/branches/extension-api/src/torcontrol/CircuitEstablishedEvent.h	2009-08-05 02:03:31 UTC (rev 4008)
@@ -18,9 +18,10 @@
 #define _CIRCUITESTABLISHEDEVENT_H
 
 #include "ClientStatusEvent.h"
+#include "tcglobal.h"
 
 
-class CircuitEstablishedEvent : public ClientStatusEvent
+class TORCONTROL_EXPORT CircuitEstablishedEvent : public ClientStatusEvent
 {
 public:
   /** Constructor. */

Modified: vidalia/branches/extension-api/src/torcontrol/CircuitEvent.h
===================================================================
--- vidalia/branches/extension-api/src/torcontrol/CircuitEvent.h	2009-08-04 21:30:27 UTC (rev 4007)
+++ vidalia/branches/extension-api/src/torcontrol/CircuitEvent.h	2009-08-05 02:03:31 UTC (rev 4008)
@@ -19,12 +19,13 @@
 
 #include "Circuit.h"
 #include "eventtype.h"
+#include "tcglobal.h"
 
 #include <QEvent>
 #include <QString>
 
 
-class CircuitEvent : public QEvent
+class TORCONTROL_EXPORT CircuitEvent : public QEvent
 {
 public:
   /** Constructor */

Modified: vidalia/branches/extension-api/src/torcontrol/ClientStatusEvent.h
===================================================================
--- vidalia/branches/extension-api/src/torcontrol/ClientStatusEvent.h	2009-08-04 21:30:27 UTC (rev 4007)
+++ vidalia/branches/extension-api/src/torcontrol/ClientStatusEvent.h	2009-08-05 02:03:31 UTC (rev 4008)
@@ -18,9 +18,10 @@
 #define _CLIENTSTATUSEVENT_H
 
 #include "StatusEvent.h"
+#include "tcglobal.h"
 
 
-class ClientStatusEvent : public StatusEvent
+class TORCONTROL_EXPORT ClientStatusEvent : public StatusEvent
 {
 public:
   /** Tor client status event type. */

Modified: vidalia/branches/extension-api/src/torcontrol/DangerousPortEvent.h
===================================================================
--- vidalia/branches/extension-api/src/torcontrol/DangerousPortEvent.h	2009-08-04 21:30:27 UTC (rev 4007)
+++ vidalia/branches/extension-api/src/torcontrol/DangerousPortEvent.h	2009-08-05 02:03:31 UTC (rev 4008)
@@ -23,7 +23,7 @@
 #include <QString>
 
 
-class DangerousPortEvent : public ClientStatusEvent
+class TORCONTROL_EXPORT DangerousPortEvent : public ClientStatusEvent
 {
 
 public:

Modified: vidalia/branches/extension-api/src/torcontrol/DangerousVersionEvent.h
===================================================================
--- vidalia/branches/extension-api/src/torcontrol/DangerousVersionEvent.h	2009-08-04 21:30:27 UTC (rev 4007)
+++ vidalia/branches/extension-api/src/torcontrol/DangerousVersionEvent.h	2009-08-05 02:03:31 UTC (rev 4008)
@@ -18,11 +18,12 @@
 #define _DANGEROUSVERSIONEVENT_H
 
 #include "GeneralStatusEvent.h"
+#include "tcglobal.h"
 
 #include <QStringList>
 
 
-class DangerousVersionEvent : public GeneralStatusEvent
+class TORCONTROL_EXPORT DangerousVersionEvent : public GeneralStatusEvent
 {
 public:
   /** Possible reasons Tor thinks its version is dangerous. */

Modified: vidalia/branches/extension-api/src/torcontrol/GeneralStatusEvent.h
===================================================================
--- vidalia/branches/extension-api/src/torcontrol/GeneralStatusEvent.h	2009-08-04 21:30:27 UTC (rev 4007)
+++ vidalia/branches/extension-api/src/torcontrol/GeneralStatusEvent.h	2009-08-05 02:03:31 UTC (rev 4008)
@@ -18,9 +18,9 @@
 #define _GENERALSTATUSEVENT_H
 
 #include "StatusEvent.h"
+#include "tcglobal.h"
 
-
-class GeneralStatusEvent : public StatusEvent
+class TORCONTROL_EXPORT GeneralStatusEvent : public StatusEvent
 {
 public:
   /**< General Tor status event types. */

Modified: vidalia/branches/extension-api/src/torcontrol/LogEvent.h
===================================================================
--- vidalia/branches/extension-api/src/torcontrol/LogEvent.h	2009-08-04 21:30:27 UTC (rev 4007)
+++ vidalia/branches/extension-api/src/torcontrol/LogEvent.h	2009-08-05 02:03:31 UTC (rev 4008)
@@ -17,12 +17,14 @@
 #ifndef _LOGEVENT_H
 #define _LOGEVENT_H
 
+#include "tcglobal.h"
+
 #include <QCoreApplication>
 #include <QString>
 #include <QEvent>
 
 
-class LogEvent : public QEvent
+class TORCONTROL_EXPORT LogEvent : public QEvent
 {
   Q_DECLARE_TR_FUNCTIONS(LogEvent)
 

Modified: vidalia/branches/extension-api/src/torcontrol/NewDescriptorEvent.h
===================================================================
--- vidalia/branches/extension-api/src/torcontrol/NewDescriptorEvent.h	2009-08-04 21:30:27 UTC (rev 4007)
+++ vidalia/branches/extension-api/src/torcontrol/NewDescriptorEvent.h	2009-08-05 02:03:31 UTC (rev 4008)
@@ -17,11 +17,13 @@
 #ifndef _NEWDESCRIPTOREVENT_H
 #define _NEWDESCRIPTOREVENT_H
 
+#include "tcglobal.h"
+
 #include <QStringList>
 #include <QEvent>
 
 
-class NewDescriptorEvent : public QEvent
+class TORCONTROL_EXPORT NewDescriptorEvent : public QEvent
 {
 public:
   /** Default constructor */

Modified: vidalia/branches/extension-api/src/torcontrol/OrConnEvent.h
===================================================================
--- vidalia/branches/extension-api/src/torcontrol/OrConnEvent.h	2009-08-04 21:30:27 UTC (rev 4007)
+++ vidalia/branches/extension-api/src/torcontrol/OrConnEvent.h	2009-08-05 02:03:31 UTC (rev 4008)
@@ -17,11 +17,13 @@
 #ifndef _ORCONNEVENT_H
 #define _ORCONNEVENT_H
 
+#include "tcglobal.h"
+
 #include <QEvent>
 #include <QString>
 
 
-class OrConnEvent : public QEvent
+class TORCONTROL_EXPORT OrConnEvent : public QEvent
 {
 public:
   /** OR connection status */

Modified: vidalia/branches/extension-api/src/torcontrol/ProtocolInfo.h
===================================================================
--- vidalia/branches/extension-api/src/torcontrol/ProtocolInfo.h	2009-08-04 21:30:27 UTC (rev 4007)
+++ vidalia/branches/extension-api/src/torcontrol/ProtocolInfo.h	2009-08-05 02:03:31 UTC (rev 4008)
@@ -17,10 +17,12 @@
 #ifndef _PROTOCOLINFO_H
 #define _PROTOCOLINFO_H
 
+#include "tcglobal.h"
+
 #include <QStringList>
 
 
-class ProtocolInfo
+class TORCONTROL_EXPORT ProtocolInfo
 {
 public:
   /** Default constructor. */

Modified: vidalia/branches/extension-api/src/torcontrol/RouterDescriptor.h
===================================================================
--- vidalia/branches/extension-api/src/torcontrol/RouterDescriptor.h	2009-08-04 21:30:27 UTC (rev 4007)
+++ vidalia/branches/extension-api/src/torcontrol/RouterDescriptor.h	2009-08-05 02:03:31 UTC (rev 4008)
@@ -17,6 +17,8 @@
 #ifndef _ROUTERDESCRIPTOR_H
 #define _ROUTERDESCRIPTOR_H
 
+#include "tcglobal.h"
+
 #include <QCoreApplication>
 #include <QStringList>
 #include <QDateTime>
@@ -24,7 +26,7 @@
 #include <QHostAddress>
 
 
-class RouterDescriptor
+class TORCONTROL_EXPORT RouterDescriptor
 {
   Q_DECLARE_TR_FUNCTIONS(RouterDescriptor)
 

Modified: vidalia/branches/extension-api/src/torcontrol/RouterStatus.h
===================================================================
--- vidalia/branches/extension-api/src/torcontrol/RouterStatus.h	2009-08-04 21:30:27 UTC (rev 4007)
+++ vidalia/branches/extension-api/src/torcontrol/RouterStatus.h	2009-08-05 02:03:31 UTC (rev 4008)
@@ -17,13 +17,15 @@
 #ifndef _ROUTERSTATUS_H
 #define _ROUTERSTATUS_H
 
+#include "tcglobal.h"
+
 #include <QFlags>
 #include <QStringList>
 #include <QHostAddress>
 #include <QDateTime>
 
 
-class RouterStatus
+class TORCONTROL_EXPORT RouterStatus
 {
 public:
   /** Possible router status flags. */

Modified: vidalia/branches/extension-api/src/torcontrol/ServerStatusEvent.h
===================================================================
--- vidalia/branches/extension-api/src/torcontrol/ServerStatusEvent.h	2009-08-04 21:30:27 UTC (rev 4007)
+++ vidalia/branches/extension-api/src/torcontrol/ServerStatusEvent.h	2009-08-05 02:03:31 UTC (rev 4008)
@@ -18,9 +18,10 @@
 #define _SERVERSTATUSEVENT_H
 
 #include "StatusEvent.h"
+#include "tcglobal.h"
 
 
-class ServerStatusEvent : public StatusEvent
+class TORCONTROL_EXPORT ServerStatusEvent : public StatusEvent
 {
 public:
   /**< Tor server status event types. */

Modified: vidalia/branches/extension-api/src/torcontrol/StatusEvent.h
===================================================================
--- vidalia/branches/extension-api/src/torcontrol/StatusEvent.h	2009-08-04 21:30:27 UTC (rev 4007)
+++ vidalia/branches/extension-api/src/torcontrol/StatusEvent.h	2009-08-05 02:03:31 UTC (rev 4008)
@@ -24,7 +24,7 @@
 #include <QString>
 
 
-class StatusEvent : public QEvent
+class TORCONTROL_EXPORT StatusEvent : public QEvent
 {
 public:
   /** Constructor */

Modified: vidalia/branches/extension-api/src/torcontrol/Stream.h
===================================================================
--- vidalia/branches/extension-api/src/torcontrol/Stream.h	2009-08-04 21:30:27 UTC (rev 4007)
+++ vidalia/branches/extension-api/src/torcontrol/Stream.h	2009-08-05 02:03:31 UTC (rev 4008)
@@ -18,6 +18,7 @@
 #define _STREAM_H
 
 #include "Circuit.h"
+#include "tcglobal.h"
 
 #include <QCoreApplication>
 #include <QString>
@@ -29,7 +30,7 @@
 typedef QString StreamId;
 
 
-class Stream
+class TORCONTROL_EXPORT Stream
 {
   Q_DECLARE_TR_FUNCTIONS(Stream)
 

Modified: vidalia/branches/extension-api/src/torcontrol/StreamEvent.h
===================================================================
--- vidalia/branches/extension-api/src/torcontrol/StreamEvent.h	2009-08-04 21:30:27 UTC (rev 4007)
+++ vidalia/branches/extension-api/src/torcontrol/StreamEvent.h	2009-08-05 02:03:31 UTC (rev 4008)
@@ -19,11 +19,12 @@
 
 #include "Stream.h"
 #include "eventtype.h"
+#include "tcglobal.h"
 
 #include <QEvent>
 
 
-class StreamEvent : public QEvent
+class TORCONTROL_EXPORT StreamEvent : public QEvent
 {
 public:
   /** Default constructor */

Modified: vidalia/branches/extension-api/src/torcontrol/TorControl.h
===================================================================
--- vidalia/branches/extension-api/src/torcontrol/TorControl.h	2009-08-04 21:30:27 UTC (rev 4007)
+++ vidalia/branches/extension-api/src/torcontrol/TorControl.h	2009-08-05 02:03:31 UTC (rev 4008)
@@ -26,6 +26,7 @@
 #include "BootstrapStatus.h"
 #include "AddressMap.h"
 #include "ProtocolInfo.h"
+#include "tcglobal.h"
 
 #if defined(Q_OS_WIN32)
 #include "TorService.h"
@@ -43,7 +44,7 @@
 typedef QHash<QString,QString> DescriptorAnnotations;
 
 
-class TorControl : public QObject
+class TORCONTROL_EXPORT TorControl : public QObject
 {
   Q_OBJECT
   

Modified: vidalia/branches/extension-api/src/torcontrol/TorEvents.h
===================================================================
--- vidalia/branches/extension-api/src/torcontrol/TorEvents.h	2009-08-04 21:30:27 UTC (rev 4007)
+++ vidalia/branches/extension-api/src/torcontrol/TorEvents.h	2009-08-05 02:03:31 UTC (rev 4008)
@@ -27,13 +27,14 @@
 #include "StatusEvent.h"
 #include "ControlReply.h"
 #include "eventtype.h"
+#include "tcglobal.h"
 
 #include <QObject>
 #include <QMultiHash>
 #include <QList>
 
 
-class TorEvents : public QObject
+class TORCONTROL_EXPORT TorEvents : public QObject
 {
   Q_OBJECT
 

Modified: vidalia/branches/extension-api/src/torcontrol/TorProcess.h
===================================================================
--- vidalia/branches/extension-api/src/torcontrol/TorProcess.h	2009-08-04 21:30:27 UTC (rev 4007)
+++ vidalia/branches/extension-api/src/torcontrol/TorProcess.h	2009-08-05 02:03:31 UTC (rev 4008)
@@ -17,10 +17,12 @@
 #ifndef _TORPROCESS_H
 #define _TORPROCESS_H
 
+#include "tcglobal.h"
+
 #include <QProcess>
 
 
-class TorProcess : public QProcess
+class TORCONTROL_EXPORT TorProcess : public QProcess
 {
   Q_OBJECT
 

Modified: vidalia/branches/extension-api/src/torcontrol/TorService.h
===================================================================
--- vidalia/branches/extension-api/src/torcontrol/TorService.h	2009-08-04 21:30:27 UTC (rev 4007)
+++ vidalia/branches/extension-api/src/torcontrol/TorService.h	2009-08-05 02:03:31 UTC (rev 4008)
@@ -17,6 +17,8 @@
 #ifndef _TORSERVICE_H
 #define _TORSERVICE_H
 
+#include "tcglobal.h"
+
 #include <QObject>
 #include <QProcess>
 
@@ -91,7 +93,7 @@
 };
 
 
-class TorService : public QObject
+class TORCONTROL_EXPORT TorService : public QObject
 {
   Q_OBJECT
 

Modified: vidalia/branches/extension-api/src/torcontrol/TorSignal.h
===================================================================
--- vidalia/branches/extension-api/src/torcontrol/TorSignal.h	2009-08-04 21:30:27 UTC (rev 4007)
+++ vidalia/branches/extension-api/src/torcontrol/TorSignal.h	2009-08-05 02:03:31 UTC (rev 4008)
@@ -17,10 +17,12 @@
 #ifndef _TORSIGNAL_H
 #define _TORSGINAL_H
 
+#include "tcglobal.h"
+
 #include <QString>
 
 
-class TorSignal
+class TORCONTROL_EXPORT TorSignal
 {
 public:
   /** Signals that can be sent by the controller */

Modified: vidalia/branches/extension-api/src/torcontrol/UnrecognizedClientStatusEvent.h
===================================================================
--- vidalia/branches/extension-api/src/torcontrol/UnrecognizedClientStatusEvent.h	2009-08-04 21:30:27 UTC (rev 4007)
+++ vidalia/branches/extension-api/src/torcontrol/UnrecognizedClientStatusEvent.h	2009-08-05 02:03:31 UTC (rev 4008)
@@ -18,11 +18,12 @@
 #define _UNRECOGNIZEDCLIENTSTATUSEVENT_H
 
 #include "ClientStatusEvent.h"
+#include "tcglobal.h"
 
 #include <QHash>
 
 
-class UnrecognizedClientStatusEvent : public ClientStatusEvent
+class TORCONTROL_EXPORT UnrecognizedClientStatusEvent : public ClientStatusEvent
 {
 public:
   /** Constructor. <b>statusString</b> is the unrecognized client status value

Modified: vidalia/branches/extension-api/src/torcontrol/UnrecognizedGeneralStatusEvent.h
===================================================================
--- vidalia/branches/extension-api/src/torcontrol/UnrecognizedGeneralStatusEvent.h	2009-08-04 21:30:27 UTC (rev 4007)
+++ vidalia/branches/extension-api/src/torcontrol/UnrecognizedGeneralStatusEvent.h	2009-08-05 02:03:31 UTC (rev 4008)
@@ -18,11 +18,12 @@
 #define _UNRECOGNIZEDGENERALSTATUSEVENT_H
 
 #include "GeneralStatusEvent.h"
+#include "tcglobal.h"
 
 #include <QHash>
 
 
-class UnrecognizedGeneralStatusEvent : public GeneralStatusEvent
+class TORCONTROL_EXPORT UnrecognizedGeneralStatusEvent : public GeneralStatusEvent
 {
 public:
   /** Constructor. <b>statusString</b> is the unrecognized general status

Modified: vidalia/branches/extension-api/src/torcontrol/UnrecognizedServerStatusEvent.h
===================================================================
--- vidalia/branches/extension-api/src/torcontrol/UnrecognizedServerStatusEvent.h	2009-08-04 21:30:27 UTC (rev 4007)
+++ vidalia/branches/extension-api/src/torcontrol/UnrecognizedServerStatusEvent.h	2009-08-05 02:03:31 UTC (rev 4008)
@@ -18,11 +18,12 @@
 #define _UNRECOGNIZEDSERVERSTATUSEVENT_H
 
 #include "ServerStatusEvent.h"
+#include "tcglobal.h"
 
 #include <QHash>
 
 
-class UnrecognizedServerStatusEvent : public ServerStatusEvent
+class TORCONTROL_EXPORT UnrecognizedServerStatusEvent : public ServerStatusEvent
 {
 public:
   /** Constructor. <b>statusString</b> is the unrecognized server status value

Modified: vidalia/branches/extension-api/src/torcontrol/tcglobal.h
===================================================================
--- vidalia/branches/extension-api/src/torcontrol/tcglobal.h	2009-08-04 21:30:27 UTC (rev 4007)
+++ vidalia/branches/extension-api/src/torcontrol/tcglobal.h	2009-08-05 02:03:31 UTC (rev 4008)
@@ -18,7 +18,13 @@
 #define _TCGLOBAL_H
 
 #include <QString>
+#include <QtGlobal>
 
+#if defined(TORCONTROL_LIBRARY)
+#define TORCONTROL_EXPORT Q_DECL_EXPORT
+#else
+#define TORCONTROL_EXPORT Q_DECL_IMPORT
+#endif
 
 namespace tc {
   /** Helper class to handle formatting log messages with arguments. */

Modified: vidalia/branches/extension-api/src/vidalia/CMakeLists.txt
===================================================================
--- vidalia/branches/extension-api/src/vidalia/CMakeLists.txt	2009-08-04 21:30:27 UTC (rev 4007)
+++ vidalia/branches/extension-api/src/vidalia/CMakeLists.txt	2009-08-05 02:03:31 UTC (rev 4008)
@@ -388,6 +388,7 @@
   ${MARBLE_LIBRARIES}
   common
   torcontrol
+  vidaliaplugin
   homeplugin
   dashboardplugin
   messagelogplugin