Added selection box for modules.
This commit is contained in:
parent
16437e5d45
commit
cc5c038362
|
@ -1024,3 +1024,9 @@ void MODULE::SetOrientation( double newangle )
|
||||||
CalculateBoundingBox();
|
CalculateBoundingBox();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void MODULE::ViewGetLayers( int aLayers[], int& aCount ) const
|
||||||
|
{
|
||||||
|
aCount = 1;
|
||||||
|
aLayers[0] = ITEM_GAL_LAYER( GP_OVERLAY ); // Selection box
|
||||||
|
}
|
||||||
|
|
|
@ -497,6 +497,9 @@ public:
|
||||||
/// Return the initial comments block or NULL if none, without transfer of ownership.
|
/// Return the initial comments block or NULL if none, without transfer of ownership.
|
||||||
const wxArrayString* GetInitialComments() const { return m_initial_comments; }
|
const wxArrayString* GetInitialComments() const { return m_initial_comments; }
|
||||||
|
|
||||||
|
/// @copydoc VIEW_ITEM::ViewGetLayers()
|
||||||
|
virtual void ViewGetLayers( int aLayers[], int& aCount ) const;
|
||||||
|
|
||||||
#if defined(DEBUG)
|
#if defined(DEBUG)
|
||||||
virtual void Show( int nestLevel, std::ostream& os ) const { ShowDummy( os ); } // override
|
virtual void Show( int nestLevel, std::ostream& os ) const { ShowDummy( os ); } // override
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -219,6 +219,10 @@ bool PCB_PAINTER::Draw( const VIEW_ITEM* aItem, int aLayer )
|
||||||
draw( (DRAWSEGMENT*) aItem );
|
draw( (DRAWSEGMENT*) aItem );
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case PCB_MODULE_T:
|
||||||
|
draw( (MODULE*) aItem );
|
||||||
|
break;
|
||||||
|
|
||||||
case PCB_TEXT_T:
|
case PCB_TEXT_T:
|
||||||
draw( (TEXTE_PCB*) aItem );
|
draw( (TEXTE_PCB*) aItem );
|
||||||
break;
|
break;
|
||||||
|
@ -654,6 +658,21 @@ void PCB_PAINTER::draw( const DRAWSEGMENT* aSegment )
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void PCB_PAINTER::draw( const MODULE* aModule )
|
||||||
|
{
|
||||||
|
// For modules we have to draw a selection box if needed
|
||||||
|
if( aModule->IsSelected() )
|
||||||
|
{
|
||||||
|
BOX2I boundingBox = aModule->ViewBBox();
|
||||||
|
|
||||||
|
m_gal->SetIsStroke( false );
|
||||||
|
m_gal->SetIsFill( true );
|
||||||
|
m_gal->SetFillColor( COLOR4D( 1.0, 1.0, 1.0, 0.5 ) );
|
||||||
|
m_gal->DrawRectangle( boundingBox.GetOrigin(), boundingBox.GetEnd() );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
void PCB_PAINTER::draw( const TEXTE_PCB* aText )
|
void PCB_PAINTER::draw( const TEXTE_PCB* aText )
|
||||||
{
|
{
|
||||||
if( aText->GetText().Length() == 0 )
|
if( aText->GetText().Length() == 0 )
|
||||||
|
|
|
@ -141,6 +141,7 @@ protected:
|
||||||
void draw( const SEGVIA*, int );
|
void draw( const SEGVIA*, int );
|
||||||
void draw( const D_PAD*, int );
|
void draw( const D_PAD*, int );
|
||||||
void draw( const DRAWSEGMENT* );
|
void draw( const DRAWSEGMENT* );
|
||||||
|
void draw( const MODULE* );
|
||||||
void draw( const TEXTE_PCB* );
|
void draw( const TEXTE_PCB* );
|
||||||
void draw( const TEXTE_MODULE*, int );
|
void draw( const TEXTE_MODULE*, int );
|
||||||
void draw( const ZONE_CONTAINER* );
|
void draw( const ZONE_CONTAINER* );
|
||||||
|
|
Loading…
Reference in New Issue