Files
GDevelop/IDE/LogFileManager.cpp
T
Florian 8672f179e9 Exchanged all french messages with their English counterparts.
Gui elements in SceneCanvas are now independant from the zoom factor.
Work in progress: NewProjectDialog.

git-svn-id: svn://localhost@837 8062f311-0dae-4547-b526-b8ab9ac864a5
2012-09-20 19:53:26 +00:00

59 lines
1.7 KiB
C++

#include <wx/config.h>
#include <wx/textfile.h>
#include <wx/log.h>
#include <wx/datetime.h>
#include "LogFileManager.h"
#include "GDL/CommonTools.h"
LogFileManager *LogFileManager::_singleton = NULL;
void LogFileManager::WriteToLogFile(const std::string & log)
{
wxLogNull noLogPlease; //We take care of handling errors
if ( logActivated && !logFile.empty() )
{
wxTextFile file(logFile);
if ( file.Exists() )
{
if ( !file.Open() ) return; //Failed to open already existing log file
}
else
{
if ( !file.Create() ) return; //Failed to create log file
}
wxDateTime time = wxDateTime::Now();
file.AddLine("["+ToString(time.GetMonth()+1)+"/"+ToString(time.GetDay())+"/"+ToString(time.GetYear())+", "+ToString(time.GetHour())+":"+ToString(time.GetMinute())+":"+ToString(time.GetSecond())+"] "+log);
file.Write();
}
}
void LogFileManager::InitalizeFromConfig()
{
//Read configuration
wxConfig::Get()->Read("/Log/Activated", &logActivated, false);
wxString wxLogFile;
wxConfig::Get()->Read("/Log/File", &wxLogFile, "");
logFile = ToString(wxLogFile);
//Clear log
if ( logActivated && !logFile.empty() )
{
wxLogNull noLogPlease; //We take care of handling errors
wxTextFile file(logFile);
if ( file.Exists() )
{
if ( !file.Open() ) return; //Failed to open already existing log file
file.Clear();
file.Write();
}
else
{
if ( !file.Create() ) return; //Failed to create log file
}
}
}