You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

69 lines
2.9 KiB

  1. /*
  2. * This program source code file is part of KiCad, a free EDA CAD application.
  3. *
  4. * Copyright (C) 2012-2016 Jean-Pierre Charras jp.charras at wanadoo.fr
  5. * Copyright The KiCad Developers, see AUTHORS.txt for contributors.
  6. *
  7. * This program is free software; you can redistribute it and/or
  8. * modify it under the terms of the GNU General Public License
  9. * as published by the Free Software Foundation; either version 2
  10. * of the License, or (at your option) any later version.
  11. *
  12. * This program is distributed in the hope that it will be useful,
  13. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  14. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  15. * GNU General Public License for more details.
  16. *
  17. * You should have received a copy of the GNU General Public License
  18. * along with this program; if not, you may find one here:
  19. * http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
  20. * or you may search the http://www.gnu.org website for the version 2 license,
  21. * or you may write to the Free Software Foundation, Inc.,
  22. * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
  23. */
  24. #ifndef GBR_DISPLAY_OPTIONS_H
  25. #define GBR_DISPLAY_OPTIONS_H
  26. using KIGFX::COLOR4D;
  27. /**
  28. * @note Some of these parameters are used only for printing, some others only
  29. * for drawing on screen.
  30. */
  31. class GBR_DISPLAY_OPTIONS
  32. {
  33. public:
  34. bool m_DisplayFlashedItemsFill; ///< Option to draw flashed items (filled/sketch)
  35. bool m_DisplayLinesFill; ///< Option to draw line items (filled/sketch)
  36. bool m_DisplayPolygonsFill; ///< Option to draw polygons (filled/sketch)
  37. bool m_DisplayPageLimits;
  38. bool m_IsPrinting; ///< true when printing a page, false when drawing on screen
  39. bool m_ForceOpacityMode; ///< Display layers in transparency (alpha channel) forced mode
  40. bool m_XORMode; ///< Display layers in exclusive-or mode
  41. bool m_HighContrastMode; ///< High contrast mode (dim un-highlighted objects)
  42. bool m_FlipGerberView; ///< Display as a mirror image
  43. COLOR4D m_NegativeDrawColor; ///< The color used to draw negative objects, usually the
  44. ///< background color, but not always, when negative objects
  45. ///< must be visible
  46. double m_OpacityModeAlphaValue; ///< the alpha channel (opacity) value in opacity forced mode
  47. public:
  48. GBR_DISPLAY_OPTIONS()
  49. {
  50. m_DisplayFlashedItemsFill = true;
  51. m_DisplayLinesFill = true;
  52. m_DisplayPolygonsFill = true;
  53. m_DisplayPageLimits = false;
  54. m_IsPrinting = false;
  55. m_NegativeDrawColor = COLOR4D( DARKGRAY );
  56. m_ForceOpacityMode = false;
  57. m_OpacityModeAlphaValue = 0.6;
  58. m_XORMode = false;
  59. m_HighContrastMode = false;
  60. m_FlipGerberView = false;
  61. }
  62. };
  63. #endif // GBR_DISPLAY_OPTIONS_H