internal ChangesetsListView( ChangesetsListHeaderState headerState, List <string> columnNames, ChangesetsViewMenu menu, Action sizeChangedAction, Action selectionChangedAction, Action doubleClickAction) : base(new TreeViewState()) { mColumnNames = columnNames; mMenu = menu; mSizeChangedAction = sizeChangedAction; mSelectionChangedAction = selectionChangedAction; mDoubleClickAction = doubleClickAction; multiColumnHeader = new MultiColumnHeader(headerState); multiColumnHeader.canSort = true; multiColumnHeader.sortingChanged += SortingChanged; rowHeight = UnityConstants.TREEVIEW_ROW_HEIGHT; showAlternatingRowBackgrounds = false; mCooldownFilterAction = new CooldownWindowDelayer( DelayedSearchChanged, UnityConstants.SEARCH_DELAYED_INPUT_ACTION_INTERVAL); mCooldownSelectionAction = new CooldownWindowDelayer( DelayedSelectionChanged, UnityConstants.SELECTION_DELAYED_INPUT_ACTION_INTERVAL); }
static void ChangesetsListViewItemCellGUI( Rect rect, float rowHeight, ViewQueryResult queryResult, ChangesetListViewItem item, ChangesetsListColumn column, Action avatarLoadedAction, bool isSelected, bool isFocused, bool isBoldText) { string columnText = RepObjectInfoView.GetColumnText( queryResult.GetRepositorySpec(item.ObjectInfo), queryResult.GetRepObjectInfo(item.ObjectInfo), ChangesetsListHeaderState.GetColumnName(column)); if (column == ChangesetsListColumn.CreatedBy) { DrawTreeViewItem.ForItemCell( rect, rowHeight, -1, GetAvatar.ForEmail(columnText, avatarLoadedAction), null, columnText, isSelected, isFocused, isBoldText, false); return; } if (column == ChangesetsListColumn.Branch || column == ChangesetsListColumn.Repository || column == ChangesetsListColumn.Guid) { DrawTreeViewItem.ForSecondaryLabel( rect, columnText, isSelected, isFocused, isBoldText); return; } DrawTreeViewItem.ForLabel( rect, columnText, isSelected, isFocused, isBoldText); }
void BuildComponents( WorkspaceInfo wkInfo, IWorkspaceWindow workspaceWindow, IViewSwitcher viewSwitcher, IHistoryViewLauncher historyViewLauncher, EditorWindow parentWindow) { mSearchField = new SearchField(); mSearchField.downOrUpArrowKeyPressed += SearchField_OnDownOrUpArrowKeyPressed; DateFilter.Type dateFilterType = EnumPopupSetting <DateFilter.Type> .Load( UnityConstants.CHANGESETS_DATE_FILTER_SETTING_NAME, DateFilter.Type.LastMonth); mDateFilter = new DateFilter(dateFilterType); ChangesetsListHeaderState headerState = ChangesetsListHeaderState.GetDefault(); TreeHeaderSettings.Load(headerState, UnityConstants.CHANGESETS_TABLE_SETTINGS_NAME, (int)ChangesetsListColumn.CreationDate, false); mChangesetsListView = new ChangesetsListView( headerState, ChangesetsListHeaderState.GetColumnNames(), new ChangesetsViewMenu(this, this, mIsGluonMode), sizeChangedAction: OnChangesetsListViewSizeChanged, selectionChangedAction: OnSelectionChanged, doubleClickAction: ((IChangesetMenuOperations)this).DiffChangeset); mChangesetsListView.Reload(); mIsChangesPanelVisible = BoolSetting.Load( UnityConstants.CHANGESETS_SHOW_CHANGES_SETTING_NAME, true); mDiffPanel = new DiffPanel( wkInfo, workspaceWindow, viewSwitcher, historyViewLauncher, parentWindow, mIsGluonMode); }