diff options
Diffstat (limited to 'src/Screen.cc')
-rw-r--r-- | src/Screen.cc | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/Screen.cc b/src/Screen.cc index eee6f2d..fb6d518 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.196 2003/06/27 15:05:19 rathnor Exp $ | 25 | // $Id: Screen.cc,v 1.197 2003/06/30 15:31:54 fluxgen Exp $ |
26 | 26 | ||
27 | 27 | ||
28 | #include "Screen.hh" | 28 | #include "Screen.hh" |
@@ -55,6 +55,7 @@ | |||
55 | #include "FbWindow.hh" | 55 | #include "FbWindow.hh" |
56 | #include "Strut.hh" | 56 | #include "Strut.hh" |
57 | #include "SlitTheme.hh" | 57 | #include "SlitTheme.hh" |
58 | #include "CommandParser.hh" | ||
58 | 59 | ||
59 | //use GNU extensions | 60 | //use GNU extensions |
60 | #ifndef _GNU_SOURCE | 61 | #ifndef _GNU_SOURCE |
@@ -1926,7 +1927,14 @@ bool BScreen::parseMenuFile(ifstream &file, FbTk::Menu &menu, int &row) { | |||
1926 | cerr<<"Row: "<<row<<endl; | 1927 | cerr<<"Row: "<<row<<endl; |
1927 | } else | 1928 | } else |
1928 | menu.insert(str_label.c_str(), workspacemenu.get()); | 1929 | menu.insert(str_label.c_str(), workspacemenu.get()); |
1929 | } // end of work | 1930 | } // end of workspaces |
1931 | else { // ok, if we didn't find any special menu item we try with command parser | ||
1932 | // we need to attach command with arguments so command parser can parse it | ||
1933 | string line = str_key + " " + str_cmd; | ||
1934 | FbTk::RefCount<FbTk::Command> command(CommandParser::instance().parseLine(line)); | ||
1935 | if (*command != 0) | ||
1936 | menu.insert(str_label.c_str(), command); | ||
1937 | } | ||
1930 | } | 1938 | } |
1931 | } | 1939 | } |
1932 | } | 1940 | } |