diff options
author | rathnor <rathnor> | 2003-06-08 13:47:30 (GMT) |
---|---|---|
committer | rathnor <rathnor> | 2003-06-08 13:47:30 (GMT) |
commit | 93b2f8921c70e2cf5f2f2c3cf79943de54b6709b (patch) | |
tree | 9291b92cf9feb4f7647cdc8a88fd9af44c050450 /src | |
parent | efe8bf4acd913a48ba08c4fa390297da27d17590 (diff) | |
download | fluxbox_pavel-93b2f8921c70e2cf5f2f2c3cf79943de54b6709b.zip fluxbox_pavel-93b2f8921c70e2cf5f2f2c3cf79943de54b6709b.tar.bz2 |
fix restart in menu to accept and use an argument
Diffstat (limited to 'src')
-rw-r--r-- | src/FbCommands.cc | 11 | ||||
-rw-r--r-- | src/FbCommands.hh | 6 | ||||
-rw-r--r-- | src/Screen.cc | 6 |
3 files changed, 17 insertions, 6 deletions
diff --git a/src/FbCommands.cc b/src/FbCommands.cc index 5ce933a..a118fb3 100644 --- a/src/FbCommands.cc +++ b/src/FbCommands.cc | |||
@@ -19,7 +19,7 @@ | |||
19 | // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER | 19 | // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER |
20 | // DEALINGS IN THE SOFTWARE. | 20 | // DEALINGS IN THE SOFTWARE. |
21 | 21 | ||
22 | // $Id: FbCommands.cc,v 1.5 2003/04/28 01:17:39 fluxgen Exp $ | 22 | // $Id: FbCommands.cc,v 1.6 2003/06/08 13:47:30 rathnor Exp $ |
23 | 23 | ||
24 | #include "FbCommands.hh" | 24 | #include "FbCommands.hh" |
25 | #include "fluxbox.hh" | 25 | #include "fluxbox.hh" |
@@ -62,8 +62,15 @@ void ExitFluxboxCmd::execute() { | |||
62 | Fluxbox::instance()->shutdown(); | 62 | Fluxbox::instance()->shutdown(); |
63 | } | 63 | } |
64 | 64 | ||
65 | RestartFluxboxCmd::RestartFluxboxCmd(const std::string &cmd):m_cmd(cmd){ | ||
66 | } | ||
67 | |||
65 | void RestartFluxboxCmd::execute() { | 68 | void RestartFluxboxCmd::execute() { |
66 | Fluxbox::instance()->restart(); | 69 | if (m_cmd.size() == 0) { |
70 | Fluxbox::instance()->restart(); | ||
71 | } else { | ||
72 | Fluxbox::instance()->restart(m_cmd.c_str()); | ||
73 | } | ||
67 | } | 74 | } |
68 | 75 | ||
69 | void ReconfigureFluxboxCmd::execute() { | 76 | void ReconfigureFluxboxCmd::execute() { |
diff --git a/src/FbCommands.hh b/src/FbCommands.hh index 1056b6f..4f87bf1 100644 --- a/src/FbCommands.hh +++ b/src/FbCommands.hh | |||
@@ -19,7 +19,7 @@ | |||
19 | // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER | 19 | // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER |
20 | // DEALINGS IN THE SOFTWARE. | 20 | // DEALINGS IN THE SOFTWARE. |
21 | 21 | ||
22 | // $Id: FbCommands.hh,v 1.4 2003/04/28 00:34:06 fluxgen Exp $ | 22 | // $Id: FbCommands.hh,v 1.5 2003/06/08 13:47:30 rathnor Exp $ |
23 | 23 | ||
24 | // \file contains basic commands to restart, reconfigure, execute command and exit fluxbox | 24 | // \file contains basic commands to restart, reconfigure, execute command and exit fluxbox |
25 | 25 | ||
@@ -51,7 +51,11 @@ public: | |||
51 | /// restarts fluxbox | 51 | /// restarts fluxbox |
52 | class RestartFluxboxCmd: public FbTk::Command { | 52 | class RestartFluxboxCmd: public FbTk::Command { |
53 | public: | 53 | public: |
54 | RestartFluxboxCmd(const std::string &cmd); | ||
54 | void execute(); | 55 | void execute(); |
56 | private: | ||
57 | std::string m_cmd; | ||
58 | const int m_screen_num; | ||
55 | }; | 59 | }; |
56 | 60 | ||
57 | /// reconfigures fluxbox | 61 | /// reconfigures fluxbox |
diff --git a/src/Screen.cc b/src/Screen.cc index 1182dba..3ecb077 100644 --- a/src/Screen.cc +++ b/src/Screen.cc | |||
@@ -22,7 +22,7 @@ | |||
22 | // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER | 22 | // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER |
23 | // DEALINGS IN THE SOFTWARE. | 23 | // DEALINGS IN THE SOFTWARE. |
24 | 24 | ||
25 | // $Id: Screen.cc,v 1.178 2003/05/24 13:13:22 rathnor Exp $ | 25 | // $Id: Screen.cc,v 1.179 2003/06/08 13:47:30 rathnor Exp $ |
26 | 26 | ||
27 | 27 | ||
28 | #include "Screen.hh" | 28 | #include "Screen.hh" |
@@ -1891,7 +1891,7 @@ void BScreen::initMenu() { | |||
1891 | } | 1891 | } |
1892 | 1892 | ||
1893 | if (defaultMenu) { | 1893 | if (defaultMenu) { |
1894 | FbTk::RefCount<FbTk::Command> restart_fb(new FbCommands::RestartFluxboxCmd()); | 1894 | FbTk::RefCount<FbTk::Command> restart_fb(new FbCommands::RestartFluxboxCmd("")); |
1895 | FbTk::RefCount<FbTk::Command> exit_fb(new FbCommands::ExitFluxboxCmd()); | 1895 | FbTk::RefCount<FbTk::Command> exit_fb(new FbCommands::ExitFluxboxCmd()); |
1896 | FbTk::RefCount<FbTk::Command> execute_xterm(new FbCommands::ExecuteCmd("xterm", screenNumber())); | 1896 | FbTk::RefCount<FbTk::Command> execute_xterm(new FbCommands::ExecuteCmd("xterm", screenNumber())); |
1897 | m_rootmenu->setInternalMenu(); | 1897 | m_rootmenu->setInternalMenu(); |
@@ -2098,7 +2098,7 @@ bool BScreen::parseMenuFile(ifstream &file, FbTk::Menu &menu, int &row) { | |||
2098 | "no menu label defined\n")); | 2098 | "no menu label defined\n")); |
2099 | cerr<<"Row: "<<row<<endl; | 2099 | cerr<<"Row: "<<row<<endl; |
2100 | } else { | 2100 | } else { |
2101 | FbTk::RefCount<FbTk::Command> restart_fb(new FbCommands::RestartFluxboxCmd()); | 2101 | FbTk::RefCount<FbTk::Command> restart_fb(new FbCommands::RestartFluxboxCmd(str_cmd)); |
2102 | menu.insert(str_label.c_str(), restart_fb); | 2102 | menu.insert(str_label.c_str(), restart_fb); |
2103 | } | 2103 | } |
2104 | } // end of restart | 2104 | } // end of restart |