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.

77 lines
3.3 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 (C) 1992-2016 KiCad Developers, see change_log.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. /**
  25. * @file gbr_display_options.h
  26. * @brief Class GBR_DISPLAY_OPTIONS is a helper class to handle display options
  27. * (filling modes and afew other options
  28. */
  29. #ifndef CLASS_GBR_DISPLAY_OPTIONS_H
  30. #define CLASS_GBR_DISPLAY_OPTIONS_H
  31. /**
  32. * @note Some of these parameters are used only for printing, some others only
  33. * for drawing on screen.
  34. */
  35. class GBR_DISPLAY_OPTIONS
  36. {
  37. public:
  38. bool m_DisplayFlashedItemsFill; ///< Option to draw flashed items (filled/sketch)
  39. bool m_DisplayLinesFill; ///< Option to draw line items (filled/sketch)
  40. bool m_DisplayPolygonsFill; ///< Option to draw polygons (filled/sketch)
  41. bool m_DisplayDCodes; ///< Option to show dcode values on items drawn with a dcode tool
  42. bool m_DisplayPageLimits;
  43. bool m_DisplayNegativeObjects; ///< Option to draw negative objects in a specific color
  44. bool m_IsPrinting; ///< true when printing a page, false when drawing on screen
  45. bool m_ForceBlackAndWhite; ///< Option print in black and white (not used in draw mode
  46. bool m_DiffMode; ///< Display layers in diff mode
  47. bool m_HighContrastMode; ///< High contrast mode (dim un-highlighted objects)
  48. bool m_FlipGerberView; ///< Display as a mirror image
  49. COLOR4D m_NegativeDrawColor; ///< The color used to draw negative objects, usually the
  50. ///< background color, but not always, when negative objects
  51. ///< must be visible
  52. COLOR4D m_BgDrawColor; ///< The background color
  53. public:
  54. GBR_DISPLAY_OPTIONS()
  55. {
  56. m_DisplayFlashedItemsFill = true;
  57. m_DisplayLinesFill = true;
  58. m_DisplayPolygonsFill = true;
  59. m_DisplayDCodes = false;
  60. m_DisplayPageLimits = false;
  61. m_IsPrinting = false;
  62. m_DisplayNegativeObjects = false;
  63. m_ForceBlackAndWhite = false;
  64. m_NegativeDrawColor = COLOR4D( DARKGRAY );
  65. m_BgDrawColor = COLOR4D::BLACK;
  66. m_DiffMode = false;
  67. m_HighContrastMode = false;
  68. m_FlipGerberView = false;
  69. }
  70. };
  71. #endif // #ifndef CLASS_GBR_DISPLAY_OPTIONS_H