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.
|
|
/***************************************//* Markers: used to show a drc problem *//***************************************/
#ifndef CLASS_MARKER_PCB_H
#define CLASS_MARKER_PCB_H
#include "base_struct.h"
#include "drc_stuff.h"
class MARKER_PCB : public BOARD_ITEM, public MARKER_BASE{
public:
MARKER_PCB( BOARD_ITEM* aParent );
/**
* Constructor * @param aErrorCode The categorizing identifier for an error * @param aMarkerPos The position of the MARKER_PCB on the BOARD * @param aText Text describing the first of two objects * @param aPos The position of the first of two objects * @param bText Text describing the second of the two conflicting objects * @param bPos The position of the second of two objects */ MARKER_PCB( int aErrorCode, const wxPoint& aMarkerPos, const wxString& aText, const wxPoint& aPos, const wxString& bText, const wxPoint& bPos );
/**
* Constructor * @param aErrorCode The categorizing identifier for an error * @param aMarkerPos The position of the MARKER_PCB on the BOARD * @param aText Text describing the object * @param aPos The position of the object */ MARKER_PCB( int aErrorCode, const wxPoint& aMarkerPos, const wxString& aText, const wxPoint& aPos );
~MARKER_PCB();
/**
* Function Move * move this object. * @param const wxPoint& aMoveVector - the move vector for this object. */ virtual void Move(const wxPoint& aMoveVector) { m_Pos += aMoveVector; }
/**
* Function Rotate * Rotate this object. * @param const wxPoint& aRotCentre - the rotation point. * @param aAngle - the rotation angle in 0.1 degree. */ virtual void Rotate(const wxPoint& aRotCentre, int aAngle);
/**
* Function Flip * Flip this object, i.e. change the board side for this object * @param const wxPoint& aCentre - the rotation point. */ virtual void Flip(const wxPoint& aCentre );
/** Function Draw
*/ void Draw( WinEDA_DrawPanel* aPanel, wxDC* aDC, int aDrawMode, const wxPoint& aOffset = ZeroOffset ) { DrawMarker( aPanel, aDC, aDrawMode, aOffset ); }
/**
* Function GetPosition * returns the position of this MARKER_PCB. */ wxPoint& GetPosition() { return (wxPoint&) m_Pos; }
/** Function HitTest
* @return true if the point aPosRef is within item area * @param aPosRef = a wxPoint to test */ bool HitTest( const wxPoint& aPosRef ) { return HitTestMarker( aPosRef ); }
/**
* Function DisplayInfo * has knowledge about the frame and how and where to put status information * about this object into the frame's message panel. * @param frame A WinEDA_DrawFrame in which to print status information. */ void DisplayInfo( WinEDA_DrawFrame* frame );
/**
* Function Save * writes the data structures for this object out to a FILE in "*.brd" format. * @param aFile The FILE to write to. * @return bool - true if success writing else false. */ bool Save( FILE* aFile ) const { // not implemented, this is here to satisfy BOARD_ITEM::Save()
// "pure" virtual-ness
return true; }};
#endif // CLASS_MARKER_PCB_H
|