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.

105 lines
3.9 KiB

19 years ago
19 years ago
16 years ago
19 years ago
19 years ago
19 years ago
18 years ago
  1. /*
  2. * This program source code file is part of KiCad, a free EDA CAD application.
  3. *
  4. * Copyright (C) 2007-2014 Jean-Pierre Charras, jp.charras at wanadoo.fr
  5. * Copyright (C) 1992-2014 KiCad Developers, see CHANGELOG.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 pcbstruct.h
  26. * @brief Classes and definitions used in Pcbnew.
  27. */
  28. #ifndef PCBSTRUCT_H_
  29. #define PCBSTRUCT_H_
  30. /// Values for m_DisplayViaMode member:
  31. enum VIA_DISPLAY_MODE_T {
  32. VIA_HOLE_NOT_SHOW = 0,
  33. VIA_SPECIAL_HOLE_SHOW,
  34. ALL_VIA_HOLE_SHOW,
  35. OPT_VIA_HOLE_END
  36. };
  37. /**
  38. * Enum TRACE_CLEARANCE_DISPLAY_MODE_T
  39. * is the set of values for DISPLAY_OPTIONS.ShowTrackClearanceMode parameter option.
  40. * This parameter controls how to show tracks and vias clearance area.
  41. */
  42. enum TRACE_CLEARANCE_DISPLAY_MODE_T {
  43. DO_NOT_SHOW_CLEARANCE = 0, // Do not show clearance areas
  44. SHOW_CLEARANCE_NEW_TRACKS, /* Show clearance areas only for new track
  45. * during track creation. */
  46. SHOW_CLEARANCE_NEW_TRACKS_AND_VIA_AREAS, /* Show clearance areas only for new track
  47. * during track creation, and shows a via
  48. * clearance area at end of current new
  49. * segment (guide to place a new via
  50. */
  51. SHOW_CLEARANCE_NEW_AND_EDITED_TRACKS_AND_VIA_AREAS,
  52. /* Show clearance for new, moving and
  53. * dragging tracks and vias
  54. */
  55. SHOW_CLEARANCE_ALWAYS /* Show Always clearance areas
  56. * for track and vias
  57. */
  58. };
  59. /**
  60. * Class DISPLAY_OPTIONS
  61. * handles display options like enable/disable some optional drawings.
  62. */
  63. class DISPLAY_OPTIONS
  64. {
  65. public:
  66. bool DisplayPadFill;
  67. bool DisplayViaFill;
  68. bool DisplayPadNum;
  69. bool DisplayPadIsol;
  70. int DisplayModEdge;
  71. int DisplayModText;
  72. bool DisplayPcbTrackFill; /* false = sketch , true = filled */
  73. /// How trace clearances are displayed. @see TRACE_CLEARANCE_DISPLAY_MODE_T.
  74. TRACE_CLEARANCE_DISPLAY_MODE_T ShowTrackClearanceMode;
  75. VIA_DISPLAY_MODE_T m_DisplayViaMode; /* 0 do not show via hole,
  76. * 1 show via hole for non default value
  77. * 2 show all via hole */
  78. bool DisplayPolarCood;
  79. int DisplayZonesMode;
  80. int DisplayNetNamesMode; /* 0 do not show netnames,
  81. * 1 show netnames on pads
  82. * 2 show netnames on tracks
  83. * 3 show netnames on tracks and pads
  84. */
  85. int DisplayDrawItems;
  86. bool ContrastModeDisplay;
  87. public:
  88. DISPLAY_OPTIONS();
  89. };
  90. #endif // PCBSTRUCT_H_