diff options
author | Richard Maudsley <richard.maudsley@isode.com> | 2014-05-02 09:19:23 (GMT) |
---|---|---|
committer | Swift Review <review@swift.im> | 2014-07-09 09:03:34 (GMT) |
commit | acac7962ba04c083377f62f4265ecc754176f74e (patch) | |
tree | fa2db718854d10c76e81fc54b0b1f2b33a12963f /Swift/Controllers/AdHocController.cpp | |
parent | 8ab7ca17fdde8f8fb62a0c574478aa2c4c01a9bc (diff) | |
download | swift-contrib-acac7962ba04c083377f62f4265ecc754176f74e.zip swift-contrib-acac7962ba04c083377f62f4265ecc754176f74e.tar.bz2 |
Refactor AdHoc forms.
Test-Information:
Check that forms still open properly and can be submitted and canceled. Check that error message is displayed if disconnected when a form is open.
Change-Id: I23e35730b0decdfb5cf0592fc7234bf4643b6127
Diffstat (limited to 'Swift/Controllers/AdHocController.cpp')
-rw-r--r-- | Swift/Controllers/AdHocController.cpp | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/Swift/Controllers/AdHocController.cpp b/Swift/Controllers/AdHocController.cpp new file mode 100644 index 0000000..c017120 --- /dev/null +++ b/Swift/Controllers/AdHocController.cpp @@ -0,0 +1,31 @@ +/* + * Copyright (c) 2010-2014 Kevin Smith + * Licensed under the GNU General Public License v3. + * See Documentation/Licenses/GPLv3.txt for more information. + */ + +#include <boost/bind.hpp> +#include <Swift/Controllers/AdHocController.h> +#include <Swift/Controllers/UIInterfaces/AdHocCommandWindowFactory.h> + +namespace Swift { + +AdHocController::AdHocController(AdHocCommandWindowFactory* factory, boost::shared_ptr<OutgoingAdHocCommandSession> command) { + window_ = factory->createAdHocCommandWindow(command); + window_->onClosing.connect(boost::bind(&AdHocController::handleWindowClosed, this)); +} + +AdHocController::~AdHocController() { + window_->onClosing.disconnect(boost::bind(&AdHocController::handleWindowClosed, this)); + delete window_; +} + +void AdHocController::setOnline(bool online) { + window_->setOnline(online); +} + +void AdHocController::handleWindowClosed() { + onDeleting(); +} + +} |