XML 110 R51.htm IDEA: XBRL DOCUMENT v2.4.1.9
Restructuring and Other Charges Roll Forward (Details) (USD $)
12 Months Ended
Dec. 31, 2014
Dec. 31, 2013
Dec. 31, 2012
Restructuring Reserve [Roll Forward]      
Restructuring reserve, beginning balance $ 1,700,000us-gaap_RestructuringReserve $ 3,000,000us-gaap_RestructuringReserve $ 4,300,000us-gaap_RestructuringReserve
Restructuring charges 8,515,000us-gaap_RestructuringCharges 5,344,000us-gaap_RestructuringCharges 2,787,000us-gaap_RestructuringCharges
Asset disposals (2,100,000)us-gaap_RestructuringReserveAccrualAdjustment    
Cash payments (5,300,000)us-gaap_PaymentsForRestructuring (6,600,000)us-gaap_PaymentsForRestructuring (4,100,000)us-gaap_PaymentsForRestructuring
Restructuring reserve, ending balance 2,800,000us-gaap_RestructuringReserve 1,700,000us-gaap_RestructuringReserve 3,000,000us-gaap_RestructuringReserve
North American Segment      
Restructuring Reserve [Roll Forward]      
Restructuring reserve, beginning balance 0us-gaap_RestructuringReserve
/ us-gaap_StatementBusinessSegmentsAxis
= msa_NorthAmericanSegmentMember
300,000us-gaap_RestructuringReserve
/ us-gaap_StatementBusinessSegmentsAxis
= msa_NorthAmericanSegmentMember
0us-gaap_RestructuringReserve
/ us-gaap_StatementBusinessSegmentsAxis
= msa_NorthAmericanSegmentMember
Restructuring charges 0us-gaap_RestructuringCharges
/ us-gaap_StatementBusinessSegmentsAxis
= msa_NorthAmericanSegmentMember
0us-gaap_RestructuringCharges
/ us-gaap_StatementBusinessSegmentsAxis
= msa_NorthAmericanSegmentMember
1,500,000us-gaap_RestructuringCharges
/ us-gaap_StatementBusinessSegmentsAxis
= msa_NorthAmericanSegmentMember
Asset disposals 0us-gaap_RestructuringReserveAccrualAdjustment
/ us-gaap_StatementBusinessSegmentsAxis
= msa_NorthAmericanSegmentMember
   
Cash payments 0us-gaap_PaymentsForRestructuring
/ us-gaap_StatementBusinessSegmentsAxis
= msa_NorthAmericanSegmentMember
(300,000)us-gaap_PaymentsForRestructuring
/ us-gaap_StatementBusinessSegmentsAxis
= msa_NorthAmericanSegmentMember
(1,200,000)us-gaap_PaymentsForRestructuring
/ us-gaap_StatementBusinessSegmentsAxis
= msa_NorthAmericanSegmentMember
Restructuring reserve, ending balance 0us-gaap_RestructuringReserve
/ us-gaap_StatementBusinessSegmentsAxis
= msa_NorthAmericanSegmentMember
0us-gaap_RestructuringReserve
/ us-gaap_StatementBusinessSegmentsAxis
= msa_NorthAmericanSegmentMember
300,000us-gaap_RestructuringReserve
/ us-gaap_StatementBusinessSegmentsAxis
= msa_NorthAmericanSegmentMember
European Segment      
Restructuring Reserve [Roll Forward]      
Restructuring reserve, beginning balance 1,700,000us-gaap_RestructuringReserve
/ us-gaap_StatementBusinessSegmentsAxis
= msa_EuropeanSegmentMember
2,500,000us-gaap_RestructuringReserve
/ us-gaap_StatementBusinessSegmentsAxis
= msa_EuropeanSegmentMember
4,300,000us-gaap_RestructuringReserve
/ us-gaap_StatementBusinessSegmentsAxis
= msa_EuropeanSegmentMember
Restructuring charges 4,800,000us-gaap_RestructuringCharges
/ us-gaap_StatementBusinessSegmentsAxis
= msa_EuropeanSegmentMember
3,000,000us-gaap_RestructuringCharges
/ us-gaap_StatementBusinessSegmentsAxis
= msa_EuropeanSegmentMember
1,100,000us-gaap_RestructuringCharges
/ us-gaap_StatementBusinessSegmentsAxis
= msa_EuropeanSegmentMember
Asset disposals (400,000)us-gaap_RestructuringReserveAccrualAdjustment
/ us-gaap_StatementBusinessSegmentsAxis
= msa_EuropeanSegmentMember
   
Cash payments (3,500,000)us-gaap_PaymentsForRestructuring
/ us-gaap_StatementBusinessSegmentsAxis
= msa_EuropeanSegmentMember
(3,800,000)us-gaap_PaymentsForRestructuring
/ us-gaap_StatementBusinessSegmentsAxis
= msa_EuropeanSegmentMember
(2,900,000)us-gaap_PaymentsForRestructuring
/ us-gaap_StatementBusinessSegmentsAxis
= msa_EuropeanSegmentMember
Restructuring reserve, ending balance 2,600,000us-gaap_RestructuringReserve
/ us-gaap_StatementBusinessSegmentsAxis
= msa_EuropeanSegmentMember
1,700,000us-gaap_RestructuringReserve
/ us-gaap_StatementBusinessSegmentsAxis
= msa_EuropeanSegmentMember
2,500,000us-gaap_RestructuringReserve
/ us-gaap_StatementBusinessSegmentsAxis
= msa_EuropeanSegmentMember
International Segment      
Restructuring Reserve [Roll Forward]      
Restructuring reserve, beginning balance 0us-gaap_RestructuringReserve
/ us-gaap_StatementBusinessSegmentsAxis
= msa_InternationalSegmentMember
200,000us-gaap_RestructuringReserve
/ us-gaap_StatementBusinessSegmentsAxis
= msa_InternationalSegmentMember
0us-gaap_RestructuringReserve
/ us-gaap_StatementBusinessSegmentsAxis
= msa_InternationalSegmentMember
Restructuring charges 3,700,000us-gaap_RestructuringCharges
/ us-gaap_StatementBusinessSegmentsAxis
= msa_InternationalSegmentMember
2,300,000us-gaap_RestructuringCharges
/ us-gaap_StatementBusinessSegmentsAxis
= msa_InternationalSegmentMember
200,000us-gaap_RestructuringCharges
/ us-gaap_StatementBusinessSegmentsAxis
= msa_InternationalSegmentMember
Asset disposals (1,700,000)us-gaap_RestructuringReserveAccrualAdjustment
/ us-gaap_StatementBusinessSegmentsAxis
= msa_InternationalSegmentMember
   
Cash payments (1,800,000)us-gaap_PaymentsForRestructuring
/ us-gaap_StatementBusinessSegmentsAxis
= msa_InternationalSegmentMember
(2,500,000)us-gaap_PaymentsForRestructuring
/ us-gaap_StatementBusinessSegmentsAxis
= msa_InternationalSegmentMember
0us-gaap_PaymentsForRestructuring
/ us-gaap_StatementBusinessSegmentsAxis
= msa_InternationalSegmentMember
Restructuring reserve, ending balance $ 200,000us-gaap_RestructuringReserve
/ us-gaap_StatementBusinessSegmentsAxis
= msa_InternationalSegmentMember
$ 0us-gaap_RestructuringReserve
/ us-gaap_StatementBusinessSegmentsAxis
= msa_InternationalSegmentMember
$ 200,000us-gaap_RestructuringReserve
/ us-gaap_StatementBusinessSegmentsAxis
= msa_InternationalSegmentMember