diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/MenuCreator.cc | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/MenuCreator.cc b/src/MenuCreator.cc index dec82c9..294b6ae 100644 --- a/src/MenuCreator.cc +++ b/src/MenuCreator.cc | |||
@@ -20,7 +20,7 @@ | |||
20 | // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER | 20 | // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER |
21 | // DEALINGS IN THE SOFTWARE. | 21 | // DEALINGS IN THE SOFTWARE. |
22 | 22 | ||
23 | // $Id: MenuCreator.cc,v 1.13 2004/08/29 21:11:24 akir Exp $ | 23 | // $Id: MenuCreator.cc,v 1.14 2004/09/09 14:32:56 akir Exp $ |
24 | 24 | ||
25 | #include "MenuCreator.hh" | 25 | #include "MenuCreator.hh" |
26 | 26 | ||
@@ -202,6 +202,16 @@ static void translateMenuItem(Parser &parse, ParseItem &pitem) { | |||
202 | exec_and_hide->add(exec_cmd); | 202 | exec_and_hide->add(exec_cmd); |
203 | RefCount<Command> exec_and_hide_cmd(exec_and_hide); | 203 | RefCount<Command> exec_and_hide_cmd(exec_and_hide); |
204 | menu.insert(str_label.c_str(), exec_and_hide_cmd); | 204 | menu.insert(str_label.c_str(), exec_and_hide_cmd); |
205 | } else if (str_key == "macrocmd") { | ||
206 | using namespace FbTk; | ||
207 | RefCount<Command> macro_cmd(CommandParser::instance().parseLine("macrocmd " + str_cmd)); | ||
208 | RefCount<Command> hide_menu(new SimpleCommand<FbTk::Menu>(menu, | ||
209 | &Menu::hide)); | ||
210 | MacroCommand *exec_and_hide = new FbTk::MacroCommand(); | ||
211 | exec_and_hide->add(hide_menu); | ||
212 | exec_and_hide->add(macro_cmd); | ||
213 | RefCount<Command> exec_and_hide_cmd(exec_and_hide); | ||
214 | menu.insert(str_label.c_str(), exec_and_hide_cmd); | ||
205 | } else if (str_key == "style") { // style | 215 | } else if (str_key == "style") { // style |
206 | menu.insert(new StyleMenuItem(str_label, str_cmd)); | 216 | menu.insert(new StyleMenuItem(str_label, str_cmd)); |
207 | } else if (str_key == "config") { | 217 | } else if (str_key == "config") { |