Changeset 52

Show
Ignore:
Timestamp:
01/10/06 16:40:41 (3 years ago)
Author:
hipplej
Message:

Moved traymenu into mainwindow so that menu events were easier to catch. For example, clicking 'Exit' now closes Vidalia.

Location:
trunk/src/gui
Files:
2 removed
2 modified

Legend:

Unmodified
Added
Removed
  • trunk/src/gui/mainwindow.cpp

    r33 r52  
    3030  /* Set Vidalia's application icon */ 
    3131  setWindowIcon(QIcon(":/images/tor_on32.png")); 
    32   
     32   
     33  createActions(); 
     34  createMenus(); 
     35   
    3336  /* Put an icon in the system tray to indicate the status of Tor */ 
    34   _trayMenu = new TrayMenu(this); 
    3537  _trayIcon = new TrayIcon(QPixmap(":/images/tor_on32.png"), 
    3638                           tr("Vidalia"), _trayMenu, this); 
     
    3840} 
    3941 
     42/* Binds events to actions which are then  
     43   used in the tray menu.  
     44*/ 
     45void MainWindow::createActions() 
     46{ 
     47  _exitAct = new QAction(tr("Exit"), this); 
     48  connect(_exitAct, SIGNAL(triggered()), this, SLOT(close())); 
     49} 
     50 
     51/* 
     52  Creates a QMenu object that is to be used as the system tray 
     53  context menu. 
     54*/ 
     55void MainWindow::createMenus() 
     56{ 
     57  /* Tray menu */  
     58  _trayMenu = new QMenu(this); 
     59  _trayMenu->addAction(tr("Start Tor")); 
     60  _trayMenu->addAction(tr("Stop Tor")); 
     61  _toolsMenu = _trayMenu->addMenu(tr("Tools")); 
     62  _trayMenu->addSeparator(); 
     63  _trayMenu->addAction(tr("Configure")); 
     64  _trayMenu->addAction(tr("About")); 
     65  _trayMenu->addSeparator(); 
     66  _trayMenu->addAction(_exitAct); 
     67 
     68  /* Tools menu */ 
     69  _toolsMenu->addAction(tr("Bandwidth Graph")); 
     70  _toolsMenu->addAction(tr("Message History")); 
     71  _toolsMenu->addSeparator(); 
     72  _signalMenu = _toolsMenu->addMenu(tr("Send Signal")); 
     73 
     74  /* Signals menu */ 
     75  _signalMenu->addAction(QString(tr("Reload Config"))); 
     76  _signalMenu->addAction(QString(tr("Dump Stats"))); 
     77  _signalMenu->addAction(QString(tr("Debug Mode"))); 
     78  _signalMenu->addAction(QString(tr("Shutdown"))); 
     79  _signalMenu->addAction(QString(tr("Kill"))); 
     80} 
  • trunk/src/gui/mainwindow.h

    r37 r52  
    2727#include <QMainWindow> 
    2828 
    29 #include "tray/traymenu.h" 
    3029#include "tray/trayicon.h" 
     30 
     31class QAction; 
     32class QMenu; 
    3133 
    3234class MainWindow : public QMainWindow 
     
    3436  Q_OBJECT 
    3537 
    36 private: 
    37   TrayMenu* _trayMenu; 
    38   TrayIcon* _trayIcon; 
    39  
    4038public: 
    4139  MainWindow(); 
     40 
     41private: 
     42  void createMenus(); 
     43  void createActions(); 
     44 
     45  TrayIcon* _trayIcon; 
     46   
     47  QMenu* _trayMenu; 
     48  QMenu* _toolsMenu; 
     49  QMenu* _signalMenu; 
     50   
     51  QAction* _exitAct; 
    4252}; 
    4353