]> ruin.nu Git - hbs.git/blobdiff - bs/bsdoc.cpp
adding, removing and chaning fleets now works.
[hbs.git] / bs / bsdoc.cpp
index 5bf5f46863c6c28ec325cabca60f5b99703449e5..d7e04ce336f0e3253c04af305ae94952b0942d1b 100644 (file)
@@ -106,4 +106,46 @@ const Fleet* BSDoc::specificFleet(QString battle, QString group, QString fleet)
        return '\0';
 }
 
+//////////////////////////////////////////////////////////////////////////
+//
+void BSDoc::changeFleet(QString battle, QString group, QString fleet, const Fleet* fl)
+{
+       delete m_Battles[battle][group][fleet];
 
+       const Planet* planet = 0;
+       if((planet = dynamic_cast<const Planet*>(fl)))
+       {
+                       m_Battles[battle][group][fleet] = new Planet(*planet);
+       }
+       else
+       {
+               m_Battles[battle][group][fleet] = new Fleet(*fl);
+       }
+       emit documentChanged();
+}
+
+
+//////////////////////////////////////////////////////////////////////////
+//
+void BSDoc::newFleet(QString battle, QString group, QString fleet, Fleet* fl)
+{
+       m_Battles[battle][group][fleet] = fl;
+       emit documentChanged();
+}
+
+//////////////////////////////////////////////////////////////////////////
+//
+void BSDoc::removeFleet(QString battle, QString group, QString fleet)
+{
+       delete m_Battles[battle][group][fleet];
+       m_Battles[battle][group].erase(fleet);
+       emit documentChanged();
+}
+
+//////////////////////////////////////////////////////////////////////////
+//
+void BSDoc::runBattleSimulation()
+{
+
+       emit documentChanged();
+}