Quarterly report pursuant to Section 13 or 15(d)

Geographic Information (Details)

v2.4.1.9
Geographic Information (Details) (USD $)
In Thousands, unless otherwise specified
3 Months Ended 9 Months Ended
Dec. 31, 2014
Dec. 31, 2013
Dec. 31, 2014
segment
Dec. 31, 2013
Sales by geographic area:        
Revenues $ 87,622us-gaap_SalesRevenueNet $ 71,465us-gaap_SalesRevenueNet $ 234,322us-gaap_SalesRevenueNet $ 209,848us-gaap_SalesRevenueNet
Operating income        
Stock compensation expense (930)us-gaap_AllocatedShareBasedCompensationExpense (663)us-gaap_AllocatedShareBasedCompensationExpense (2,302)us-gaap_AllocatedShareBasedCompensationExpense (1,572)us-gaap_AllocatedShareBasedCompensationExpense
Public company costs (312)thr_PublicCompanyCosts (293)thr_PublicCompanyCosts    
Operating income (loss) 23,219us-gaap_OperatingIncomeLoss 17,758us-gaap_OperatingIncomeLoss 54,451us-gaap_OperatingIncomeLoss 44,266us-gaap_OperatingIncomeLoss
Number of Reportable Segments     1us-gaap_NumberOfReportableSegments  
United States        
Sales by geographic area:        
Revenues 35,304us-gaap_SalesRevenueNet
/ us-gaap_StatementGeographicalAxis
= country_US
22,921us-gaap_SalesRevenueNet
/ us-gaap_StatementGeographicalAxis
= country_US
84,044us-gaap_SalesRevenueNet
/ us-gaap_StatementGeographicalAxis
= country_US
67,759us-gaap_SalesRevenueNet
/ us-gaap_StatementGeographicalAxis
= country_US
Operating income        
Operating income (loss) 9,364us-gaap_OperatingIncomeLoss
/ us-gaap_StatementGeographicalAxis
= country_US
5,306us-gaap_OperatingIncomeLoss
/ us-gaap_StatementGeographicalAxis
= country_US
18,272us-gaap_OperatingIncomeLoss
/ us-gaap_StatementGeographicalAxis
= country_US
9,645us-gaap_OperatingIncomeLoss
/ us-gaap_StatementGeographicalAxis
= country_US
Canada        
Sales by geographic area:        
Revenues 29,088us-gaap_SalesRevenueNet
/ us-gaap_StatementGeographicalAxis
= country_CA
23,282us-gaap_SalesRevenueNet
/ us-gaap_StatementGeographicalAxis
= country_CA
79,133us-gaap_SalesRevenueNet
/ us-gaap_StatementGeographicalAxis
= country_CA
74,450us-gaap_SalesRevenueNet
/ us-gaap_StatementGeographicalAxis
= country_CA
Operating income        
Operating income (loss) 11,021us-gaap_OperatingIncomeLoss
/ us-gaap_StatementGeographicalAxis
= country_CA
8,716us-gaap_OperatingIncomeLoss
/ us-gaap_StatementGeographicalAxis
= country_CA
28,365us-gaap_OperatingIncomeLoss
/ us-gaap_StatementGeographicalAxis
= country_CA
26,616us-gaap_OperatingIncomeLoss
/ us-gaap_StatementGeographicalAxis
= country_CA
Europe        
Sales by geographic area:        
Revenues 14,316us-gaap_SalesRevenueNet
/ us-gaap_StatementGeographicalAxis
= us-gaap_EuropeMember
16,824us-gaap_SalesRevenueNet
/ us-gaap_StatementGeographicalAxis
= us-gaap_EuropeMember
43,968us-gaap_SalesRevenueNet
/ us-gaap_StatementGeographicalAxis
= us-gaap_EuropeMember
44,317us-gaap_SalesRevenueNet
/ us-gaap_StatementGeographicalAxis
= us-gaap_EuropeMember
Operating income        
Operating income (loss) 2,789us-gaap_OperatingIncomeLoss
/ us-gaap_StatementGeographicalAxis
= us-gaap_EuropeMember
3,453us-gaap_OperatingIncomeLoss
/ us-gaap_StatementGeographicalAxis
= us-gaap_EuropeMember
6,121us-gaap_OperatingIncomeLoss
/ us-gaap_StatementGeographicalAxis
= us-gaap_EuropeMember
7,138us-gaap_OperatingIncomeLoss
/ us-gaap_StatementGeographicalAxis
= us-gaap_EuropeMember
Asia        
Sales by geographic area:        
Revenues 8,914us-gaap_SalesRevenueNet
/ us-gaap_StatementGeographicalAxis
= us-gaap_AsiaMember
8,438us-gaap_SalesRevenueNet
/ us-gaap_StatementGeographicalAxis
= us-gaap_AsiaMember
27,177us-gaap_SalesRevenueNet
/ us-gaap_StatementGeographicalAxis
= us-gaap_AsiaMember
23,322us-gaap_SalesRevenueNet
/ us-gaap_StatementGeographicalAxis
= us-gaap_AsiaMember
Operating income        
Operating income (loss) 1,287us-gaap_OperatingIncomeLoss
/ us-gaap_StatementGeographicalAxis
= us-gaap_AsiaMember
1,239us-gaap_OperatingIncomeLoss
/ us-gaap_StatementGeographicalAxis
= us-gaap_AsiaMember
5,020us-gaap_OperatingIncomeLoss
/ us-gaap_StatementGeographicalAxis
= us-gaap_AsiaMember
3,381us-gaap_OperatingIncomeLoss
/ us-gaap_StatementGeographicalAxis
= us-gaap_AsiaMember
Unallocated        
Operating income        
Stock compensation expense (930)us-gaap_AllocatedShareBasedCompensationExpense
/ us-gaap_StatementGeographicalAxis
= us-gaap_MaterialReconcilingItemsMember
(663)us-gaap_AllocatedShareBasedCompensationExpense
/ us-gaap_StatementGeographicalAxis
= us-gaap_MaterialReconcilingItemsMember
(2,302)us-gaap_AllocatedShareBasedCompensationExpense
/ us-gaap_StatementGeographicalAxis
= us-gaap_MaterialReconcilingItemsMember
(1,572)us-gaap_AllocatedShareBasedCompensationExpense
/ us-gaap_StatementGeographicalAxis
= us-gaap_MaterialReconcilingItemsMember
Public company costs     $ (1,025)thr_PublicCompanyCosts
/ us-gaap_StatementGeographicalAxis
= us-gaap_MaterialReconcilingItemsMember
$ (942)thr_PublicCompanyCosts
/ us-gaap_StatementGeographicalAxis
= us-gaap_MaterialReconcilingItemsMember