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

[vidalia-svn] r4055: Fixed build order issues and TBB plugin. (in vidalia/branches/extension-api/src: plugins plugins/TorBrowserBundlePlugin vidalia vidalia/DashboardPlugin)



Author: tyree731
Date: 2009-08-17 14:27:07 -0400 (Mon, 17 Aug 2009)
New Revision: 4055

Modified:
   vidalia/branches/extension-api/src/plugins/PluginManager.cpp
   vidalia/branches/extension-api/src/plugins/TorBrowserBundlePlugin/TorBrowserBundlePlugin.cpp
   vidalia/branches/extension-api/src/plugins/TorBrowserBundlePlugin/TorBrowserBundlePlugin.h
   vidalia/branches/extension-api/src/plugins/VidaliaPluginInterface.h
   vidalia/branches/extension-api/src/vidalia/CMakeLists.txt
   vidalia/branches/extension-api/src/vidalia/DashboardPlugin/CMakeLists.txt
Log:
Fixed build order issues and TBB plugin.

Modified: vidalia/branches/extension-api/src/plugins/PluginManager.cpp
===================================================================
--- vidalia/branches/extension-api/src/plugins/PluginManager.cpp	2009-08-17 02:25:08 UTC (rev 4054)
+++ vidalia/branches/extension-api/src/plugins/PluginManager.cpp	2009-08-17 18:27:07 UTC (rev 4055)
@@ -59,6 +59,7 @@
   if (pluginInstance) {
     pluginInstance->setPluginManager(this);
     pluginInstance->setFileName(fileName);
+    pluginInstance->initialize();
     _pluginList.push_back(pluginInstance);
     return pluginInstance;
   }

Modified: vidalia/branches/extension-api/src/plugins/TorBrowserBundlePlugin/TorBrowserBundlePlugin.cpp
===================================================================
--- vidalia/branches/extension-api/src/plugins/TorBrowserBundlePlugin/TorBrowserBundlePlugin.cpp	2009-08-17 02:25:08 UTC (rev 4054)
+++ vidalia/branches/extension-api/src/plugins/TorBrowserBundlePlugin/TorBrowserBundlePlugin.cpp	2009-08-17 18:27:07 UTC (rev 4055)
@@ -17,20 +17,26 @@
 #include "TorBrowserBundlePlugin.h"
 
 #include <QDir>
+#include <QMessageBox>
 #include <QProcess>
 #include <QSettings>
 #include <QString>
 
 TorBrowserBundlePlugin::TorBrowserBundlePlugin()
 {
-  /* Listen for the TorStarted() signal to begin TBB */
-  // connect(_pluginManager, SIGNAL(torStarted()), this, SLOT(start()));
 }
 
 TorBrowserBundlePlugin::~TorBrowserBundlePlugin()
 {
 }
 
+void
+TorBrowserBundlePlugin::initialize()
+{
+  /* Listen for the TorStarted() signal to begin TBB */
+  connect(_pluginManager, SIGNAL(torStarted()), this, SLOT(start()));
+}
+
 QString
 TorBrowserBundlePlugin::name() const
 {
@@ -66,50 +72,33 @@
   QSettings* tbbSettings = VidaliaPluginInterface::settings();
 
   /* Launch the browser (firefox) */
-  QString browserExecutable = tbbSettings->value("BrowserExecutable",
-                                                QString()).toString();
+  QString browserExecutablePath = qApp->applicationDirPath() + 
+                                  QString("/../../../FirefoxPortable"
+                                          "/Contents/MacOS/Portable Firefox");
 
-  QString browserDirectory = tbbSettings->value("BrowserDirectory",
-                                                QString()).toString();
-
-  /* If both values are set */
-  if (!browserExecutable.isNull() && !browserDirectory.isNull()) {
-    /* Launch firefox directly? */
-
-    /* Executable is located at <browserdir>/Contents/MacOS/<browserexe> */
-    QString browserExecutablePath = QDir::toNativeSeparators(browserDirectory + 
-                                                         "/Contents/MacOS" + 
-                                                         browserExecutable);
-
-    /* Profile is located at <browserdir>/Contents/Resources/profile */
-    QString profileDir = QDir::toNativeSeparators(browserDirectory + 
+#if 0
+  QString profileDir = QDir::toNativeSeparators(browserDirectory + 
                                                   "/Resources/profile");
 
-    /* Construct the profile arguments */
-    QStringList arguments;
-    arguments << "--profile";
-    arguments << profileDir;
-
+  /* Construct the profile arguments */
+  QStringList arguments;
+  arguments << "--profile";
+  arguments << profileDir;
+#endif
+  
     /* Start the browser process */
-    _browserProcess->start(browserExecutablePath, arguments);
-  }
+  _browserProcess->start(browserExecutablePath, QStringList());
 
-  /* Launch the IM client (Pidgin) */
-  QString imExecutable = tbbSettings->value("IMExecutable",
-                                                QString()).toString();
+  /* Launch the IM client (Adium) */
+  tbbSettings->setValue("StartIM", true);
+  bool imStart = tbbSettings->value("StartIM", true).toBool();
+  if (imStart) {
+    QString imExecutablePath = qApp->applicationDirPath() +
+                               QString("/../../../AdiumPortable"
+                                       "/Contents/MacOS/Portable Adium");
 
-  QString imDirectory = tbbSettings->value("IMDirectory",
-                                                QString()).toString();
-
-  /* If both values are set */
-  if (!imExecutable.isNull() && !imDirectory.isNull()) {
-    /* Executable located at <imdir>/Contents/MacOS/imexe> */
-    QString imExecutablePath = QDir::toNativeSeparators(imDirectory +
-                                                        "/Contents/MacOS" + 
-                                                        imExecutable);
-
-    /* Start the process */
-    _imProcess->start(imExecutablePath);
+    /* Start the IM process */
+    _imProcess->start(imExecutablePath, QStringList());
   }
 
   delete tbbSettings;

Modified: vidalia/branches/extension-api/src/plugins/TorBrowserBundlePlugin/TorBrowserBundlePlugin.h
===================================================================
--- vidalia/branches/extension-api/src/plugins/TorBrowserBundlePlugin/TorBrowserBundlePlugin.h	2009-08-17 02:25:08 UTC (rev 4054)
+++ vidalia/branches/extension-api/src/plugins/TorBrowserBundlePlugin/TorBrowserBundlePlugin.h	2009-08-17 18:27:07 UTC (rev 4055)
@@ -32,6 +32,8 @@
   TorBrowserBundlePlugin();
   ~TorBrowserBundlePlugin();
 
+  void initialize();
+
   QString name() const;
   QString id() const;
   QString description() const;

Modified: vidalia/branches/extension-api/src/plugins/VidaliaPluginInterface.h
===================================================================
--- vidalia/branches/extension-api/src/plugins/VidaliaPluginInterface.h	2009-08-17 02:25:08 UTC (rev 4054)
+++ vidalia/branches/extension-api/src/plugins/VidaliaPluginInterface.h	2009-08-17 18:27:07 UTC (rev 4055)
@@ -44,6 +44,8 @@
   VidaliaPluginInterface();
   /** Virtual destructor */
   virtual ~VidaliaPluginInterface() {}
+  /** Virtual function to allow for initialization follow construction */
+  virtual void initialize() {}
   /** Virtual class to allow for display of a panel name */
   virtual VidaliaPanel* panel() { return 0; }
   /** Virtual function to return a plugin's widget. */

Modified: vidalia/branches/extension-api/src/vidalia/CMakeLists.txt
===================================================================
--- vidalia/branches/extension-api/src/vidalia/CMakeLists.txt	2009-08-17 02:25:08 UTC (rev 4054)
+++ vidalia/branches/extension-api/src/vidalia/CMakeLists.txt	2009-08-17 18:27:07 UTC (rev 4055)
@@ -49,15 +49,7 @@
   ${CMAKE_CURRENT_BINARY_DIR}/i18n/vidalia_i18n.qrc
 )
 
-## Search for plugin libraries
-link_directories(
-  HomePlugin
-  DashboardPlugin
-  MessageLogPlugin
-  NetworkMapPlugin
-)
-
-## Process the static plugins
+## Process the default plugins
 add_subdirectory(HomePlugin)
 add_subdirectory(DashboardPlugin)
 add_subdirectory(MessageLogPlugin)
@@ -287,6 +279,7 @@
   ## Put everything inside the application bundle
   set(CMAKE_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX}/)
   add_executable(${vidalia_BIN} MACOSX_BUNDLE ${vidalia_SRCS})
+  add_dependencies(${vidalia_BIN} homeplugin messagelogplugin networkmapplugin)
 
   ## Get the location of the app bundle for the current configuration
   get_target_property(VIDALIA_EXECUTABLE ${vidalia_BIN} LOCATION)
@@ -457,4 +450,4 @@
 ## the Windows packaging scripts
 get_target_property(VIDALIA_EXECUTABLE ${vidalia_BIN} LOCATION_RelWithDebInfo)
 set(VIDALIA_EXECUTABLE ${VIDALIA_EXECUTABLE}
-    CACHE STRING "Location of the Vidalia executable." FORCE)
\ No newline at end of file
+    CACHE STRING "Location of the Vidalia executable." FORCE)

Modified: vidalia/branches/extension-api/src/vidalia/DashboardPlugin/CMakeLists.txt
===================================================================
--- vidalia/branches/extension-api/src/vidalia/DashboardPlugin/CMakeLists.txt	2009-08-17 02:25:08 UTC (rev 4054)
+++ vidalia/branches/extension-api/src/vidalia/DashboardPlugin/CMakeLists.txt	2009-08-17 18:27:07 UTC (rev 4055)
@@ -10,7 +10,6 @@
 ##  the terms described in the LICENSE file.
 ##
 
-
 set(dashboardplugin_SRCS 
   DashboardPlugin.cpp
 )