Last change
on this file since 10644 was
10618,
checked in by bknecht, 18 years ago
|
merged cleanup into trunk (only improvements)
|
File size:
1.3 KB
|
Line | |
---|
1 | /*! |
---|
2 | * @file net_link.h |
---|
3 | * @brief Definition of a NetLink class |
---|
4 | * NetLink is a File link to a page of file link to the Internet, |
---|
5 | * or the local file-system |
---|
6 | * |
---|
7 | * Opening a link should be made easy through this class |
---|
8 | * |
---|
9 | * !! DANGER IT IS POSSIBLE TO EXECUTE ALL PROGRAMMS WITH USER'S RIGHTS |
---|
10 | * !! ON THE DESIGNATED MACHINE |
---|
11 | * !! THIS CLASS SHOULD BE USED WITH CAUTION WHEN USING OVER IN NETWORK |
---|
12 | * !! MODE |
---|
13 | */ |
---|
14 | |
---|
15 | #ifndef __NET_LINK_H__ |
---|
16 | #define __NET_LINK_H__ |
---|
17 | |
---|
18 | #include <string> |
---|
19 | #include <list> |
---|
20 | |
---|
21 | #include "threads/mutex.h" |
---|
22 | |
---|
23 | //! NetLink is a File and Link executer for Internet Links |
---|
24 | /** |
---|
25 | * @example: NetLink("http://www.orxonox.net").openInBrowser(); |
---|
26 | */ |
---|
27 | class NetLink |
---|
28 | { |
---|
29 | public: |
---|
30 | NetLink(const std::string& linkName); |
---|
31 | |
---|
32 | void openInBrowser() const; |
---|
33 | |
---|
34 | static void setDefaultBrowser(const std::string& browserName); |
---|
35 | static const std::string& defaultBrowser() { return NetLink::_defaultBrowser; }; |
---|
36 | |
---|
37 | private: |
---|
38 | static int openupInBrowser(void* url); |
---|
39 | |
---|
40 | static std::list<std::string> buildBrowserList(); |
---|
41 | |
---|
42 | |
---|
43 | private: |
---|
44 | std::string _link; //!< Linkname |
---|
45 | |
---|
46 | |
---|
47 | // static lists. |
---|
48 | static OrxThread::Mutex _mutex; //!< One mutex to lock them all. |
---|
49 | static std::string _defaultBrowser; //!< The default Browser. |
---|
50 | static std::list<std::string> _browserList; |
---|
51 | }; |
---|
52 | |
---|
53 | #endif /** __NET_LINK_H__ */ |
---|
Note: See
TracBrowser
for help on using the repository browser.