private void fillTreeView(Gtk.TreeView tv, TreeStore store, bool showContacts, bool showEncoder)
{
string filterName = "";
if(entry_search_filter.Text.ToString().Length > 0)
filterName = entry_search_filter.Text.ToString();
SqliteSessionSwitcher.DatabaseType databaseType;
if (type == WindowType.LOAD_SESSION) {
databaseType = SqliteSessionSwitcher.DatabaseType.DEFAULT;
} else {
databaseType = SqliteSessionSwitcher.DatabaseType.SPECIFIC;
}
SqliteSessionSwitcher sessionSwitcher = new SqliteSessionSwitcher (databaseType, import_file_path);
string [] mySessions = sessionSwitcher.SelectAllSessions(filterName); //returns a string of values separated by ':'
foreach (string session in mySessions) {
string [] myStringFull = session.Split(new char[] {':'});
//don't show any text at sport, speciallity and level if it's undefined
string mySport = "";
if (myStringFull[4] != Catalog.GetString(Constants.SportUndefined))
mySport = Catalog.GetString(myStringFull[4]);
string mySpeciallity = ""; //done also because Undefined has "" as name and crashes with gettext
if (myStringFull[5] != "")
mySpeciallity = Catalog.GetString(myStringFull[5]);
string myLevel = "";
if (myStringFull[6] != Catalog.GetString(Constants.LevelUndefined))
myLevel = Catalog.GetString(myStringFull[6]);
if(showContacts && showEncoder)
store.AppendValues (myStringFull[0], myStringFull[1],
myStringFull[2],
myStringFull[3], //session date
myStringFull[8], //number of jumpers x session
mySport, //personsSport
mySpeciallity, //personsSpeciallity
myLevel, //personsLevel
myStringFull[9], //number of jumps x session
myStringFull[10], //number of jumpsRj x session
myStringFull[11], //number of runs x session
myStringFull[12], //number of runsInterval x session
myStringFull[13], //number of reaction times x session
myStringFull[14], //number of pulses x session
myStringFull[15], //number of multiChronopics x session
myStringFull[16], //number of encoder signal x session
myStringFull[17], //number of encoder curve x session
myStringFull[7] //description of session
);
else if(showContacts && ! showEncoder)
store.AppendValues (myStringFull[0], myStringFull[1],
myStringFull[2],
myStringFull[3], //session date
myStringFull[8], //number of jumpers x session
mySport, //personsSport
mySpeciallity, //personsSpeciallity
myLevel, //personsLevel
myStringFull[9], //number of jumps x session
myStringFull[10], //number of jumpsRj x session
myStringFull[11], //number of runs x session
myStringFull[12], //number of runsInterval x session
myStringFull[13], //number of reaction times x session
myStringFull[14], //number of pulses x session
myStringFull[15], //number of multiChronopics x session
myStringFull[7] //description of session
);
else if(! showContacts && showEncoder)
store.AppendValues (myStringFull[0], myStringFull[1],
myStringFull[2],
myStringFull[3], //session date
myStringFull[8], //number of jumpers x session
mySport, //personsSport
mySpeciallity, //personsSpeciallity
myLevel, //personsLevel
myStringFull[16], //number of encoder signal x session
myStringFull[17], //number of encoder curve x session
myStringFull[7] //description of session
);
else // ! showContacts && ! showEncoder
store.AppendValues (myStringFull[0], myStringFull[1],
myStringFull[2],
myStringFull[3], //session date
myStringFull[8], //number of jumpers x session
mySport, //personsSport
mySpeciallity, //personsSpeciallity
myLevel, //personsLevel
myStringFull[7] //description of session
);
}
}