ServicePage Class Reference

#include <servicepage.h>

Inheritance diagram for ServicePage:

ConfigPage List of all members.

Public Member Functions

 ServicePage (QWidget *parent=0)
 ~ServicePage ()
bool save (QString &errmsg)
void load ()
void initServiceTable (QMap< int, Service > *_services)

Private Slots

void addService ()
void removeService ()
void copyToClipboard ()
void browseDirectory ()
void serviceSelectionChanged ()
QList< ServiceextractSingleServices (QString conf)
Service generateService (QString serviceString)
void startServicesInTor (QList< Service > services)
bool isServicePublished (Service service, QList< Service > torServices)
bool checkBeforeSaving (QList< Service > services)
void valueChanged ()

Private Attributes

QMap< int, Service > * _services
QMap< QString, Service > * _torServices
Ui::ServicePage ui

Detailed Description

Definition at line 22 of file servicepage.h.


Constructor & Destructor Documentation

ServicePage::ServicePage ( QWidget *  parent = 0  ) 

Default Constructor

Definition at line 26 of file servicepage.cpp.

References _services, _torServices, addService(), browseDirectory(), copyToClipboard(), removeService(), serviceSelectionChanged(), ui, and valueChanged().

ServicePage::~ServicePage (  ) 

Default Destructor

Definition at line 60 of file servicepage.cpp.

References _services, and _torServices.


Member Function Documentation

void ServicePage::addService (  )  [private, slot]

Called whenever the user clicks on the 'add' button.

Definition at line 372 of file servicepage.cpp.

References _services, Service::setEnabled(), and ui.

Referenced by ServicePage().

void ServicePage::browseDirectory (  )  [private, slot]

Called whenever the user clicks on the 'browse' button.

Definition at line 440 of file servicepage.cpp.

References _services, VMessageBox::Ok, Service::setServiceDirectory(), ui, and VMessageBox::warning().

Referenced by ServicePage().

bool ServicePage::checkBeforeSaving ( QList< Service services  )  [private, slot]

Returns true if all services have the required minimal configuration.

Definition at line 120 of file servicepage.cpp.

References Service::serviceDirectory(), and Service::virtualPort().

Referenced by save().

void ServicePage::copyToClipboard (  )  [private, slot]

Called whenever the user clicks on the 'copy' button.

Definition at line 420 of file servicepage.cpp.

References _services, VMessageBox::Ok, ui, and VMessageBox::warning().

Referenced by ServicePage().

QList< Service > ServicePage::extractSingleServices ( QString  conf  )  [private, slot]

Returns a list of services by parsing the configuration string given by the Tor controller.

Definition at line 196 of file servicepage.cpp.

References generateService().

Referenced by load().

Service ServicePage::generateService ( QString  serviceString  )  [private, slot]

Returns a Service by parsing the configuration string from Tor and storing its values into the Service object.

Definition at line 213 of file servicepage.cpp.

References _torServices, i(), and Service::setAdditionalServiceOptions().

Referenced by extractSingleServices().

void ServicePage::initServiceTable ( QMap< int, Service > *  _services  ) 

Initialize the service table

Definition at line 308 of file servicepage.cpp.

References Service::enabled(), i(), Service::physicalAddressPort(), Service::serviceAddress(), Service::serviceDirectory(), Service::setServiceAddress(), ui, and Service::virtualPort().

Referenced by load().

bool ServicePage::isServicePublished ( Service  service,
QList< Service torServices 
) [private, slot]

Returns true if service is published.

Definition at line 293 of file servicepage.cpp.

References Service::serviceDirectory().

Referenced by load().

void ServicePage::load (  )  [virtual]

Loads the settings for this page

Implements ConfigPage.

Definition at line 156 of file servicepage.cpp.

References _services, _torServices, extractSingleServices(), ServiceSettings::getHiddenServiceDirectories(), ServiceSettings::getServices(), initServiceTable(), isServicePublished(), ServiceList::services(), Vidalia::torControl(), and ui.

void ServicePage::removeService (  )  [private, slot]

Called whenever the user clicks on the 'remove' button.

Definition at line 397 of file servicepage.cpp.

References _services, i(), VMessageBox::Ok, serviceSelectionChanged(), ui, and VMessageBox::warning().

Referenced by ServicePage().

bool ServicePage::save ( QString &  errmsg  )  [virtual]

Saves the changes on this page

Implements ConfigPage.

Definition at line 68 of file servicepage.cpp.

References _services, checkBeforeSaving(), Service::setAdditionalServiceOptions(), ServiceSettings::setServices(), ServiceList::setServices(), startServicesInTor(), Vidalia::torControl(), ui, and ServiceSettings::unpublishAllServices().

void ServicePage::serviceSelectionChanged (  )  [private, slot]

Called whenever the user selects a different service.

Definition at line 466 of file servicepage.cpp.

References _services, _torServices, b(), and ui.

Referenced by removeService(), and ServicePage().

void ServicePage::startServicesInTor ( QList< Service services  )  [private, slot]

Starts all services in services, with Tor.

Definition at line 134 of file servicepage.cpp.

References ServiceSettings::applyServices(), string_escape(), and Vidalia::torControl().

Referenced by save().

void ServicePage::valueChanged (  )  [private, slot]

Called when the user finished editing a cell and checks that only valid values are set.

Definition at line 519 of file servicepage.cpp.

References VMessageBox::Ok, ui, IPValidator::validate(), and VMessageBox::warning().

Referenced by ServicePage().


Member Data Documentation

QMap<int, Service>* ServicePage::_services [private]

A QMap, mapping from the row number in the table to the service Entity

Definition at line 67 of file servicepage.h.

Referenced by addService(), browseDirectory(), copyToClipboard(), load(), removeService(), save(), ServicePage(), serviceSelectionChanged(), and ~ServicePage().

QMap<QString, Service>* ServicePage::_torServices [private]

A QList, consisting of all running services before vidalia starts

Definition at line 69 of file servicepage.h.

Referenced by generateService(), load(), ServicePage(), serviceSelectionChanged(), and ~ServicePage().

Ui::ServicePage ServicePage::ui [private]

Qt Designer generated object

Definition at line 72 of file servicepage.h.

Referenced by addService(), browseDirectory(), copyToClipboard(), initServiceTable(), load(), removeService(), save(), ServicePage(), serviceSelectionChanged(), and valueChanged().


The documentation for this class was generated from the following files:
Generated on Tue Jul 7 17:00:57 2009 for Vidalia by  doxygen 1.4.7