diff --git a/.gitattributes b/.gitattributes
index 259d47a40483500935b1f7fd751796c10b5685fa..01202c1da9a72c1e910d949913ba50b0fd7fd6df 100644
--- a/.gitattributes
+++ b/.gitattributes
@@ -182,6 +182,7 @@ CEP/DP3/AOFlagger/include/AOFlagger/blaswrap.h -text
 CEP/DP3/AOFlagger/include/AOFlagger/cleaner.h -text
 CEP/DP3/AOFlagger/include/AOFlagger/configuration.h -text
 CEP/DP3/AOFlagger/include/AOFlagger/f2c.h -text
+CEP/DP3/AOFlagger/include/AOFlagger/gui/addstrategyactionmenu.h -text
 CEP/DP3/AOFlagger/include/AOFlagger/gui/antennamap/antenna.h -text
 CEP/DP3/AOFlagger/include/AOFlagger/gui/antennamap/antennamap.h -text
 CEP/DP3/AOFlagger/include/AOFlagger/gui/antennamap/antennamapwidget.h -text
@@ -198,7 +199,6 @@ CEP/DP3/AOFlagger/include/AOFlagger/gui/imageplanewindow.h -text
 CEP/DP3/AOFlagger/include/AOFlagger/gui/imagewidget.h -text
 CEP/DP3/AOFlagger/include/AOFlagger/gui/msoptionwindow.h -text
 CEP/DP3/AOFlagger/include/AOFlagger/gui/mswindow.h -text
-CEP/DP3/AOFlagger/include/AOFlagger/gui/newstrategyactionframe.h -text
 CEP/DP3/AOFlagger/include/AOFlagger/gui/noisestatoptionwindow.h -text
 CEP/DP3/AOFlagger/include/AOFlagger/gui/numinputdialog.h -text
 CEP/DP3/AOFlagger/include/AOFlagger/gui/plot/colorscale.h -text
@@ -448,7 +448,6 @@ CEP/DP3/AOFlagger/src/gui/imageplanewindow.cpp -text
 CEP/DP3/AOFlagger/src/gui/imagewidget.cpp -text
 CEP/DP3/AOFlagger/src/gui/msoptionwindow.cpp -text
 CEP/DP3/AOFlagger/src/gui/mswindow.cpp -text
-CEP/DP3/AOFlagger/src/gui/newstrategyactionframe.cpp -text
 CEP/DP3/AOFlagger/src/gui/noisestatoptionwindow.cpp -text
 CEP/DP3/AOFlagger/src/gui/plot/colorscale.cpp -text
 CEP/DP3/AOFlagger/src/gui/plot/horizontalplotscale.cpp -text
diff --git a/CEP/DP3/AOFlagger/include/AOFlagger/gui/newstrategyactionframe.h b/CEP/DP3/AOFlagger/include/AOFlagger/gui/addstrategyactionmenu.h
similarity index 57%
rename from CEP/DP3/AOFlagger/include/AOFlagger/gui/newstrategyactionframe.h
rename to CEP/DP3/AOFlagger/include/AOFlagger/gui/addstrategyactionmenu.h
index f9341a9d77a082b67e619c24146fb14ef0c81931..45d3a8f342e22a2575f0ba835c7b89fe50ed8043 100644
--- a/CEP/DP3/AOFlagger/include/AOFlagger/gui/newstrategyactionframe.h
+++ b/CEP/DP3/AOFlagger/include/AOFlagger/gui/addstrategyactionmenu.h
@@ -17,27 +17,50 @@
  *   Free Software Foundation, Inc.,                                       *
  *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
  ***************************************************************************/
-#ifndef NEWSTRATEGYACTIONFRAME_H
-#define NEWSTRATEGYACTIONFRAME_H
+#ifndef ADDSTRATEGYACTIONMENU_H
+#define ADDSTRATEGYACTIONMENU_H
 
-#include <gtkmm/button.h>
-#include <gtkmm/buttonbox.h>
-#include <gtkmm/frame.h>
-#include <gtkmm/image.h>
+#include <gtkmm/menu.h>
+
+#include <AOFlagger/strategy/control/actionfactory.h>
+
+#include <AOFlagger/gui/editstrategywindow.h>
 
 /**
 	@author A.R. Offringa <offringa@astro.rug.nl>
 */
-class NewStrategyActionFrame : public Gtk::Frame {
+class AddStrategyActionMenu : public Gtk::Menu {
 	public:
-		NewStrategyActionFrame(class EditStrategyWindow &editStrategyWindow);
-		~NewStrategyActionFrame();
+		AddStrategyActionMenu(class EditStrategyWindow &editStrategyWindow) :
+		_editStrategyWindow(editStrategyWindow)
+		{
+			std::vector<std::string> actions = rfiStrategy::ActionFactory::GetActionList();
+
+			for(std::vector<std::string>::const_iterator i=actions.begin();i!=actions.end();++i)
+			{
+				Gtk::MenuItem *item = new Gtk::MenuItem(*i);
+				append(*item);
+				item->signal_activate().connect(sigc::bind<const std::string>(sigc::mem_fun(*this, &AddStrategyActionMenu::onActionSelected), *i));
+				item->show();
+
+				_items.push_back(item);
+			}
+		}
+		
+		~AddStrategyActionMenu()
+		{
+			for(std::vector<Gtk::MenuItem *>::const_iterator i=_items.begin();i!=_items.end();++i)
+				delete *i;
+		}
+		
 	private:
-		void onButtonClicked(const std::string str);
+		void onActionSelected(const std::string str)
+		{
+			_editStrategyWindow.AddAction(rfiStrategy::ActionFactory::CreateAction(str));
+		}
 
-		Gtk::VButtonBox _buttonBox;
-		std::vector<Gtk::Button *> _buttons;
 		class EditStrategyWindow &_editStrategyWindow;
+		std::vector<Gtk::MenuItem *> _items;
 };
 
 #endif
diff --git a/CEP/DP3/AOFlagger/include/AOFlagger/gui/editstrategywindow.h b/CEP/DP3/AOFlagger/include/AOFlagger/gui/editstrategywindow.h
index 3631762d896782117112529a5d5d47374fad0163..1dfa4d362257ce228b14dd4bfd8e60b0c56837e0 100644
--- a/CEP/DP3/AOFlagger/include/AOFlagger/gui/editstrategywindow.h
+++ b/CEP/DP3/AOFlagger/include/AOFlagger/gui/editstrategywindow.h
@@ -24,6 +24,7 @@
 #include <gtkmm/button.h>
 #include <gtkmm/buttonbox.h>
 #include <gtkmm/frame.h>
+#include <gtkmm/menutoolbutton.h>
 #include <gtkmm/paned.h>
 #include <gtkmm/scrolledwindow.h>
 #include <gtkmm/treemodel.h>
@@ -52,7 +53,6 @@ class EditStrategyWindow : public Gtk::Window
 		void fillStore();
 		void fillStore(Gtk::TreeModel::Row &row, rfiStrategy::Action &action, size_t childIndex);
 
-		void onAddActionClicked();
 		void onRemoveActionClicked();
 		void onMoveUpClicked();
 		void onMoveDownClicked();
@@ -100,13 +100,15 @@ class EditStrategyWindow : public Gtk::Window
 		Gtk::VBox _strategyBox;
 		rfiStrategy::Strategy *_strategy;
 		Gtk::HButtonBox _strategyEditButtonBox, _strategyFileButtonBox, _strategyLoadDefaultsButtonBox;
-		Gtk::Button _addActionButton, _removeActionButton, _moveUpButton, _moveDownButton;
+		Gtk::MenuToolButton _addActionButton;
+		Gtk::Button _removeActionButton, _moveUpButton, _moveDownButton;
 		Gtk::Button _addFOBButton, _addFOMSButton;
 		Gtk::Button _loadEmptyButton, _loadDefaultButton, _load1Button, _load2Button, _load3Button, _saveButton, _openButton;
 		ModelColumns _columns;
 		Gtk::ScrolledWindow _viewScrollWindow;
 		Gtk::TreeView _view;
 		Glib::RefPtr<Gtk::TreeStore> _store;
+		Gtk::Menu *_addMenu;
 
 		Gtk::Frame *_rightFrame;
 };
diff --git a/CEP/DP3/AOFlagger/src/CMakeLists.txt b/CEP/DP3/AOFlagger/src/CMakeLists.txt
index 330526b26c138e18289ada85c6be7f53d92768d1..5a2b06b11ac8f1b2756ec9e7e8fc2ba275cb5adb 100644
--- a/CEP/DP3/AOFlagger/src/CMakeLists.txt
+++ b/CEP/DP3/AOFlagger/src/CMakeLists.txt
@@ -25,11 +25,11 @@ set(GUI_FILES
   gui/application.cpp
   gui/complexplaneplotwindow.cpp
   gui/editstrategywindow.cpp
-  gui/gotowindow gui/highlightwindow.cpp
+  gui/gotowindow
+  gui/highlightwindow.cpp
   gui/imageplanewindow gui/imagewidget.cpp
   gui/msoptionwindow.cpp
   gui/mswindow.cpp
-  gui/newstrategyactionframe.cpp
   gui/noisestatoptionwindow.cpp
   gui/plotframe.cpp
   gui/progresswindow.cpp
diff --git a/CEP/DP3/AOFlagger/src/gui/editstrategywindow.cpp b/CEP/DP3/AOFlagger/src/gui/editstrategywindow.cpp
index 498004a245e6e994ba6702043809f2b9eca9dfb7..96be82c13d90ca347fea057b8c4f293d465c22fa 100644
--- a/CEP/DP3/AOFlagger/src/gui/editstrategywindow.cpp
+++ b/CEP/DP3/AOFlagger/src/gui/editstrategywindow.cpp
@@ -29,7 +29,7 @@
 
 #include <AOFlagger/gui/editstrategywindow.h>
 #include <AOFlagger/gui/mswindow.h>
-#include <AOFlagger/gui/newstrategyactionframe.h>
+#include <AOFlagger/gui/addstrategyactionmenu.h>
 
 #include <AOFlagger/gui/strategyframes/absthresholdframe.h>
 #include <AOFlagger/gui/strategyframes/baselineselectionframe.h>
@@ -75,74 +75,64 @@ EditStrategyWindow::EditStrategyWindow(class MSWindow &msWindow)
 	_viewScrollWindow.add(_view);
 	_view.get_selection()->signal_changed().connect(
 		sigc::mem_fun(*this, &EditStrategyWindow::onSelectionChanged));
-	_view.show();
 	
 	_viewScrollWindow.set_policy(Gtk::POLICY_AUTOMATIC, Gtk::POLICY_AUTOMATIC);
 	_viewScrollWindow.set_size_request(100, 400);
 	_strategyBox.pack_start(_viewScrollWindow);
-	_viewScrollWindow.show();
 
 	initEditButtons();
 
 	initLoadDefaultsButtons();
 	
 	_paned.add1(_strategyBox);
-	_strategyBox.show();
 
 	add(_paned);
-	_paned.show();
-
+	
+	show_all();
+	
 	_strategy = &_msWindow.Strategy();
 	fillStore();
 }
 
 EditStrategyWindow::~EditStrategyWindow()
 {
+	delete _addMenu;
 }
 
 void EditStrategyWindow::initEditButtons()
 {
 	_strategyEditButtonBox.pack_start(_addActionButton);
 	_addActionButton.set_sensitive(false);
-	_addActionButton.signal_clicked().connect(sigc::mem_fun(*this, &EditStrategyWindow::onAddActionClicked));
-	_addActionButton.show();
+	_addMenu = new AddStrategyActionMenu(*this);
+	_addActionButton.set_menu(*_addMenu);
 
 	_strategyEditButtonBox.pack_start(_moveUpButton);
 	_moveUpButton.set_sensitive(false);
 	_moveUpButton.signal_clicked().connect(sigc::mem_fun(*this, &EditStrategyWindow::onMoveUpClicked));
-	_moveUpButton.show();
 
 	_strategyEditButtonBox.pack_start(_moveDownButton);
 	_moveDownButton.set_sensitive(false);
 	_moveDownButton.signal_clicked().connect(sigc::mem_fun(*this, &EditStrategyWindow::onMoveDownClicked));
-	_moveDownButton.show();
 
 	_strategyEditButtonBox.pack_start(_removeActionButton);
 	_removeActionButton.set_sensitive(false);
 	_removeActionButton.signal_clicked().connect(sigc::mem_fun(*this, &EditStrategyWindow::onRemoveActionClicked));
-	_removeActionButton.show();
 
 	_strategyBox.pack_start(_strategyEditButtonBox, Gtk::PACK_SHRINK, 0);
-	_strategyEditButtonBox.show();
 
 	_strategyFileButtonBox.pack_start(_addFOBButton);
 	_addFOBButton.signal_clicked().connect(sigc::mem_fun(*this, &EditStrategyWindow::onAddFOBaseline));
-	_addFOBButton.show();
 
 	_strategyFileButtonBox.pack_start(_addFOMSButton);
 	_addFOMSButton.signal_clicked().connect(sigc::mem_fun(*this, &EditStrategyWindow::onAddFOMS));
-	_addFOMSButton.show();
 
 	_strategyFileButtonBox.pack_start(_saveButton);
 	_saveButton.signal_clicked().connect(sigc::mem_fun(*this, &EditStrategyWindow::onSaveClicked));
-	_saveButton.show();
 
 	_strategyFileButtonBox.pack_start(_openButton);
 	_openButton.signal_clicked().connect(sigc::mem_fun(*this, &EditStrategyWindow::onOpenClicked));
-	_openButton.show();
 
 	_strategyBox.pack_start(_strategyFileButtonBox, Gtk::PACK_SHRINK, 0);
-	_strategyFileButtonBox.show();
 }
 
 void EditStrategyWindow::initLoadDefaultsButtons()
@@ -202,12 +192,6 @@ void EditStrategyWindow::fillStore(Gtk::TreeModel::Row &row, Action &action, siz
 	}
 }
 
-void EditStrategyWindow::onAddActionClicked()
-{
-	clearRightFrame();
-	showRight(new NewStrategyActionFrame(*this));
-}
-
 void EditStrategyWindow::onRemoveActionClicked()
 {
 	clearRightFrame();
diff --git a/CEP/DP3/AOFlagger/src/gui/newstrategyactionframe.cpp b/CEP/DP3/AOFlagger/src/gui/newstrategyactionframe.cpp
deleted file mode 100644
index 2c7ac27cfbb3ee445f64f37c083c08e055180070..0000000000000000000000000000000000000000
--- a/CEP/DP3/AOFlagger/src/gui/newstrategyactionframe.cpp
+++ /dev/null
@@ -1,57 +0,0 @@
-/***************************************************************************
- *   Copyright (C) 2008 by A.R. Offringa   *
- *   offringa@astro.rug.nl   *
- *                                                                         *
- *   This program is free software; you can redistribute it and/or modify  *
- *   it under the terms of the GNU General Public License as published by  *
- *   the Free Software Foundation; either version 2 of the License, or     *
- *   (at your option) any later version.                                   *
- *                                                                         *
- *   This program is distributed in the hope that it will be useful,       *
- *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
- *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
- *   GNU General Public License for more details.                          *
- *                                                                         *
- *   You should have received a copy of the GNU General Public License     *
- *   along with this program; if not, write to the                         *
- *   Free Software Foundation, Inc.,                                       *
- *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
- ***************************************************************************/
-#include <gtkmm/stock.h>
-#include <gtkmm/enums.h>
-
-#include <AOFlagger/gui/editstrategywindow.h>
-#include <AOFlagger/gui/newstrategyactionframe.h>
-
-#include <AOFlagger/strategy/control/actionfactory.h>
-
-NewStrategyActionFrame::NewStrategyActionFrame(EditStrategyWindow &editStrategyWindow)
-	: Gtk::Frame("New action"),
-	_editStrategyWindow(editStrategyWindow)
-{
-	std::vector<std::string> actions = rfiStrategy::ActionFactory::GetActionList();
-
-	for(std::vector<std::string>::const_iterator i=actions.begin();i!=actions.end();++i)
-	{
-		Gtk::Button *button = new Gtk::Button(*i);
-		_buttonBox.pack_start(*button);
-		button->signal_clicked().connect(sigc::bind<const std::string>(sigc::mem_fun(*this, &NewStrategyActionFrame::onButtonClicked), *i));
-		button->show();
-
-		_buttons.push_back(button);
-	}
-
-	add(_buttonBox);
-	_buttonBox.show();
-}
-
-NewStrategyActionFrame::~NewStrategyActionFrame()
-{
-	for(std::vector<Gtk::Button *>::const_iterator i=_buttons.begin();i!=_buttons.end();++i)
-		delete *i;
-}
-
-void NewStrategyActionFrame::onButtonClicked(const std::string str)
-{
- 	_editStrategyWindow.AddAction(rfiStrategy::ActionFactory::CreateAction(str));
-}