SessionLoadWindow.fillTreeView C# (CSharp) Method

fillTreeView() private method

private fillTreeView ( Gtk tv, TreeStore store, bool showContacts, bool showEncoder ) : void
tv Gtk
store TreeStore
showContacts bool
showEncoder bool
return void
    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
                        );
        }
    }