class Program -> met 'main' methode die hoofdvenster en tabbladen aanmaakt
	JFrame _frame = new JFrame(title); 
	ImportDatabase.getPreferences();
	ImportDatabase.getParameters();
	public static void main(String[] args) {
		EventQueue.invokeLater(new Runnable() {			
			@Override
			public void run() {
				Program program = new Program();
				Program.getFrame().setVisible(true);
			}
		});
	}
----------------------------------------------------------------------------------
class Preferences	-> namen van bestanden, kleuren in tabellen, nu hard gecodeerd
class Parameters	-> parameters die kunnen aangepast worden door de gebruiker
class Dossier	-> dossiernr, klant, ventilatietype
----------------------------------------------------------------------------------
class Ventilatie
	- met tracénet toevoer en afvoer
	- met lijst van ruimten
	- met meetresultaten voor toevoer, afvoer en recirculatie
enum FlowType -> deel van de ventilatie toevoer, afvoer .. IN,OUT,ALL,RECIRC
class Trace
	tracé met verwijzingen naar componenten
class TraceNet
	- met componentlijst en flowtype
	- met een lijst van tracés
	- met methoden voor het opstellen van het tracé
	- met de methoden voor het kiezen van componenten en berekening van debiet en drukval
class Silencevent
	- met methode voor het berekenen van de akoestiek
----------------------------------------------------------------------------------
enum VRoomType	-> type ruimte: LIVING,SLEEP,WC ... VALVE,RECIRC
class SimpleVRoom	-> een ruimte met type, naam, opp, volume, ontwerp debieten
class VRoom extends SimpleVRoom
	- ruimte met geëiste debieten, advies diameters van buizen, totale drukval
	- een ruimte kan een ventiel (_component) hebben, of kan deelruimten (type VALVE) hebben 
	met elke een ventiel, of een recirculatie (type RECIRC),
	de deelruimten hebben dan een verwijzing naar de hoofdruimte (_room)
	- een ruimte kan ook bij een andere ruimte aangesloten zijn (_roomCont)
	- een ruimte kan ook een akoestische band hebben (_band) en een geluidsterkte (_decibel)
	
---------------------------------------------------------------------------------
enum VComponentType	-> type component: KANAAL, BOCHT,T_STUK,VENTIEL ...
class VLine3D	-> lijn met 3D begin en eindpunt
class VComponent extends VLine3D
	- component met type, merk, naam, diameters, debiet, flowtype ...
	- een component (ventiel) kan ook een verwijzing naar een ruimte hebben (_room)
	- een ruimte kan ook een akoestische band hebben (_band)
	
class BComponent extends VComponent
	- bocht met werkelijke en berekende hoek
	- met verwijzing naar de aangesloten buizen
	
class TComponent extends VComponent
	- T-stuk  met werkelijke en berekende hoek, diameter van de laterale buis
	- met verwijzing naar de aangesloten buizen
	
class ColComponent extends VComponent
	- collector met een array van collector tracés
	class CollectorTrace -> collectorventiel, flexibel, overgang, eindventiel, ruimte ...
	
class EComponent extends VComponent
	- ventiel met C en N waarden, met de positie van het ventiel in de ruimte
	
class OComponent extends VComponent
	- 'passieve' component: doorstroom, toevoer of afvoeropening met reeks eigenschappen in de database
--------------------------------------------------------------------------------------
class AdjustData
	Data voor de meet- en afstellingsresultaten van de ventielen
class AdjustRoom
	hulpklasse om meetresultaten en berkeningen op te slaan
enum AdjustStep	-> instantie voor elke stap bij het afstellen van de vantielen

class AdjustPanel extends TabPanel
---------------------------------------------------------------------------------------
class AcousticsBand
	- array van 8 waarden in decibel (akoestische geluidsbanden) + een globale
class AcousticsValues
	- 5 waarden i.v.m. akoestiek voor ventilatoren
class Acoustics
	- Opslag van de akoestische gegevens: 
	- octaafband uit de database (tussenschakeldemping), berekende banden voor geluidproductie en reductie
	- voor ventilatoren: banden voor spectrumcorrectie toevoer en afvoer, waarden voor toevoer en afvoer
------------------------------------------------------------------------------------------	 
abstract class TabPanel extends JPanel
	- hiervan leiden alle tabbladen af
class DossierPanel extends TabPanel
	- tabblad met gegevens voor het dossier
class ParamPanel extends TabPanel
	- tabblad met parameters
class RoomPanel extends TabPanel
	- tabblad voor het ingeven van ruimten en debieten
class PassivePanel extends TabPanel
	- tabblad voor het ingeven van passieve componenten
class FlowInPanel extends TabPanel
	- tabblad om de tekening van het leidingnet te maken voor toevoer
class FlowOutPanel extends TabPanel
	- tabblad om de tekening van het leidingnet te maken voor afvoer
class AcousticsPanel extends TabPanel
	- tabblad voor het ingeven van volumes van ruimten en plaats van de ventielen
class DatabasePanel extends TabPanel
	- tabblad met database voor aktieve componenten en één voor passieve componenten
class AdjustPanel extends TabPanel
	- tabblad voor het ingeven en berekenen van de debietmeting, één voor toevoer, één voor afvoer
class RapportPanel extends TabPanel
	- tabblad voor het ingeven van rapport van de metingen
class OrderlistPanel extends TabPanel
	- tabblad met bestellijst: lijst met totalen van de componenten en handmatig toe te voegen componenten
class ComponentlistPanel extends TabPanel
	- tabblad met stuklijst met alle componenten van toevoer, afvoer
class LogPanel extends TabPanel
	- tabblad waarin de logging wordt weergegeven
--------------------------------------------------------------------------------------------
class GridPanel extends JPanel
	- het panel om het leidingnet te tekenen, onderdeel van FlowInPanel en FlowOutPanel
	- met methoden om met de muis lijnen te trekken en componenten te selecteren
	- met een methode drawComponents: via een lus wordt elke component getekend 
		met de methode 'draw' van elke component
class PropertiesPanel extends JPanel
	- het panel om de eigenschappen van de componenten te tonen, onderdeel van FlowInPanel en FlowOutPanel
--------------------------------------------------------------------------------------------
class MyTable extends JTable
	- hiervan leiden alle tabellen in de tabbladen af
	- Belangrijk is het overschrijven van 'editCellAtt' zodat bij het aanklikken van een 
 		cel de aanwezige tekst wordt geselecteerd, zodat die overschreven wordt bij het typen
class RoomTable extends MyTable
	- de tabel voor ruimten in het tabblad 'Debieten'
class PassiveTable extends MyTable
	- de tabellen voor in het ingeven van recirculatie specificatie in het tabblad 'Passief'
	class PassiveDOTable extends PassiveTable
		- tabel voor doorstroomopeningen
	class PassiveRTOTable extends PassiveTable
		- tabel voor regelbare toevoeropeningen
	class PassiveRAOTable extends PassiveTable
		- tabel voor regelbare afvoeropeningen
class AcousticsTable  extends MyTable
	- de tabel voor de ruimten in het tabblad 'Akoestiek'
class AcousticsValveTable  extends MyTable
	- de tabel voor de ventielen in het tabblad 'Akoestiek'
class AdjustTable  extends MyTable
	- de tabel om de berekeningen en metingen bij het afstellen te visualiseren in het tabblad 'Afstelling toevoer' en 'Afstelling afvoer'
class AdjustVentilatorTable extends JTable
	- de tabel voor de ventilatorafstelling in het tabblad 'Afstelling toevoer' en 'Afstelling afvoer'
class OrderlistTable  extends MyTable
	- de tabel voor het tabblad 'Bestellijst'
class ComponentlistTable  extends MyTable
	- de tabel voor het tabblad 'Stuklijst'
class DatabaseTable extends MyTable
	class DatabaseActiveTable extends DatabaseTable
		- tabel voor het tabblad 'Databank kanaalcomponenten'
	class DatabasePassiveTable extends DatabaseTable
		- tabel voor het tabblad 'Databank passieve componenten'
	class DatabaseAcousticTable extends DatabaseTable
		- tabel voor het tabblad 'Databank akoestiek'
---------------------------------------------------------------------------------
class ImportDatabase
	- met static methoden voor het importeren van componenten voor de database
		en voorkeuren (parameters en preferences)
class ExportDatabase
	- met methoden voor het exporteren van wijzigingen in de database in externe bestanden
		en parameters en preferences
class ImportVentilationFile
	- met methode voor het importeren van een ven. bestand
class ExportVentilationFile
	- met methode voor het exporteren van een ven. bestand
--------------------------------------------------------------------------------------
class VGM
	- algemene static methoden voor het correct ophalen van gegevens uit input-velden
	- algemene static methoden voor het weergeven van gegevens in bepaald formaat
class IGM
	- algemene static methoden voor ophalen van gegevens uit tekstbestanden bij import
class VCI
	- Ventilation Column Indexen: deze hulpklasse geeft aan alle properties een index 
		a.h.v. de kolomindex uit de bestanden die worden geïmporteerd
	- ook gebruikt voor de kolomnamen van tabellen

---------------------------------------------------------------------------------
abstract class AbstractPrint
	- hiervan leiden alle printklassen af
	- met de abstracte methode draw die in de verschillende afgeleide klassen wordt ingevuld
	- met de methode getPrintPreview
class RoomPrint extends AbstractPrint
	- voor het printen van de gegevens uit het tabblad 'Debieten'
class AcousticsPrint extends AbstractPrint
	- voor het printen van de gegevens uit het tabblad 'Akoestiek'
class FlowPrint extends AbstractPrint
	- voor het printen van het schema uit het tabblad 'Toevoer' en 'Afvoer'
class AdjustPrint extends AbstractPrint
	- voor het printen van de gegevens uit het tabblad 'Afstelling toevoer' en 'Afstelling afvoer'
class OrderListPrint extends AbstractPrint
	- voor het printen van de tabel uit het tabblad 'Bestellijst'
class RapportPrint extends AbstractPrint
	- voor het printen van de gegevens uit het tabblad 'Meetrapport'
class PreviewDialog extends JDialog
	- preview dialoogvenster voor de verschillende prints
-----------------------------------------------------------------------------------
enum Edit	-> lijst met identifiërs voor de verschillende ongedaan-maak acties
class EditData	-> voor het opslaan van ongedaan-maak data
abstract class UndoList
	- hiervan leiden undo-klassen af
	- met methode addUndo, undo en redo
	- met abstracte methoden getUndo en applyRedo
	- met array voor EditData
class RoomUndoList extends UndoList
	- voor ongedaan-maak acties voor het tabblad 'Debieten'
class FlowUndoList extends UndoList
	- voor ongedaan-maak acties voor het tabblad 'Toevoer' en 'Afvoer'
class DatabaseUndoList extends UndoList
	- voor ongedaan-maak acties voor het tabbladen 'Database ...'
class ParamUndoList extends UndoList
	- voor ongedaan-maak acties voor het tabblad 'Parameters'
class RapportUndoList extends UndoList
	- voor ongedaan-maak acties voor het tabblad 'Meetrapport'
class AdjustUndoList extends UndoList
	- voor ongedaan-maak acties voor het tabblad 'Afstelling toevoer' en 'Afstelling afvoer'
--------------------------------------------------------------------------------------
class Lang1, Lang2, Lang3, Lang4, Lang5
	- voor het importeren van tekst, Nederlands of Frans, uit de tekstbestanden
Language1.properties ... Languages5.properties
	- tekstbestanden voor tekst in het programma
database.txt
	- csv-bestand met aktieve componenten voor de database 
database_passive.txt
	- csv-bestand met passieve componenten voor de database 
database_acoustics.txt
	- csv-bestand met akoestische gegevens voor componenten voor de database 
lang.txt
	- bepaald de versie van het programma en de taal
	- versie '2.0' en '2.1' zijn 2 versies van de akoestische berekeningen

	