source: src/global/wtl_app.hpp @ 348

Revision 348, 1.2 KB checked in by Eoin, 13 years ago (diff)

Further decoupling GUI from Torrents.

Line 
1
2//         Copyright Eóin O'Callaghan 2006 - 2007.
3// Distributed under the Boost Software License, Version 1.0.
4//    (See accompanying file LICENSE_1_0.txt or copy at
5//          http://www.boost.org/LICENSE_1_0.txt)
6
7#ifndef GLOBAL_WTL_APP
8#define GLOBAL_WTL_APP
9
10#include <string>
11#include <vector>
12#include <sstream>
13
14#include <boost/signals.hpp>
15#include <boost/function.hpp>
16
17#include <boost/static_assert.hpp>
18#include <boost/filesystem/path.hpp>
19#include <boost/filesystem/operations.hpp>
20
21namespace hal
22{
23
24class app_impl;
25
26class app_module
27{
28public: 
29        const std::wstring& exe_string() const;
30        const boost::filesystem::wpath& exe_path() const;
31        const boost::filesystem::wpath& initial_path() const;
32        const boost::filesystem::wpath& working_directory() const;
33       
34        const std::vector<std::wstring>& command_args() const;
35       
36        std::wstring res_wstr(unsigned uID);   
37        void res_set_dll(std::wstring dll);
38        void res_revert();
39        std::pair<void*,size_t> res_find_lock(unsigned name, unsigned type);
40       
41        friend app_module& app();
42       
43private:
44        boost::scoped_ptr<app_impl> pimpl;
45       
46        app_module();
47};
48
49app_module& app();
50
51}
52
53#endif // GLOBAL_WTL_APP
Note: See TracBrowser for help on using the repository browser.