/releases/lescienze500_freeze/src/startpdf.cpp

https://github.com/simon-r/-Archivio---LeScienze500 · C++ · 54 lines · 37 code · 16 blank · 1 comment · 2 complexity · f66b8c4abc4b1df1e74d21069035c426 MD5 · raw file

  1. #include "startpdf.h"
  2. #include <QProcess>
  3. #include <QDesktopServices>
  4. #include <QUrl>
  5. #include "configls500.h"
  6. StartPdf::StartPdf()
  7. {
  8. }
  9. void StartPdf::run()
  10. {
  11. QString pdf_appl , command ;
  12. bool process_strated ;
  13. QProcess process_pdf ;
  14. configLS500 cfg ;
  15. pdf_appl = cfg.getPDFAppl() ;
  16. command.append( pdf_path ) ;
  17. command.append( " " ) ;
  18. command.append( "\"" ) ;
  19. command.append( pdf_path ) ;
  20. command.append( "\"" ) ;
  21. //qDebug() << command ;
  22. if ( pdf_appl != "desktop" )
  23. process_strated = process_pdf.startDetached( command );
  24. else
  25. {
  26. QUrl url ;
  27. url.setScheme( "file" );
  28. url.setPath( pdf_path );
  29. process_strated = QDesktopServices::openUrl( url ) ;
  30. }
  31. }
  32. void StartPdf::openPdf( QString p )
  33. {
  34. mutex.lock();
  35. this->pdf_path = p ;
  36. this->start();
  37. mutex.unlock();
  38. }