#include "UIDocumentController.h"
#include "UINetworkController.h"
#include <iostream>
#include "QtNetwork.h"
namespace FD
{
using namespace std;
UIDocumentController::UIDocumentController(const std::string &name, QtDocument *doc)
: UIDocument(name), m_QtDocument(doc)
{
cerr<<"UIDocumentController::UIDocumentController";
}
UINetwork * UIDocumentController::newNetwork(const std::string &_name, UINetwork::Type type)
{
cerr<<"UINetwork * UIDocumentController::newNetwork(const std::string &_name, UINetwork::Type type)"<<endl;
if (m_QtDocument)
{
//CREATING THE MODEL
UINetworkController* net = new UINetworkController(this,_name,type);
//UPDATING THE VIEW
m_QtDocument->addNetwork(net);
return net;
}
else
{
cerr<<"WARNING UIDocumentController::newNetwork ---> no QtDocument";
return new UINetworkController(this,_name,type);
}
}
UINetwork* UIDocumentController::newNetwork(xmlNodePtr _net)
{
cerr<<"UINetwork* UIDocumentController::newNetwork (XML)"<<endl;
if (m_QtDocument)
{
//CREATING THE MODEL
UINetworkController* net = new UINetworkController(this,_net);
//UPDATING THE VIEW
//m_QtDocument->addNetwork(net);
return net;
}
else
{
cerr<<"WARNING UIDocumentController::newNetwork ---> no QtDocument";
return new UINetworkController(this,_net);
}
}
void UIDocumentController::updateView()
{
if (m_QtDocument)
{
//CALL UPDATE VIEW ON EACH UINETWORKCONTROLLER
for (unsigned int i = 0; i < networks.size(); i++)
{
UINetworkController *ctrl = dynamic_cast<UINetworkController*>(networks[i]);
if (ctrl)
{
ctrl->updateView(m_QtDocument);
}
}
}
else
{
cerr<<"ERROR : UIDocumentController::updateView() no QtDocument defined"<<endl;
}
}
}
syntax highlighted by Code2HTML, v. 0.9.1