//data is an ArrayList of strings[], each string [] is a row, each of its strings is a column public void SetTreeview(string [] columnsString, bool addCheckbox, ArrayList data, ArrayList myNonSensitiveRows, Constants.ContextMenu contextMenu, bool activateRowAcceptsWindow //this param makes button_accept the window if 'enter' on a row or double click ) { //adjust window to be bigger generic_window.Resizable = true; scrolled_window_treeview.WidthRequest = 550; scrolled_window_treeview.HeightRequest = 250; store = getStore(columnsString.Length, addCheckbox); treeview.Model = store; prepareHeaders(columnsString, addCheckbox); treeview.HeadersClickable = false; nonSensitiveRows = myNonSensitiveRows; LogB.Debug("aaaaaaaaaaaaaaaa1"); foreach (string [] line in data) { store.AppendValues(line); //Log.WriteLine(Util.StringArrayToString(line,"\n")); } LogB.Debug("aaaaaaaaaaaaaaaa2"); genericWinContextMenu = contextMenu; this.activateRowAcceptsWindow = activateRowAcceptsWindow; treeview.CursorChanged += on_treeview_cursor_changed; if (contextMenu == Constants.ContextMenu.EDITDELETE) { button_row_edit = new Gtk.Button(); button_row_delete = new Gtk.Button(); treeview.ButtonReleaseEvent -= on_treeview_button_release_event; treeview.ButtonReleaseEvent += on_treeview_button_release_event; } else if (contextMenu == Constants.ContextMenu.DELETE) { button_row_delete = new Gtk.Button(); treeview.ButtonReleaseEvent -= on_treeview_button_release_event; treeview.ButtonReleaseEvent += on_treeview_button_release_event; } }
//data is an ArrayList of strings[], each string [] is a row, each of its strings is a column public void SetTreeview(string [] columnsString, bool addCheckbox, ArrayList data, ArrayList myNonSensitiveRows, Constants.ContextMenu contextMenu, bool activateRowAcceptsWindow //this param makes button_accept the window if 'enter' on a row or double click ) { //adjust window to be bigger generic_window.Resizable = true; scrolled_window_treeview.WidthRequest = 550; scrolled_window_treeview.HeightRequest = 250; store = getStore(columnsString.Length, addCheckbox); treeview.Model = store; prepareHeaders(columnsString, addCheckbox); treeview.HeadersClickable = false; nonSensitiveRows = myNonSensitiveRows; LogB.Debug("aaaaaaaaaaaaaaaa1"); foreach (string [] line in data) { store.AppendValues (line); //Log.WriteLine(Util.StringArrayToString(line,"\n")); } LogB.Debug("aaaaaaaaaaaaaaaa2"); genericWinContextMenu = contextMenu; this.activateRowAcceptsWindow = activateRowAcceptsWindow; treeview.CursorChanged += on_treeview_cursor_changed; if(contextMenu == Constants.ContextMenu.EDITDELETE) { button_row_edit = new Gtk.Button(); button_row_delete = new Gtk.Button(); treeview.ButtonReleaseEvent -= on_treeview_button_release_event; treeview.ButtonReleaseEvent += on_treeview_button_release_event; } else if(contextMenu == Constants.ContextMenu.DELETE) { button_row_delete = new Gtk.Button(); treeview.ButtonReleaseEvent -= on_treeview_button_release_event; treeview.ButtonReleaseEvent += on_treeview_button_release_event; } }