void mitk::OverlayManager::UpdateOverlays(mitk::BaseRenderer* baseRenderer) { OverlaySet::iterator it; for ( it=m_OverlaySet.begin() ; it != m_OverlaySet.end(); it++ ) { (*it)->Update(baseRenderer); } UpdateLayouts(baseRenderer); }
void PCB_LAYER_WIDGET::ReFillRender() { BOARD* board = myframe->GetBoard(); auto settings = board->GetDesignSettings(); ClearRenderRows(); // Add "Items" tab rows to LAYER_WIDGET, after setting color and checkbox state. // Because s_render_rows is created static, we must explicitly call // wxGetTranslation for texts which are internationalized (tool tips // and item names) for( unsigned row=0; row<arrayDim(s_render_rows); ++row ) { LAYER_WIDGET::ROW renderRow = s_render_rows[row]; if( m_fp_editor_mode && !isAllowedInFpMode( renderRow.id ) ) continue; if( renderRow.id == LAYER_VIA_MICROVIA && !settings.m_MicroViasAllowed ) continue; if( renderRow.id == LAYER_VIA_BBLIND && !settings.m_BlindBuriedViaAllowed ) continue; if( !renderRow.spacer ) { renderRow.tooltip = wxGetTranslation( s_render_rows[row].tooltip ); renderRow.rowName = wxGetTranslation( s_render_rows[row].rowName ); if( renderRow.color != COLOR4D::UNSPECIFIED ) // does this row show a color? { // this window frame must have an established BOARD, i.e. after SetBoard() renderRow.color = myframe->Settings().Colors().GetItemColor( static_cast<GAL_LAYER_ID>( renderRow.id ) ); } renderRow.state = board->IsElementVisible( static_cast<GAL_LAYER_ID>( renderRow.id ) ); } AppendRenderRow( renderRow ); } UpdateLayouts(); }
void PCB_LAYER_WIDGET::ReFill() { BOARD* brd = myframe->GetBoard(); LSET enabled = brd->GetEnabledLayers(); ClearLayerRows(); wxString dsc; // show all coppers first, with front on top, back on bottom, then technical layers for( LSEQ cu_stack = enabled.CuStack(); cu_stack; ++cu_stack ) { PCB_LAYER_ID layer = *cu_stack; switch( layer ) { case F_Cu: dsc = _( "Front copper layer" ); break; case B_Cu: dsc = _( "Back copper layer" ); break; default: dsc = _( "Inner copper layer" ); break; } AppendLayerRow( LAYER_WIDGET::ROW( brd->GetLayerName( layer ), layer, myframe->Settings().Colors().GetLayerColor( layer ), dsc, true ) ); if( m_fp_editor_mode && LSET::ForbiddenFootprintLayers().test( layer ) ) { getLayerComp( GetLayerRowCount()-1, COLUMN_COLOR_LYRNAME )->Enable( false ); getLayerComp( GetLayerRowCount()-1, COLUMN_COLORBM )->SetToolTip( wxEmptyString ); } } UpdateLayouts(); // technical layers are shown in this order: // Because they are static, wxGetTranslation must be explicitly // called for tooltips. static const struct { PCB_LAYER_ID layerId; wxString tooltip; } non_cu_seq[] = { { F_Adhes, _( "Adhesive on board's front" ) }, { B_Adhes, _( "Adhesive on board's back" ) }, { F_Paste, _( "Solder paste on board's front" ) }, { B_Paste, _( "Solder paste on board's back" ) }, { F_SilkS, _( "Silkscreen on board's front" ) }, { B_SilkS, _( "Silkscreen on board's back" ) }, { F_Mask, _( "Solder mask on board's front" ) }, { B_Mask, _( "Solder mask on board's back" ) }, { Dwgs_User, _( "Explanatory drawings" ) }, { Cmts_User, _( "Explanatory comments" ) }, { Eco1_User, _( "User defined meaning" ) }, { Eco2_User, _( "User defined meaning" ) }, { Edge_Cuts, _( "Board's perimeter definition" ) }, { Margin, _( "Board's edge setback outline" ) }, { F_CrtYd, _( "Footprint courtyards on board's front" ) }, { B_CrtYd, _( "Footprint courtyards on board's back" ) }, { F_Fab, _( "Footprint assembly on board's front" ) }, { B_Fab, _( "Footprint assembly on board's back" ) } }; for( unsigned i=0; i<arrayDim( non_cu_seq ); ++i ) { PCB_LAYER_ID layer = non_cu_seq[i].layerId; if( !enabled[layer] ) continue; AppendLayerRow( LAYER_WIDGET::ROW( brd->GetLayerName( layer ), layer, myframe->Settings().Colors().GetLayerColor( layer ), wxGetTranslation( non_cu_seq[i].tooltip ), true ) ); if( m_fp_editor_mode && LSET::ForbiddenFootprintLayers().test( layer ) ) { getLayerComp( GetLayerRowCount()-1, COLUMN_COLOR_LYRNAME )->Enable( false ); getLayerComp( GetLayerRowCount()-1, COLUMN_COLORBM )->SetToolTip( wxEmptyString ); } } }
void LAYER_WIDGET::AppendRenderRow( const ROW& aRow ) { int nextRow = GetRenderRowCount(); insertRenderRow( nextRow, aRow ); UpdateLayouts(); }