#include "GeneralMessagesLogDispatcher.h" //singleton instantiation CGeneralMessagesLogDispatcher CGeneralMessagesLogDispatcher::mSingleton; CGeneralMessagesLogDispatcher::CGeneralMessagesLogDispatcher() { mGeneralStatusPageHandle = 0; mNbLinesInGUILog = 0; } CGeneralMessagesLogDispatcher::~CGeneralMessagesLogDispatcher() { } int CGeneralMessagesLogDispatcher::AddLogMessage(QString LogLine, bool AddToGUILogPanel) { //TODO: Add text to log file... LogLine.remove('\n'); LogLine.remove('\r'); LogLine.append('\n'); if(AddToGUILogPanel == true) { if(mNbLinesInGUILog == GENERAL_MESSAGES_MAX_LOG_LINES) { //Make shure we are able to remove first line int FirstLineLength = mGeneralMsgGUILog.indexOf(QChar('\n')); if(FirstLineLength != -1) { mGeneralMsgGUILog.remove(0,FirstLineLength+1); mGeneralMsgGUILog.append(LogLine); } else { qDebug("Something fucked-up happened in CGeneralMessagesLogDispatch::AddLogMessage"); return RET_GENERAL_ERROR; } } else { mGeneralMsgGUILog.append(LogLine); mNbLinesInGUILog++; } if(mGeneralStatusPageHandle != 0) { mGeneralStatusPageHandle->SetGeneralMsgText(mGeneralMsgGUILog); } else { qDebug("Someone forgot to assing their pointers in CGeneralMessagesLogDispatch::AddLogMessage!! This needs to be fixed"); return RET_GENERAL_ERROR; } } return RET_OK; } int CGeneralMessagesLogDispatcher::BindGuiPageHandle(CGeneralStatusPage *Handle) { if(Handle == 0) { return RET_GENERAL_ERROR; } else { mGeneralStatusPageHandle = Handle; } return RET_OK; }