static void IncomingChangeTreeViewItemGUI( string wkPath, UnityIncomingChangesTree incomingChangesTree, IncomingChangesTreeView treeView, ChangeTreeViewItem item, RowGUIArgs args, bool isCurrentConflict, bool isSolvedConflict) { for (int visibleColumnIdx = 0; visibleColumnIdx < args.GetNumVisibleColumns(); visibleColumnIdx++) { Rect cellRect = args.GetCellRect(visibleColumnIdx); IncomingChangesTreeColumn column = (IncomingChangesTreeColumn)args.GetColumn(visibleColumnIdx); IncomingChangeTreeViewItemCellGUI( wkPath, cellRect, treeView.rowHeight, incomingChangesTree, treeView, item, column, args.selected, args.focused, isCurrentConflict, isSolvedConflict); } }
internal static string GetColumnName(IncomingChangesTreeColumn column) { switch (column) { case IncomingChangesTreeColumn.Path: return(PlasticLocalization.GetString(PlasticLocalization.Name.PathColumn)); case IncomingChangesTreeColumn.Size: return(PlasticLocalization.GetString(PlasticLocalization.Name.SizeColumn)); case IncomingChangesTreeColumn.Author: return(PlasticLocalization.GetString(PlasticLocalization.Name.AuthorColumn)); case IncomingChangesTreeColumn.Details: return(PlasticLocalization.GetString(PlasticLocalization.Name.DetailsColumn)); case IncomingChangesTreeColumn.Resolution: return(PlasticLocalization.GetString(PlasticLocalization.Name.ResolutionMethodColumn)); case IncomingChangesTreeColumn.DateModififed: return(PlasticLocalization.GetString(PlasticLocalization.Name.DateModifiedColumn)); default: return(null); } }
static void IncomingChangeTreeViewItemCellGUI( string wkPath, Rect rect, float rowHeight, UnityIncomingChangesTree incomingChangesTree, IncomingChangesTreeView treeView, ChangeTreeViewItem item, Action onCheckedNodeChanged, IncomingChangesTreeColumn column, bool isSelected, bool isFocused, bool isCurrentConflict, bool isSolvedConflict) { IncomingChangeInfo incomingChange = item.ChangeInfo; string label = incomingChange.GetColumnText( IncomingChangesTreeHeaderState.GetColumnName(column)); if (column == IncomingChangesTreeColumn.Path) { if (incomingChangesTree.HasMeta(item.ChangeInfo)) { label = string.Concat(label, UnityConstants.TREEVIEW_META_LABEL); } Texture icon = GetIcon(wkPath, incomingChange); GetChangesOverlayIcon.Data overlayIconData = GetChangesOverlayIcon.ForGluonIncomingChange( incomingChange, isSolvedConflict); bool wasChecked = incomingChange.IsChecked(); bool isChecked = DrawTreeViewItem.ForCheckableItemCell( rect, rowHeight, item.depth, icon, overlayIconData, label, isSelected, isFocused, isCurrentConflict, wasChecked); incomingChange.UpdateCheckedState(isChecked); if (wasChecked != isChecked) { UpdateCheckStateForSelection(treeView, item); onCheckedNodeChanged(); } return; } if (column == IncomingChangesTreeColumn.Size) { DrawTreeViewItem.ForSecondaryLabelRightAligned( rect, label, isSelected, isFocused, isCurrentConflict); return; } DrawTreeViewItem.ForSecondaryLabel( rect, label, isSelected, isFocused, isCurrentConflict); }
static void IncomingChangeTreeViewItemCellGUI( string wkPath, Rect rect, float rowHeight, UnityIncomingChangesTree incomingChangesTree, IncomingChangesTreeView treeView, ChangeTreeViewItem item, IncomingChangesTreeColumn column, bool isSelected, bool isFocused, bool isCurrentConflict, bool isSolvedConflict) { IncomingChangeInfo incomingChange = item.ChangeInfo; string label = incomingChange.GetColumnText( IncomingChangesTreeHeaderState.GetColumnName(column)); if (column == IncomingChangesTreeColumn.Path) { if (incomingChangesTree.HasMeta(item.ChangeInfo)) { label = string.Concat(label, UnityConstants.TREEVIEW_META_LABEL); } Texture icon = GetIcon(wkPath, incomingChange); GetChangesOverlayIcon.Data overlayIconData = GetChangesOverlayIcon.ForPlasticIncomingChange( incomingChange, isSolvedConflict); DrawTreeViewItem.ForItemCell( rect, rowHeight, item.depth, icon, overlayIconData, label, isSelected, isFocused, isCurrentConflict, false); return; } if (column == IncomingChangesTreeColumn.Size) { DrawTreeViewItem.ForSecondaryLabelRightAligned( rect, label, isSelected, isFocused, isCurrentConflict); return; } DrawTreeViewItem.ForSecondaryLabel( rect, label, isSelected, isFocused, isCurrentConflict); }
internal static string GetColumnName(IncomingChangesTreeColumn column) { switch (column) { case IncomingChangesTreeColumn.Path: return(PlasticLocalization.GetString(PlasticLocalization.Name.PathColumn)); case IncomingChangesTreeColumn.LastEditedBy: return(PlasticLocalization.GetString(PlasticLocalization.Name.LastEditedByColumn)); case IncomingChangesTreeColumn.Size: return(PlasticLocalization.GetString(PlasticLocalization.Name.SizeColumn)); case IncomingChangesTreeColumn.DateModififed: return(PlasticLocalization.GetString(PlasticLocalization.Name.DateModifiedColumn)); default: return(null); } }
static void IncomingChangeTreeViewItemCellGUI( string wkPath, Rect rect, float rowHeight, UnityIncomingChangesTree incomingChangesTree, IncomingChangesTreeView treeView, ChangeTreeViewItem item, IncomingChangesTreeColumn column, bool isSelected, bool isFocused, bool isCurrentConflict, bool isSolvedConflict) { MergeChangeInfo incomingChange = item.ChangeInfo; string label = incomingChange.GetColumnText( IncomingChangesTreeHeaderState.GetColumnName(column)); if (column == IncomingChangesTreeColumn.Path) { if (incomingChangesTree.HasMeta(item.ChangeInfo)) { label = string.Concat(label, UnityConstants.TREEVIEW_META_LABEL); } Texture icon = GetIcon(wkPath, incomingChange); Texture overlayIcon = GetChangesOverlayIcon.ForPlasticIncomingChange( incomingChange, isSolvedConflict); DrawTreeViewItem.ForItemCell( rect, rowHeight, item.depth, icon, overlayIcon, label, isSelected, isFocused, isCurrentConflict, false); return; } if (column == IncomingChangesTreeColumn.Size) { // If there is a meta file, add the meta file to the file size so that it is consistent // with the Incoming Changes overview if (incomingChangesTree.HasMeta(item.ChangeInfo)) { MergeChangeInfo metaFileInfo = incomingChangesTree.GetMetaChange(incomingChange); long metaFileSize = metaFileInfo.GetSize(); long fileSize = incomingChange.GetSize(); label = SizeConverter.ConvertToSizeString(fileSize + metaFileSize); } DrawTreeViewItem.ForSecondaryLabelRightAligned( rect, label, isSelected, isFocused, isCurrentConflict); return; } DrawTreeViewItem.ForSecondaryLabel( rect, label, isSelected, isFocused, isCurrentConflict); }