TEditableVarList = class      
	// Koristiti kad treba privremena lista varijabli
	// npr za spremanje u file ili čitanje iz filea
	// list:=TEditableVarList.Create(nil)
    Constructor create(Aparent:tobject);
	// uništavanje vlastite liste		
    Destructor Destroy; override;
	// klasika
    Procedure Kopiraj(source:TEditableVarList);
	// dodaje varijablu
    Procedure Add(aEditVar:TEditVar);
	// uklanja varijablu ali ju ne uništava		
    Procedure Remove(aEditVar:TEditVar);
	// uklanja i uništava varijablu
    Procedure RemoveAndFree(Index:integer);
	// uništava sve varijable
    Procedure Clear; override;
	// sprema file
    Procedure SaveToFile(const FileName: string); override;
	// čita file 
	// čitanje prvo uništava varijable ako ih ima
    Procedure LoadFromFile(const FileName: string); override;
	// sortira varijable po kategoriji
    Procedure SortByCategory;
	// vrača listu varijabli koje imaju traženu kategoriju
	// prvo napravi SortByCategory;
    Function GetCategoryVar(aValue:string):tlist;
	// jedna varijabla u listi
	// aVar := lista.EditVar[i];
    Property EditVar[index:integer]:TEditVar;
	// broj varijabli u listi
	Property Count:Integer;
end;