/safeFatPrinter/trunk/src/config.h

http://cupsfilter.googlecode.com/ · C Header · 47 lines · 41 code · 6 blank · 0 comment · 2 complexity · be4ce7bcc8c58f187a0c20ea9dba81d7 MD5 · raw file

  1. #ifndef CONFIG_H
  2. #define CONFIG_H
  3. #include <QFile>
  4. #include <QSettings>
  5. #include <QTextStream>
  6. #include <QDateTime>
  7. void myMessageOutput(QtMsgType type, const char *msg)
  8. {
  9. QSettings settings(QSettings::IniFormat, QSettings::UserScope,"??????????","?????????? ???????");
  10. settings.setIniCodec("UTF-8");
  11. settings.beginGroup( "LOG" );
  12. #if defined(Q_OS_UNIX)
  13. QFile logFile(settings.value("printer_log","/var/log/safeprinter/safe_printer.log").toString());
  14. #elif defined(Q_OS_WIN)
  15. QFile logFile(settings.value("printer_log","c:\\spool\\safe_printer.log").toString());
  16. #endif
  17. settings.endGroup();
  18. if (!logFile.open(QFile::Append| QFile::Text)){
  19. logFile.open(stderr, QIODevice::WriteOnly);
  20. }
  21. QTextStream out;
  22. out.setDevice(&logFile);
  23. out.setCodec("UTF-8");
  24. out << "\nDateTime: " << QDateTime::currentDateTime ().toString("dd.MM.yyyy hh:mm:ss") <<"\n";
  25. switch (type) {
  26. case QtDebugMsg:
  27. out << QObject::trUtf8("Debug: %1\n").arg(QString(msg)) <<"\n";
  28. break;
  29. case QtWarningMsg:
  30. out << QObject::trUtf8("Warning: %1\n").arg(QString(msg))<<"\n";
  31. break;
  32. case QtCriticalMsg:
  33. out << QObject::trUtf8("Critical: %1\n").arg(QString(msg))<<"\n";
  34. break;
  35. case QtFatalMsg:
  36. out << QObject::trUtf8("Fatal: %1\n").arg(QString(msg))<<"\n";
  37. abort();
  38. }
  39. logFile.close();
  40. }
  41. #endif