Index: src/Actions/WorldAction/CenterInBoxAction.cpp
===================================================================
--- src/Actions/WorldAction/CenterInBoxAction.cpp	(revision 4a611e3670a1f64878803f279635ff022e7471c1)
+++ src/Actions/WorldAction/CenterInBoxAction.cpp	(revision b9c8477258cb157c5302eaf6c3b8c3a846877820)
@@ -38,4 +38,5 @@
 
   if(dialog->display()) {
+    World::getInstance().setDomain(cell_size);
     // center
     vector<molecule *> AllMolecules = World::getInstance().getAllMolecules();
Index: src/Actions/WorldAction/CenterOnEdgeAction.cpp
===================================================================
--- src/Actions/WorldAction/CenterOnEdgeAction.cpp	(revision 4a611e3670a1f64878803f279635ff022e7471c1)
+++ src/Actions/WorldAction/CenterOnEdgeAction.cpp	(revision b9c8477258cb157c5302eaf6c3b8c3a846877820)
@@ -65,4 +65,5 @@
       cell_size[j] = (Max[i]-Min[i]);
     }
+    World::getInstance().setDomain(cell_size);
     // translate all atoms, such that Min is aty (0,0,0)
     for (vector<atom*>::iterator AtomRunner = AllAtoms.begin(); AtomRunner != AllAtoms.end(); ++AtomRunner)
Index: src/Actions/WorldAction/ChangeBoxAction.cpp
===================================================================
--- src/Actions/WorldAction/ChangeBoxAction.cpp	(revision 4a611e3670a1f64878803f279635ff022e7471c1)
+++ src/Actions/WorldAction/ChangeBoxAction.cpp	(revision b9c8477258cb157c5302eaf6c3b8c3a846877820)
@@ -39,4 +39,5 @@
   if(dialog->display()) {
     DoLog(0) && (Log() << Verbose(0) << "Setting box domain to " << cell_size[0] << "," << cell_size[1] << "," << cell_size[2] << "," << cell_size[3] << "," << cell_size[4] << "," << cell_size[5] << "," << endl);
+    World::getInstance().setDomain(cell_size);
     delete dialog;
     return Action::success;
Index: src/Actions/WorldAction/RepeatBoxAction.cpp
===================================================================
--- src/Actions/WorldAction/RepeatBoxAction.cpp	(revision 4a611e3670a1f64878803f279635ff022e7471c1)
+++ src/Actions/WorldAction/RepeatBoxAction.cpp	(revision b9c8477258cb157c5302eaf6c3b8c3a846877820)
@@ -72,4 +72,5 @@
     }
 
+    World::getInstance().setDomain(cell_size);
     molecule *newmol = NULL;
     Vector ** vectors = NULL;
Index: src/Actions/WorldAction/ScaleBoxAction.cpp
===================================================================
--- src/Actions/WorldAction/ScaleBoxAction.cpp	(revision 4a611e3670a1f64878803f279635ff022e7471c1)
+++ src/Actions/WorldAction/ScaleBoxAction.cpp	(revision b9c8477258cb157c5302eaf6c3b8c3a846877820)
@@ -55,4 +55,5 @@
       cell_size[j]*=x[i];
     }
+    World::getInstance().setDomain(cell_size);
 
     delete dialog;
Index: src/Actions/WorldAction/SetOutputFormatsAction.cpp
===================================================================
--- src/Actions/WorldAction/SetOutputFormatsAction.cpp	(revision b9c8477258cb157c5302eaf6c3b8c3a846877820)
+++ src/Actions/WorldAction/SetOutputFormatsAction.cpp	(revision b9c8477258cb157c5302eaf6c3b8c3a846877820)
@@ -0,0 +1,92 @@
+/*
+ * SetOutputFormatsAction.cpp
+ *
+ *  Created on: May 8, 2010
+ *      Author: heber
+ */
+
+#include "Helpers/MemDebug.hpp"
+
+#include "Actions/WorldAction/SetOutputFormatsAction.hpp"
+#include "Parser/ChangeTracker.hpp"
+#include "Parser/FormatParserStorage.hpp"
+#include "log.hpp"
+#include "verbose.hpp"
+#include "World.hpp"
+
+#include <iostream>
+#include <string>
+
+using namespace std;
+
+#include "UIElements/UIFactory.hpp"
+#include "UIElements/Dialog.hpp"
+#include "Actions/MapOfActions.hpp"
+
+const char WorldSetOutputFormatsAction::NAME[] = "set-output";
+
+WorldSetOutputFormatsAction::WorldSetOutputFormatsAction() :
+  Action(NAME)
+{}
+
+WorldSetOutputFormatsAction::~WorldSetOutputFormatsAction()
+{}
+
+Action::state_ptr WorldSetOutputFormatsAction::performCall() {
+  Dialog *dialog = UIFactory::getInstance().makeDialog();
+  vector<std::string> FormatList;
+
+  dialog->queryStrings(NAME, &FormatList, MapOfActions::getInstance().getDescription(NAME));
+
+  if(dialog->display()) {
+    for (vector<std::string>::iterator iter = FormatList.begin(); iter != FormatList.end(); ++iter) {
+      if (*iter == "mpqc") {
+        FormatParserStorage::getInstance().addMpqc();
+        DoLog(0) && (Log() << Verbose(0) << "Adding mpqc type to output." << endl);
+      } else if (*iter == "pcp") {
+        FormatParserStorage::getInstance().addPcp();
+        DoLog(0) && (Log() << Verbose(0) << "Adding pcp type to output." << endl);
+      } else if (*iter == "tremolo") {
+        FormatParserStorage::getInstance().addTremolo();
+        DoLog(0) && (Log() << Verbose(0) << "Adding tremolo type to output." << endl);
+      } else if (*iter == "xyz") {
+        FormatParserStorage::getInstance().addXyz();
+        DoLog(0) && (Log() << Verbose(0) << "Adding xyz type to output." << endl);
+      } else {
+        DoeLog(1) && (eLog() << Verbose(1) << "Unknown format." << endl);
+      }
+    }
+    ChangeTracker::getInstance().saveStatus();
+    delete dialog;
+    return Action::success;
+  } else {
+    delete dialog;
+    return Action::failure;
+  }
+}
+
+Action::state_ptr WorldSetOutputFormatsAction::performUndo(Action::state_ptr _state) {
+//  ParserLoadXyzState *state = assert_cast<ParserLoadXyzState*>(_state.get());
+
+  return Action::failure;
+//  string newName = state->mol->getName();
+//  state->mol->setName(state->lastName);
+//
+//  return Action::state_ptr(new ParserLoadXyzState(state->mol,newName));
+}
+
+Action::state_ptr WorldSetOutputFormatsAction::performRedo(Action::state_ptr _state){
+  return Action::failure;
+}
+
+bool WorldSetOutputFormatsAction::canUndo() {
+  return false;
+}
+
+bool WorldSetOutputFormatsAction::shouldUndo() {
+  return false;
+}
+
+const string WorldSetOutputFormatsAction::getName() {
+  return NAME;
+}
Index: src/Actions/WorldAction/SetOutputFormatsAction.hpp
===================================================================
--- src/Actions/WorldAction/SetOutputFormatsAction.hpp	(revision b9c8477258cb157c5302eaf6c3b8c3a846877820)
+++ src/Actions/WorldAction/SetOutputFormatsAction.hpp	(revision b9c8477258cb157c5302eaf6c3b8c3a846877820)
@@ -0,0 +1,30 @@
+/*
+ * SetOutputFormatsAction.hpp
+ *
+ *  Created on: May 8, 2010
+ *      Author: heber
+ */
+
+#ifndef SETOUTPUTFORMATSACTION_HPP_
+#define SETOUTPUTFORMATSACTION_HPP_
+
+#include "Actions/Action.hpp"
+
+class WorldSetOutputFormatsAction : public Action {
+public:
+  WorldSetOutputFormatsAction();
+  virtual ~WorldSetOutputFormatsAction();
+
+  bool canUndo();
+  bool shouldUndo();
+
+  virtual const std::string getName();
+private:
+  virtual Action::state_ptr performCall();
+  virtual Action::state_ptr performUndo(Action::state_ptr);
+  virtual Action::state_ptr performRedo(Action::state_ptr);
+
+  static const char NAME[];
+};
+
+#endif /* SETOUTPUTFORMATSACTION_HPP_ */
