public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
        {
            try
            {
                var tfsChangeset = value as ChangesetModel;
                if (tfsChangeset == null)
                {
                    return(String.Empty);
                }

                var comments = tfsChangeset.Comments != null?tfsChangeset.Comments.Trim() : String.Empty;

                if (comments.Length > 1024)
                {
                    comments = comments.Substring(0, 1024) + "...";
                }

                return(comments);
            }
            catch (Exception ex)
            {
                TeamFoundationTrace.TraceException(TraceKeywordSets.TeamExplorer, "ChangesetToolTipMessage.Convert", ex);
            }
            return(null);
        }
        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
        {
            try
            {
                var bitmapImage = new BitmapImage();
                bitmapImage.BeginInit();

                if (value == null || value is byte[] && ((byte[])value).Length == 0)
                {
                    bitmapImage.UriSource = new Uri("pack://application:,,,/Spiral.TfsEssentials2013;component/Resources/IdentityImage.png");
                }
                else
                {
                    var buffer = (byte[])value;
                    bitmapImage.StreamSource = new MemoryStream(buffer);
                }

                bitmapImage.EndInit();

                return(bitmapImage);
            }
            catch (Exception ex)
            {
                TeamFoundationTrace.TraceException(TraceKeywordSets.TeamExplorer, "ImageConverter.Convert", ex);
            }

            return(null);
        }
 public object Convert(object[] values, Type targetType, object parameter, CultureInfo culture)
 {
     try
     {
         if (values.Length != 2 || !(values[0] is ProjectViewModel) || !(values[1] is Color))
         {
             return((object)null);
         }
         var          explorerSccSolutionInfo = (ProjectViewModel)values[0];
         Color        backgroundColor         = (Color)values[1];
         bool         themeIcon;
         BitmapSource bitmapSourceForFile = TeamFoundationIconStripHelper.Instance.GetBitmapSourceForFile(explorerSccSolutionInfo.ItemPath, out themeIcon);
         if (themeIcon)
         {
             return((object)TeamFoundationIconStripHelper.Instance.ThemeBitmapSource(bitmapSourceForFile, backgroundColor));
         }
         else
         {
             return((object)bitmapSourceForFile);
         }
     }
     catch (Exception ex)
     {
         TeamFoundationTrace.TraceException(TraceKeywordSets.TeamExplorer, ex);
     }
     return((object)null);
 }
Пример #4
0
        public static Guid GetDteClsid(IHostPlugin serviceProvider)
        {
            try
            {
                var localRegistry4   = serviceProvider.GetService <SLocalRegistry>() as ILocalRegistry4;
                var pdwRegRootHandle = 0U;
                if (localRegistry4 != null)
                {
                    string pbstrRoot;
                    if (HResult.Succeeded(localRegistry4.GetLocalRegistryRootEx(2U, out pdwRegRootHandle, out pbstrRoot)))
                    {
                        switch (pdwRegRootHandle)
                        {
                        case 2147483649U:
                            using (var registryKey = Registry.CurrentUser.OpenSubKey(pbstrRoot))
                            {
                                if (registryKey != null)
                                {
                                    var obj = registryKey.GetValue("ThisVersionDTECLSID");
                                    if (obj is string)
                                    {
                                        Guid result;
                                        if (Guid.TryParse((string)obj, out result))
                                        {
                                            return(result);
                                        }
                                    }
                                }
                                break;
                            }

                        case 2147483650U:
                            using (var registryKey = Registry.LocalMachine.OpenSubKey(pbstrRoot))
                            {
                                if (registryKey != null)
                                {
                                    var obj = registryKey.GetValue("ThisVersionDTECLSID");
                                    if (obj is string)
                                    {
                                        Guid result;
                                        if (Guid.TryParse((string)obj, out result))
                                        {
                                            return(result);
                                        }
                                    }
                                }
                                break;
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                TeamFoundationTrace.TraceAndDebugFailException(ex);
            }
            return(new Guid());
        }
Пример #5
0
 internal static void SaveItems(string[] fileNames)
 {
     if (!IsActive)
     {
         return;
     }
     TeamFoundationTrace.Verbose(VCTraceKeywordSets.SolutionIntegration, "VssProvider.SaveItems;  fileNames={0}{1}",
                                 (object)fileNames, (object)string.Empty);
     HandleComReturn(GetProvider().SaveItems(fileNames));
 }
Пример #6
0
 internal static void UnbindAll()
 {
     if (!IsActive)
     {
         return;
     }
     TeamFoundationTrace.Info(VCTraceKeywordSets.SolutionIntegration, "VssProvider.UnbindAll starts");
     HandleComReturn(GetProvider().UnbindAll());
     TeamFoundationTrace.Info(VCTraceKeywordSets.SolutionIntegration, "VssProvider.UnbindAll ends");
 }
Пример #7
0
 internal static void RefreshProject(IVsHierarchy projectHierarchy)
 {
     if (!IsActive)
     {
         return;
     }
     TeamFoundationTrace.Verbose(VCTraceKeywordSets.SolutionIntegration, "VssProvider.RefreshProject starts");
     HandleComReturn(GetProvider().RefreshProject(projectHierarchy));
     TeamFoundationTrace.Verbose(VCTraceKeywordSets.SolutionIntegration, "VssProvider.RefreshProject ends");
 }
Пример #8
0
 internal static void AnnotateFiles()
 {
     if (!IsActive)
     {
         return;
     }
     TeamFoundationTrace.Info(VCTraceKeywordSets.SolutionIntegration, "VssProvider.AnnotateFiles starts");
     HandleComReturn(GetProvider().AnnotateFiles());
     TeamFoundationTrace.Info(VCTraceKeywordSets.SolutionIntegration, "VssProvider.AnnotateFiles ends");
 }
Пример #9
0
 internal static void RefreshGlyphs(string[] fileNames, bool immediate = false)
 {
     if (!IsActive)
     {
         return;
     }
     TeamFoundationTrace.Verbose(VCTraceKeywordSets.SolutionIntegration,
                                 "VssProvider.RefreshGlyphs starts; fileNames={0}{1}", (object)fileNames, (object)string.Empty);
     HandleComReturn(GetProvider().RefreshGlyphs(fileNames, immediate));
     TeamFoundationTrace.Verbose(VCTraceKeywordSets.SolutionIntegration, "VssProvider.RefreshGlyphs ends");
 }
Пример #10
0
 internal static void ProcessUndoneAdds(string[] fileNames)
 {
     if (!IsActive || fileNames == null || fileNames.Length == 0)
     {
         return;
     }
     TeamFoundationTrace.Info(VCTraceKeywordSets.SolutionIntegration,
                              "VssProvider.ProcessUndoneAdds starts; fileNames={0}{1}", (object)fileNames, (object)string.Empty);
     HandleComReturn(GetProvider().ProcessUndoneAdds(fileNames));
     TeamFoundationTrace.Info(VCTraceKeywordSets.SolutionIntegration, "VssProvider.ProcessUndoneAdds ends");
 }
Пример #11
0
        internal static bool IsSolutionControlledByHatteras(string solutionFile)
        {
            var isControlled = false;

            if (IsActive)
            {
                HandleComReturn(GetProvider().IsSolutionControlledByHatteras(solutionFile, out isControlled));
                TeamFoundationTrace.Verbose(VCTraceKeywordSets.SolutionIntegration,
                                            "VssProvider.IsSolutionControlledByHatteras; solutionFile={0} isControlled={1}", (object)solutionFile,
                                            (object)(isControlled ? 1 : 0));
            }
            return(isControlled);
        }
Пример #12
0
 internal static string[] GetExcludedItemsForProject(string projectFile)
 {
     string[] fileNames = null;
     if (IsActive)
     {
         TeamFoundationTrace.Verbose(VCTraceKeywordSets.SolutionIntegration,
                                     "VssProvider.GetExcludedItemsForProject starts;  projectFile={0}", (object)projectFile);
         HandleComReturn(GetProvider().GetExcludedItemsForProject(projectFile, out fileNames));
         TeamFoundationTrace.Verbose(VCTraceKeywordSets.SolutionIntegration,
                                     "VssProvider.GetExcludedItemsForProject ends;  fileNames={0}{1}", (object)fileNames, (object)string.Empty);
     }
     return(fileNames ?? new string[0]);
 }
Пример #13
0
 internal static void OpenFromSCC(string solutionFile, string localDir, string version,
                                  VersionControlOpenFromSccOverwrite overwriteMode)
 {
     if (!IsActive)
     {
         return;
     }
     TeamFoundationTrace.Info(VCTraceKeywordSets.SolutionIntegration,
                              "VssProvider.OpenFromSCC starts; solutionFile={0} localDir={1} version={2} overwriteMode={3}", (object)solutionFile,
                              (object)localDir, (object)version, (object)overwriteMode);
     HandleComReturn(GetProvider().OpenFromSCC(solutionFile, localDir, version, overwriteMode));
     TeamFoundationTrace.Info(VCTraceKeywordSets.SolutionIntegration, "VssProvider.OpenFromSCC ends");
 }
Пример #14
0
        internal static bool IsFolderPartOfSolution(string fullFolderPath)
        {
            var isPartOfSolution = false;

            if (IsActive)
            {
                HandleComReturn(GetProvider().IsFolderPartOfSolution(fullFolderPath, out isPartOfSolution));
                TeamFoundationTrace.Verbose(VCTraceKeywordSets.SolutionIntegration,
                                            "VssProvider.IsFolderPartOfSolution; fullFolderPath={0} isControlled={1}", (object)fullFolderPath,
                                            (object)(isPartOfSolution ? 1 : 0));
            }
            return(isPartOfSolution);
        }
Пример #15
0
        internal static bool Get(string[] localItems, VersionSpec versionSpec, VersionControlGetFlags options)
        {
            var flag = false;

            if (IsActive)
            {
                TeamFoundationTrace.Info(VCTraceKeywordSets.SolutionIntegration, "VssProvider.Get starts");
                HandleComReturn(GetProvider().Get(localItems, versionSpec.DisplayString, (int)options));
                TeamFoundationTrace.Info(VCTraceKeywordSets.SolutionIntegration, "VssProvider.Get ends");
                flag = true;
            }
            return(flag);
        }
 private bool AddChangesetByIdCanExecute()
 {
     try
     {
         return(GeChangesetIdsToAdd(ChangesetIdsText).Count > 0);
     }
     catch (Exception ex)
     {
         ShowException(ex);
         TeamFoundationTrace.TraceException(ex);
     }
     return(false);
 }
Пример #17
0
        //internal static void RefreshStatus()
        //{
        //	if (!VssProvider.IsActive)
        //		return;
        //	TeamFoundationTrace.Info(VCTraceKeywordSets.SolutionIntegration, "VssProvider.RefreshStatus starts");
        //	SolutionManager.Instance.ClearAllStatusCaches();
        //	VssProvider.HandleComReturn(VssProvider.GetProvider().RefreshStatus());
        //	SolutionManager.Instance.RefreshStatusOfOpenedDocuments();
        //	TeamFoundationTrace.Info(VCTraceKeywordSets.SolutionIntegration, "VssProvider.RefreshStatus ends");
        //}

        internal static void GetSelectedItemsList(VersionControlCommand command, out string[] fileNames)
        {
            fileNames = new string[0];
            if (!IsActive)
            {
                return;
            }
            HandleComReturn(GetProvider().GetSelectedItemsList(command, out fileNames));
            TeamFoundationTrace.Verbose(VCTraceKeywordSets.SolutionIntegration, "VssProvider.GetSelectedItemsList");
            if (fileNames != null)
            {
                return;
            }
            fileNames = new string[0];
        }
Пример #18
0
        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
        {
            try
            {
                if (!(value is int))
                {
                    return(null);
                }

                return((int)value > 20 ? 300.0 : double.PositiveInfinity);
            }
            catch (Exception ex)
            {
                TeamFoundationTrace.TraceException(TraceKeywordSets.TeamExplorer, "ChangesetsSectionListViewMaxHeight.Convert", ex);
            }
            return(null);
        }
Пример #19
0
        internal static void LogEvent(TeamFoundationRequestContext requestContext, string message, LogEventInformationLevel informationLevel)
        {
            switch (informationLevel)
            {
            case LogEventInformationLevel.Information:
                TeamFoundationTrace.Info(message);
                break;

            case LogEventInformationLevel.Warning:
                TeamFoundationTrace.Warning(message);
                TeamFoundationApplicationCore.Log(requestContext, message, TeamFoundationEventId.WarehouseErrorsBaseEventId, System.Diagnostics.EventLogEntryType.Warning);
                break;

            case LogEventInformationLevel.Error:
                TeamFoundationTrace.Error(message);
                TeamFoundationApplicationCore.Log(requestContext, message, TeamFoundationEventId.WarehouseErrorsBaseEventId, System.Diagnostics.EventLogEntryType.Error);
                break;
            }
        }
Пример #20
0
        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
        {
            try
            {
                var changeset = value as ChangesetModel;
                if (changeset == null)
                {
                    return(String.Empty);
                }

                return(string.IsNullOrWhiteSpace(changeset.AuthorEmail)
                                        ? String.Format("{0}", changeset.AuthorName)
                                        : String.Format("{0} <{1}>", changeset.AuthorName, changeset.AuthorEmail));
            }
            catch (Exception ex)
            {
                TeamFoundationTrace.TraceException(TraceKeywordSets.TeamExplorer, "ChangesetToolTipAuthor.Converter", ex);
            }
            return(null);
        }
Пример #21
0
 public static void ViewPendingChanges(Workspace workspace, IEnumerable <PendingChange> changes)
 {
     using (UIHost.GetWaitCursor())
     {
         foreach (PendingChange pendingChange in changes)
         {
             if (pendingChange.ItemType == ItemType.File)
             {
                 if ((pendingChange.ServerItem).EndsWith(".sln"))
                 {
                     TeamFoundationTrace.Info(VCTraceKeywordSets.PendingChanges, "View(VS):Opening solution/project '{0}'", (object)pendingChange.ServerItem);
                     OpenSolutionWithWorkspace(workspace, pendingChange.ServerItem, VersionSpec.Latest);
                 }
                 else
                 {
                     var str = VersionControlPath.GetTempFileName(pendingChange.ServerItem, pendingChange.Version);
                     pendingChange.DownloadBaseFile(str);
                     TryOpenFile(str);
                 }
             }
         }
     }
 }