]> ruin.nu Git - hbs.git/blobdiff - bs/bsview.cpp
added code so you lose ships if you steal..
[hbs.git] / bs / bsview.cpp
index ccf334158c714641a2eaac86a39c32794364ccc4..df3f558d97de534a8a5d37512581b9c1de3c2a4f 100644 (file)
@@ -32,7 +32,7 @@ using namespace std;
 #include "battlesum.h"
 #include "scanview.h"
 #include "ui/infoview.h"
-#include "tickview.h"
+//#include "tickview.h"
 #include "fleetview.h"
 #include "fleet.h"
 #include "planet.h"
@@ -40,6 +40,10 @@ using namespace std;
 BSView::BSView(QWidget *parent, BSDoc *doc) : QSplitter(parent)
 {
   /** connect doc with the view*/
+
+       m_iMaxTick = 0;
+       m_iMinTick = 0;
+       m_iResultMode = 0;
        
        m_bMoreDocChanges = false;
        connect(doc, SIGNAL(documentChanged()), this, SLOT(slotDocumentChanged()));
@@ -79,9 +83,9 @@ BSView::BSView(QWidget *parent, BSDoc *doc) : QSplitter(parent)
        m_InfoView->setRaces(raceNames);
        
        //the right side
-       m_TickView = new TickView(m_RightSplit);
+       //m_TickView = new TickView(m_RightSplit);
        m_FleetViews = new QWidgetStack(m_RightSplit);
-       m_ScanView = new ScanView(m_RightSplit);
+       //m_ScanView = new ScanView(m_RightSplit);
        
        Fleet fl1;
        //fl1.setRace(tr("Terran").latin1());
@@ -96,12 +100,13 @@ BSView::BSView(QWidget *parent, BSDoc *doc) : QSplitter(parent)
        m_FleetViews->addWidget(m_FleetView, 1);
        m_GenericFleetView = new FleetView(&fl2, true);
        m_FleetViews->addWidget(m_GenericFleetView, 2);
+       m_FleetView->slotViewTickRange(m_iMinTick, m_iMaxTick);
+       m_GenericFleetView->slotViewTickRange(m_iMinTick, m_iMaxTick);
+
        //m_FleetViews->raiseWidget(0);
        connect(m_NumberView, SIGNAL(selectionChanged(QListViewItem *)), SLOT(slotFleetSelection(QListViewItem *)));
        connect(m_FleetView, SIGNAL(fleetChanged(const Fleet*)), SLOT(slotFleetChanged(const Fleet*)));
        connect(m_GenericFleetView, SIGNAL(fleetChanged(const Fleet*)), SLOT(slotFleetChanged(const Fleet*)));
-       connect(m_TickView, SIGNAL(ticksChanged(int,int)), m_FleetView, SLOT(slotViewTickRange(int,int)));
-       connect(m_TickView, SIGNAL(ticksChanged(int,int)), m_GenericFleetView, SLOT(slotViewTickRange(int,int)));
 }
 
 BSView::~BSView()
@@ -273,6 +278,7 @@ void BSView::slotInfoApply()
        fl->setETA(m_InfoView->eta());
        fl->setName(m_sFleet.latin1());
        fl->setRace(m_InfoView->race().latin1());
+       fl->setStays(m_InfoView->stays());
        
        m_doc->newFleet(m_sBattle, m_sGroup, m_sFleet, fl);
 }
@@ -312,6 +318,7 @@ void BSView::slotInfoNew()
        fl->setETA(m_InfoView->eta());
        fl->setName(m_sFleet.latin1());
        fl->setRace(m_InfoView->race().latin1());
+       fl->setStays(m_InfoView->stays());
 
        m_doc->newFleet(m_sBattle, m_sGroup, m_sFleet, fl);
 
@@ -360,6 +367,7 @@ void BSView::updateInfoView()
        m_InfoView->setEta(fl->ETA());
        m_InfoView->setGroup(m_sGroup);
        m_InfoView->setBattle(m_sBattle);
+       m_InfoView->setStays(fl->stays());
 }
 
 //////////////////////////////////////////////////////////////////////////
@@ -402,10 +410,32 @@ void BSView::updateFleetView()
                        delete m_FleetView;
                        m_FleetView = new FleetView(fl, friendly);
                        connect(m_FleetView, SIGNAL(fleetChanged(const Fleet*)), SLOT(slotFleetChanged(const Fleet*)));
-                       connect(m_TickView, SIGNAL(ticksChanged(int,int)), m_FleetView, SLOT(slotViewTickRange(int,int)));
+                       m_FleetView->slotViewTickRange(m_iMinTick, m_iMaxTick);
+                       m_FleetView->slotSetResultMode(m_iResultMode);
                        m_FleetViews->addWidget(m_FleetView, 1);
                }
                m_FleetViews->raiseWidget(2);
                m_FleetViews->raiseWidget(1);
        }
 }
+
+//////////////////////////////////////////////////////////////////////////
+//
+void BSView::slotTickChanged(int min, int max)
+{
+       m_FleetView->slotViewTickRange(min, max);
+       m_GenericFleetView->slotViewTickRange(min, max);
+
+       m_iMinTick = min;
+       m_iMaxTick = max;
+}
+
+//////////////////////////////////////////////////////////////////////////
+//
+void BSView::slotResultModeChanged( int i)
+{
+       m_FleetView->slotSetResultMode(i);
+       m_GenericFleetView->slotSetResultMode(i);
+       
+       m_iResultMode = i;
+}