pcbstruct.h 2.76 KB
Newer Older
1 2
/**
 * @file pcbstruct.h
3
 * @brief Classes and definitions used in Pcbnew.
4
 */
5

6 7
#ifndef PCBSTRUCT_H_
#define PCBSTRUCT_H_
dickelbeck's avatar
dickelbeck committed
8

9

10
/// Values for m_DisplayViaMode member:
11
enum VIA_DISPLAY_MODE_T {
dickelbeck's avatar
dickelbeck committed
12 13 14 15
    VIA_HOLE_NOT_SHOW = 0,
    VIA_SPECIAL_HOLE_SHOW,
    ALL_VIA_HOLE_SHOW,
    OPT_VIA_HOLE_END
16 17 18
};


19 20 21 22
/**
 * Enum TRACE_CLEARANCE_DISPLAY_MODE_T
 * is the set of values for DISPLAY_OPTIONS.ShowTrackClearanceMode parameter option.
 * This parameter controls how to show tracks and vias clearance area.
23
 */
24
enum TRACE_CLEARANCE_DISPLAY_MODE_T {
25
    DO_NOT_SHOW_CLEARANCE = 0,                // Do not show clearance areas
26 27 28 29 30 31
    SHOW_CLEARANCE_NEW_TRACKS,                /* Show clearance areas only for new track
                                               * during track creation. */
    SHOW_CLEARANCE_NEW_TRACKS_AND_VIA_AREAS,  /* Show clearance areas only for new track
                                               * during track creation, and shows a via
                                               * clearance area at end of current new
                                               * segment (guide to place a new via
32
                                               */
Roman Bashkov's avatar
Roman Bashkov committed
33 34 35 36
    SHOW_CLEARANCE_NEW_AND_EDITED_TRACKS_AND_VIA_AREAS,
                                                /* Show clearance for new, moving and
                                                 * dragging tracks and vias
                                                 */
37 38 39
    SHOW_CLEARANCE_ALWAYS                      /* Show Always clearance areas
                                                * for track and vias
                                                */
40
};
41

42

43 44 45 46
/**
 * Class DISPLAY_OPTIONS
 * handles display options like enable/disable some optional drawings.
 */
dickelbeck's avatar
dickelbeck committed
47
class DISPLAY_OPTIONS
48 49
{
public:
dickelbeck's avatar
dickelbeck committed
50
    bool DisplayPadFill;
dickelbeck's avatar
dickelbeck committed
51
    bool DisplayViaFill;
dickelbeck's avatar
dickelbeck committed
52 53 54 55 56
    bool DisplayPadNum;
    bool DisplayPadIsol;

    int  DisplayModEdge;
    int  DisplayModText;
57
    bool DisplayPcbTrackFill;     /* false = sketch , true = filled */
58 59 60 61 62 63 64

    /// How trace clearances are displayed.  @see TRACE_CLEARANCE_DISPLAY_MODE_T.
    TRACE_CLEARANCE_DISPLAY_MODE_T  ShowTrackClearanceMode;

    VIA_DISPLAY_MODE_T m_DisplayViaMode;  /* 0 do not show via hole,
                                           * 1 show via hole for non default value
                                           * 2 show all via hole */
dickelbeck's avatar
dickelbeck committed
65 66

    bool DisplayPolarCood;
67
    int  DisplayZonesMode;
charras's avatar
charras committed
68 69 70 71
    int  DisplayNetNamesMode;   /* 0 do not show netnames,
                                 * 1 show netnames on pads
                                 * 2 show netnames on tracks
                                 * 3 show netnames on tracks and pads
72
                                 */
charras's avatar
charras committed
73

dickelbeck's avatar
dickelbeck committed
74 75
    int  DisplayDrawItems;
    bool ContrastModeDisplay;
76 77

public:
dickelbeck's avatar
dickelbeck committed
78
    DISPLAY_OPTIONS();
79 80
};

81
#endif // PCBSTRUCT_H_