ccRenderToFileDlg.h 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. #pragma once
  2. //##########################################################################
  3. //# #
  4. //# CLOUDCOMPARE #
  5. //# #
  6. //# This program is free software; you can redistribute it and/or modify #
  7. //# it under the terms of the GNU General Public License as published by #
  8. //# the Free Software Foundation; version 2 or later of the License. #
  9. //# #
  10. //# This program is distributed in the hope that it will be useful, #
  11. //# but WITHOUT ANY WARRANTY; without even the implied warranty of #
  12. //# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
  13. //# GNU General Public License for more details. #
  14. //# #
  15. //# COPYRIGHT: EDF R&D / TELECOM ParisTech (ENST-TSI) #
  16. //# #
  17. //##########################################################################
  18. #include "CCPluginAPI.h"
  19. #include <QDialog>
  20. namespace Ui
  21. {
  22. class RenderToFileDialog;
  23. }
  24. //! Dialog for screen to file rendering
  25. class CCPLUGIN_LIB_API ccRenderToFileDlg : public QDialog
  26. {
  27. Q_OBJECT
  28. public:
  29. //! Default constructor
  30. ccRenderToFileDlg(unsigned baseWidth, unsigned baseHeight, QWidget* parent = nullptr);
  31. ~ccRenderToFileDlg() override;
  32. //! Disable and hide the scale and overlay checkboxes
  33. void hideOptions();
  34. //! On dialog acceptance, returns requested zoom
  35. float getZoom() const;
  36. //! On dialog acceptance, returns requested output filename
  37. QString getFilename() const;
  38. //! On dialog acceptance, returns whether points should be scaled or not
  39. bool dontScalePoints() const;
  40. //! Whether overlay items should be rendered
  41. bool renderOverlayItems() const;
  42. private:
  43. void chooseFile();
  44. void updateInfo();
  45. void saveSettings();
  46. unsigned w;
  47. unsigned h;
  48. QString selectedFilter;
  49. QString currentPath;
  50. QString filters;
  51. Ui::RenderToFileDialog* m_ui;
  52. };