From 6ffcddcb87b3bae20032568873d7ceadeb5b0b21 Mon Sep 17 00:00:00 2001 From: Maciej Suminski Date: Sun, 26 Jan 2014 22:02:48 +0100 Subject: [PATCH] GAL takes into account hidden module text settings. --- pcbnew/class_text_mod.cpp | 39 +++++++++++++++++++++++---------------- 1 file changed, 23 insertions(+), 16 deletions(-) diff --git a/pcbnew/class_text_mod.cpp b/pcbnew/class_text_mod.cpp index fbebde39bd..b8d1392488 100644 --- a/pcbnew/class_text_mod.cpp +++ b/pcbnew/class_text_mod.cpp @@ -417,28 +417,35 @@ EDA_ITEM* TEXTE_MODULE::Clone() const void TEXTE_MODULE::ViewGetLayers( int aLayers[], int& aCount ) const { - switch( m_Type ) + if( m_NoShow ) // Hidden text { - case TEXT_is_REFERENCE: - aLayers[0] = ITEM_GAL_LAYER( MOD_REFERENCES_VISIBLE ); - break; - - case TEXT_is_VALUE: - aLayers[0] = ITEM_GAL_LAYER( MOD_VALUES_VISIBLE ); - break; - - default: - switch( GetParent()->GetLayer() ) + aLayers[0] = ITEM_GAL_LAYER( MOD_TEXT_INVISIBLE ); + } + else + { + switch( m_Type ) { - case LAYER_N_BACK: - aLayers[0] = ITEM_GAL_LAYER( MOD_TEXT_BK_VISIBLE ); // how about SILKSCREEN_N_BACK? + case TEXT_is_REFERENCE: + aLayers[0] = ITEM_GAL_LAYER( MOD_REFERENCES_VISIBLE ); break; - case LAYER_N_FRONT: - aLayers[0] = ITEM_GAL_LAYER( MOD_TEXT_FR_VISIBLE ); // how about SILKSCREEN_N_FRONT? + case TEXT_is_VALUE: + aLayers[0] = ITEM_GAL_LAYER( MOD_VALUES_VISIBLE ); + break; + + default: + switch( GetParent()->GetLayer() ) + { + case LAYER_N_BACK: + aLayers[0] = ITEM_GAL_LAYER( MOD_TEXT_BK_VISIBLE ); // how about SILKSCREEN_N_BACK? + break; + + case LAYER_N_FRONT: + aLayers[0] = ITEM_GAL_LAYER( MOD_TEXT_FR_VISIBLE ); // how about SILKSCREEN_N_FRONT? + break; + } break; } - break; } aCount = 1;