├── .NugetFile ├── .gitattributes ├── .gitignore ├── HowToBuild.txt ├── IntegrationTests.testsettings ├── Key.snk ├── LICENSE.txt ├── PowerStudio.sln ├── PowerStudio.sln.docstates ├── README.md ├── UnitTests.testsettings ├── VisualStudio.PowerShell.vsmdi ├── build.cmd ├── build.ps1 ├── build ├── .NugetFile ├── assemblyinfo.ps1 ├── bootstrap.ps1 ├── build.ps1 ├── chewie.psm1 ├── git.ps1 ├── msbuild.ps1 ├── nuget.ps1 ├── nunit.ps1 ├── overrides.ps1 ├── settings.ps1 ├── vsixmanifest.ps1 └── xunit.ps1 ├── graphics ├── FileIcon.png ├── FileIcon.svg └── ProjectIcon.ico ├── source ├── GlobalAssemblyInfo.cs ├── Microsoft.VisualStudio.Project │ ├── Dev10 │ │ ├── Microsoft.VisualStudio.Project.IntegrationTests.testrunconfig │ │ ├── Microsoft.VisualStudio.Project.Tests.sln │ │ ├── Microsoft.VisualStudio.Project.Tests.vsmdi │ │ ├── Microsoft.VisualStudio.Project.Tests1.vsmdi │ │ ├── Microsoft.VisualStudio.Project.UnitTests.testrunconfig │ │ ├── Microsoft.VisualStudio.Project.sln │ │ ├── Samples │ │ │ └── CSharp │ │ │ │ ├── CustomProject │ │ │ │ ├── CustomProject.UnitTests.sln │ │ │ │ ├── CustomProject.UnitTests.vsmdi │ │ │ │ ├── CustomProject.sln │ │ │ │ ├── LocalTestRun.testrunconfig │ │ │ │ ├── Src │ │ │ │ │ ├── Attributes │ │ │ │ │ │ ├── LocDisplayNameAttribute.cs │ │ │ │ │ │ ├── ResourcesCategoryAttribute.cs │ │ │ │ │ │ └── ResourcesDescriptionAttribute.cs │ │ │ │ │ ├── CustomProject.csproj │ │ │ │ │ ├── CustomProjectPackage.cs │ │ │ │ │ ├── GeneralPropertyPage.cs │ │ │ │ │ ├── GlobalSuppressions.cs │ │ │ │ │ ├── GuidStrings.cs │ │ │ │ │ ├── Key.snk │ │ │ │ │ ├── MyCustomProjectAutomation.cs │ │ │ │ │ ├── MyCustomProjectFactory.cs │ │ │ │ │ ├── MyCustomProjectFileNode.cs │ │ │ │ │ ├── MyCustomProjectNode.cs │ │ │ │ │ ├── Properties │ │ │ │ │ │ └── AssemblyInfo.cs │ │ │ │ │ ├── Resources.cs │ │ │ │ │ ├── Resources.resx │ │ │ │ │ ├── Resources │ │ │ │ │ │ └── MyCustomProjectImageList.bmp │ │ │ │ │ ├── Templates │ │ │ │ │ │ ├── ProjectItems │ │ │ │ │ │ │ └── MyCustomProject │ │ │ │ │ │ │ │ └── Class.cs │ │ │ │ │ │ └── Projects │ │ │ │ │ │ │ └── MyCustomProject │ │ │ │ │ │ │ ├── AssemblyInfo.cs │ │ │ │ │ │ │ ├── MyCustomProject.ico │ │ │ │ │ │ │ ├── MyCustomProject.myproj │ │ │ │ │ │ │ └── Program.cs │ │ │ │ │ ├── VSPackage.resx │ │ │ │ │ ├── extension.vsixmanifest │ │ │ │ │ └── source.extension.vsixmanifest │ │ │ │ └── UnitTests │ │ │ │ │ ├── BaseTest.cs │ │ │ │ │ ├── CustomProject.UnitTests.csproj │ │ │ │ │ ├── GeneralPropertyPageTest.cs │ │ │ │ │ ├── Mocks │ │ │ │ │ ├── MockILocalRegistry.cs │ │ │ │ │ ├── MockIVsFileChangeEx.cs │ │ │ │ │ ├── MockIVsRegisterProjectTypes.cs │ │ │ │ │ ├── MockIVsShell.cs │ │ │ │ │ ├── MockIVsSolution.cs │ │ │ │ │ ├── MockIVsSolutionBuildManager.cs │ │ │ │ │ ├── MockIVsTaskList.cs │ │ │ │ │ └── MockIVsUIShell.cs │ │ │ │ │ ├── MyCustomFileNodeTest.cs │ │ │ │ │ ├── MyCustomProjectFactoryTest.cs │ │ │ │ │ ├── MyCustomProjectNodeTest.cs │ │ │ │ │ ├── PackageTest.cs │ │ │ │ │ ├── Properties │ │ │ │ │ └── AssemblyInfo.cs │ │ │ │ │ └── Templates │ │ │ │ │ ├── AssemblyInfo.cs │ │ │ │ │ ├── MyCustomProject.ico │ │ │ │ │ ├── MyCustomProject.myproj │ │ │ │ │ └── Program.cs │ │ │ │ └── NestedProject │ │ │ │ ├── NestedProject.UnitTests.sln │ │ │ │ ├── NestedProject.UnitTests.vsmdi │ │ │ │ ├── NestedProject.UnitTests.vssscc │ │ │ │ ├── NestedProject.sln │ │ │ │ ├── Src │ │ │ │ ├── Attributes │ │ │ │ │ ├── LocDisplayNameAttribute.cs │ │ │ │ │ ├── ResourcesCategoryAttribute.cs │ │ │ │ │ └── ResourcesDescriptionAttribute.cs │ │ │ │ ├── Automation │ │ │ │ │ ├── OANestedProject.cs │ │ │ │ │ ├── OANestedProjectProperties.cs │ │ │ │ │ └── OANestedProjectProperty.cs │ │ │ │ ├── ConfigurationPropertyPages.cs │ │ │ │ ├── GeneralPropertyPage.cs │ │ │ │ ├── GeneralPropertyPageTag.cs │ │ │ │ ├── GuidStrings.cs │ │ │ │ ├── NestedProject.csproj │ │ │ │ ├── NestedProject.csproj.vspscc │ │ │ │ ├── NestedProjectFactory.cs │ │ │ │ ├── NestedProjectNode.cs │ │ │ │ ├── NestedProjectPackage.cs │ │ │ │ ├── Properties │ │ │ │ │ └── AssemblyInfo.cs │ │ │ │ ├── Resources.cs │ │ │ │ ├── Resources.resx │ │ │ │ ├── Templates │ │ │ │ │ ├── ProjectItems │ │ │ │ │ │ └── Class.cs │ │ │ │ │ └── Projects │ │ │ │ │ │ ├── Application.nestedproj │ │ │ │ │ │ ├── AssemblyInfo.cs │ │ │ │ │ │ └── Program.cs │ │ │ │ ├── extension.vsixmanifest │ │ │ │ └── source.extension.vsixmanifest │ │ │ │ ├── UnitTests │ │ │ │ ├── AttributesTest.cs │ │ │ │ ├── AutomationTests.cs │ │ │ │ ├── BaseTest.cs │ │ │ │ ├── GeneralPropertyPageTest.cs │ │ │ │ ├── MockServicesProvider.cs │ │ │ │ ├── NestedProject.UnitTests.csproj │ │ │ │ ├── NestedProject.UnitTests.csproj.vspscc │ │ │ │ ├── NestedProjectFactoryTest.cs │ │ │ │ ├── NestedProjectNodeTest.cs │ │ │ │ ├── NestedProjectPackageTest.cs │ │ │ │ ├── Properties │ │ │ │ │ └── AssemblyInfo.cs │ │ │ │ ├── Templates │ │ │ │ │ ├── SampleClass.cs │ │ │ │ │ ├── SampleProject.csproj │ │ │ │ │ └── TemplateClass.cs │ │ │ │ └── VSCodeGenAccessors.cs │ │ │ │ └── localtestrun.testrunconfig │ │ ├── Src │ │ │ └── CSharp │ │ │ │ ├── AssemblyReferenceNode.cs │ │ │ │ ├── Attributes.cs │ │ │ │ ├── Automation │ │ │ │ ├── AutomationScope.cs │ │ │ │ ├── OAFileItem.cs │ │ │ │ ├── OAFolderItem.cs │ │ │ │ ├── OANavigableProjectItems.cs │ │ │ │ ├── OANestedProjectItem.cs │ │ │ │ ├── OANullProperty.cs │ │ │ │ ├── OAProject.cs │ │ │ │ ├── OAProjectItem.cs │ │ │ │ ├── OAProjectItems.cs │ │ │ │ ├── OAProperties.cs │ │ │ │ ├── OAProperty.cs │ │ │ │ ├── OAReferenceFolderItem.cs │ │ │ │ ├── OAReferenceItem.cs │ │ │ │ ├── OASolutionFolder.cs │ │ │ │ └── VSProject │ │ │ │ │ ├── OAAssemblyReference.cs │ │ │ │ │ ├── OABuildManager.cs │ │ │ │ │ ├── OAComReference.cs │ │ │ │ │ ├── OAProjectReference.cs │ │ │ │ │ ├── OAReferenceBase.cs │ │ │ │ │ ├── OAReferences.cs │ │ │ │ │ ├── OAVSProject.cs │ │ │ │ │ └── OAVSProjectItem.cs │ │ │ │ ├── BuildDependency.cs │ │ │ │ ├── BuildPropertyPage.cs │ │ │ │ ├── BuildStatus.cs │ │ │ │ ├── ComReferenceNode.cs │ │ │ │ ├── ConfigProvider.cs │ │ │ │ ├── ConfigurationProperties.cs │ │ │ │ ├── DataObject.cs │ │ │ │ ├── DependentFileNode.cs │ │ │ │ ├── DesignPropertyDescriptor.cs │ │ │ │ ├── DesignTimeAssemblyResolution.cs │ │ │ │ ├── Diagrams │ │ │ │ ├── AutomationClasses.cd │ │ │ │ ├── ConfigurationClasses.cd │ │ │ │ ├── DocumentManagerClasses.cd │ │ │ │ ├── HierarchyClasses.cd │ │ │ │ ├── PropertiesClasses.cd │ │ │ │ └── ReferenceClasses.cd │ │ │ │ ├── DocumentManager.cs │ │ │ │ ├── EnumDependencies.cs │ │ │ │ ├── FileChangeManager.cs │ │ │ │ ├── FileDocumentManager.cs │ │ │ │ ├── FileNode.cs │ │ │ │ ├── FolderNode.cs │ │ │ │ ├── GlobalSuppressions.cs │ │ │ │ ├── HierarchyNode.cs │ │ │ │ ├── IDEBuildLogger.cs │ │ │ │ ├── ImageHandler.cs │ │ │ │ ├── Interfaces.cs │ │ │ │ ├── Key.snk │ │ │ │ ├── LocalizableProperties.cs │ │ │ │ ├── MPFProjectAll.files │ │ │ │ ├── Microsoft.VisualStudio.Project.csproj │ │ │ │ ├── Misc │ │ │ │ ├── ConnectionPointContainer.cs │ │ │ │ ├── ExternDll.cs │ │ │ │ ├── NativeMethods.cs │ │ │ │ └── UnsafeNativeMethods.cs │ │ │ │ ├── NestedProjectBuildDependency.cs │ │ │ │ ├── NestedProjectNode.cs │ │ │ │ ├── NodeProperties.cs │ │ │ │ ├── OleServiceProvider.cs │ │ │ │ ├── Output.cs │ │ │ │ ├── OutputGroup.cs │ │ │ │ ├── ProjectBase.files │ │ │ │ ├── ProjectConfig.cs │ │ │ │ ├── ProjectContainerNode.cs │ │ │ │ ├── ProjectDesignerDocumentManager.cs │ │ │ │ ├── ProjectDocumentsListener.cs │ │ │ │ ├── ProjectElement.cs │ │ │ │ ├── ProjectFactory.cs │ │ │ │ ├── ProjectFileConstants.cs │ │ │ │ ├── ProjectNode.CopyPaste.cs │ │ │ │ ├── ProjectNode.Events.cs │ │ │ │ ├── ProjectNode.cs │ │ │ │ ├── ProjectOptions.cs │ │ │ │ ├── ProjectPackage.cs │ │ │ │ ├── ProjectReferenceNode.cs │ │ │ │ ├── Properties │ │ │ │ └── AssemblyInfo.cs │ │ │ │ ├── PropertiesEditorLauncher.cs │ │ │ │ ├── ReferenceContainerNode.cs │ │ │ │ ├── ReferenceNode.cs │ │ │ │ ├── RegisteredProjectType.cs │ │ │ │ ├── Resources │ │ │ │ └── imagelis.bmp │ │ │ │ ├── SelectionListener.cs │ │ │ │ ├── SettingsPage.cs │ │ │ │ ├── SingleFileGenerator.cs │ │ │ │ ├── SingleFileGeneratorFactory.cs │ │ │ │ ├── SolutionListener.cs │ │ │ │ ├── SolutionListenerForBuildDependencyUpdate.cs │ │ │ │ ├── SolutionListenerForProjectEvents.cs │ │ │ │ ├── SolutionListenerForProjectOpen.cs │ │ │ │ ├── SolutionListenerForProjectReferenceUpdate.cs │ │ │ │ ├── StructuresEnums.cs │ │ │ │ ├── SuspendFileChanges.cs │ │ │ │ ├── TokenProcessor.cs │ │ │ │ ├── Tracing.cs │ │ │ │ ├── TrackDocumentsHelper.cs │ │ │ │ ├── TypeConverters.cs │ │ │ │ ├── UIThread.cs │ │ │ │ ├── UpdateSolutionEventsListener.cs │ │ │ │ ├── Url.cs │ │ │ │ ├── Utilities.cs │ │ │ │ ├── VSShellUtilities.cs │ │ │ │ ├── VisualStudio.Project.cs │ │ │ │ ├── VisualStudio.Project.resx │ │ │ │ ├── VsCommands.cs │ │ │ │ └── WebProjectBase.Files │ │ └── Tests │ │ │ ├── IntegrationTests │ │ │ ├── BaseTest.cs │ │ │ ├── DialogboxPurger.cs │ │ │ ├── Microsoft.VisualStudio.Project.IntegrationTests.csproj │ │ │ ├── NativeMethods.cs │ │ │ ├── Project.nestedproj │ │ │ ├── Properties │ │ │ │ └── AssemblyInfo.cs │ │ │ ├── TestAutomation.cs │ │ │ ├── TestGlobalProperties.cs │ │ │ ├── TestNode.cs │ │ │ ├── TestProject.cs │ │ │ ├── Utilities.cs │ │ │ ├── app.config │ │ │ └── packages.config │ │ │ └── UnitTests │ │ │ ├── BuildLoggerTest.cs │ │ │ ├── ImageHandlerTest.cs │ │ │ ├── Microsoft.VisualStudio.Project.UnitTests.csproj │ │ │ ├── MockFactories.cs │ │ │ ├── ProjectEventsTest.cs │ │ │ ├── ProjectTest.cs │ │ │ ├── ProjectTestClass.cs │ │ │ ├── Properties │ │ │ ├── AssemblyInfo.cs │ │ │ ├── Resources.Designer.cs │ │ │ └── Resources.resx │ │ │ ├── Resources │ │ │ ├── Image1.bmp │ │ │ └── ImageList.bmp │ │ │ ├── TestDirectory.cs │ │ │ ├── TestProject.proj │ │ │ ├── TokenProcessorTest.cs │ │ │ └── Utilities.cs │ ├── LICENSE.txt │ └── readme.txt ├── PowerStudio.DebugEngine.Tests │ ├── Attributes │ │ ├── ProvideDebugEngineAttributeContext.cs │ │ └── describe_ProvideDebugEngineAttribute │ │ │ ├── ProvideDebugEngineAttributeTestsSetDefaultKey.cs │ │ │ └── ProvideDebugEngineAttributeTestsSetName.cs │ ├── Fakes │ │ └── SampleEngineWithIncompatibilities.cs │ ├── PowerStudio.DebugEngine.Tests.csproj │ └── Properties │ │ └── AssemblyInfo.cs ├── PowerStudio.DebugEngine │ ├── Attributes │ │ ├── IncompatibleDebugEngineAttribute.cs │ │ ├── IncompatibleWithComPlusNativeEngine.cs │ │ ├── IncompatibleWithComPlusOnlyEngine.cs │ │ ├── IncompatibleWithComPlusOnlyEngine2.cs │ │ ├── IncompatibleWithComPlusOnlyEngine4.cs │ │ ├── IncompatibleWithComPlusSqlLocalEngine.cs │ │ ├── IncompatibleWithNativeOnlyEngine.cs │ │ ├── IncompatibleWithPowerGUIEngine.cs │ │ ├── IncompatibleWithPowerStudioEngine.cs │ │ ├── IncompatibleWithProteusEngine.cs │ │ ├── IncompatibleWithScriptEngine.cs │ │ ├── IncompatibleWithSilverlightEngine.cs │ │ ├── IncompatibleWithSqlEngine2.cs │ │ ├── IncompatibleWithWorkflowDebugEngine.cs │ │ ├── ProvideDebugEngineAttribute.cs │ │ ├── ProvidePortSupplierAttribute.cs │ │ ├── ProvideProgramProviderAttribute.cs │ │ └── ProvideTypeAttribute.cs │ ├── Breakpoint.cs │ ├── CodeDocumentContext.cs │ ├── ComThreadingModel.cs │ ├── DebugEngineBase.cs │ ├── DebugEngineEventSource.cs │ ├── DebugExpression.cs │ ├── DebugModuleBase.cs │ ├── DebugPort.cs │ ├── DebugPortNotify.cs │ ├── DebugPortSupplier.cs │ ├── DebugProcess.cs │ ├── DebugProgramNode.cs │ ├── DebugProgramProvider.cs │ ├── DebugProperty.cs │ ├── DebugStackFrame.cs │ ├── DebugThread.cs │ ├── EngineGuids.cs │ ├── Enumerators │ │ ├── BoundBreakpointsEnumerator.cs │ │ ├── CodeContextEnumerator.cs │ │ ├── EnumeratorBase.cs │ │ ├── FrameInfoEnumerator.cs │ │ ├── ModuleEnumerator.cs │ │ ├── PendingBreakpointsEnumerator.cs │ │ ├── ProgramEnumerator.cs │ │ ├── PropertyEnumerator.cs │ │ ├── PropertyInfoEnumerator.cs │ │ └── ThreadEnumerator.cs │ ├── Events │ │ ├── ActivateDocumentEvent.cs │ │ ├── AsyncBreakCompleteEvent.cs │ │ ├── AsynchronousEvent.cs │ │ ├── BeforeSymbolSearchEvent.cs │ │ ├── BreakpointBoundEvent.cs │ │ ├── BreakpointEvent.cs │ │ ├── DebugEngineCreateEvent.cs │ │ ├── DebugEventBase.cs │ │ ├── LoadCompleteEvent.cs │ │ ├── ModuleLoadEvent.cs │ │ ├── OutputDebugStringEvent.cs │ │ ├── ProgramCreateEvent.cs │ │ ├── ProgramDestroyEvent.cs │ │ ├── StoppingEvent.cs │ │ ├── SymbolSearchEvent.cs │ │ ├── SynchronousEvent.cs │ │ ├── SynchronousStoppingEvent.cs │ │ ├── ThreadCreateEvent.cs │ │ └── ThreadDestroyEvent.cs │ ├── Guids.cs │ ├── HResult.cs │ ├── IDebugEngineEventSource.cs │ ├── InterfaceGuids.cs │ ├── PortSuppliers │ │ └── DefaultPortProvider.cs │ ├── PowerStudio.DebugEngine.csproj │ └── Properties │ │ └── AssemblyInfo.cs ├── PowerStudio.Debugger.Tests │ ├── PowerStudio.Debugger.Tests.csproj │ └── Properties │ │ └── AssemblyInfo.cs ├── PowerStudio.Debugger │ ├── PowerShellDebugEngine.cs │ ├── PowerShellDebugPort.cs │ ├── PowerShellDebuggerEvents.cs │ ├── PowerShellModule.cs │ ├── PowerShellPortSupplier.cs │ ├── PowerShellProcess.cs │ ├── PowerShellProgramNode.cs │ ├── PowerShellProgramProvider.cs │ ├── PowerStudio.Debugger.csproj │ └── Properties │ │ ├── AssemblyInfo.cs │ │ ├── Resources.Designer.cs │ │ └── Resources.resx ├── PowerStudio.Integration.Tests │ ├── IntegrationTest Library │ │ ├── DialogboxPurger.cs │ │ ├── NativeMethods.cs │ │ └── Utils.cs │ ├── PackageTest.cs │ ├── PackageTests.cs │ ├── PowerStudio.Integration.Tests.csproj │ └── SignOff-Tests │ │ ├── CPPProjectTests.cs │ │ ├── CSharpProjectTests.cs │ │ ├── SolutionTests.cs │ │ └── VBProjectTests.cs ├── PowerStudio.LanguageServices.Batch │ ├── PowerStudio.LanguageServices.Batch.csproj │ ├── Properties │ │ └── AssemblyInfo.cs │ └── Tagging │ │ ├── BatchToken.cs │ │ ├── BatchTokenType.cs │ │ └── Tags │ │ └── BatchTokenTag.cs ├── PowerStudio.LanguageServices.Ini.Tests │ ├── IniParserTests.cs │ ├── NumberIdenifierTests.cs │ ├── PowerStudio.LanguageServices.Ini.Tests.csproj │ └── Properties │ │ └── AssemblyInfo.cs ├── PowerStudio.LanguageServices.Ini │ ├── IniParser.cs │ ├── LanguageConfiguration.cs │ ├── NumberIdenifier.cs │ ├── PowerStudio.LanguageServices.Ini.csproj │ ├── Properties │ │ └── AssemblyInfo.cs │ └── Tagging │ │ ├── IniToken.cs │ │ ├── IniTokenType.cs │ │ ├── Providers │ │ └── ClassificationTaggerProvider.cs │ │ ├── Taggers │ │ ├── ClassificationTagger.cs │ │ └── IniTokenTagger.cs │ │ └── TokenClassifier.cs ├── PowerStudio.LanguageServices.PowerShell │ ├── Editor │ │ ├── MethodGlyphFactory.cs │ │ └── MethodGlyphFactoryProvider.cs │ ├── Formatting │ │ ├── ParagraphPropertiesFactoryService.cs │ │ └── PowerShellTextFormattingParagraphProperties.cs │ ├── Intellisense │ │ ├── Completion │ │ │ ├── BuiltInCompletionSource.cs │ │ │ ├── BuiltInCompletionSourceProvider.cs │ │ │ ├── CompletionCommandHandler.cs │ │ │ ├── CompletionHandlerProvider.cs │ │ │ ├── SmartCompletionSource.cs │ │ │ └── SmartCompletionSourceProvider.cs │ │ ├── CompletionSource.cs │ │ └── QuickInfo │ │ │ ├── QuickInfoController.cs │ │ │ ├── QuickInfoControllerProvider.cs │ │ │ ├── QuickInfoErrorSourceProvider.cs │ │ │ └── QuickInfoTokenSourceProvider.cs │ ├── LanguageConfiguration.cs │ ├── PowerShellPackageBase.cs │ ├── PowerStudio.LanguageServices.PowerShell.csproj │ ├── Project │ │ ├── GeneralProjectPropertiesPage.cs │ │ ├── GeneralSettingsPage.cs │ │ ├── OAPsProject.cs │ │ ├── OAPsProjectFileItem.cs │ │ ├── PowerShellConfigProvider.cs │ │ ├── PowerShellProjectConfig.cs │ │ ├── PowerShellProjectFactory.cs │ │ ├── PowerShellProjectFileNode.cs │ │ ├── PowerShellProjectNode.cs │ │ └── TODO.txt │ ├── ProjectIcon.ico │ ├── Properties │ │ └── AssemblyInfo.cs │ ├── Resources.Designer.cs │ ├── Resources.resx │ └── Tagging │ │ ├── Providers │ │ ├── BraceMatchingTaggerProvider.cs │ │ ├── ClassificationTaggerProvider.cs │ │ ├── ErrorTokenTaggerProvider.cs │ │ ├── HighlightWordTaggerProvider.cs │ │ ├── MethodTokenTaggerProvider.cs │ │ └── OutliningTaggerProvider.cs │ │ ├── Taggers │ │ ├── BraceMatchingTagger.cs │ │ ├── ClassificationTagger.cs │ │ ├── ErrorTokenTagger.cs │ │ ├── GlyphTokenTagger.cs │ │ ├── HighlightWordTagger.cs │ │ ├── MethodTokenTagger.cs │ │ ├── OutliningTagger.cs │ │ └── PsTokenTagger.cs │ │ ├── Tags │ │ └── MethodTag.cs │ │ └── TokenClassifier.cs ├── PowerStudio.LanguageServices.Tests │ ├── Intellisense │ │ └── Completion │ │ │ └── CompletionSourceBaseTests.cs │ ├── Mocks │ │ ├── TextBufferMock.cs │ │ └── TextSnapshotMock.cs │ ├── PowerStudio.LanguageServices.Tests.csproj │ └── Tagging │ │ ├── Tags │ │ ├── BraceMatchingTagTests.cs │ │ ├── ErrorTokenTagTests.cs │ │ ├── OutliningTagTests.cs │ │ ├── TokenClassificationTagTests.cs │ │ └── TokenTagTests.cs │ │ └── TokenTagSpanTests.cs ├── PowerStudio.LanguageServices │ ├── ContentTypes.cs │ ├── Editor │ │ ├── GlyphFactoryBase.cs │ │ ├── GlyphFactoryProviderBase.cs │ │ └── IGlyphFactory.cs │ ├── Intellisense │ │ ├── Completion │ │ │ ├── CompletionSourceBase.cs │ │ │ ├── CompletionSourceProvider.cs │ │ │ └── TextViewCreationListenerBase.cs │ │ ├── CompletionSource.cs │ │ └── QuickInfo │ │ │ ├── QuickInfoErrorSource.cs │ │ │ ├── QuickInfoSource.cs │ │ │ └── QuickInfoSourceProvider.cs │ ├── LanguageContentTypes.cs │ ├── PowerStudio.LanguageServices.csproj │ ├── Properties │ │ └── AssemblyInfo.cs │ └── Tagging │ │ ├── HighlightWordFormatDefinition.cs │ │ ├── ITokenClassifier.cs │ │ ├── ITokenTag.cs │ │ ├── PredefinedTextMarkerTags.cs │ │ ├── Providers │ │ ├── TaggerProviderBase.cs │ │ └── ViewTaggerProviderBase.cs │ │ ├── StandardClassificationService.cs │ │ ├── Taggers │ │ ├── TaggerBase.cs │ │ └── ViewTaggerBase.cs │ │ ├── Tags │ │ ├── BraceMatchingTag.cs │ │ ├── ErrorTokenTag.cs │ │ ├── GlyphTag.cs │ │ ├── HighlightWordTag.cs │ │ ├── OutliningTag.cs │ │ ├── TokenClassificationTag.cs │ │ └── TokenTag.cs │ │ ├── TokenClass.cs │ │ └── TokenTagSpan.cs ├── PowerStudio │ ├── GlobalSuppressions.cs │ ├── LICENSE.txt │ ├── LanguageService.cs │ ├── NLog.dll.nlog │ ├── PowerShellPackage.cs │ ├── PowerStudio.csproj │ ├── PowerStudio.txt │ ├── ProjectIcon.ico │ ├── ProjectTemplates │ │ └── PowerShellProject.zip │ ├── Properties │ │ └── AssemblyInfo.cs │ ├── Resources │ │ └── ProjectIcon.ico │ ├── Templates │ │ ├── ProjectItems │ │ │ └── PsProject │ │ │ │ ├── ModuleManifest.psd1 │ │ │ │ ├── ScriptFile.ps1 │ │ │ │ └── ScriptModule.psm1 │ │ └── Projects │ │ │ ├── PowerShellProject.zip │ │ │ └── PsProject │ │ │ ├── PowerShellProject.psproj │ │ │ ├── PowerShellProject.vstemplate │ │ │ ├── ProjectIcon.ico │ │ │ └── Script.ps1 │ ├── VSPackage.resx │ └── source.extension.vsixmanifest └── Resources │ ├── Errors.Designer.cs │ ├── Errors.resx │ ├── PowerStudio.Resources.csproj │ ├── Properties │ └── AssemblyInfo.cs │ ├── PsConstants.cs │ ├── Text.Designer.cs │ └── Text.resx └── tools ├── NuGet └── NuGet.exe └── xunit ├── EULA.txt ├── HTML.xslt ├── xunit.console.clr4.exe ├── xunit.console.clr4.exe.config ├── xunit.console.clr4.x86.exe ├── xunit.console.clr4.x86.exe.config ├── xunit.dll ├── xunit.extensions.dll └── xunit.runner.utility.dll /.NugetFile: -------------------------------------------------------------------------------- 1 | install_to 'Packages' 2 | chew 'Moq' '4.0.10827' 3 | chew 'RhinoMocks' '3.6' 4 | chew 'Rx-Main' '1.0.10621' 5 | chew 'NLog' '2.0.0.2000' 6 | chew 'xunit' '1.8.0.1549' 7 | chew 'Pester' '1.0.1' 8 | chew 'psake' '4.0.1.0' 9 | chew 'Giles' '0.1.1.3' -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | * -crlf -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | _ReSharper.* 2 | bin 3 | obj 4 | dist 5 | debug 6 | release 7 | *.suo 8 | *resharper* 9 | *.user 10 | *.cache 11 | MSBuildOutput.txt 12 | TestResults 13 | parser.lst 14 | parser.report.html 15 | *.dotCover 16 | Packages/ 17 | build/psake/ -------------------------------------------------------------------------------- /HowToBuild.txt: -------------------------------------------------------------------------------- 1 | From the PowerShell console, execute build.cmd or build-release.cmd to download and install the dependent NuGet packages and build the extension. Once completed, you can open the solution. 2 | 3 | If you are not using Visual Studio 2010 to build the VSIX package, you can use the psake build scripts. 4 | 5 | If you want to build the VSIX and run the unit tests, Double click on the build-release.cmd file. 6 | 7 | If you want to build the VSIX without running the unit tests, Double click on the build.cmd file. 8 | -------------------------------------------------------------------------------- /IntegrationTests.testsettings: -------------------------------------------------------------------------------- 1 |  2 | 7 | This test run configuration uses the VS IDE host type in the test run. 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /Key.snk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IntelliTect/PowerStudio/27f5a4c10f564c359ec18bfabb7853290aef1529/Key.snk -------------------------------------------------------------------------------- /PowerStudio.sln.docstates: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IntelliTect/PowerStudio/27f5a4c10f564c359ec18bfabb7853290aef1529/PowerStudio.sln.docstates -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | PowerStudio 2 | ============= 3 | PowerStudio is a Windows PowerShell integration for Visual Studio 2010. We currently support 4 | 5 | 1. Code coloring 6 | 1. Built-in and declared variable auto-completion IntelliSense 7 | 1. Error detection for tokens and expressions 8 | 1. Tooltips for error information 9 | 1. Code folding 10 | 1. Brace matching 11 | 1. Project and file templates 12 | 13 | Prerequisites 14 | ------- 15 | In order to build and run the code (only needed for contributing to the project), you will need to install a few items: 16 | 17 | Either 18 | 19 | * [Visual Studio 2010 SDK](http://www.microsoft.com/downloads/en/details.aspx?FamilyID=21307c23-f0ff-4ef2-a0a4-dca54ddb1e21) 20 | 21 | Or 22 | 23 | * [Visual Studio 2010 SP1](http://www.microsoft.com/downloads/en/details.aspx?FamilyID=75568aa6-8107-475d-948a-ef22627e57a5) 24 | 25 | * [Visual Studio 2010 SP1 SDK](http://www.microsoft.com/downloads/en/details.aspx?FamilyID=21307c23-f0ff-4ef2-a0a4-dca54ddb1e21) 26 | 27 | Optional: 28 | 29 | * [PowerShell 2.0 SDK](http://www.microsoft.com/downloads/en/details.aspx?FamilyID=50633A1F-A665-425D-923C-1A269F8AC084) 30 | -------------------------------------------------------------------------------- /UnitTests.testsettings: -------------------------------------------------------------------------------- 1 |  2 | 7 | 8 | This test run configuration is used for running the unit tests 9 | 10 | -------------------------------------------------------------------------------- /VisualStudio.PowerShell.vsmdi: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /build.cmd: -------------------------------------------------------------------------------- 1 | @echo off 2 | 3 | powershell -NonInteractive -NoProfile -ExecutionPolicy Unrestricted -Command "& { .\build.ps1 %* }" -------------------------------------------------------------------------------- /build.ps1: -------------------------------------------------------------------------------- 1 | param( 2 | [Parameter(Position=0,Mandatory=0)] 3 | [string]$buildFile = "$(Split-Path -parent $MyInvocation.MyCommand.Definition)\build\build.ps1", 4 | [Parameter(Position=1,Mandatory=0)] 5 | [string[]]$taskList = @(), 6 | [Parameter(Position=2,Mandatory=0)] 7 | [string]$framework = '4.0x86', 8 | [Parameter(Position=3,Mandatory=0)] 9 | [switch]$docs = $false, 10 | [Parameter(Position=4,Mandatory=0)] 11 | [System.Collections.Hashtable]$parameters = @{}, 12 | [Parameter(Position=5, Mandatory=0)] 13 | [System.Collections.Hashtable]$properties = @{} 14 | ) 15 | 16 | $scriptPath = (Split-Path -parent $MyInvocation.MyCommand.Definition) 17 | $buildPath = (Resolve-Path $scriptPath\build) 18 | 19 | . $buildPath\bootstrap.ps1 $buildPath 20 | $psakeModule = @(Get-ChildItem $scriptPath\* -recurse -include psake.ps1)[0].FullName 21 | . $psakeModule $buildFile $taskList $framework $docs $parameters $properties 22 | 23 | if($env:BUILD_NUMBER) { 24 | [Environment]::Exit($lastexitcode) 25 | } else { 26 | exit $lastexitcode 27 | } -------------------------------------------------------------------------------- /build/.NugetFile: -------------------------------------------------------------------------------- 1 | install_to '.' 2 | chew 'psake' '4.0.1.0' -------------------------------------------------------------------------------- /build/assemblyinfo.ps1: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IntelliTect/PowerStudio/27f5a4c10f564c359ec18bfabb7853290aef1529/build/assemblyinfo.ps1 -------------------------------------------------------------------------------- /build/git.ps1: -------------------------------------------------------------------------------- 1 | # 2 | # Copyright (c) 2012, Toji Project Contributors 3 | # 4 | # Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 5 | # See the file LICENSE.txt for details. 6 | # 7 | 8 | properties { 9 | Write-Output "Loading git properties" 10 | $git = @{} 11 | $git.file = @(Get-Command git)[0] 12 | } 13 | 14 | function Invoke-Git { 15 | param( 16 | [Parameter(Position=0,Mandatory=0)] 17 | [string[]]$args = @() 18 | ) 19 | if ($args.Length -le 0) { 20 | Write-Output "No git arguments defined" 21 | return 22 | } 23 | & $git.file $args 24 | } 25 | 26 | function Get-GitRevision { 27 | ([regex]"-\d{1,5}-").Match((Invoke-Git describe)).Value.Trim('-') 28 | } -------------------------------------------------------------------------------- /build/msbuild.ps1: -------------------------------------------------------------------------------- 1 | # 2 | # Copyright (c) 2011-2012, Toji Project Contributors 3 | # 4 | # Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 5 | # See the file LICENSE.txt for details. 6 | # 7 | 8 | properties { 9 | Write-Output "Loading MSBuild properties" 10 | $msbuild = @{} 11 | $msbuild.logfilename = "MSBuildOutput.txt" 12 | $msbuild.logfilepath = $build.dir 13 | $msbuild.max_cpu_count = [System.Environment]::ProcessorCount 14 | $msbuild.build_in_parralel = $true 15 | $msbuild.logger = "FileLogger,Microsoft.Build.Engine" 16 | $msbuild.platform = "Any CPU" 17 | } 18 | 19 | Task Invoke-MsBuild { 20 | $command = "msbuild /m:$($msbuild.max_cpu_count) /p:BuildInParralel=$($msbuild.build_in_parralel) `"/logger:$($msbuild.logger);logfile=$($msbuild.logfilepath)\$($msbuild.logfilename)`" /p:Configuration=`"$($build.configuration)`" /p:Platform=`"$($msbuild.platform)`" /p:OutDir=`"$($build.dir)`"\\ `"$($solution.file)`"" 21 | $message = "Error executing command: {0}" 22 | $errorMessage = $message -f $command 23 | exec { msbuild /m:"$($msbuild.max_cpu_count)" "/p:BuildInParralel=$($msbuild.build_in_parralel)" "/logger:$($msbuild.logger);logfile=$($msbuild.logfilepath)\$($msbuild.logfilename)" /p:Configuration="$($build.configuration)" /p:Platform="$($msbuild.platform)" /p:OutDir="$($build.dir)"\\ "$($solution.file)" } $errorMessage 24 | } -------------------------------------------------------------------------------- /build/nunit.ps1: -------------------------------------------------------------------------------- 1 | # 2 | # Copyright (c) 2011-2012, Toji Project Contributors 3 | # 4 | # Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 5 | # See the file LICENSE.txt for details. 6 | # 7 | 8 | properties { 9 | Write-Output "Loading nunit properties" 10 | $nunit = @{} 11 | $nunit.runner = (Get-ChildItem "$($base.dir)\*" -recurse -include nunit-console-x86.exe).FullName 12 | } 13 | 14 | function Invoke-TestRunner { 15 | param( 16 | [Parameter(Position=0,Mandatory=$true)] 17 | [string[]]$dlls = @() 18 | ) 19 | 20 | Assert ((Test-Path($nunit.runner)) -and (![string]::IsNullOrEmpty($nunit.runner))) "NUnit runner could not be found" 21 | 22 | if ($dlls.Length -le 0) { 23 | Write-Output "No tests defined" 24 | return 25 | } 26 | exec { & $nunit.runner $dlls /noshadow } 27 | } -------------------------------------------------------------------------------- /build/overrides.ps1: -------------------------------------------------------------------------------- 1 | # 2 | # Copyright (c) 2011-2012, Toji Project Contributors 3 | # 4 | # Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 5 | # See the file LICENSE.txt for details. 6 | # 7 | 8 | # This file is where you can override any settings specified in the other scripts. 9 | # These settings can also be used to override conventions such as solution name and nuspec file. 10 | 11 | properties { 12 | Write-Output "Loading override settings" 13 | } -------------------------------------------------------------------------------- /build/settings.ps1: -------------------------------------------------------------------------------- 1 | # 2 | # Copyright (c) 2011-2012, Toji Project Contributors 3 | # 4 | # Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 5 | # See the file LICENSE.txt for details. 6 | # 7 | 8 | # This file contains the build-wide settings used by all scripts. 9 | # The overrides.ps1 can be used for CI settings where conventions don't work. 10 | 11 | properties { 12 | Write-Output "Loading settings properties" 13 | 14 | $base = @{} 15 | $base.dir = Resolve-Path .\..\ 16 | 17 | $source = @{} 18 | $source.dir = "$($base.dir)\src" 19 | if(!(Test-Path($source.dir))) { $source.dir = "$($base.dir)\source" } 20 | if(!(Test-Path($source.dir))) { $source.dir = "$($base.dir)" } 21 | 22 | $build = @{} 23 | $build.dir = "$($base.dir)\bin" 24 | $build.configuration = "Release" 25 | 26 | # BUILD_NUMBER is defined during CI builds. Make sure that this value 27 | # is changed if the CI system in use does not set this variable. 28 | # Make sure Semver versioning is used for the build number. 29 | $build.version = if($env:BUILD_NUMBER) { $env:BUILD_NUMBER } else { "1.1.2" } 30 | 31 | $tools = @{} 32 | $tools.dir = "$($base.dir)\tools" 33 | 34 | $solution = @{} 35 | $solution.name = "$(Split-Path $($base.dir) -leaf)" 36 | $solution.file = "$($base.dir)\$($solution.name).sln" 37 | 38 | $release = @{} 39 | $release.dir = "$($base.dir)\release" 40 | 41 | $packages = @{} 42 | $packages.name = "lib" 43 | $packages.dir = "$($base.dir)\$($packages.name)" 44 | } -------------------------------------------------------------------------------- /build/vsixmanifest.ps1: -------------------------------------------------------------------------------- 1 | # 2 | # Copyright (c) 2011, Toji Project Contributors 3 | # 4 | # Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 5 | # See the file LICENSE.txt for details. 6 | # 7 | 8 | properties { 9 | Write-Output "Loading vsixmanifest properties" 10 | 11 | $vsixmanifest = @{} 12 | $vsixmanifest.file = "$($source.dir)\PowerStudio\source.extension.vsixmanifest" 13 | } 14 | 15 | Task Version-VsixManifest { 16 | Assert (Test-Path($vsixmanifest.file)) "VsixManifest was not detected: $($vsixmanifest.file)" 17 | #$pattern = "\d*\.\d*\.\d*\.\d*" # 4 digit 18 | $pattern = "\d*\.\d*\.\d*" # 3 digit for semver 19 | $content = Get-Content $vsixmanifest.file -encoding UTF8 | % { [Regex]::Replace($_, $pattern, "$($build.version)") } 20 | Set-Content -Value $content -Path $vsixmanifest.file -encoding UTF8 21 | } -------------------------------------------------------------------------------- /build/xunit.ps1: -------------------------------------------------------------------------------- 1 | # 2 | # Copyright (c) 2011-2012, Toji Project Contributors 3 | # 4 | # Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 5 | # See the file LICENSE.txt for details. 6 | # 7 | 8 | properties { 9 | Write-Output "Loading xunit properties" 10 | $xunit = @{} 11 | $xunit.logfile = "$($build.dir)\xunit.log.xml" 12 | $xunit.runner = (Get-ChildItem "$($base.dir)\*" -recurse -include xunit.console.clr4.x86.exe).FullName 13 | } 14 | 15 | function Invoke-TestRunner { 16 | param( 17 | [Parameter(Position=0,Mandatory=$true)] 18 | [string[]]$dlls = @() 19 | ) 20 | 21 | Assert ((Test-Path($xunit.runner)) -and (![string]::IsNullOrEmpty($xunit.runner))) "xunit runner could not be found" 22 | 23 | if ($dlls.Length -le 0) { 24 | Write-Output "No tests defined" 25 | return 26 | } 27 | 28 | # TODO: This only keeps the last log file. Need to output many and merge. 29 | $dlls | % { exec { & $xunit.runner "$_" /noshadow }} 30 | } -------------------------------------------------------------------------------- /graphics/FileIcon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IntelliTect/PowerStudio/27f5a4c10f564c359ec18bfabb7853290aef1529/graphics/FileIcon.png -------------------------------------------------------------------------------- /graphics/ProjectIcon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IntelliTect/PowerStudio/27f5a4c10f564c359ec18bfabb7853290aef1529/graphics/ProjectIcon.ico -------------------------------------------------------------------------------- /source/GlobalAssemblyInfo.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IntelliTect/PowerStudio/27f5a4c10f564c359ec18bfabb7853290aef1529/source/GlobalAssemblyInfo.cs -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Microsoft.VisualStudio.Project.Tests1.vsmdi: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Microsoft.VisualStudio.Project.sln: -------------------------------------------------------------------------------- 1 |  2 | Microsoft Visual Studio Solution File, Format Version 11.00 3 | # Visual Studio 10 4 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.VisualStudio.Project", "Src\CSharp\Microsoft.VisualStudio.Project.csproj", "{CACB60A9-1E76-4F92-8831-B134A658C695}" 5 | EndProject 6 | Global 7 | GlobalSection(TeamFoundationVersionControl) = preSolution 8 | SccNumberOfProjects = 2 9 | SccEnterpriseProvider = {4CA58AB2-18FA-4F8D-95D4-32DDF27D184C} 10 | SccTeamFoundationServer = http://vmbgitvstfat25:8080/ 11 | SccLocalPath0 = . 12 | SccProjectUniqueName1 = Src\\CSharp\\Microsoft.VisualStudio.Project.csproj 13 | SccProjectName1 = Src/CSharp 14 | SccLocalPath1 = Src\\CSharp 15 | EndGlobalSection 16 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 17 | Debug|Any CPU = Debug|Any CPU 18 | Release|Any CPU = Release|Any CPU 19 | EndGlobalSection 20 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 21 | {CACB60A9-1E76-4F92-8831-B134A658C695}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 22 | {CACB60A9-1E76-4F92-8831-B134A658C695}.Debug|Any CPU.Build.0 = Debug|Any CPU 23 | {CACB60A9-1E76-4F92-8831-B134A658C695}.Release|Any CPU.ActiveCfg = Release|Any CPU 24 | {CACB60A9-1E76-4F92-8831-B134A658C695}.Release|Any CPU.Build.0 = Release|Any CPU 25 | EndGlobalSection 26 | GlobalSection(SolutionProperties) = preSolution 27 | HideSolutionNode = FALSE 28 | EndGlobalSection 29 | EndGlobal 30 | -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/CustomProject/CustomProject.UnitTests.vsmdi: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/CustomProject/CustomProject.sln: -------------------------------------------------------------------------------- 1 |  2 | Microsoft Visual Studio Solution File, Format Version 11.00 3 | # Visual Studio 2010 4 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CustomProject", "Src\CustomProject.csproj", "{F4ADEBDB-CD20-4532-B4E3-FE7424F5369C}" 5 | EndProject 6 | Global 7 | GlobalSection(TeamFoundationVersionControl) = preSolution 8 | SccNumberOfProjects = 2 9 | SccEnterpriseProvider = {4CA58AB2-18FA-4F8D-95D4-32DDF27D184C} 10 | SccTeamFoundationServer = http://vmbgitvstfat25:8080/ 11 | SccLocalPath0 = . 12 | SccProjectUniqueName1 = Src\\CustomProject.csproj 13 | SccProjectName1 = Src 14 | SccLocalPath1 = Src 15 | EndGlobalSection 16 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 17 | Debug|Any CPU = Debug|Any CPU 18 | Release|Any CPU = Release|Any CPU 19 | EndGlobalSection 20 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 21 | {F4ADEBDB-CD20-4532-B4E3-FE7424F5369C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 22 | {F4ADEBDB-CD20-4532-B4E3-FE7424F5369C}.Debug|Any CPU.Build.0 = Debug|Any CPU 23 | {F4ADEBDB-CD20-4532-B4E3-FE7424F5369C}.Release|Any CPU.ActiveCfg = Release|Any CPU 24 | {F4ADEBDB-CD20-4532-B4E3-FE7424F5369C}.Release|Any CPU.Build.0 = Release|Any CPU 25 | EndGlobalSection 26 | GlobalSection(SolutionProperties) = preSolution 27 | HideSolutionNode = FALSE 28 | EndGlobalSection 29 | EndGlobal 30 | -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/CustomProject/LocalTestRun.testrunconfig: -------------------------------------------------------------------------------- 1 |  2 | 3 | This is a default test run configuration for a local test run. 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 |
13 |
14 |
15 | 16 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/CustomProject/Src/Attributes/ResourcesDescriptionAttribute.cs: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | Copyright (c) Microsoft Corporation. All rights reserved. 4 | This code is licensed under the Visual Studio SDK license terms. 5 | THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF 6 | ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY 7 | IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR 8 | PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT. 9 | 10 | ***************************************************************************/ 11 | 12 | using System; 13 | using System.ComponentModel; 14 | 15 | namespace Microsoft.VisualStudio.Project.Samples.CustomProject 16 | { 17 | [AttributeUsage(AttributeTargets.All)] 18 | internal sealed class ResourcesDescriptionAttribute : DescriptionAttribute 19 | { 20 | #region Fields 21 | private bool replaced; 22 | #endregion 23 | 24 | #region Constructors 25 | /// 26 | /// Public constructor. 27 | /// 28 | /// Attribute description. 29 | public ResourcesDescriptionAttribute(string description) 30 | : base(description) 31 | { 32 | } 33 | #endregion 34 | 35 | #region Overriden Implementation 36 | /// 37 | /// Gets attribute description. 38 | /// 39 | public override string Description 40 | { 41 | get 42 | { 43 | if(!replaced) 44 | { 45 | replaced = true; 46 | DescriptionValue = Resources.GetString(base.Description); 47 | } 48 | 49 | return base.Description; 50 | } 51 | } 52 | #endregion 53 | } 54 | } -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/CustomProject/Src/GlobalSuppressions.cs: -------------------------------------------------------------------------------- 1 | // This file is used by Code Analysis to maintain SuppressMessage 2 | // attributes that are applied to this project. Project-level 3 | // suppressions either have no target or are given a specific target 4 | // and scoped to a namespace, type, member, etc. 5 | // 6 | // To add a suppression to this file, right-click the message in the 7 | // Error List, point to "Suppress Message(s)", and click "In Project 8 | // Suppression File". You do not need to add suppressions to this 9 | // file manually. 10 | 11 | [assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1017:MarkAssembliesWithComVisible")] 12 | -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/CustomProject/Src/GuidStrings.cs: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | Copyright (c) Microsoft Corporation. All rights reserved. 4 | This code is licensed under the Visual Studio SDK license terms. 5 | THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF 6 | ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY 7 | IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR 8 | PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT. 9 | 10 | ***************************************************************************/ 11 | 12 | using System; 13 | 14 | namespace Microsoft.VisualStudio.Project.Samples.CustomProject 15 | { 16 | /// 17 | /// This class contains the package GUID for this sample 18 | /// 19 | public static class GuidStrings 20 | { 21 | public const string guidCustomProjectPkgString = "A4A21AD2-9481-4D82-94EA-70E9C96AB4F1"; 22 | } 23 | } -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/CustomProject/Src/Key.snk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IntelliTect/PowerStudio/27f5a4c10f564c359ec18bfabb7853290aef1529/source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/CustomProject/Src/Key.snk -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/CustomProject/Src/MyCustomProjectAutomation.cs: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | Copyright (c) Microsoft Corporation. All rights reserved. 4 | This code is licensed under the Visual Studio SDK license terms. 5 | THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF 6 | ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY 7 | IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR 8 | PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT. 9 | 10 | ***************************************************************************/ 11 | 12 | using System.Runtime.InteropServices; 13 | using Microsoft.VisualStudio.Project.Automation; 14 | 15 | namespace Microsoft.VisualStudio.Project.Samples.CustomProject 16 | { 17 | [ComVisible(true)] 18 | public class OAMyCustomProject : OAProject 19 | { 20 | #region Constructors 21 | /// 22 | /// Public constructor. 23 | /// 24 | /// Custom project. 25 | public OAMyCustomProject(MyCustomProjectNode project) 26 | : base(project) 27 | { 28 | } 29 | #endregion 30 | } 31 | 32 | [ComVisible(true)] 33 | [Guid("D7EDB436-6F5A-4EF4-9E3F-67C15C2FA301")] 34 | public class OAMyCustomProjectFileItem : OAFileItem 35 | { 36 | #region Constructors 37 | /// 38 | /// Public constructor. 39 | /// 40 | /// Automation project. 41 | /// Custom file node. 42 | public OAMyCustomProjectFileItem(OAProject project, FileNode node) 43 | : base(project, node) 44 | { 45 | } 46 | #endregion 47 | } 48 | } 49 | -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/CustomProject/Src/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | Copyright (c) Microsoft Corporation. All rights reserved. 4 | This code is licensed under the Visual Studio SDK license terms. 5 | THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF 6 | ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY 7 | IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR 8 | PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT. 9 | 10 | ***************************************************************************/ 11 | 12 | using System; 13 | using System.Reflection; 14 | using System.Runtime.InteropServices; 15 | 16 | [assembly: AssemblyTitle("Microsoft.VisualStudio.Project.Samples.CustomProject")] 17 | [assembly: AssemblyDescription("")] 18 | [assembly: AssemblyConfiguration("")] 19 | [assembly: AssemblyCompany("Microsoft")] 20 | [assembly: AssemblyProduct("Microsoft.VisualStudio.Project.Samples.CustomProject")] 21 | [assembly: AssemblyCopyright("Copyright © Microsoft 2008")] 22 | [assembly: AssemblyTrademark("")] 23 | [assembly: AssemblyCulture("")] 24 | [assembly: ComVisible(false)] 25 | [assembly: Guid("d2711c50-1063-4d9d-a00b-fe78b59cdc68")] 26 | [assembly: AssemblyVersion("1.0.0.0")] 27 | [assembly: AssemblyFileVersion("1.0.0.0")] 28 | [assembly: CLSCompliant(false)] -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/CustomProject/Src/Resources/MyCustomProjectImageList.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IntelliTect/PowerStudio/27f5a4c10f564c359ec18bfabb7853290aef1529/source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/CustomProject/Src/Resources/MyCustomProjectImageList.bmp -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/CustomProject/Src/Templates/ProjectItems/MyCustomProject/Class.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | 6 | namespace %namespace% 7 | { 8 | public class %className% 9 | { 10 | } 11 | } -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/CustomProject/Src/Templates/Projects/MyCustomProject/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | 4 | // 5 | // General Information about an assembly is controlled through the following 6 | // set of attributes. Change these attribute values to modify the information 7 | // associated with an assembly. 8 | // 9 | [assembly: AssemblyTitle("")] 10 | [assembly: AssemblyDescription("")] 11 | [assembly: AssemblyConfiguration("")] 12 | [assembly: AssemblyCompany("")] 13 | [assembly: AssemblyProduct("")] 14 | [assembly: AssemblyCopyright("")] 15 | [assembly: AssemblyTrademark("")] 16 | [assembly: AssemblyCulture("")] 17 | 18 | // 19 | // Version information for an assembly consists of the following four values: 20 | // 21 | // Major Version 22 | // Minor Version 23 | // Build Number 24 | // Revision 25 | // 26 | // You can specify all the values or you can default the Revision and Build Numbers 27 | // by using the '*' as shown below: 28 | 29 | [assembly: AssemblyVersion("1.0.*")] 30 | -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/CustomProject/Src/Templates/Projects/MyCustomProject/MyCustomProject.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IntelliTect/PowerStudio/27f5a4c10f564c359ec18bfabb7853290aef1529/source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/CustomProject/Src/Templates/Projects/MyCustomProject/MyCustomProject.ico -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/CustomProject/Src/Templates/Projects/MyCustomProject/Program.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | 6 | namespace %namespace% 7 | { 8 | public class %className% 9 | { 10 | static void Main(string[] args) 11 | { 12 | Console.WriteLine("Hello VSX!!!"); 13 | } 14 | } 15 | } -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/CustomProject/Src/extension.vsixmanifest: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | CustomProj - AC4F6611-3817-478E-A1A4-ADF38CDBF1DB 5 | Company 6 | 1.0 7 | Information about my package 8 | 1033 9 | false 10 | 11 | 12 | Pro 13 | VST_All 14 | 15 | 16 | 17 | 18 | 19 | 20 | Microsoft.VisualStudio.Project.Samples.CustomProject.pkgdef 21 | 22 | 23 | -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/CustomProject/Src/source.extension.vsixmanifest: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | VSIXProject1 5 | Microsoft IT 6 | 1.0 7 | Empty VSIX Project. 8 | 1033 9 | VSIXProject_small.png 10 | VSIXProject_large.png 11 | 12 | 13 | Pro 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/CustomProject/UnitTests/Mocks/MockIVsFileChangeEx.cs: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | Copyright (c) Microsoft Corporation. All rights reserved. 4 | This code is licensed under the Visual Studio SDK license terms. 5 | THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF 6 | ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY 7 | IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR 8 | PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT. 9 | 10 | ***************************************************************************/ 11 | 12 | using System; 13 | using System.Collections.Generic; 14 | using System.Linq; 15 | using System.Text; 16 | using Microsoft.VsSDK.UnitTestLibrary; 17 | using Microsoft.VisualStudio.Shell.Interop; 18 | using Microsoft.VisualStudio; 19 | 20 | namespace Microsoft.VisualStudio.Project.Samples.CustomProject.UnitTests 21 | { 22 | public static class MockIVsFileChangeEx 23 | { 24 | private static GenericMockFactory factory; 25 | 26 | static MockIVsFileChangeEx() 27 | { 28 | factory = new GenericMockFactory("MockIVsFileChangeEx", new Type[] { typeof(IVsFileChangeEx)}); 29 | } 30 | 31 | public static BaseMock GetInstance() 32 | { 33 | return factory.GetInstance(); 34 | } 35 | } 36 | } -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/CustomProject/UnitTests/Mocks/MockIVsRegisterProjectTypes.cs: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | Copyright (c) Microsoft Corporation. All rights reserved. 4 | This code is licensed under the Visual Studio SDK license terms. 5 | THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF 6 | ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY 7 | IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR 8 | PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT. 9 | 10 | ***************************************************************************/ 11 | 12 | using System; 13 | using System.Collections.Generic; 14 | using System.Linq; 15 | using System.Text; 16 | using Microsoft.VsSDK.UnitTestLibrary; 17 | using Microsoft.VisualStudio.Shell.Interop; 18 | 19 | namespace Microsoft.VisualStudio.Project.Samples.CustomProject.UnitTests 20 | { 21 | public static class MockIVsRegisterProjectTypes 22 | { 23 | private static GenericMockFactory factory; 24 | 25 | static MockIVsRegisterProjectTypes() 26 | { 27 | factory = new GenericMockFactory("MockIVsRegisterProjectTypes", new Type[] { typeof(IVsRegisterProjectTypes) }); 28 | } 29 | 30 | public static BaseMock GetInstance() 31 | { 32 | return factory.GetInstance(); 33 | } 34 | } 35 | } -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/CustomProject/UnitTests/Mocks/MockIVsSolution.cs: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | Copyright (c) Microsoft Corporation. All rights reserved. 4 | This code is licensed under the Visual Studio SDK license terms. 5 | THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF 6 | ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY 7 | IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR 8 | PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT. 9 | 10 | ***************************************************************************/ 11 | 12 | using System; 13 | using System.Collections.Generic; 14 | using System.Linq; 15 | using System.Text; 16 | using Microsoft.VsSDK.UnitTestLibrary; 17 | using Microsoft.VisualStudio.Shell.Interop; 18 | 19 | namespace Microsoft.VisualStudio.Project.Samples.CustomProject.UnitTests 20 | { 21 | public static class MockIVsSolution 22 | { 23 | private static GenericMockFactory factory; 24 | 25 | static MockIVsSolution() 26 | { 27 | factory = new GenericMockFactory("MockIVsSolution", new Type[] { typeof(IVsSolution) }); 28 | } 29 | 30 | public static BaseMock GetInstance() 31 | { 32 | return factory.GetInstance(); 33 | } 34 | } 35 | } -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/CustomProject/UnitTests/Mocks/MockIVsSolutionBuildManager.cs: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | Copyright (c) Microsoft Corporation. All rights reserved. 4 | This code is licensed under the Visual Studio SDK license terms. 5 | THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF 6 | ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY 7 | IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR 8 | PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT. 9 | 10 | ***************************************************************************/ 11 | 12 | using System; 13 | using System.Collections.Generic; 14 | using System.Linq; 15 | using System.Text; 16 | using Microsoft.VsSDK.UnitTestLibrary; 17 | using Microsoft.VisualStudio.Shell.Interop; 18 | 19 | namespace Microsoft.VisualStudio.Project.Samples.CustomProject.UnitTests 20 | { 21 | public static class MockIVsSolutionBuildManager 22 | { 23 | private static GenericMockFactory factory; 24 | 25 | static MockIVsSolutionBuildManager() 26 | { 27 | factory = new GenericMockFactory("MockIVsSolutionBuildManager", new Type[] { typeof(IVsSolutionBuildManager2), typeof(IVsSolutionBuildManager3) }); 28 | } 29 | 30 | public static BaseMock GetInstance() 31 | { 32 | return factory.GetInstance(); 33 | } 34 | } 35 | } -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/CustomProject/UnitTests/Mocks/MockIVsTaskList.cs: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | Copyright (c) Microsoft Corporation. All rights reserved. 4 | This code is licensed under the Visual Studio SDK license terms. 5 | THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF 6 | ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY 7 | IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR 8 | PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT. 9 | 10 | ***************************************************************************/ 11 | 12 | using System; 13 | using System.Collections.Generic; 14 | using System.Linq; 15 | using System.Text; 16 | using Microsoft.VsSDK.UnitTestLibrary; 17 | using Microsoft.VisualStudio.Shell.Interop; 18 | 19 | namespace Microsoft.VisualStudio.Project.Samples.CustomProject.UnitTests 20 | { 21 | public static class MockIVsTaskList 22 | { 23 | private static GenericMockFactory factory; 24 | 25 | static MockIVsTaskList() 26 | { 27 | factory = new GenericMockFactory("MockIVsTaskList", new Type[] { typeof(IVsTaskList) }); 28 | } 29 | 30 | public static BaseMock GetInstance() 31 | { 32 | return factory.GetInstance(); 33 | } 34 | } 35 | } -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/CustomProject/UnitTests/Mocks/MockIVsUIShell.cs: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | Copyright (c) Microsoft Corporation. All rights reserved. 4 | This code is licensed under the Visual Studio SDK license terms. 5 | THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF 6 | ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY 7 | IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR 8 | PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT. 9 | 10 | ***************************************************************************/ 11 | 12 | using System; 13 | using System.Collections.Generic; 14 | using System.Linq; 15 | using System.Text; 16 | using Microsoft.VsSDK.UnitTestLibrary; 17 | using Microsoft.VisualStudio.Shell.Interop; 18 | using Microsoft.VisualStudio; 19 | 20 | namespace Microsoft.VisualStudio.Project.Samples.CustomProject.UnitTests 21 | { 22 | public static class MockIVsUIShell 23 | { 24 | private static GenericMockFactory factory; 25 | 26 | static MockIVsUIShell() 27 | { 28 | factory = new GenericMockFactory("MockIVsUIShell", new Type[] { typeof(IVsUIShell), typeof(IVsUIShellOpenDocument) }); 29 | } 30 | 31 | public static BaseMock GetInstance() 32 | { 33 | return factory.GetInstance(); 34 | } 35 | } 36 | } -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/CustomProject/UnitTests/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | Copyright (c) Microsoft Corporation. All rights reserved. 4 | This code is licensed under the Visual Studio SDK license terms. 5 | THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF 6 | ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY 7 | IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR 8 | PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT. 9 | 10 | ***************************************************************************/ 11 | 12 | using System.Reflection; 13 | using System.Runtime.CompilerServices; 14 | using System.Runtime.InteropServices; 15 | 16 | [assembly: AssemblyTitle("Microsoft.VisualStudio.Project.Samples.CustomProject.UnitTests")] 17 | [assembly: AssemblyDescription("")] 18 | [assembly: AssemblyConfiguration("")] 19 | [assembly: AssemblyCompany("Microsoft")] 20 | [assembly: AssemblyProduct("Microsoft.VisualStudio.Project.Samples.CustomProject.UnitTests")] 21 | [assembly: AssemblyCopyright("Copyright © Microsoft 2008")] 22 | [assembly: AssemblyTrademark("")] 23 | [assembly: AssemblyCulture("")] 24 | [assembly: ComVisible(false)] 25 | [assembly: Guid("cbdae589-7705-4c6c-ac94-7a511f9ff36a")] 26 | [assembly: AssemblyVersion("1.0.0.0")] 27 | [assembly: AssemblyFileVersion("1.0.0.0")] -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/CustomProject/UnitTests/Templates/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | 4 | // 5 | // General Information about an assembly is controlled through the following 6 | // set of attributes. Change these attribute values to modify the information 7 | // associated with an assembly. 8 | // 9 | [assembly: AssemblyTitle("")] 10 | [assembly: AssemblyDescription("")] 11 | [assembly: AssemblyConfiguration("")] 12 | [assembly: AssemblyCompany("")] 13 | [assembly: AssemblyProduct("")] 14 | [assembly: AssemblyCopyright("")] 15 | [assembly: AssemblyTrademark("")] 16 | [assembly: AssemblyCulture("")] 17 | 18 | // 19 | // Version information for an assembly consists of the following four values: 20 | // 21 | // Major Version 22 | // Minor Version 23 | // Build Number 24 | // Revision 25 | // 26 | // You can specify all the values or you can default the Revision and Build Numbers 27 | // by using the '*' as shown below: 28 | 29 | [assembly: AssemblyVersion("1.0.*")] 30 | -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/CustomProject/UnitTests/Templates/MyCustomProject.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IntelliTect/PowerStudio/27f5a4c10f564c359ec18bfabb7853290aef1529/source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/CustomProject/UnitTests/Templates/MyCustomProject.ico -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/CustomProject/UnitTests/Templates/MyCustomProject.myproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | Debug 4 | 2.0 5 | 6CAFC0C6-A428-4d30-A9F9-700E829FEA51 6 | Exe 7 | MyApplication 8 | MyApplication 9 | 10 | 11 | true 12 | bin\Debug\ 13 | false 14 | 15 | 16 | true 17 | bin\Release\ 18 | false 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | Code 29 | 30 | 31 | 32 | 33 | -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/CustomProject/UnitTests/Templates/Program.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | 6 | namespace %namespace% 7 | { 8 | public class %className% 9 | { 10 | static void Main(string[] args) 11 | { 12 | Console.WriteLine("Hello VSX!!!"); 13 | } 14 | } 15 | } -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/NestedProject/NestedProject.UnitTests.vsmdi: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/NestedProject/NestedProject.UnitTests.vssscc: -------------------------------------------------------------------------------- 1 | "" 2 | { 3 | "FILE_VERSION" = "9237" 4 | "ENLISTMENT_CHOICE" = "NEVER" 5 | "PROJECT_FILE_RELATIVE_PATH" = "" 6 | "NUMBER_OF_EXCLUDED_FILES" = "0" 7 | "ORIGINAL_PROJECT_FILE_PATH" = "" 8 | "NUMBER_OF_NESTED_PROJECTS" = "0" 9 | "SOURCE_CONTROL_SETTINGS_PROVIDER" = "PROJECT" 10 | } 11 | -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/NestedProject/NestedProject.sln: -------------------------------------------------------------------------------- 1 |  2 | Microsoft Visual Studio Solution File, Format Version 11.00 3 | # Visual Studio 2010 4 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NestedProject", "Src\NestedProject.csproj", "{E9B43C9E-60AA-4387-A955-CAFB7EFA8C27}" 5 | EndProject 6 | Global 7 | GlobalSection(TeamFoundationVersionControl) = preSolution 8 | SccNumberOfProjects = 1 9 | SccEnterpriseProvider = {4CA58AB2-18FA-4F8D-95D4-32DDF27D184C} 10 | SccTeamFoundationServer = http://vmbgitvstfat25:8080/ 11 | SccProjectUniqueName0 = Src\\NestedProject.csproj 12 | SccProjectName0 = Src 13 | SccAuxPath0 = http://vmbgitvstfat25:8080 14 | SccLocalPath0 = Src 15 | SccProvider0 = {4CA58AB2-18FA-4F8D-95D4-32DDF27D184C} 16 | EndGlobalSection 17 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 18 | Debug|Any CPU = Debug|Any CPU 19 | Release|Any CPU = Release|Any CPU 20 | EndGlobalSection 21 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 22 | {E9B43C9E-60AA-4387-A955-CAFB7EFA8C27}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 23 | {E9B43C9E-60AA-4387-A955-CAFB7EFA8C27}.Debug|Any CPU.Build.0 = Debug|Any CPU 24 | {E9B43C9E-60AA-4387-A955-CAFB7EFA8C27}.Release|Any CPU.ActiveCfg = Release|Any CPU 25 | {E9B43C9E-60AA-4387-A955-CAFB7EFA8C27}.Release|Any CPU.Build.0 = Release|Any CPU 26 | EndGlobalSection 27 | GlobalSection(SolutionProperties) = preSolution 28 | HideSolutionNode = FALSE 29 | EndGlobalSection 30 | EndGlobal 31 | -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/NestedProject/Src/Attributes/ResourcesDescriptionAttribute.cs: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | Copyright (c) Microsoft Corporation. All rights reserved. 4 | This code is licensed under the Visual Studio SDK license terms. 5 | THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF 6 | ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY 7 | IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR 8 | PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT. 9 | 10 | ***************************************************************************/ 11 | 12 | using System; 13 | using System.ComponentModel; 14 | 15 | namespace Microsoft.VisualStudio.Project.Samples.NestedProject 16 | { 17 | [AttributeUsage(AttributeTargets.All)] 18 | internal sealed class ResourcesDescriptionAttribute : DescriptionAttribute 19 | { 20 | private bool replaced; 21 | 22 | public ResourcesDescriptionAttribute(string description) 23 | : base(description) 24 | { 25 | } 26 | 27 | public override string Description 28 | { 29 | get 30 | { 31 | if(!replaced) 32 | { 33 | replaced = true; 34 | DescriptionValue = Resources.GetString(base.Description); 35 | } 36 | return base.Description; 37 | } 38 | } 39 | } 40 | } -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/NestedProject/Src/ConfigurationPropertyPages.cs: -------------------------------------------------------------------------------- 1 | 2 | /*************************************************************************** 3 | 4 | Copyright (c) Microsoft Corporation. All rights reserved. 5 | This code is licensed under the Visual Studio SDK license terms. 6 | THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF 7 | ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY 8 | IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR 9 | PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT. 10 | 11 | ***************************************************************************/ 12 | 13 | using System; 14 | using System.Runtime.InteropServices; 15 | using Microsoft.VisualStudio.Project; 16 | 17 | namespace Microsoft.VisualStudio.Project.Samples.NestedProject 18 | { 19 | [ComVisible(true), Guid("C43AD3DC-7468-48e1-B4D2-AAC0C74A0109")] 20 | public class NestedProjectBuildPropertyPage : BuildPropertyPage 21 | { 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/NestedProject/Src/GeneralPropertyPageTag.cs: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | Copyright (c) Microsoft Corporation. All rights reserved. 3 | This code is licensed under the Visual Studio SDK license terms. 4 | THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF 5 | ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY 6 | IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR 7 | PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT. 8 | ***************************************************************************/ 9 | 10 | namespace Microsoft.VisualStudio.Project.Samples.NestedProject 11 | { 12 | /// 13 | /// Enumeration of the general properties. 14 | /// 15 | internal enum GeneralPropertyPageTag 16 | { 17 | AssemblyName, 18 | OutputType, 19 | RootNamespace, 20 | StartupObject, 21 | ApplicationIcon, 22 | TargetPlatform, 23 | TargetPlatformLocation, 24 | } 25 | } -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/NestedProject/Src/GuidStrings.cs: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | Copyright (c) Microsoft Corporation. All rights reserved. 4 | This code is licensed under the Visual Studio SDK license terms. 5 | THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF 6 | ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY 7 | IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR 8 | PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT. 9 | 10 | ***************************************************************************/ 11 | 12 | using System; 13 | 14 | namespace Microsoft.VisualStudio.Project.Samples.NestedProject 15 | { 16 | /// 17 | /// This class contains a list of GUIDs specific to this sample, 18 | /// especially the package GUID and the commands group GUID. 19 | /// 20 | public static class GuidStrings 21 | { 22 | public const string GuidNestedProjectPackage = "E8DB7025-3FC3-45ff-9E3A-F6C0B2FE69B4"; 23 | public const string GuidNestedProjectNode = "EBFA6841-822F-4eb6-9B82-626828F28CF1"; 24 | public const string GuidNestedProjectFactory = "1CFCDD29-C8A2-4556-9C2E-5ABBD9952B20"; 25 | public const string GuidGeneralPropertyPage = "BC23D1AF-627C-4e75-8673-1D79DB684962"; 26 | 27 | } 28 | } -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/NestedProject/Src/NestedProject.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IntelliTect/PowerStudio/27f5a4c10f564c359ec18bfabb7853290aef1529/source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/NestedProject/Src/NestedProject.csproj -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/NestedProject/Src/NestedProject.csproj.vspscc: -------------------------------------------------------------------------------- 1 | "" 2 | { 3 | "FILE_VERSION" = "9237" 4 | "ENLISTMENT_CHOICE" = "NEVER" 5 | "PROJECT_FILE_RELATIVE_PATH" = "" 6 | "NUMBER_OF_EXCLUDED_FILES" = "0" 7 | "ORIGINAL_PROJECT_FILE_PATH" = "" 8 | "NUMBER_OF_NESTED_PROJECTS" = "0" 9 | "SOURCE_CONTROL_SETTINGS_PROVIDER" = "PROVIDER" 10 | } 11 | -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/NestedProject/Src/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | Copyright (c) Microsoft Corporation. All rights reserved. 4 | This code is licensed under the Visual Studio SDK license terms. 5 | THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF 6 | ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY 7 | IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR 8 | PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT. 9 | 10 | ***************************************************************************/ 11 | 12 | using System; 13 | using System.Reflection; 14 | using System.Runtime.InteropServices; 15 | using System.Runtime.CompilerServices; 16 | 17 | [assembly: AssemblyTitle("Microsoft.VisualStudio.Project.Samples.NestedProject")] 18 | [assembly: AssemblyDescription("")] 19 | [assembly: AssemblyConfiguration("")] 20 | [assembly: AssemblyCompany("Microsoft")] 21 | [assembly: AssemblyProduct("Microsoft.VisualStudio.Project.Samples.NestedProject")] 22 | [assembly: AssemblyCopyright("Copyright © Microsoft 2008")] 23 | [assembly: AssemblyTrademark("")] 24 | [assembly: AssemblyCulture("")] 25 | [assembly: ComVisible(false)] 26 | [assembly: CLSCompliant(false)] 27 | [assembly: Guid("713c49a6-95e2-4415-a936-e825256afa54")] 28 | [assembly: AssemblyVersion("1.0.0.0")] 29 | [assembly: AssemblyFileVersion("1.0.0.0")] 30 | [assembly: InternalsVisibleTo("Microsoft.VisualStudio.Project.Samples.NestedProject.UnitTests")] -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/NestedProject/Src/Templates/ProjectItems/Class.cs: -------------------------------------------------------------------------------- 1 | #region Using directives 2 | 3 | using System; 4 | using System.Collections.Generic; 5 | using System.Text; 6 | 7 | #endregion 8 | 9 | namespace %namespace% 10 | { 11 | class %className% 12 | { 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/NestedProject/Src/Templates/Projects/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | 4 | // 5 | // General Information about an assembly is controlled through the following 6 | // set of attributes. Change these attribute values to modify the information 7 | // associated with an assembly. 8 | // 9 | [assembly: AssemblyTitle("")] 10 | [assembly: AssemblyDescription("")] 11 | [assembly: AssemblyConfiguration("")] 12 | [assembly: AssemblyCompany("")] 13 | [assembly: AssemblyProduct("")] 14 | [assembly: AssemblyCopyright("")] 15 | [assembly: AssemblyTrademark("")] 16 | [assembly: AssemblyCulture("")] 17 | 18 | // 19 | // Version information for an assembly consists of the following four values: 20 | // 21 | // Major Version 22 | // Minor Version 23 | // Build Number 24 | // Revision 25 | // 26 | // You can specify all the values or you can default the Revision and Build Numbers 27 | // by using the '*' as shown below: 28 | 29 | [assembly: AssemblyVersion("1.0.*")] 30 | -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/NestedProject/Src/Templates/Projects/Program.cs: -------------------------------------------------------------------------------- 1 | #region Using directives 2 | 3 | using System; 4 | using System.Collections.Generic; 5 | using System.Text; 6 | 7 | #endregion 8 | 9 | namespace %namespace% 10 | { 11 | class %className% 12 | { 13 | static void Main(string[] args) 14 | { 15 | Console.WriteLine("Hello"); 16 | 17 | } 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/NestedProject/Src/extension.vsixmanifest: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | NestedProj - da0eb39c-13bc-41b4-8c29-889d52713634 6 | Company 7 | 1.0 8 | Information about my package 9 | 1033 10 | false 11 | 12 | 13 | Pro 14 | VST_All 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | Microsoft.VisualStudio.Project.Samples.NestedProject.pkgdef 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/NestedProject/Src/source.extension.vsixmanifest: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | VSIXProject1 5 | Microsoft IT 6 | 1.0 7 | Empty VSIX Project. 8 | 1033 9 | VSIXProject_small.png 10 | VSIXProject_large.png 11 | 12 | 13 | Pro 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/NestedProject/UnitTests/NestedProject.UnitTests.csproj.vspscc: -------------------------------------------------------------------------------- 1 | "" 2 | { 3 | "FILE_VERSION" = "9237" 4 | "ENLISTMENT_CHOICE" = "NEVER" 5 | "PROJECT_FILE_RELATIVE_PATH" = "" 6 | "NUMBER_OF_EXCLUDED_FILES" = "0" 7 | "ORIGINAL_PROJECT_FILE_PATH" = "" 8 | "NUMBER_OF_NESTED_PROJECTS" = "0" 9 | "SOURCE_CONTROL_SETTINGS_PROVIDER" = "PROVIDER" 10 | } 11 | -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/NestedProject/UnitTests/NestedProjectPackageTest.cs: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | Copyright (c) Microsoft Corporation. All rights reserved. 4 | This code is licensed under the Visual Studio SDK license terms. 5 | THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF 6 | ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY 7 | IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR 8 | PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT. 9 | 10 | ***************************************************************************/ 11 | 12 | using System; 13 | using Microsoft.VsSDK.UnitTestLibrary; 14 | using Microsoft.VisualStudio.TestTools.UnitTesting; 15 | using Microsoft.VisualStudio.Shell.Interop; 16 | 17 | namespace Microsoft.VisualStudio.Project.Samples.NestedProject.UnitTests 18 | { 19 | /// 20 | ///This is a test class for VisualStudio.Project.Samples.NestedProject.NestedProjectPackage and is intended 21 | ///to contain all VisualStudio.Project.Samples.NestedProject.NestedProjectPackage Unit Tests 22 | /// 23 | [TestClass()] 24 | public class NestedProjectPackageTest 25 | { 26 | #region Test Methods 27 | [TestMethod()] 28 | public void CreateInstanceTest() 29 | { 30 | NestedProjectPackage package = new NestedProjectPackage(); 31 | Assert.IsNotNull(package, "Failed to initialize an instance of NestedProjectPackage type."); 32 | } 33 | #endregion 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/NestedProject/UnitTests/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | Copyright (c) Microsoft Corporation. All rights reserved. 4 | This code is licensed under the Visual Studio SDK license terms. 5 | THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF 6 | ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY 7 | IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR 8 | PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT. 9 | 10 | ***************************************************************************/ 11 | 12 | using System.Reflection; 13 | using System.Runtime.CompilerServices; 14 | using System.Runtime.InteropServices; 15 | 16 | [assembly: AssemblyTitle("Microsoft.VisualStudio.Project.Samples.NestedProject.UnitTests")] 17 | [assembly: AssemblyDescription("")] 18 | [assembly: AssemblyConfiguration("")] 19 | [assembly: AssemblyCompany("Microsoft")] 20 | [assembly: AssemblyProduct("Microsoft.VisualStudio.Project.Samples.NestedProject.UnitTests")] 21 | [assembly: AssemblyCopyright("Copyright © Microsoft 2008")] 22 | [assembly: AssemblyTrademark("")] 23 | [assembly: AssemblyCulture("")] 24 | [assembly: ComVisible(false)] 25 | [assembly: Guid("d052eb35-e54e-46d7-99e3-bfb2eb03a1ee")] 26 | [assembly: AssemblyVersion("1.0.0.0")] 27 | [assembly: AssemblyFileVersion("1.0.0.0")] -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/NestedProject/UnitTests/Templates/SampleClass.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IntelliTect/PowerStudio/27f5a4c10f564c359ec18bfabb7853290aef1529/source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/NestedProject/UnitTests/Templates/SampleClass.cs -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/NestedProject/UnitTests/Templates/TemplateClass.cs: -------------------------------------------------------------------------------- 1 | #region Using directives 2 | 3 | using System; 4 | using System.Collections.Generic; 5 | using System.Text; 6 | 7 | #endregion 8 | 9 | namespace %namespace% 10 | { 11 | class %className% 12 | { 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Samples/CSharp/NestedProject/localtestrun.testrunconfig: -------------------------------------------------------------------------------- 1 |  2 | 3 | This is a default test run configuration for a local test run. 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 |
13 |
14 |
15 | 16 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Src/CSharp/Automation/OAFolderItem.cs: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | Copyright (c) Microsoft Corporation. All rights reserved. 4 | This code is licensed under the Visual Studio SDK license terms. 5 | THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF 6 | ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY 7 | IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR 8 | PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT. 9 | 10 | ***************************************************************************/ 11 | 12 | using System; 13 | using System.Diagnostics.CodeAnalysis; 14 | using System.Runtime.InteropServices; 15 | using EnvDTE; 16 | 17 | namespace Microsoft.VisualStudio.Project.Automation 18 | { 19 | /// 20 | /// Represents an automation object for a folder in a project 21 | /// 22 | [SuppressMessage("Microsoft.Interoperability", "CA1405:ComVisibleTypeBaseTypesShouldBeComVisible")] 23 | [ComVisible(true), CLSCompliant(false)] 24 | public class OAFolderItem : OAProjectItem 25 | { 26 | #region ctors 27 | public OAFolderItem(OAProject project, FolderNode node) 28 | : base(project, node) 29 | { 30 | } 31 | 32 | #endregion 33 | 34 | #region overridden methods 35 | public override ProjectItems Collection 36 | { 37 | get 38 | { 39 | ProjectItems items = new OAProjectItems(this.Project, this.Node); 40 | return items; 41 | } 42 | } 43 | 44 | public override ProjectItems ProjectItems 45 | { 46 | get 47 | { 48 | return this.Collection; 49 | } 50 | } 51 | #endregion 52 | } 53 | } 54 | -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Src/CSharp/Automation/OAProject.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IntelliTect/PowerStudio/27f5a4c10f564c359ec18bfabb7853290aef1529/source/Microsoft.VisualStudio.Project/Dev10/Src/CSharp/Automation/OAProject.cs -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Src/CSharp/Diagrams/DocumentManagerClasses.cd: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | FileDocumentManager.cs 8 | AACAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= 9 | 10 | 11 | 12 | 13 | 14 | DocumentManager.cs 15 | AQCAQIQAAAAAIAEAAAAAAAAAIAAAAAAAAAAAACGAAAE= 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | ProjectDesignerDocumentManager.cs 28 | AACAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= 29 | 30 | 31 | 32 | 33 | 34 | HierarchyNode.cs 35 | NKl4a26oCodRuoDQodAKZKQQxKtwgtmAOJLYAHLHccE= 36 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Src/CSharp/Key.snk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IntelliTect/PowerStudio/27f5a4c10f564c359ec18bfabb7853290aef1529/source/Microsoft.VisualStudio.Project/Dev10/Src/CSharp/Key.snk -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Src/CSharp/MPFProjectAll.files: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | . 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Src/CSharp/ProjectNode.Events.cs: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | Copyright (c) Microsoft Corporation. All rights reserved. 4 | This code is licensed under the Visual Studio SDK license terms. 5 | THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF 6 | ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY 7 | IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR 8 | PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT. 9 | 10 | ***************************************************************************/ 11 | 12 | using System; 13 | 14 | namespace Microsoft.VisualStudio.Project 15 | { 16 | public partial class ProjectNode 17 | { 18 | #region fields 19 | private EventHandler projectPropertiesListeners; 20 | #endregion 21 | 22 | #region events 23 | public event EventHandler OnProjectPropertyChanged 24 | { 25 | add { projectPropertiesListeners += value; } 26 | remove { projectPropertiesListeners -= value; } 27 | } 28 | #endregion 29 | 30 | #region methods 31 | [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1030:UseEventsWhereAppropriate")] 32 | protected void RaiseProjectPropertyChanged(string propertyName, string oldValue, string newValue) 33 | { 34 | if(null != projectPropertiesListeners) 35 | { 36 | projectPropertiesListeners(this, new ProjectPropertyChangedArgs(propertyName, oldValue, newValue)); 37 | } 38 | } 39 | #endregion 40 | } 41 | 42 | } -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Src/CSharp/ProjectNode.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IntelliTect/PowerStudio/27f5a4c10f564c359ec18bfabb7853290aef1529/source/Microsoft.VisualStudio.Project/Dev10/Src/CSharp/ProjectNode.cs -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Src/CSharp/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Diagnostics; 3 | using System.Reflection; 4 | using System.Runtime.InteropServices; 5 | using System.Security.Permissions; 6 | using System.Resources; 7 | 8 | [assembly: AssemblyTitle("Microsoft.VisualStudio.Project")] 9 | [assembly: AssemblyDescription("MPF Implementation of VS Projects")] 10 | [assembly: AssemblyConfiguration("")] 11 | [assembly: AssemblyCompany("Microsoft")] 12 | [assembly: AssemblyProduct("Microsoft.VisualStudio.Project")] 13 | [assembly: AssemblyCopyright("Copyright © Microsoft 2009")] 14 | [assembly: AssemblyTrademark("")] 15 | [assembly: AssemblyCulture("")] 16 | 17 | [assembly: ComVisible(false)] 18 | [assembly: CLSCompliant(false)] 19 | 20 | [assembly: Guid("084954ec-af04-4ea3-b166-b1fced604dc8")] 21 | 22 | [assembly: AssemblyVersion("1.0.0.0")] 23 | [assembly: AssemblyFileVersion("1.0.0.0")] 24 | 25 | [assembly: NeutralResourcesLanguageAttribute("en")] 26 | -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Src/CSharp/Resources/imagelis.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IntelliTect/PowerStudio/27f5a4c10f564c359ec18bfabb7853290aef1529/source/Microsoft.VisualStudio.Project/Dev10/Src/CSharp/Resources/imagelis.bmp -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Src/CSharp/Utilities.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IntelliTect/PowerStudio/27f5a4c10f564c359ec18bfabb7853290aef1529/source/Microsoft.VisualStudio.Project/Dev10/Src/CSharp/Utilities.cs -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Src/CSharp/WebProjectBase.Files: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | ProjectBase\Web\CodeBehindCodeGenerator.cs 12 | true 13 | 14 | 15 | ProjectBase\Web\FieldData.cs 16 | true 17 | 18 | 19 | ProjectBase\Web\LockedDocData.cs 20 | true 21 | 22 | 23 | ProjectBase\Web\VsHierarchyItem.cs 24 | true 25 | 26 | 27 | ProjectBase\Web\WAUtilities.cs 28 | true 29 | 30 | 31 | 32 | -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Tests/IntegrationTests/Microsoft.VisualStudio.Project.IntegrationTests.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IntelliTect/PowerStudio/27f5a4c10f564c359ec18bfabb7853290aef1529/source/Microsoft.VisualStudio.Project/Dev10/Tests/IntegrationTests/Microsoft.VisualStudio.Project.IntegrationTests.csproj -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Tests/IntegrationTests/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | 5 | // General Information about an assembly is controlled through the following 6 | // set of attributes. Change these attribute values to modify the information 7 | // associated with an assembly. 8 | [assembly: AssemblyTitle("Microsoft.VisualStudio.Project.IntegrationTests")] 9 | [assembly: AssemblyDescription("")] 10 | [assembly: AssemblyConfiguration("")] 11 | [assembly: AssemblyCompany("Microsoft")] 12 | [assembly: AssemblyProduct("Microsoft.VisualStudio.Project.IntegrationTests")] 13 | [assembly: AssemblyCopyright("Copyright © Microsoft 2008")] 14 | [assembly: AssemblyTrademark("")] 15 | [assembly: AssemblyCulture("")] 16 | 17 | // Setting ComVisible to false makes the types in this assembly not visible 18 | // to COM components. If you need to access a type in this assembly from 19 | // COM, set the ComVisible attribute to true on that type. 20 | [assembly: ComVisible(false)] 21 | 22 | // The following GUID is for the ID of the typelib if this project is exposed to COM 23 | [assembly: Guid("23c044e6-5139-4142-bfc2-f3d538006633")] 24 | 25 | // Version information for an assembly consists of the following four values: 26 | // 27 | // Major Version 28 | // Minor Version 29 | // Build Number 30 | // Revision 31 | // 32 | // You can specify all the values or you can default the Revision and Build Numbers 33 | // by using the '*' as shown below: 34 | [assembly: AssemblyVersion("1.0.0.0")] 35 | [assembly: AssemblyFileVersion("1.0.0.0")] 36 | -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Tests/IntegrationTests/Utilities.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IntelliTect/PowerStudio/27f5a4c10f564c359ec18bfabb7853290aef1529/source/Microsoft.VisualStudio.Project/Dev10/Tests/IntegrationTests/Utilities.cs -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Tests/IntegrationTests/app.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Tests/IntegrationTests/packages.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Tests/UnitTests/Microsoft.VisualStudio.Project.UnitTests.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IntelliTect/PowerStudio/27f5a4c10f564c359ec18bfabb7853290aef1529/source/Microsoft.VisualStudio.Project/Dev10/Tests/UnitTests/Microsoft.VisualStudio.Project.UnitTests.csproj -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Tests/UnitTests/ProjectTestClass.cs: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | Copyright (c) Microsoft Corporation. All rights reserved. 4 | This code is licensed under the Visual Studio SDK license terms. 5 | THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF 6 | ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY 7 | IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR 8 | PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT. 9 | 10 | ***************************************************************************/ 11 | 12 | using System; 13 | using System.Runtime.InteropServices; 14 | 15 | namespace Microsoft.VisualStudio.Project.UnitTests 16 | { 17 | /// 18 | /// We want to test interfaces on ProjectNode which is an 19 | /// abstract class, therefore we need a derived class 20 | /// 21 | [ComVisible(true)] 22 | [Guid("82B6E04F-DBE2-45ba-B881-36C6109D6D1E")] 23 | internal class ProjectTestClass : VisualStudio.Project.ProjectNode 24 | { 25 | public ProjectTestClass() 26 | { 27 | // This would normally be done by default, but since we don't do official loading initialize it ourselves 28 | this.ProjectMgr = this; 29 | 30 | // To avoid having to mock the SCC stuff simply disable it 31 | this.IsSccDisabled = true; 32 | this.DisableQueryEdit = true; 33 | } 34 | 35 | public override Guid ProjectGuid 36 | { 37 | get { return this.GetType().GUID; } 38 | } 39 | 40 | public override string ProjectType 41 | { 42 | get { return "FakeProjectForUnitTestPurpose"; } 43 | } 44 | } 45 | } 46 | -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Tests/UnitTests/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | 5 | // General Information about an assembly is controlled through the following 6 | // set of attributes. Change these attribute values to modify the information 7 | // associated with an assembly. 8 | [assembly: AssemblyTitle("Microsoft.VisualStudio.Project.UnitTests")] 9 | [assembly: AssemblyDescription("")] 10 | [assembly: AssemblyConfiguration("")] 11 | [assembly: AssemblyCompany("Microsoft")] 12 | [assembly: AssemblyProduct("Microsoft.VisualStudio.Project.UnitTests")] 13 | [assembly: AssemblyCopyright("Copyright © Microsoft 2008")] 14 | [assembly: AssemblyTrademark("")] 15 | [assembly: AssemblyCulture("")] 16 | 17 | // Setting ComVisible to false makes the types in this assembly not visible 18 | // to COM components. If you need to access a type in this assembly from 19 | // COM, set the ComVisible attribute to true on that type. 20 | [assembly: ComVisible(false)] 21 | 22 | // The following GUID is for the ID of the typelib if this project is exposed to COM 23 | [assembly: Guid("f59f952e-5f1b-4596-8596-b9fce3249f5c")] 24 | 25 | // Version information for an assembly consists of the following four values: 26 | // 27 | // Major Version 28 | // Minor Version 29 | // Build Number 30 | // Revision 31 | // 32 | [assembly: AssemblyVersion("1.0.0.0")] 33 | [assembly: AssemblyFileVersion("1.0.0.0")] 34 | -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Tests/UnitTests/Resources/Image1.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IntelliTect/PowerStudio/27f5a4c10f564c359ec18bfabb7853290aef1529/source/Microsoft.VisualStudio.Project/Dev10/Tests/UnitTests/Resources/Image1.bmp -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Tests/UnitTests/Resources/ImageList.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IntelliTect/PowerStudio/27f5a4c10f564c359ec18bfabb7853290aef1529/source/Microsoft.VisualStudio.Project/Dev10/Tests/UnitTests/Resources/ImageList.bmp -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Tests/UnitTests/TestProject.proj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 8.0.50727 4 | 2.0 5 | {1231F66C-FF21-4DC6-8EEE-2BA88186DC16} 6 | VisualStudio.Project.UnitTests 7 | 8 | Global 9 | 10 | 11 | 12 | DebugValue 13 | 14 | 15 | ReleaseValue 16 | 17 | 18 | 19 | 20 | 21 | OtherFileProperty 22 | 23 | 24 | 25 | 26 | 27 | 28 | -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/Dev10/Tests/UnitTests/Utilities.cs: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | 3 | Copyright (c) Microsoft Corporation. All rights reserved. 4 | This code is licensed under the Visual Studio SDK license terms. 5 | THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF 6 | ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY 7 | IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR 8 | PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT. 9 | 10 | ***************************************************************************/ 11 | 12 | using System; 13 | using System.Reflection; 14 | using System.Runtime; 15 | 16 | namespace Microsoft.VisualStudio.Project.UnitTests 17 | { 18 | internal static class Utilities 19 | { 20 | public delegate void ThrowingFunction(); 21 | public static bool HasFunctionThrown(ThrowingFunction func) 22 | where ExceptionType : Exception 23 | { 24 | bool hasThrown = false; 25 | try 26 | { 27 | func(); 28 | } 29 | catch(ExceptionType) 30 | { 31 | hasThrown = true; 32 | } 33 | catch(TargetInvocationException e) 34 | { 35 | ExceptionType inner = e.InnerException as ExceptionType; 36 | if(null != inner) 37 | { 38 | hasThrown = true; 39 | } 40 | } 41 | 42 | return hasThrown; 43 | } 44 | } 45 | } 46 | -------------------------------------------------------------------------------- /source/Microsoft.VisualStudio.Project/readme.txt: -------------------------------------------------------------------------------- 1 | MPF for Projects 2 | Visual Studio 2010 Beta 1 Release 3 | 4 | This project is currently not accepting modifications. 5 | 6 | Download the source from the Downloads tab. 7 | 8 | When Visual Studio 2010 is RTM, we will update this source tree. 9 | 10 | At this point, this will be a community project. 11 | 12 | Chuck England 13 | Visual Studio Platform 14 | Program Manager - MSBuild -------------------------------------------------------------------------------- /source/PowerStudio.DebugEngine.Tests/Attributes/ProvideDebugEngineAttributeContext.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Runtime.InteropServices; 3 | using PowerStudio.DebugEngine.Attributes; 4 | using Microsoft.VisualStudio.Shell; 5 | using Rhino.Mocks; 6 | 7 | namespace PowerStudio.DebugEngine.Tests.Attributes 8 | { 9 | public abstract class ProvideDebugEngineAttributeContext 10 | { 11 | protected const string GuidString = "44444444-4444-4444-4444-444444444444"; 12 | protected RegistrationAttribute.RegistrationContext Context { get; private set; } 13 | protected ProvideDebugEngineAttribute EngineAttribute { get; private set; } 14 | protected RegistrationAttribute.Key Key { get; private set; } 15 | protected Type ComponentType { get; private set; } 16 | 17 | public virtual void Initialize() 18 | { 19 | ComponentType = typeof (DebugEngineUnderTest); 20 | Key = MockRepository.GenerateMock(); 21 | EngineAttribute = MockRepository.GenerateMock(ComponentType); 22 | Context = MockRepository.GenerateMock(); 23 | } 24 | 25 | public virtual void Cleanup() 26 | { 27 | Key.VerifyAllExpectations(); 28 | EngineAttribute.VerifyAllExpectations(); 29 | Context.VerifyAllExpectations(); 30 | } 31 | 32 | #region Nested type: DebugEngineUnderTest 33 | 34 | [Guid( GuidString )] 35 | public class DebugEngineUnderTest 36 | { 37 | } 38 | 39 | #endregion 40 | } 41 | } -------------------------------------------------------------------------------- /source/PowerStudio.DebugEngine.Tests/Fakes/SampleEngineWithIncompatibilities.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using PowerStudio.DebugEngine.Attributes; 6 | 7 | namespace PowerStudio.DebugEngine.Tests.Fakes 8 | { 9 | [IncompatibleWithComPlusNativeEngine] 10 | [IncompatibleWithComPlusNativeEngine(AutoSelect = true)] 11 | public class SampleEngineWithIncompatibilities 12 | { 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /source/PowerStudio.DebugEngine.Tests/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | 5 | // General Information about an assembly is controlled through the following 6 | // set of attributes. Change these attribute values to modify the information 7 | // associated with an assembly. 8 | [assembly: AssemblyTitle("DebugEngine.Tests")] 9 | [assembly: AssemblyDescription("")] 10 | [assembly: AssemblyConfiguration("")] 11 | [assembly: AssemblyCompany("Microsoft")] 12 | [assembly: AssemblyProduct("DebugEngine.Tests")] 13 | [assembly: AssemblyCopyright("Copyright © Microsoft 2011")] 14 | [assembly: AssemblyTrademark("")] 15 | [assembly: AssemblyCulture("")] 16 | 17 | // Setting ComVisible to false makes the types in this assembly not visible 18 | // to COM components. If you need to access a type in this assembly from 19 | // COM, set the ComVisible attribute to true on that type. 20 | [assembly: ComVisible(false)] 21 | 22 | // The following GUID is for the ID of the typelib if this project is exposed to COM 23 | [assembly: Guid("d1428bd5-0af5-430e-937b-4a2e23ac6611")] 24 | 25 | // Version information for an assembly consists of the following four values: 26 | // 27 | // Major Version 28 | // Minor Version 29 | // Build Number 30 | // Revision 31 | // 32 | // You can specify all the values or you can default the Build and Revision Numbers 33 | // by using the '*' as shown below: 34 | [assembly: AssemblyVersion("1.0.0.0")] 35 | [assembly: AssemblyFileVersion("1.0.0.0")] 36 | -------------------------------------------------------------------------------- /source/PowerStudio.DebugEngine/Attributes/IncompatibleDebugEngineAttribute.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio.DebugEngine Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using System; 15 | 16 | #endregion 17 | 18 | namespace PowerStudio.DebugEngine.Attributes 19 | { 20 | [AttributeUsage( AttributeTargets.Class, Inherited = true, AllowMultiple = true )] 21 | public abstract class IncompatibleDebugEngineAttribute : Attribute 22 | { 23 | protected IncompatibleDebugEngineAttribute() 24 | : this( false ) 25 | { 26 | } 27 | 28 | private IncompatibleDebugEngineAttribute( bool autoSelect ) 29 | { 30 | AutoSelect = autoSelect; 31 | } 32 | 33 | public abstract string Name { get; } 34 | public abstract Guid Guid { get; } 35 | public bool AutoSelect { get; set; } 36 | } 37 | } -------------------------------------------------------------------------------- /source/PowerStudio.DebugEngine/Attributes/IncompatibleWithComPlusNativeEngine.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio.DebugEngine Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using System; 15 | 16 | #endregion 17 | 18 | namespace PowerStudio.DebugEngine.Attributes 19 | { 20 | public sealed class IncompatibleWithComPlusNativeEngine : IncompatibleDebugEngineAttribute 21 | { 22 | #region Overrides of IncompatibleDebugEngineAttribute 23 | 24 | public override string Name 25 | { 26 | get { return "guidCOMPlusNativeEng"; } 27 | } 28 | 29 | public override Guid Guid 30 | { 31 | get { return EngineGuids.ComPlusNativeEngine; } 32 | } 33 | 34 | #endregion 35 | } 36 | } -------------------------------------------------------------------------------- /source/PowerStudio.DebugEngine/Attributes/IncompatibleWithComPlusOnlyEngine.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio.DebugEngine Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using System; 15 | 16 | #endregion 17 | 18 | namespace PowerStudio.DebugEngine.Attributes 19 | { 20 | public sealed class IncompatibleWithComPlusOnlyEngine : IncompatibleDebugEngineAttribute 21 | { 22 | #region Overrides of IncompatibleDebugEngineAttribute 23 | 24 | public override string Name 25 | { 26 | get { return "guidCOMPlusOnlyEng"; } 27 | } 28 | 29 | public override Guid Guid 30 | { 31 | get { return EngineGuids.ComPlusOnlyEngine; } 32 | } 33 | 34 | #endregion 35 | } 36 | } -------------------------------------------------------------------------------- /source/PowerStudio.DebugEngine/Attributes/IncompatibleWithComPlusOnlyEngine2.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio.DebugEngine Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using System; 15 | 16 | #endregion 17 | 18 | namespace PowerStudio.DebugEngine.Attributes 19 | { 20 | public sealed class IncompatibleWithComPlusOnlyEngine2 : IncompatibleDebugEngineAttribute 21 | { 22 | #region Overrides of IncompatibleDebugEngineAttribute 23 | 24 | public override string Name 25 | { 26 | get { return "guidCOMPlusOnlyEng2"; } 27 | } 28 | 29 | public override Guid Guid 30 | { 31 | get { return EngineGuids.ComPlusOnlyEngine2; } 32 | } 33 | 34 | #endregion 35 | } 36 | } -------------------------------------------------------------------------------- /source/PowerStudio.DebugEngine/Attributes/IncompatibleWithComPlusOnlyEngine4.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio.DebugEngine Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using System; 15 | 16 | #endregion 17 | 18 | namespace PowerStudio.DebugEngine.Attributes 19 | { 20 | public sealed class IncompatibleWithComPlusOnlyEngine4 : IncompatibleDebugEngineAttribute 21 | { 22 | #region Overrides of IncompatibleDebugEngineAttribute 23 | 24 | public override string Name 25 | { 26 | get { return "guidCOMPlusOnlyEng4"; } 27 | } 28 | 29 | public override Guid Guid 30 | { 31 | get { return EngineGuids.ComPlusOnlyEngine4; } 32 | } 33 | 34 | #endregion 35 | } 36 | } -------------------------------------------------------------------------------- /source/PowerStudio.DebugEngine/Attributes/IncompatibleWithComPlusSqlLocalEngine.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio.DebugEngine Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using System; 15 | 16 | #endregion 17 | 18 | namespace PowerStudio.DebugEngine.Attributes 19 | { 20 | public sealed class IncompatibleWithComPlusSqlLocalEngine : IncompatibleDebugEngineAttribute 21 | { 22 | #region Overrides of IncompatibleDebugEngineAttribute 23 | 24 | public override string Name 25 | { 26 | get { return "guidCOMPlusSQLLocalEng"; } 27 | } 28 | 29 | public override Guid Guid 30 | { 31 | get { return EngineGuids.ComPlusSqlLocalEngine; } 32 | } 33 | 34 | #endregion 35 | } 36 | } -------------------------------------------------------------------------------- /source/PowerStudio.DebugEngine/Attributes/IncompatibleWithNativeOnlyEngine.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio.DebugEngine Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using System; 15 | 16 | #endregion 17 | 18 | namespace PowerStudio.DebugEngine.Attributes 19 | { 20 | public sealed class IncompatibleWithNativeOnlyEngine : IncompatibleDebugEngineAttribute 21 | { 22 | #region Overrides of IncompatibleDebugEngineAttribute 23 | 24 | public override string Name 25 | { 26 | get { return "guidNativeOnlyEng"; } 27 | } 28 | 29 | public override Guid Guid 30 | { 31 | get { return EngineGuids.NativeOnlyEngine; } 32 | } 33 | 34 | #endregion 35 | } 36 | } -------------------------------------------------------------------------------- /source/PowerStudio.DebugEngine/Attributes/IncompatibleWithPowerGUIEngine.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio.DebugEngine Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using System; 15 | 16 | #endregion 17 | 18 | namespace PowerStudio.DebugEngine.Attributes 19 | { 20 | public sealed class IncompatibleWithPowerGUIEngine : IncompatibleDebugEngineAttribute 21 | { 22 | #region Overrides of IncompatibleDebugEngineAttribute 23 | 24 | public override string Name 25 | { 26 | get { return "PowerShell"; } 27 | } 28 | 29 | public override Guid Guid 30 | { 31 | get { return EngineGuids.PowerGUIEngine; } 32 | } 33 | 34 | #endregion 35 | } 36 | } -------------------------------------------------------------------------------- /source/PowerStudio.DebugEngine/Attributes/IncompatibleWithPowerStudioEngine.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio.DebugEngine Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using System; 15 | 16 | #endregion 17 | 18 | 19 | namespace PowerStudio.DebugEngine.Attributes 20 | { 21 | public sealed class IncompatibleWithPowerStudioEngine : IncompatibleDebugEngineAttribute 22 | { 23 | #region Overrides of IncompatibleDebugEngineAttribute 24 | 25 | public override string Name 26 | { 27 | get { return "PowerShell"; } 28 | } 29 | 30 | public override Guid Guid 31 | { 32 | get { return EngineGuids.PowerStudioEngineGuid; } 33 | } 34 | 35 | #endregion 36 | } 37 | } -------------------------------------------------------------------------------- /source/PowerStudio.DebugEngine/Attributes/IncompatibleWithProteusEngine.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio.DebugEngine Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using System; 15 | 16 | #endregion 17 | 18 | namespace PowerStudio.DebugEngine.Attributes 19 | { 20 | public sealed class IncompatibleWithProteusEngine : IncompatibleDebugEngineAttribute 21 | { 22 | #region Overrides of IncompatibleDebugEngineAttribute 23 | 24 | public override string Name 25 | { 26 | get { return "guidProteusEngine"; } 27 | } 28 | 29 | public override Guid Guid 30 | { 31 | get { return EngineGuids.ProteusEngine; } 32 | } 33 | 34 | #endregion 35 | } 36 | } -------------------------------------------------------------------------------- /source/PowerStudio.DebugEngine/Attributes/IncompatibleWithScriptEngine.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio.DebugEngine Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using System; 15 | 16 | #endregion 17 | 18 | namespace PowerStudio.DebugEngine.Attributes 19 | { 20 | public sealed class IncompatibleWithScriptEngine : IncompatibleDebugEngineAttribute 21 | { 22 | #region Overrides of IncompatibleDebugEngineAttribute 23 | 24 | public override string Name 25 | { 26 | get { return "guidScriptEng"; } 27 | } 28 | 29 | public override Guid Guid 30 | { 31 | get { return EngineGuids.ScriptEngine; } 32 | } 33 | 34 | #endregion 35 | } 36 | } -------------------------------------------------------------------------------- /source/PowerStudio.DebugEngine/Attributes/IncompatibleWithSilverlightEngine.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio.DebugEngine Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using System; 15 | 16 | #endregion 17 | 18 | namespace PowerStudio.DebugEngine.Attributes 19 | { 20 | public sealed class IncompatibleWithSilverlightEngine : IncompatibleDebugEngineAttribute 21 | { 22 | #region Overrides of IncompatibleDebugEngineAttribute 23 | 24 | public override string Name 25 | { 26 | get { return "guidSilverlightEng"; } 27 | } 28 | 29 | public override Guid Guid 30 | { 31 | get { return EngineGuids.SilverlightEngine; } 32 | } 33 | 34 | #endregion 35 | } 36 | } -------------------------------------------------------------------------------- /source/PowerStudio.DebugEngine/Attributes/IncompatibleWithSqlEngine2.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio.DebugEngine Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using System; 15 | 16 | #endregion 17 | 18 | namespace PowerStudio.DebugEngine.Attributes 19 | { 20 | public sealed class IncompatibleWithSqlEngine2 : IncompatibleDebugEngineAttribute 21 | { 22 | #region Overrides of IncompatibleDebugEngineAttribute 23 | 24 | public override string Name 25 | { 26 | get { return "guidSQLEng2"; } 27 | } 28 | 29 | public override Guid Guid 30 | { 31 | get { return EngineGuids.SqlEngine2; } 32 | } 33 | 34 | #endregion 35 | } 36 | } -------------------------------------------------------------------------------- /source/PowerStudio.DebugEngine/Attributes/IncompatibleWithWorkflowDebugEngine.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio.DebugEngine Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using System; 15 | 16 | #endregion 17 | 18 | namespace PowerStudio.DebugEngine.Attributes 19 | { 20 | public sealed class IncompatibleWithWorkflowDebugEngine : IncompatibleDebugEngineAttribute 21 | { 22 | #region Overrides of IncompatibleDebugEngineAttribute 23 | 24 | public override string Name 25 | { 26 | get { return "GUID_WorkflowDebugEngine"; } 27 | } 28 | 29 | public override Guid Guid 30 | { 31 | get { return EngineGuids.WorkflowDebugEngine; } 32 | } 33 | 34 | #endregion 35 | } 36 | } -------------------------------------------------------------------------------- /source/PowerStudio.DebugEngine/Attributes/ProvidePortSupplierAttribute.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio.DebugEngine Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using System; 15 | using Microsoft.VisualStudio.Debugger.Interop; 16 | 17 | #endregion 18 | 19 | namespace PowerStudio.DebugEngine.Attributes 20 | { 21 | [AttributeUsage( AttributeTargets.Class, Inherited = true, AllowMultiple = true )] 22 | public class ProvidePortSupplierAttribute : ProvideTypeAttribute 23 | { 24 | public ProvidePortSupplierAttribute( Type objectType ) 25 | : base( objectType ) 26 | { 27 | if ( !typeof (IDebugPortSupplier2).IsAssignableFrom( objectType ) ) 28 | { 29 | string message = string.Format( "The specified type [{0}] must be a debug program provider.", objectType ); 30 | throw new ArgumentException( message ); 31 | } 32 | } 33 | 34 | public ProvidePortSupplierAttribute( string id ) 35 | : base( id ) 36 | { 37 | } 38 | } 39 | } -------------------------------------------------------------------------------- /source/PowerStudio.DebugEngine/Attributes/ProvideProgramProviderAttribute.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio.DebugEngine Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using System; 15 | using Microsoft.VisualStudio.Debugger.Interop; 16 | 17 | #endregion 18 | 19 | namespace PowerStudio.DebugEngine.Attributes 20 | { 21 | [AttributeUsage( AttributeTargets.Class, Inherited = true, AllowMultiple = true )] 22 | public sealed class ProvideProgramProviderAttribute : ProvideTypeAttribute 23 | { 24 | public ProvideProgramProviderAttribute( Type type ) 25 | : base( type ) 26 | { 27 | if ( !typeof (IDebugProgramProvider2).IsAssignableFrom( type ) ) 28 | { 29 | string message = string.Format( "The specified type [{0}] must be a debug program provider.", type ); 30 | throw new ArgumentException( message ); 31 | } 32 | } 33 | } 34 | } -------------------------------------------------------------------------------- /source/PowerStudio.DebugEngine/ComThreadingModel.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio.DebugEngine Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | namespace PowerStudio.DebugEngine 13 | { 14 | public enum ComThreadingModel 15 | { 16 | Apartment, 17 | Free, 18 | Main, 19 | Both, 20 | Neutral, 21 | NotSpecified 22 | } 23 | } -------------------------------------------------------------------------------- /source/PowerStudio.DebugEngine/Enumerators/BoundBreakpointsEnumerator.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio.DebugEngine Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using Microsoft.VisualStudio.Debugger.Interop; 15 | 16 | #endregion 17 | 18 | namespace PowerStudio.DebugEngine.Enumerators 19 | { 20 | public class BoundBreakpointsEnumerator : EnumeratorBase, 21 | IEnumDebugBoundBreakpoints2 22 | { 23 | public BoundBreakpointsEnumerator( IDebugBoundBreakpoint2[] breakpoints ) 24 | : base( breakpoints ) 25 | { 26 | } 27 | 28 | #region IEnumDebugBoundBreakpoints2 Members 29 | 30 | public virtual int Next( uint celt, IDebugBoundBreakpoint2[] rgelt, ref uint celtFetched ) 31 | { 32 | return Next( celt, rgelt, out celtFetched ); 33 | } 34 | 35 | #endregion 36 | } 37 | } -------------------------------------------------------------------------------- /source/PowerStudio.DebugEngine/Enumerators/CodeContextEnumerator.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio.DebugEngine Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using Microsoft.VisualStudio.Debugger.Interop; 15 | 16 | #endregion 17 | 18 | namespace PowerStudio.DebugEngine.Enumerators 19 | { 20 | public class CodeContextEnumerator : EnumeratorBase, 21 | IEnumDebugCodeContexts2 22 | { 23 | public CodeContextEnumerator( IDebugCodeContext2[] codeContexts ) 24 | : base( codeContexts ) 25 | { 26 | } 27 | 28 | #region IEnumDebugCodeContexts2 Members 29 | 30 | public virtual int Next( uint celt, IDebugCodeContext2[] rgelt, ref uint celtFetched ) 31 | { 32 | return Next( celt, rgelt, out celtFetched ); 33 | } 34 | 35 | #endregion 36 | } 37 | } -------------------------------------------------------------------------------- /source/PowerStudio.DebugEngine/Enumerators/FrameInfoEnumerator.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio.DebugEngine Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using Microsoft.VisualStudio.Debugger.Interop; 15 | 16 | #endregion 17 | 18 | namespace PowerStudio.DebugEngine.Enumerators 19 | { 20 | public class FrameInfoEnumerator : EnumeratorBase, IEnumDebugFrameInfo2 21 | { 22 | public FrameInfoEnumerator( FRAMEINFO[] threads ) 23 | : base( threads ) 24 | { 25 | } 26 | 27 | #region IEnumDebugFrameInfo2 Members 28 | 29 | public virtual int Next( uint celt, FRAMEINFO[] rgelt, ref uint celtFetched ) 30 | { 31 | return Next( celt, rgelt, out celtFetched ); 32 | } 33 | 34 | #endregion 35 | } 36 | } -------------------------------------------------------------------------------- /source/PowerStudio.DebugEngine/Enumerators/ModuleEnumerator.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio.DebugEngine Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using Microsoft.VisualStudio.Debugger.Interop; 15 | 16 | #endregion 17 | 18 | namespace PowerStudio.DebugEngine.Enumerators 19 | { 20 | public class ModuleEnumerator : EnumeratorBase, IEnumDebugModules2 21 | { 22 | public ModuleEnumerator( IDebugModule2[] modules ) 23 | : base( modules ) 24 | { 25 | } 26 | 27 | #region IEnumDebugModules2 Members 28 | 29 | public virtual int Next( uint celt, IDebugModule2[] rgelt, ref uint celtFetched ) 30 | { 31 | return Next( celt, rgelt, out celtFetched ); 32 | } 33 | 34 | #endregion 35 | } 36 | } -------------------------------------------------------------------------------- /source/PowerStudio.DebugEngine/Enumerators/PendingBreakpointsEnumerator.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio.DebugEngine Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using Microsoft.VisualStudio.Debugger.Interop; 15 | 16 | #endregion 17 | 18 | namespace PowerStudio.DebugEngine.Enumerators 19 | { 20 | public class PendingBreakpointsEnumerator : EnumeratorBase, 21 | IEnumDebugPendingBreakpoints2 22 | { 23 | public PendingBreakpointsEnumerator( IDebugPendingBreakpoint2[] breakpoints ) 24 | : base( breakpoints ) 25 | { 26 | } 27 | 28 | #region IEnumDebugPendingBreakpoints2 Members 29 | 30 | public virtual int Next( uint celt, IDebugPendingBreakpoint2[] rgelt, ref uint celtFetched ) 31 | { 32 | return Next( celt, rgelt, out celtFetched ); 33 | } 34 | 35 | #endregion 36 | } 37 | } -------------------------------------------------------------------------------- /source/PowerStudio.DebugEngine/Enumerators/ProgramEnumerator.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio.DebugEngine Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using Microsoft.VisualStudio.Debugger.Interop; 15 | 16 | #endregion 17 | 18 | namespace PowerStudio.DebugEngine.Enumerators 19 | { 20 | public class ProgramEnumerator : EnumeratorBase, IEnumDebugPrograms2 21 | { 22 | public ProgramEnumerator( IDebugProgram2[] data ) 23 | : base( data ) 24 | { 25 | } 26 | 27 | #region IEnumDebugPrograms2 Members 28 | 29 | public virtual int Next( uint celt, IDebugProgram2[] rgelt, ref uint celtFetched ) 30 | { 31 | return Next( celt, rgelt, out celtFetched ); 32 | } 33 | 34 | #endregion 35 | } 36 | } -------------------------------------------------------------------------------- /source/PowerStudio.DebugEngine/Enumerators/PropertyEnumerator.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio.DebugEngine Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using Microsoft.VisualStudio.Debugger.Interop; 15 | 16 | #endregion 17 | 18 | namespace PowerStudio.DebugEngine.Enumerators 19 | { 20 | public class PropertyEnumerator : EnumeratorBase, 21 | IEnumDebugPropertyInfo2 22 | { 23 | public PropertyEnumerator( DEBUG_PROPERTY_INFO[] properties ) 24 | : base( properties ) 25 | { 26 | } 27 | } 28 | } -------------------------------------------------------------------------------- /source/PowerStudio.DebugEngine/Enumerators/PropertyInfoEnumerator.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio.DebugEngine Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using Microsoft.VisualStudio.Debugger.Interop; 15 | 16 | #endregion 17 | 18 | namespace PowerStudio.DebugEngine.Enumerators 19 | { 20 | public class PropertyInfoEnumerator : EnumeratorBase, 21 | IEnumDebugPropertyInfo2 22 | { 23 | public PropertyInfoEnumerator( DEBUG_PROPERTY_INFO[] data ) 24 | : base( data ) 25 | { 26 | } 27 | } 28 | } -------------------------------------------------------------------------------- /source/PowerStudio.DebugEngine/Enumerators/ThreadEnumerator.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio.DebugEngine Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using Microsoft.VisualStudio.Debugger.Interop; 15 | 16 | #endregion 17 | 18 | namespace PowerStudio.DebugEngine.Enumerators 19 | { 20 | public class ThreadEnumerator : EnumeratorBase, IEnumDebugThreads2 21 | { 22 | public ThreadEnumerator( IDebugThread2[] threads ) 23 | : base( threads ) 24 | { 25 | } 26 | 27 | #region IEnumDebugThreads2 Members 28 | 29 | public virtual int Next( uint celt, IDebugThread2[] rgelt, ref uint celtFetched ) 30 | { 31 | return Next( celt, rgelt, out celtFetched ); 32 | } 33 | 34 | #endregion 35 | } 36 | } -------------------------------------------------------------------------------- /source/PowerStudio.DebugEngine/Events/AsyncBreakCompleteEvent.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio.DebugEngine Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using Microsoft.VisualStudio.Debugger.Interop; 15 | 16 | #endregion 17 | 18 | namespace PowerStudio.DebugEngine.Events 19 | { 20 | /// 21 | /// This interface tells the session debug manager (SDM) that an asynchronous break has been successfully completed. 22 | /// 23 | public class AsyncBreakCompleteEvent : StoppingEvent, IDebugBreakEvent2 24 | { 25 | } 26 | } -------------------------------------------------------------------------------- /source/PowerStudio.DebugEngine/Events/AsynchronousEvent.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio.DebugEngine Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using Microsoft.VisualStudio.Debugger.Interop; 15 | 16 | #endregion 17 | 18 | namespace PowerStudio.DebugEngine.Events 19 | { 20 | public abstract class AsynchronousEvent : DebugEventBase 21 | { 22 | protected AsynchronousEvent() 23 | { 24 | Attributes = enum_EVENTATTRIBUTES.EVENT_ASYNCHRONOUS; 25 | } 26 | } 27 | } -------------------------------------------------------------------------------- /source/PowerStudio.DebugEngine/Events/DebugEventBase.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio.DebugEngine Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using Microsoft.VisualStudio; 15 | using Microsoft.VisualStudio.Debugger.Interop; 16 | 17 | #endregion 18 | 19 | namespace PowerStudio.DebugEngine.Events 20 | { 21 | public abstract class DebugEventBase : IDebugEvent2 22 | { 23 | public enum_EVENTATTRIBUTES Attributes { get; protected set; } 24 | 25 | #region Implementation of IDebugEvent2 26 | 27 | /// 28 | /// Gets the attributes for this debug event. 29 | /// 30 | /// A combination of flags from the EVENTATTRIBUTES enumeration. 31 | /// If successful, returns S_OK; otherwise, returns an error code. 32 | /// 33 | /// The IDebugEvent2 interface is common to all events. This method describes the type of event; for example, 34 | /// is the event synchronous or asynchronous and is it a stopping event. 35 | /// 36 | public virtual int GetAttributes( out uint pdwAttrib ) 37 | { 38 | pdwAttrib = (uint) Attributes; 39 | return VSConstants.S_OK; 40 | } 41 | 42 | #endregion 43 | } 44 | } -------------------------------------------------------------------------------- /source/PowerStudio.DebugEngine/Events/LoadCompleteEvent.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio.DebugEngine Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using Microsoft.VisualStudio.Debugger.Interop; 15 | 16 | #endregion 17 | 18 | namespace PowerStudio.DebugEngine.Events 19 | { 20 | /// 21 | /// This interface is sent by the debug engine (DE) to the session debug manager (SDM) when a program is loaded, but before any code is executed. 22 | /// 23 | public class LoadCompleteEvent : StoppingEvent, IDebugLoadCompleteEvent2 24 | { 25 | } 26 | } -------------------------------------------------------------------------------- /source/PowerStudio.DebugEngine/Events/OutputDebugStringEvent.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio.DebugEngine Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using Microsoft.VisualStudio; 15 | using Microsoft.VisualStudio.Debugger.Interop; 16 | 17 | #endregion 18 | 19 | namespace PowerStudio.DebugEngine.Events 20 | { 21 | /// 22 | /// This interface is sent by the debug engine (DE) to the session debug manager (SDM) to output a string for debug tracing. 23 | /// 24 | internal sealed class OutputDebugStringEvent : AsynchronousEvent, IDebugOutputStringEvent2 25 | { 26 | public OutputDebugStringEvent( string value ) 27 | { 28 | Value = value; 29 | } 30 | 31 | public string Value { get; private set; } 32 | 33 | #region IDebugOutputStringEvent2 Members 34 | 35 | /// 36 | /// Gets the displayable message. 37 | /// 38 | /// Returns the displayable message. 39 | /// If successful, returns S_OK; otherwise, returns an error code. 40 | public int GetString( out string pbstrString ) 41 | { 42 | pbstrString = Value; 43 | return VSConstants.S_OK; 44 | } 45 | 46 | #endregion 47 | } 48 | } -------------------------------------------------------------------------------- /source/PowerStudio.DebugEngine/Events/ProgramCreateEvent.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio.DebugEngine Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using Microsoft.VisualStudio.Debugger.Interop; 15 | 16 | #endregion 17 | 18 | namespace PowerStudio.DebugEngine.Events 19 | { 20 | /// 21 | /// This interface is sent by the debug DebugEngine (DE) to the session debug manager (SDM) when a program is attached to. 22 | /// 23 | public class ProgramCreateEvent : AsynchronousEvent, IDebugProgramCreateEvent2 24 | { 25 | } 26 | } -------------------------------------------------------------------------------- /source/PowerStudio.DebugEngine/Events/ProgramDestroyEvent.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio.DebugEngine Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using Microsoft.VisualStudio; 15 | using Microsoft.VisualStudio.Debugger.Interop; 16 | 17 | #endregion 18 | 19 | namespace PowerStudio.DebugEngine.Events 20 | { 21 | /// 22 | /// This interface is sent by the debug engine (DE) to the session debug manager (SDM) when a program has run to completion or is otherwise destroyed. 23 | /// 24 | public class ProgramDestroyEvent : SynchronousEvent, IDebugProgramDestroyEvent2 25 | { 26 | public ProgramDestroyEvent( uint exitCode ) 27 | { 28 | ExitCode = exitCode; 29 | } 30 | 31 | public uint ExitCode { get; private set; } 32 | 33 | #region IDebugProgramDestroyEvent2 Members 34 | 35 | /// 36 | /// Gets the program's exit code. 37 | /// 38 | /// Returns the program's exit code. 39 | /// If successful, returns S_OK; otherwise, returns an error code. 40 | public virtual int GetExitCode( out uint exitCode ) 41 | { 42 | exitCode = ExitCode; 43 | return VSConstants.S_OK; 44 | } 45 | 46 | #endregion 47 | } 48 | } -------------------------------------------------------------------------------- /source/PowerStudio.DebugEngine/Events/StoppingEvent.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio.DebugEngine Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using Microsoft.VisualStudio.Debugger.Interop; 15 | 16 | #endregion 17 | 18 | namespace PowerStudio.DebugEngine.Events 19 | { 20 | public abstract class StoppingEvent : DebugEventBase 21 | { 22 | protected StoppingEvent() 23 | { 24 | Attributes = enum_EVENTATTRIBUTES.EVENT_ASYNC_STOP; 25 | } 26 | } 27 | } -------------------------------------------------------------------------------- /source/PowerStudio.DebugEngine/Events/SynchronousEvent.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio.DebugEngine Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using Microsoft.VisualStudio.Debugger.Interop; 15 | 16 | #endregion 17 | 18 | namespace PowerStudio.DebugEngine.Events 19 | { 20 | public abstract class SynchronousEvent : DebugEventBase 21 | { 22 | protected SynchronousEvent() 23 | { 24 | Attributes = enum_EVENTATTRIBUTES.EVENT_SYNCHRONOUS; 25 | } 26 | } 27 | } -------------------------------------------------------------------------------- /source/PowerStudio.DebugEngine/Events/SynchronousStoppingEvent.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio.DebugEngine Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using Microsoft.VisualStudio.Debugger.Interop; 15 | 16 | #endregion 17 | 18 | namespace PowerStudio.DebugEngine.Events 19 | { 20 | public abstract class SynchronousStoppingEvent : DebugEventBase 21 | { 22 | protected SynchronousStoppingEvent() 23 | { 24 | Attributes = enum_EVENTATTRIBUTES.EVENT_STOPPING | enum_EVENTATTRIBUTES.EVENT_SYNCHRONOUS; 25 | } 26 | } 27 | } -------------------------------------------------------------------------------- /source/PowerStudio.DebugEngine/Events/ThreadCreateEvent.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio.DebugEngine Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using Microsoft.VisualStudio.Debugger.Interop; 15 | 16 | #endregion 17 | 18 | namespace PowerStudio.DebugEngine.Events 19 | { 20 | /// 21 | /// This interface is sent by the debug engine (DE) to the session debug manager (SDM) when a thread is created in a program being debugged. 22 | /// 23 | public class ThreadCreateEvent : AsynchronousEvent, IDebugThreadCreateEvent2 24 | { 25 | } 26 | } -------------------------------------------------------------------------------- /source/PowerStudio.DebugEngine/Events/ThreadDestroyEvent.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio.DebugEngine Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using Microsoft.VisualStudio; 15 | using Microsoft.VisualStudio.Debugger.Interop; 16 | 17 | #endregion 18 | 19 | namespace PowerStudio.DebugEngine.Events 20 | { 21 | /// 22 | /// This interface is sent by the debug engine (DE) to the session debug manager (SDM) when a thread has exited. 23 | /// 24 | public class ThreadDestroyEvent : AsynchronousEvent, IDebugThreadDestroyEvent2 25 | { 26 | public ThreadDestroyEvent( uint exitCode ) 27 | { 28 | ExitCode = exitCode; 29 | } 30 | 31 | public uint ExitCode { get; private set; } 32 | 33 | #region IDebugThreadDestroyEvent2 Members 34 | 35 | /// 36 | /// Gets the exit code for a thread. 37 | /// 38 | /// Returns the thread's exit code. 39 | /// If successful, returns S_OK; otherwise, returns an error code. 40 | public virtual int GetExitCode( out uint exitCode ) 41 | { 42 | exitCode = ExitCode; 43 | return VSConstants.S_OK; 44 | } 45 | 46 | #endregion 47 | } 48 | } -------------------------------------------------------------------------------- /source/PowerStudio.DebugEngine/Guids.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio.DebugEngine Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using System; 15 | 16 | #endregion 17 | 18 | namespace PowerStudio.DebugEngine 19 | { 20 | public static class Guids 21 | { 22 | public static readonly Guid FilterRegistersGuid = new Guid("223ae797-bd09-4f28-8241-2763bdc5f713"); 23 | public static readonly Guid FilterLocalsGuid = new Guid("b200f725-e725-4c53-b36a-1ec27aef12ef"); 24 | public static readonly Guid FilterAllLocalsGuid = new Guid("196db21f-5f22-45a9-b5a3-32cddb30db06"); 25 | public static readonly Guid FilterArgsGuid = new Guid("804bccea-0475-4ae7-8a46-1862688ab863"); 26 | public static readonly Guid FilterLocalsPlusArgsGuid = new Guid("e74721bb-10c0-40f5-807f-920d37f95419"); 27 | public static readonly Guid FilterAllLocalsPlusArgsGuid = new Guid("939729a8-4cb0-4647-9831-7ff465240d5f"); 28 | public static readonly Guid CppLanguageGuid = new Guid("3a12d0b7-c26c-11d0-b442-00a0244a1dd2"); 29 | } 30 | } -------------------------------------------------------------------------------- /source/PowerStudio.DebugEngine/IDebugEngineEventSource.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio.DebugEngine Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using Microsoft.VisualStudio.Debugger.Interop; 15 | 16 | #endregion 17 | 18 | namespace PowerStudio.DebugEngine 19 | { 20 | public interface IDebugEngineEventSource 21 | { 22 | void OnAsyncBreakComplete(); 23 | void OnBreakpointBound( Breakpoint pendingBreakpoint, Breakpoint boundBreakpoint ); 24 | void OnBreakpoint( IEnumDebugBoundBreakpoints2 boundBreakpoints ); 25 | void OnDebugEngineCreate(); 26 | void OnLoadComplete(); 27 | 28 | void OnModuleLoad( DebugModuleBase debugModule, bool isLoading ); 29 | 30 | void OnOutputDebugString( string outputString ); 31 | void OnProgramCreate( IDebugProgram2 program ); 32 | void OnProgramDestroy( uint exitCode ); 33 | 34 | void OnSymbolSearch( DebugModuleBase module, 35 | string debugMessage, 36 | enum_MODULE_INFO_FLAGS moduleInfoFlags ); 37 | 38 | void OnThreadCreate(); 39 | void OnThreadDestroy( uint exitCode ); 40 | } 41 | } -------------------------------------------------------------------------------- /source/PowerStudio.DebugEngine/PortSuppliers/DefaultPortProvider.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio.DebugEngine Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using System.Runtime.InteropServices; 15 | 16 | #endregion 17 | 18 | namespace PowerStudio.DebugEngine.PortSuppliers 19 | { 20 | [Guid( InterfaceGuids.DefaultPortSupplierGuidString )] 21 | public abstract class DefaultPortSupplier 22 | { 23 | } 24 | } -------------------------------------------------------------------------------- /source/PowerStudio.DebugEngine/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.InteropServices; 3 | 4 | // General Information about an assembly is controlled through the following 5 | // set of attributes. Change these attribute values to modify the information 6 | // associated with an assembly. 7 | 8 | [assembly : AssemblyTitle( "DebugEngine" )] 9 | [assembly : AssemblyDescription( "" )] 10 | [assembly : AssemblyConfiguration( "" )] 11 | [assembly : AssemblyTrademark( "" )] 12 | [assembly : AssemblyCulture( "" )] 13 | 14 | // Setting ComVisible to false makes the types in this assembly not visible 15 | // to COM components. If you need to access a type in this assembly from 16 | // COM, set the ComVisible attribute to true on that type. 17 | 18 | [assembly : ComVisible( false )] 19 | 20 | // The following GUID is for the ID of the typelib if this project is exposed to COM 21 | 22 | [assembly : Guid( "436ca1be-b4aa-4c84-96e4-330de5d1035a" )] -------------------------------------------------------------------------------- /source/PowerStudio.Debugger.Tests/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | 5 | // General Information about an assembly is controlled through the following 6 | // set of attributes. Change these attribute values to modify the information 7 | // associated with an assembly. 8 | [assembly: AssemblyTitle("PowerStudio.Debugger.Tests")] 9 | [assembly: AssemblyDescription("")] 10 | [assembly: AssemblyConfiguration("")] 11 | [assembly: AssemblyCompany("Microsoft")] 12 | [assembly: AssemblyProduct("PowerStudio.Debugger.Tests")] 13 | [assembly: AssemblyCopyright("Copyright © Microsoft 2011")] 14 | [assembly: AssemblyTrademark("")] 15 | [assembly: AssemblyCulture("")] 16 | 17 | // Setting ComVisible to false makes the types in this assembly not visible 18 | // to COM components. If you need to access a type in this assembly from 19 | // COM, set the ComVisible attribute to true on that type. 20 | [assembly: ComVisible(false)] 21 | 22 | // The following GUID is for the ID of the typelib if this project is exposed to COM 23 | [assembly: Guid("61e6230a-25b8-4c42-943f-be9dabd906bc")] 24 | 25 | // Version information for an assembly consists of the following four values: 26 | // 27 | // Major Version 28 | // Minor Version 29 | // Build Number 30 | // Revision 31 | // 32 | // You can specify all the values or you can default the Build and Revision Numbers 33 | // by using the '*' as shown below: 34 | [assembly: AssemblyVersion("1.0.0.0")] 35 | [assembly: AssemblyFileVersion("1.0.0.0")] 36 | -------------------------------------------------------------------------------- /source/PowerStudio.Debugger/PowerShellDebugPort.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using System; 15 | using System.Runtime.InteropServices; 16 | using PowerStudio.DebugEngine; 17 | using Microsoft.VisualStudio; 18 | using NLog; 19 | using PowerStudio.Resources; 20 | 21 | #endregion 22 | 23 | namespace PowerStudio.Debugger 24 | { 25 | [ComVisible( true )] 26 | [Guid( PsConstants.PortGuid )] 27 | public class PowerShellDebugPort : DebugPort 28 | { 29 | private static readonly Logger Logger = LogManager.GetCurrentClassLogger(); 30 | 31 | /// 32 | /// Gets the port identifier. 33 | /// 34 | /// Returns the GUID that identifies the port. 35 | /// 36 | /// If successful, returns S_OK; otherwise, returns an error code. 37 | /// 38 | public override int GetPortId( out Guid pguidPort ) 39 | { 40 | Logger.Debug( string.Empty ); 41 | pguidPort = GetType().GUID; 42 | return VSConstants.S_OK; 43 | } 44 | } 45 | } -------------------------------------------------------------------------------- /source/PowerStudio.Debugger/PowerShellDebuggerEvents.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using System; 15 | using Microsoft.VisualStudio; 16 | using Microsoft.VisualStudio.Debugger.Interop; 17 | using Microsoft.VisualStudio.Shell.Interop; 18 | using NLog; 19 | 20 | #endregion 21 | 22 | namespace PowerStudio.Debugger 23 | { 24 | public class PowerShellDebuggerEvents : IVsDebuggerEvents, IDebugEventCallback2 25 | { 26 | private static readonly Logger Logger = LogManager.GetCurrentClassLogger(); 27 | 28 | #region Implementation of IVsDebuggerEvents 29 | 30 | public int OnModeChange( DBGMODE dbgmodeNew ) 31 | { 32 | Logger.Debug( string.Empty ); 33 | return VSConstants.S_OK; 34 | } 35 | 36 | #endregion 37 | 38 | #region Implementation of IDebugEventCallback2 39 | 40 | public int Event( IDebugEngine2 pEngine, 41 | IDebugProcess2 pProcess, 42 | IDebugProgram2 pProgram, 43 | IDebugThread2 pThread, 44 | IDebugEvent2 pEvent, 45 | ref Guid riidEvent, 46 | uint dwAttrib ) 47 | { 48 | Logger.Debug( string.Empty ); 49 | 50 | return VSConstants.S_OK; 51 | } 52 | 53 | #endregion 54 | } 55 | } -------------------------------------------------------------------------------- /source/PowerStudio.Debugger/PowerShellProgramProvider.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using System.Runtime.InteropServices; 15 | using PowerStudio.DebugEngine; 16 | using NLog; 17 | using PowerStudio.Resources; 18 | 19 | #endregion 20 | 21 | namespace PowerStudio.Debugger 22 | { 23 | [ComVisible( true )] 24 | [Guid( PsConstants.ProgramProviderGuid )] 25 | public class PowerShellProgramProvider : DebugProgramProvider 26 | { 27 | private static readonly Logger Logger = LogManager.GetCurrentClassLogger(); 28 | 29 | public PowerShellProgramProvider() 30 | { 31 | Logger.Debug( string.Empty ); 32 | } 33 | } 34 | } -------------------------------------------------------------------------------- /source/PowerStudio.Debugger/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.InteropServices; 3 | 4 | // General Information about an assembly is controlled through the following 5 | // set of attributes. Change these attribute values to modify the information 6 | // associated with an assembly. 7 | 8 | [assembly : AssemblyTitle( "PowerStudio.Debugger" )] 9 | [assembly : AssemblyDescription( "" )] 10 | [assembly : AssemblyConfiguration( "" )] 11 | [assembly : AssemblyTrademark( "" )] 12 | [assembly : AssemblyCulture( "" )] 13 | 14 | // Setting ComVisible to false makes the types in this assembly not visible 15 | // to COM components. If you need to access a type in this assembly from 16 | // COM, set the ComVisible attribute to true on that type. 17 | 18 | [assembly : ComVisible( false )] 19 | 20 | // The following GUID is for the ID of the typelib if this project is exposed to COM 21 | 22 | [assembly : Guid( "409d589b-d62d-42ae-b775-e7607c4ae558" )] -------------------------------------------------------------------------------- /source/PowerStudio.Integration.Tests/PackageTest.cs: -------------------------------------------------------------------------------- 1 | #region Using Directives 2 | 3 | using System; 4 | using Microsoft.VisualStudio.Shell.Interop; 5 | using Microsoft.VisualStudio.TestTools.UnitTesting; 6 | using Microsoft.VSSDK.Tools.VsIdeTesting; 7 | using PowerStudio.Resources; 8 | 9 | #endregion 10 | 11 | namespace PowerStudio.Integration.Tests 12 | { 13 | /// 14 | /// Integration test for package validation 15 | /// 16 | [TestClass] 17 | public class HostedPackageTest 18 | { 19 | /// 20 | /// Gets or sets the test context which provides 21 | /// information about and functionality for the current test run. 22 | /// 23 | public TestContext TestContext { get; set; } 24 | 25 | [TestMethod] 26 | [HostType( "VS IDE" )] 27 | public void PackageLoadTest() 28 | { 29 | UIThreadInvoker.Invoke( (Action) OnPackageLoad ); 30 | } 31 | 32 | private void OnPackageLoad() 33 | { 34 | //Get the Shell Service 35 | var shellService = VsIdeTestHostContext.ServiceProvider.GetService( typeof (SVsShell) ) as IVsShell; 36 | Assert.IsNotNull( shellService ); 37 | 38 | //Validate package load 39 | IVsPackage package; 40 | var packageGuid = new Guid( PsConstants.LanuageServiceGuid ); 41 | Assert.IsTrue( 0 == shellService.LoadPackage( ref packageGuid, out package ) ); 42 | Assert.IsNotNull( package, "Package failed to load" ); 43 | } 44 | } 45 | } -------------------------------------------------------------------------------- /source/PowerStudio.Integration.Tests/PackageTests.cs: -------------------------------------------------------------------------------- 1 | #region Using Directives 2 | 3 | using Microsoft.VisualStudio; 4 | using Microsoft.VisualStudio.Shell.Interop; 5 | using Microsoft.VsSDK.UnitTestLibrary; 6 | using Xunit; 7 | 8 | #endregion 9 | 10 | namespace PowerStudio.Integration.Tests 11 | { 12 | public class PackageTests 13 | { 14 | [Fact] 15 | public void CreateInstance() 16 | { 17 | var package = new PowerShellPackage(); 18 | } 19 | 20 | [Fact] 21 | public void IsIVsPackage() 22 | { 23 | var package = new PowerShellPackage(); 24 | var ivsPackage = package as IVsPackage; 25 | Assert.NotNull( ivsPackage ); 26 | } 27 | 28 | [Fact( Skip = "Not Implemented" )] 29 | public void SetSite() 30 | { 31 | // Create the package 32 | IVsPackage package = new PowerShellPackage(); 33 | Assert.NotNull( package ); 34 | 35 | // Create a basic service provider 36 | OleServiceProvider serviceProvider = OleServiceProvider.CreateOleServiceProviderWithBasicServices(); 37 | 38 | // Site the package 39 | Assert.Equal( VSConstants.S_OK, package.SetSite( serviceProvider ) ); 40 | 41 | // Unsite the package 42 | Assert.Equal( VSConstants.S_OK, package.SetSite( null ) ); 43 | } 44 | } 45 | } -------------------------------------------------------------------------------- /source/PowerStudio.Integration.Tests/SignOff-Tests/SolutionTests.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using Microsoft.VisualStudio.Shell.Interop; 3 | using Microsoft.VisualStudio.TestTools.UnitTesting; 4 | using Microsoft.VsSDK.IntegrationTestLibrary; 5 | using Microsoft.VSSDK.Tools.VsIdeTesting; 6 | 7 | namespace PowerShell.LanguageService_IntegrationTests.IntegrationTests 8 | { 9 | [TestClass] 10 | public class SolutionTests 11 | { 12 | /// 13 | ///Gets or sets the test context which provides 14 | ///information about and functionality for the current test run. 15 | /// 16 | public TestContext TestContext { get; set; } 17 | 18 | 19 | [TestMethod] 20 | [HostType( "VS IDE" )] 21 | public void AnEmptySolutionCanBeCreated() 22 | { 23 | UIThreadInvoker.Invoke( (Action) CreateEmptySolution ); 24 | } 25 | 26 | public void CreateEmptySolution() 27 | { 28 | var testUtils = new TestUtils(); 29 | testUtils.CloseCurrentSolution( 30 | __VSSLNSAVEOPTIONS.SLNSAVEOPT_NoSave ); 31 | testUtils.CreateEmptySolution( TestContext.TestDir, "EmptySolution" ); 32 | } 33 | } 34 | } -------------------------------------------------------------------------------- /source/PowerStudio.LanguageServices.Batch/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | 5 | // General Information about an assembly is controlled through the following 6 | // set of attributes. Change these attribute values to modify the information 7 | // associated with an assembly. 8 | [assembly: AssemblyTitle("PowerStudio.LanguageServices.Batch")] 9 | [assembly: AssemblyDescription("")] 10 | [assembly: AssemblyConfiguration("")] 11 | [assembly: AssemblyCompany("Microsoft")] 12 | [assembly: AssemblyProduct("PowerStudio.LanguageServices.Batch")] 13 | [assembly: AssemblyCopyright("Copyright © Microsoft 2011")] 14 | [assembly: AssemblyTrademark("")] 15 | [assembly: AssemblyCulture("")] 16 | 17 | // Setting ComVisible to false makes the types in this assembly not visible 18 | // to COM components. If you need to access a type in this assembly from 19 | // COM, set the ComVisible attribute to true on that type. 20 | [assembly: ComVisible(false)] 21 | 22 | // The following GUID is for the ID of the typelib if this project is exposed to COM 23 | [assembly: Guid("ec96e890-1f6d-409b-90b3-f38671aaecbc")] 24 | 25 | // Version information for an assembly consists of the following four values: 26 | // 27 | // Major Version 28 | // Minor Version 29 | // Build Number 30 | // Revision 31 | // 32 | // You can specify all the values or you can default the Build and Revision Numbers 33 | // by using the '*' as shown below: 34 | // [assembly: AssemblyVersion("1.0.*")] 35 | [assembly: AssemblyVersion("1.0.0.0")] 36 | [assembly: AssemblyFileVersion("1.0.0.0")] 37 | -------------------------------------------------------------------------------- /source/PowerStudio.LanguageServices.Batch/Tagging/BatchToken.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | namespace PowerStudio.LanguageServices.Batch.Tagging 13 | { 14 | public class BatchToken 15 | { 16 | public string Text { get; set; } 17 | public BatchTokenType TokenType { get; set; } 18 | public int Start { get; set; } 19 | 20 | public int Length 21 | { 22 | get { return string.IsNullOrEmpty(Text) ? 0 : Text.Length; } 23 | } 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /source/PowerStudio.LanguageServices.Batch/Tagging/BatchTokenType.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | namespace PowerStudio.LanguageServices.Batch.Tagging 13 | { 14 | public enum BatchTokenType 15 | { 16 | Statement, 17 | Variable, 18 | Lable 19 | } 20 | } -------------------------------------------------------------------------------- /source/PowerStudio.LanguageServices.Batch/Tagging/Tags/BatchTokenTag.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using PowerStudio.LanguageServices.Tagging.Tags; 15 | 16 | #endregion 17 | 18 | namespace PowerStudio.LanguageServices.Batch.Tagging.Tags 19 | { 20 | public class BatchTokenTag : TokenTag 21 | { 22 | public BatchTokenTag( BatchToken token ) 23 | { 24 | Token = token; 25 | } 26 | } 27 | } -------------------------------------------------------------------------------- /source/PowerStudio.LanguageServices.Ini.Tests/IniParserTests.cs: -------------------------------------------------------------------------------- 1 | #region Using Directives 2 | 3 | using System; 4 | using System.Collections.Generic; 5 | using System.Linq; 6 | using PowerStudio.LanguageServices.Ini.Tagging; 7 | using Xunit; 8 | 9 | #endregion 10 | 11 | namespace PowerStudio.LanguageServices.Ini.Tests 12 | { 13 | public class IniParserTests 14 | { 15 | private readonly IniParser Parser = new IniParser(); 16 | 17 | [Fact] 18 | public void single_line_comment_returns_a_single_comment_token() 19 | { 20 | string text = ";TheDudeAbides"; 21 | IEnumerable results = Parser.Parse( text ); 22 | Assert.Equal( 1, results.Count() ); 23 | IniToken actual = results.First(); 24 | Assert.Equal( IniTokenType.Comment, actual.Type ); 25 | Assert.Equal( text, actual.Text ); 26 | Assert.Equal( 0, actual.Start ); 27 | } 28 | 29 | [Fact] 30 | public void single_line_comment_with_a_newline_returns_a_comment_token_and_whitespace_token() 31 | { 32 | string text = ";TheDudeAbides" + Environment.NewLine; 33 | IEnumerable results = Parser.Parse( text ); 34 | Assert.Equal( 2, results.Count() ); 35 | IniToken comment = results.First(); 36 | Assert.Equal( IniTokenType.Comment, comment.Type ); 37 | IniToken newline = results.Last(); 38 | Assert.Equal( IniTokenType.Whitespace, newline.Type ); 39 | } 40 | } 41 | } -------------------------------------------------------------------------------- /source/PowerStudio.LanguageServices.Ini.Tests/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.InteropServices; 3 | 4 | // General Information about an assembly is controlled through the following 5 | // set of attributes. Change these attribute values to modify the information 6 | // associated with an assembly. 7 | [assembly: AssemblyTitle("PowerStudio.LanguageServices.Ini.Tests")] 8 | [assembly: AssemblyDescription("")] 9 | [assembly: AssemblyConfiguration("")] 10 | [assembly: AssemblyTrademark("")] 11 | [assembly: AssemblyCulture("")] 12 | 13 | // Setting ComVisible to false makes the types in this assembly not visible 14 | // to COM components. If you need to access a type in this assembly from 15 | // COM, set the ComVisible attribute to true on that type. 16 | [assembly: ComVisible(false)] 17 | 18 | // The following GUID is for the ID of the typelib if this project is exposed to COM 19 | [assembly: Guid("477591c8-2294-43fc-ad7d-8bc2308e4544")] 20 | -------------------------------------------------------------------------------- /source/PowerStudio.LanguageServices.Ini/LanguageConfiguration.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using System.ComponentModel.Composition; 15 | using Microsoft.VisualStudio.Utilities; 16 | 17 | #endregion 18 | 19 | namespace PowerStudio.LanguageServices.Ini 20 | { 21 | public static class LanguageConfiguration 22 | { 23 | public const string Name = "ini"; 24 | 25 | public const string BaseDefinitionName = "text"; 26 | 27 | #pragma warning disable 0649 28 | 29 | [Export] 30 | [Name( Name )] 31 | [BaseDefinition( BaseDefinitionName )] 32 | internal static ContentTypeDefinition IniContentTypeDefinition; 33 | 34 | [Export] 35 | [FileExtension( ".ini" )] 36 | [ContentType( Name )] 37 | internal static FileExtensionToContentTypeDefinition IniFileExtensionDefinition; 38 | 39 | #pragma warning restore 0649 40 | } 41 | } -------------------------------------------------------------------------------- /source/PowerStudio.LanguageServices.Ini/NumberIdenifier.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using System.Text.RegularExpressions; 15 | 16 | #endregion 17 | 18 | namespace PowerStudio.LanguageServices.Ini 19 | { 20 | public static class NumberIdenifier 21 | { 22 | public static readonly Regex FloatingPointNumberRegexWithExponent = 23 | new Regex( @"[-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)?", RegexOptions.Compiled ); 24 | 25 | public static bool IsNumber( string value ) 26 | { 27 | if ( string.IsNullOrWhiteSpace( value ) ) 28 | { 29 | return false; 30 | } 31 | bool isMatch = FloatingPointNumberRegexWithExponent.IsMatch( value ); 32 | return isMatch; 33 | } 34 | } 35 | } -------------------------------------------------------------------------------- /source/PowerStudio.LanguageServices.Ini/Tagging/IniToken.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | namespace PowerStudio.LanguageServices.Ini.Tagging 13 | { 14 | public class IniToken 15 | { 16 | public string Text { get; set; } 17 | public IniTokenType Type { get; set; } 18 | public int Start { get; set; } 19 | 20 | public int Length 21 | { 22 | get { return string.IsNullOrEmpty( Text ) ? 0 : Text.Length; } 23 | } 24 | } 25 | } -------------------------------------------------------------------------------- /source/PowerStudio.LanguageServices.Ini/Tagging/IniTokenType.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | namespace PowerStudio.LanguageServices.Ini.Tagging 13 | { 14 | public enum IniTokenType 15 | { 16 | None, 17 | Whitespace, 18 | Comment, 19 | Delimiter, 20 | Section, 21 | Attribute, 22 | AttributeValue, 23 | AttributeValueString, 24 | AttributeValueNumber, 25 | } 26 | } -------------------------------------------------------------------------------- /source/PowerStudio.LanguageServices.Ini/Tagging/Providers/ClassificationTaggerProvider.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using System; 15 | using System.ComponentModel.Composition; 16 | using Microsoft.VisualStudio.Text; 17 | using Microsoft.VisualStudio.Text.Classification; 18 | using Microsoft.VisualStudio.Text.Tagging; 19 | using Microsoft.VisualStudio.Utilities; 20 | using PowerStudio.LanguageServices.Ini.Tagging.Taggers; 21 | using PowerStudio.LanguageServices.Tagging.Providers; 22 | using PowerStudio.LanguageServices.Tagging.Tags; 23 | 24 | #endregion 25 | 26 | namespace PowerStudio.LanguageServices.Ini.Tagging.Providers 27 | { 28 | [Export( typeof (ITaggerProvider) )] 29 | [ContentType( LanguageConfiguration.Name )] 30 | [TagType( typeof (TokenClassificationTag) )] 31 | public class ClassificationTaggerProvider : TaggerProviderBase 32 | { 33 | #pragma warning disable 0649 34 | [Import] 35 | internal IClassificationTypeRegistryService ClassificationTypeRegistry; 36 | #pragma warning restore 0649 37 | 38 | protected override Func> GetFactory( ITextBuffer buffer ) 39 | { 40 | var tokenClassification = new TokenClassifier( ClassificationTypeRegistry, buffer ); 41 | return () => new ClassificationTagger( buffer, tokenClassification ) as ITagger; 42 | } 43 | } 44 | } -------------------------------------------------------------------------------- /source/PowerStudio.LanguageServices.PowerShell/Editor/MethodGlyphFactory.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using System.Management.Automation; 15 | using System.Windows; 16 | using System.Windows.Media; 17 | using System.Windows.Shapes; 18 | using Microsoft.VisualStudio.Text.Formatting; 19 | using PowerStudio.LanguageServices.Editor; 20 | using PowerStudio.LanguageServices.PowerShell.Tagging.Tags; 21 | 22 | #endregion 23 | 24 | namespace PowerStudio.LanguageServices.PowerShell.Editor 25 | { 26 | internal class MethodGlyphFactory : GlyphFactoryBase 27 | { 28 | public override UIElement CreateGlyph( IWpfTextViewLine line, MethodTag token ) 29 | { 30 | const double size = 15.0; 31 | var ellipse = 32 | new Ellipse 33 | { 34 | Fill = Brushes.LightBlue, 35 | StrokeThickness = 1, 36 | Stroke = Brushes.DarkBlue, 37 | Height = size, 38 | Width = size, 39 | Opacity = 0.44 40 | }; 41 | 42 | return ellipse; 43 | } 44 | } 45 | } -------------------------------------------------------------------------------- /source/PowerStudio.LanguageServices.PowerShell/Editor/MethodGlyphFactoryProvider.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using System; 15 | using System.ComponentModel.Composition; 16 | using System.Management.Automation; 17 | using Microsoft.VisualStudio.Text.Editor; 18 | using Microsoft.VisualStudio.Text.Tagging; 19 | using Microsoft.VisualStudio.Utilities; 20 | using PowerStudio.LanguageServices.Editor; 21 | using PowerStudio.LanguageServices.PowerShell.Tagging.Tags; 22 | 23 | #endregion 24 | 25 | namespace PowerStudio.LanguageServices.PowerShell.Editor 26 | { 27 | [Export( typeof (IGlyphFactoryProvider) )] 28 | [Name( "MethodGlyph" )] 29 | [Order( After = "VsTextMarker" )] 30 | [ContentType( LanguageConfiguration.Name )] 31 | [TagType( typeof (MethodTag) )] 32 | internal sealed class MethodGlyphFactoryProvider : GlyphFactoryProviderBase 33 | { 34 | protected override Func> GetFactory( IWpfTextView view, 35 | IWpfTextViewMargin margin ) 36 | { 37 | return () => new MethodGlyphFactory() as IGlyphFactory; 38 | } 39 | } 40 | } -------------------------------------------------------------------------------- /source/PowerStudio.LanguageServices.PowerShell/Intellisense/Completion/BuiltInCompletionSourceProvider.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using System.ComponentModel.Composition; 15 | using Microsoft.VisualStudio.Language.Intellisense; 16 | using Microsoft.VisualStudio.Text; 17 | using Microsoft.VisualStudio.Utilities; 18 | using PowerStudio.LanguageServices.Intellisense.Completion; 19 | 20 | #endregion 21 | 22 | namespace PowerStudio.LanguageServices.PowerShell.Intellisense.Completion 23 | { 24 | [Export( typeof (ICompletionSourceProvider) )] 25 | [ContentType( LanguageConfiguration.Name )] 26 | [Name( "built-in completion" )] 27 | public class BuiltInCompletionSourceProvider : CompletionSourceProvider 28 | { 29 | /// 30 | /// Creates a completion provider for the given context. 31 | /// 32 | /// The text buffer over which to create a provider. 33 | /// 34 | /// A valid instance, or null if none could be created. 35 | /// 36 | public override ICompletionSource TryCreateCompletionSource( ITextBuffer textBuffer ) 37 | { 38 | return new BuiltInCompletionSource( this, textBuffer ); 39 | } 40 | } 41 | } -------------------------------------------------------------------------------- /source/PowerStudio.LanguageServices.PowerShell/Intellisense/Completion/CompletionHandlerProvider.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using System; 15 | using System.ComponentModel.Composition; 16 | using Microsoft.VisualStudio.Editor; 17 | using Microsoft.VisualStudio.Text.Editor; 18 | using Microsoft.VisualStudio.TextManager.Interop; 19 | using Microsoft.VisualStudio.Utilities; 20 | using PowerStudio.LanguageServices.Intellisense.Completion; 21 | 22 | #endregion 23 | 24 | namespace PowerStudio.LanguageServices.PowerShell.Intellisense.Completion 25 | { 26 | [Export( typeof (IVsTextViewCreationListener) )] 27 | [Name( "token completion handler" )] 28 | [ContentType( LanguageConfiguration.Name )] 29 | [TextViewRole( PredefinedTextViewRoles.Editable )] 30 | internal class CompletionHandlerProvider : TextViewCreationListenerBase 31 | { 32 | protected override Func GetFactory( IVsTextView textViewAdapter, 33 | IWpfTextView wpfTextView ) 34 | { 35 | return () => new CompletionCommandHandler( textViewAdapter, wpfTextView, this ); 36 | } 37 | } 38 | } -------------------------------------------------------------------------------- /source/PowerStudio.LanguageServices.PowerShell/Intellisense/Completion/SmartCompletionSourceProvider.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using System.ComponentModel.Composition; 15 | using Microsoft.VisualStudio.Language.Intellisense; 16 | using Microsoft.VisualStudio.Text; 17 | using Microsoft.VisualStudio.Utilities; 18 | using PowerStudio.LanguageServices.Intellisense.Completion; 19 | 20 | #endregion 21 | 22 | namespace PowerStudio.LanguageServices.PowerShell.Intellisense.Completion 23 | { 24 | [Export( typeof (ICompletionSourceProvider) )] 25 | [ContentType( LanguageConfiguration.Name )] 26 | [Name( "smart completion" )] 27 | public class SmartCompletionSourceProvider : CompletionSourceProvider 28 | { 29 | /// 30 | /// Creates a completion provider for the given context. 31 | /// 32 | /// The text buffer over which to create a provider. 33 | /// 34 | /// A valid instance, or null if none could be created. 35 | /// 36 | public override ICompletionSource TryCreateCompletionSource( ITextBuffer textBuffer ) 37 | { 38 | return new SmartCompletionSource( this, textBuffer ); 39 | } 40 | } 41 | } -------------------------------------------------------------------------------- /source/PowerStudio.LanguageServices.PowerShell/Project/GeneralProjectPropertiesPage.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using System.Runtime.InteropServices; 15 | using Microsoft.VisualStudio; 16 | using Microsoft.VisualStudio.Project; 17 | using PowerStudio.Resources; 18 | 19 | #endregion 20 | 21 | namespace PowerStudio.LanguageServices.PowerShell.Project 22 | { 23 | [ComVisible( true )] 24 | [Guid( PsConstants.GeneralProjectPropertiesPage )] 25 | public class GeneralProjectPropertiesPage : SettingsPage 26 | { 27 | public GeneralProjectPropertiesPage() 28 | { 29 | Name = "PowerShell Project Settings"; 30 | } 31 | 32 | #region Overrides of SettingsPage 33 | 34 | protected override void BindProperties() 35 | { 36 | } 37 | 38 | protected override int ApplyChanges() 39 | { 40 | return VSConstants.S_OK; 41 | } 42 | 43 | public override string GetClassName() 44 | { 45 | return GetType().FullName; 46 | } 47 | 48 | #endregion 49 | } 50 | } -------------------------------------------------------------------------------- /source/PowerStudio.LanguageServices.PowerShell/Project/GeneralSettingsPage.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using System.ComponentModel; 15 | using System.Runtime.InteropServices; 16 | using Microsoft.VisualStudio.Shell; 17 | using PowerStudio.Resources; 18 | 19 | #endregion 20 | 21 | namespace PowerStudio.LanguageServices.PowerShell.Project 22 | { 23 | [ClassInterface( ClassInterfaceType.AutoDual )] 24 | [ComVisible( true )] 25 | [Guid( PsConstants.GeneralSettingsPage )] 26 | public class GeneralSettingsPage : DialogPage 27 | { 28 | public GeneralSettingsPage() 29 | { 30 | InitialTabSize = 4; 31 | NormalTabSize = 4; 32 | } 33 | 34 | [Category( LanguageConfiguration.Name )] 35 | [DisplayName( "Initial Tab Size" )] 36 | [Description( "The size of the initial tab in spaces." )] 37 | public int InitialTabSize { get; set; } 38 | 39 | [Category( LanguageConfiguration.Name )] 40 | [DisplayName( "Normal Tab Size" )] 41 | [Description( "The size of the tabs in spaces following the initial tab." )] 42 | public int NormalTabSize { get; set; } 43 | } 44 | } -------------------------------------------------------------------------------- /source/PowerStudio.LanguageServices.PowerShell/Project/OAPsProject.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using System.Runtime.InteropServices; 15 | using Microsoft.VisualStudio.Project.Automation; 16 | using NLog; 17 | 18 | #endregion 19 | 20 | namespace PowerStudio.LanguageServices.PowerShell.Project 21 | { 22 | [ComVisible( true )] 23 | public class OAPsProject : OAProject 24 | { 25 | private static readonly Logger Logger = LogManager.GetCurrentClassLogger(); 26 | 27 | public OAPsProject( PowerShellProjectNode project ) 28 | : base( project ) 29 | { 30 | } 31 | } 32 | } -------------------------------------------------------------------------------- /source/PowerStudio.LanguageServices.PowerShell/Project/OAPsProjectFileItem.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using System.Runtime.InteropServices; 15 | using Microsoft.VisualStudio.Project; 16 | using Microsoft.VisualStudio.Project.Automation; 17 | using NLog; 18 | using PowerStudio.Resources; 19 | 20 | #endregion 21 | 22 | namespace PowerStudio.LanguageServices.PowerShell.Project 23 | { 24 | [ComVisible( true )] 25 | [Guid( PsConstants.ProjectFileItemGuid )] 26 | public class OAPsProjectFileItem : OAFileItem 27 | { 28 | private static readonly Logger Logger = LogManager.GetCurrentClassLogger(); 29 | 30 | public OAPsProjectFileItem( OAProject project, FileNode node ) 31 | : base( project, node ) 32 | { 33 | } 34 | } 35 | } -------------------------------------------------------------------------------- /source/PowerStudio.LanguageServices.PowerShell/Project/PowerShellConfigProvider.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using Microsoft.VisualStudio.Project; 15 | using NLog; 16 | 17 | #endregion 18 | 19 | namespace PowerStudio.LanguageServices.PowerShell.Project 20 | { 21 | public class PowerShellConfigProvider : ConfigProvider 22 | { 23 | private static readonly Logger Logger = LogManager.GetCurrentClassLogger(); 24 | 25 | public PowerShellConfigProvider( ProjectNode manager ) 26 | : base( manager ) 27 | { 28 | Logger.Debug( string.Empty ); 29 | } 30 | 31 | protected override ProjectConfig CreateProjectConfiguration( string configName ) 32 | { 33 | Logger.Debug( string.Empty ); 34 | return new PowerShellProjectConfig( ProjectMgr, configName ); 35 | } 36 | } 37 | } -------------------------------------------------------------------------------- /source/PowerStudio.LanguageServices.PowerShell/Project/TODO.txt: -------------------------------------------------------------------------------- 1 | http://msdn.microsoft.com/en-us/library/bb166376(VS.100).aspx -------------------------------------------------------------------------------- /source/PowerStudio.LanguageServices.PowerShell/ProjectIcon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IntelliTect/PowerStudio/27f5a4c10f564c359ec18bfabb7853290aef1529/source/PowerStudio.LanguageServices.PowerShell/ProjectIcon.ico -------------------------------------------------------------------------------- /source/PowerStudio.LanguageServices.PowerShell/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | 5 | // General Information about an assembly is controlled through the following 6 | // set of attributes. Change these attribute values to modify the information 7 | // associated with an assembly. 8 | [assembly: AssemblyTitle("PowerStudio.LanguageServices.PowerShell")] 9 | [assembly: AssemblyDescription("")] 10 | [assembly: AssemblyConfiguration("")] 11 | [assembly: AssemblyCompany("Microsoft")] 12 | [assembly: AssemblyProduct("PowerStudio.LanguageServices.PowerShell")] 13 | [assembly: AssemblyCopyright("Copyright © Microsoft 2011")] 14 | [assembly: AssemblyTrademark("")] 15 | [assembly: AssemblyCulture("")] 16 | 17 | // Setting ComVisible to false makes the types in this assembly not visible 18 | // to COM components. If you need to access a type in this assembly from 19 | // COM, set the ComVisible attribute to true on that type. 20 | [assembly: ComVisible(false)] 21 | 22 | // The following GUID is for the ID of the typelib if this project is exposed to COM 23 | [assembly: Guid("c3ece306-401c-4c7c-b595-2b2ef39fb368")] 24 | 25 | // Version information for an assembly consists of the following four values: 26 | // 27 | // Major Version 28 | // Minor Version 29 | // Build Number 30 | // Revision 31 | // 32 | // You can specify all the values or you can default the Build and Revision Numbers 33 | // by using the '*' as shown below: 34 | // [assembly: AssemblyVersion("1.0.*")] 35 | [assembly: AssemblyVersion("1.0.0.0")] 36 | [assembly: AssemblyFileVersion("1.0.0.0")] 37 | -------------------------------------------------------------------------------- /source/PowerStudio.LanguageServices.PowerShell/Tagging/Providers/BraceMatchingTaggerProvider.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using System.ComponentModel.Composition; 15 | using System.Management.Automation; 16 | using Microsoft.VisualStudio.Text; 17 | using Microsoft.VisualStudio.Text.Editor; 18 | using Microsoft.VisualStudio.Text.Tagging; 19 | using Microsoft.VisualStudio.Utilities; 20 | using PowerStudio.LanguageServices.PowerShell.Tagging.Taggers; 21 | using PowerStudio.LanguageServices.Tagging.Providers; 22 | using PowerStudio.LanguageServices.Tagging.Tags; 23 | 24 | #endregion 25 | 26 | namespace PowerStudio.LanguageServices.PowerShell.Tagging.Providers 27 | { 28 | [Export( typeof (IViewTaggerProvider) )] 29 | [TagType( typeof (BraceMatchingTag) )] 30 | [ContentType( LanguageConfiguration.Name )] 31 | public class BraceMatchingTaggerProvider : ViewTaggerProviderBase 32 | { 33 | protected override ITagger GetTagger( ITextView textView, ITextBuffer buffer ) 34 | { 35 | var tagger = new BraceMatchingTagger( textView, buffer ) as ITagger; 36 | return tagger; 37 | } 38 | } 39 | } -------------------------------------------------------------------------------- /source/PowerStudio.LanguageServices.PowerShell/Tagging/Providers/ErrorTokenTaggerProvider.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using System; 15 | using System.ComponentModel.Composition; 16 | using System.Management.Automation; 17 | using Microsoft.VisualStudio.Text; 18 | using Microsoft.VisualStudio.Text.Classification; 19 | using Microsoft.VisualStudio.Text.Tagging; 20 | using Microsoft.VisualStudio.Utilities; 21 | using PowerStudio.LanguageServices.PowerShell.Tagging.Taggers; 22 | using PowerStudio.LanguageServices.Tagging.Providers; 23 | using PowerStudio.LanguageServices.Tagging.Tags; 24 | 25 | #endregion 26 | 27 | namespace PowerStudio.LanguageServices.PowerShell.Tagging.Providers 28 | { 29 | [Export( typeof (ITaggerProvider) )] 30 | [ContentType( LanguageConfiguration.Name )] 31 | [TagType(typeof(ErrorTokenTag))] 32 | [Order( Before = Priority.Default )] 33 | public class ErrorTokenTaggerProvider : TaggerProviderBase 34 | { 35 | protected override Func> GetFactory( ITextBuffer buffer ) 36 | { 37 | return () => new ErrorTokenTagger( buffer ) as ITagger; 38 | } 39 | } 40 | } -------------------------------------------------------------------------------- /source/PowerStudio.LanguageServices.PowerShell/Tagging/Providers/MethodTokenTaggerProvider.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using System; 15 | using System.ComponentModel.Composition; 16 | using Microsoft.VisualStudio.Text; 17 | using Microsoft.VisualStudio.Text.Classification; 18 | using Microsoft.VisualStudio.Text.Tagging; 19 | using Microsoft.VisualStudio.Utilities; 20 | using PowerStudio.LanguageServices.PowerShell.Tagging.Taggers; 21 | using PowerStudio.LanguageServices.PowerShell.Tagging.Tags; 22 | using PowerStudio.LanguageServices.Tagging.Providers; 23 | using PowerStudio.LanguageServices.Tagging.Tags; 24 | 25 | #endregion 26 | 27 | namespace PowerStudio.LanguageServices.PowerShell.Tagging.Providers 28 | { 29 | [Export( typeof (ITaggerProvider) )] 30 | [ContentType( LanguageConfiguration.Name )] 31 | [TagType( typeof (MethodTag) )] 32 | [Order( Before = Priority.Default )] 33 | public class MethodTokenTaggerProvider : TaggerProviderBase 34 | { 35 | protected override Func> GetFactory( ITextBuffer buffer ) 36 | { 37 | return () => new MethodTokenTagger( buffer ) as ITagger; 38 | } 39 | } 40 | } -------------------------------------------------------------------------------- /source/PowerStudio.LanguageServices.PowerShell/Tagging/Providers/OutliningTaggerProvider.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using System; 15 | using System.ComponentModel.Composition; 16 | using System.Management.Automation; 17 | using Microsoft.VisualStudio.Text; 18 | using Microsoft.VisualStudio.Text.Tagging; 19 | using Microsoft.VisualStudio.Utilities; 20 | using PowerStudio.LanguageServices.PowerShell.Tagging.Taggers; 21 | using PowerStudio.LanguageServices.Tagging.Providers; 22 | using PowerStudio.LanguageServices.Tagging.Tags; 23 | 24 | #endregion 25 | 26 | namespace PowerStudio.LanguageServices.PowerShell.Tagging.Providers 27 | { 28 | [Export( typeof (ITaggerProvider) )] 29 | [TagType(typeof(OutliningTag))] 30 | [ContentType( LanguageConfiguration.Name )] 31 | public class OutliningTaggerProvider : TaggerProviderBase 32 | { 33 | protected override Func> GetFactory( ITextBuffer buffer ) 34 | { 35 | return () => new OutliningTagger( buffer ) as ITagger; 36 | } 37 | } 38 | } -------------------------------------------------------------------------------- /source/PowerStudio.LanguageServices.PowerShell/Tagging/Taggers/GlyphTokenTagger.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using System.Management.Automation; 15 | using Microsoft.VisualStudio.Text; 16 | using PowerStudio.LanguageServices.Tagging.Taggers; 17 | using PowerStudio.LanguageServices.Tagging.Tags; 18 | 19 | #endregion 20 | 21 | namespace PowerStudio.LanguageServices.PowerShell.Tagging.Taggers 22 | { 23 | public abstract class GlyphTokenTagger : PsTokenTagger 24 | where TTokenTag : GlyphTag 25 | { 26 | protected GlyphTokenTagger( ITextBuffer buffer ) 27 | : base( buffer ) 28 | { 29 | } 30 | } 31 | } -------------------------------------------------------------------------------- /source/PowerStudio.LanguageServices.PowerShell/Tagging/Tags/MethodTag.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using System.Management.Automation; 15 | using PowerStudio.LanguageServices.Tagging.Tags; 16 | 17 | #endregion 18 | 19 | namespace PowerStudio.LanguageServices.PowerShell.Tagging.Tags 20 | { 21 | public class MethodTag : GlyphTag 22 | { 23 | } 24 | } -------------------------------------------------------------------------------- /source/PowerStudio.LanguageServices.Tests/Tagging/Tags/BraceMatchingTagTests.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using System; 15 | using PowerStudio.LanguageServices.Tagging; 16 | using PowerStudio.LanguageServices.Tagging.Tags; 17 | using Xunit; 18 | 19 | #endregion 20 | 21 | namespace PowerStudio.LanguageServices.Tests.Tagging.Tags 22 | { 23 | public class BraceMatchingTagTests 24 | { 25 | [Fact] 26 | public void WhenNullIsPassedIntoTheCtor_ThenAnExceptionIsThrown() 27 | { 28 | Assert.Throws( () => new BraceMatchingTag( null ) ); 29 | } 30 | 31 | [Fact] 32 | public void WhenAnEmptyStringIsPassedIntoTheCtor_ThenAnExceptionIsThrown() 33 | { 34 | Assert.Throws( () => new BraceMatchingTag( string.Empty ) ); 35 | } 36 | 37 | [Fact] 38 | public void WhenAValueIsPassedIntoTheCtor_ThenTheTypeParameterMatches() 39 | { 40 | const string expected = PredefinedTextMarkerTags.BraceHighlight; 41 | var tag = new BraceMatchingTag( expected ); 42 | Assert.Equal( expected, tag.Type ); 43 | } 44 | } 45 | } -------------------------------------------------------------------------------- /source/PowerStudio.LanguageServices.Tests/Tagging/Tags/OutliningTagTests.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using System; 15 | using Microsoft.VisualStudio.Text; 16 | using PowerStudio.LanguageServices.Tagging.Tags; 17 | using PowerStudio.LanguageServices.Tests.Mocks; 18 | using Xunit; 19 | 20 | #endregion 21 | 22 | namespace PowerStudio.LanguageServices.Tests.Tagging.Tags 23 | { 24 | public class OutliningTagTests 25 | { 26 | [Fact] 27 | public void WhenNullSnapShotIsPassedIntoTheCtor_ThenAnExceptionIsThrown() 28 | { 29 | var textSnapshot = new TextSnapshotMock( new TextBufferMock( string.Empty ) ); 30 | Assert.Throws( 31 | () => new OutliningTag( null, new SnapshotSpan( textSnapshot, new Span() ) ) 32 | ); 33 | } 34 | 35 | [Fact] 36 | public void WhenADefaultSnapshotSpanIsPassedIntoTheCtor_ThenAnExceptionIsThrown() 37 | { 38 | var textSnapshot = new TextSnapshotMock( new TextBufferMock( string.Empty ) ); 39 | Assert.Throws( 40 | () => new OutliningTag( textSnapshot, default( SnapshotSpan ) ) 41 | ); 42 | } 43 | } 44 | } -------------------------------------------------------------------------------- /source/PowerStudio.LanguageServices.Tests/Tagging/Tags/TokenClassificationTagTests.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using System; 15 | using Microsoft.VisualStudio.Text.Classification; 16 | using PowerStudio.LanguageServices.Tagging.Tags; 17 | using Moq; 18 | using Xunit; 19 | 20 | #endregion 21 | 22 | namespace PowerStudio.LanguageServices.Tests.Tagging.Tags 23 | { 24 | public class TokenClassificationTagTests 25 | { 26 | [Fact] 27 | public void WhenNullIsPassedIntoTheCtor_ThenAnExceptionIsThrown() 28 | { 29 | Assert.Throws( () => new TokenClassificationTag( null ) ); 30 | } 31 | 32 | [Fact] 33 | public void WhenAClassificationTypeIsPassedIntoTheCtor_ThenTheCorrespondingPropertyIsSetProperly() 34 | { 35 | IClassificationType classificationType = new Mock().Object; 36 | var tag = new TokenClassificationTag( classificationType ); 37 | Assert.Equal( classificationType, tag.ClassificationType ); 38 | } 39 | } 40 | } -------------------------------------------------------------------------------- /source/PowerStudio.LanguageServices.Tests/Tagging/Tags/TokenTagTests.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | namespace PowerStudio.LanguageServices.Tests.Tagging.Tags 13 | { 14 | public class TokenTagTests 15 | { 16 | } 17 | } -------------------------------------------------------------------------------- /source/PowerStudio.LanguageServices.Tests/Tagging/TokenTagSpanTests.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using System; 15 | using Microsoft.VisualStudio.Text; 16 | using PowerStudio.LanguageServices.Tagging; 17 | using PowerStudio.LanguageServices.Tagging.Tags; 18 | using Xunit; 19 | 20 | #endregion 21 | 22 | namespace PowerStudio.LanguageServices.Tests.Tagging 23 | { 24 | public class TokenTagSpanTests 25 | { 26 | [Fact] 27 | public void WhenNullIsPassedIntoTheCtor_ThenAnExceptionIsThrown() 28 | { 29 | Assert.Throws( () => new TokenTagSpan, object>( null ) ); 30 | } 31 | 32 | [Fact] 33 | public void WhenAClassificationTypeIsPassedIntoTheCtor_ThenTheCorrespondingPropertiesAreSetProperly() 34 | { 35 | var tag = new ErrorTokenTag( "Error" ) { Span = new SnapshotSpan() }; 36 | var tagSpan = new TokenTagSpan, object>( tag ); 37 | Assert.Equal( tag.Span, tagSpan.Span ); 38 | Assert.Equal( tag, tagSpan.Tag ); 39 | } 40 | } 41 | } -------------------------------------------------------------------------------- /source/PowerStudio.LanguageServices/Editor/IGlyphFactory.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using System.Windows; 15 | using Microsoft.VisualStudio.Text.Editor; 16 | using Microsoft.VisualStudio.Text.Formatting; 17 | using PowerStudio.LanguageServices.Tagging.Tags; 18 | 19 | #endregion 20 | 21 | namespace PowerStudio.LanguageServices.Editor 22 | { 23 | public interface IGlyphFactory : IGlyphFactory 24 | where TTokenTag : GlyphTag 25 | { 26 | /// 27 | /// Generates a new glyph visual for the given line and token. 28 | /// 29 | /// The line that this glyph will be placed on. 30 | /// Information about the token glyph for which the visual is being generated. 31 | /// 32 | /// The visual element for the given tag. 33 | /// 34 | UIElement CreateGlyph( IWpfTextViewLine line, TTokenTag token ); 35 | } 36 | } -------------------------------------------------------------------------------- /source/PowerStudio.LanguageServices/Intellisense/Completion/CompletionSourceProvider.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using System.ComponentModel.Composition; 15 | using Microsoft.VisualStudio.Language.Intellisense; 16 | using Microsoft.VisualStudio.Text; 17 | using Microsoft.VisualStudio.Text.Operations; 18 | 19 | #endregion 20 | 21 | namespace PowerStudio.LanguageServices.Intellisense.Completion 22 | { 23 | public abstract class CompletionSourceProvider : ICompletionSourceProvider 24 | { 25 | [Import] 26 | internal ITextStructureNavigatorSelectorService NavigatorService { get; set; } 27 | 28 | #region ICompletionSourceProvider Members 29 | 30 | /// 31 | /// Creates a completion provider for the given context. 32 | /// 33 | /// The text buffer over which to create a provider. 34 | /// 35 | /// A valid instance, or null if none could be created. 36 | /// 37 | public abstract ICompletionSource TryCreateCompletionSource( ITextBuffer textBuffer ); 38 | 39 | #endregion 40 | } 41 | } -------------------------------------------------------------------------------- /source/PowerStudio.LanguageServices/Intellisense/QuickInfo/QuickInfoErrorSource.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using Microsoft.VisualStudio.Text; 15 | using Microsoft.VisualStudio.Text.Tagging; 16 | using PowerStudio.LanguageServices.Tagging.Tags; 17 | 18 | #endregion 19 | 20 | namespace PowerStudio.LanguageServices.Intellisense.QuickInfo 21 | { 22 | public class QuickInfoErrorSource : QuickInfoSource, TToken> 23 | { 24 | public QuickInfoErrorSource( ITextBuffer buffer, 25 | ITagAggregator> aggregator, 26 | QuickInfoSourceProvider, TToken> quickInfoErrorSourceProvider ) 27 | : base( buffer, aggregator, quickInfoErrorSourceProvider ) 28 | { 29 | } 30 | 31 | protected override object GetToolTip( ErrorTokenTag tokenTag ) 32 | { 33 | return tokenTag.ToolTipContent; 34 | } 35 | } 36 | } -------------------------------------------------------------------------------- /source/PowerStudio.LanguageServices/LanguageContentTypes.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using System.ComponentModel; 15 | 16 | #endregion 17 | 18 | namespace PowerStudio.LanguageServices 19 | { 20 | public enum LanguageContentTypes 21 | { 22 | Basic, 23 | [Description( "C/C++" )] 24 | CPlusPlus, 25 | ConsoleOutput, 26 | CSharp, 27 | CSS, 28 | ENC, 29 | FindResults, 30 | [Description( "F#" )] 31 | FSharp, 32 | HTML, 33 | JScript, 34 | XAML, 35 | XML, 36 | } 37 | } -------------------------------------------------------------------------------- /source/PowerStudio.LanguageServices/Tagging/ITokenClassifier.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using Microsoft.VisualStudio.Text.Classification; 15 | 16 | #endregion 17 | 18 | namespace PowerStudio.LanguageServices.Tagging 19 | { 20 | /// 21 | /// 22 | public interface ITokenClassifier 23 | { 24 | /// 25 | /// Gets the with the specified token type. 26 | /// 27 | IClassificationType this[ TToken token ] { get; } 28 | } 29 | } -------------------------------------------------------------------------------- /source/PowerStudio.LanguageServices/Tagging/ITokenTag.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using Microsoft.VisualStudio.Text; 15 | using Microsoft.VisualStudio.Text.Tagging; 16 | 17 | #endregion 18 | 19 | namespace PowerStudio.LanguageServices.Tagging 20 | { 21 | public interface ITokenTag : ITag 22 | { 23 | TToken Token { get; } 24 | SnapshotSpan Span { get; } 25 | } 26 | } -------------------------------------------------------------------------------- /source/PowerStudio.LanguageServices/Tagging/PredefinedTextMarkerTags.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | namespace PowerStudio.LanguageServices.Tagging 13 | { 14 | public class PredefinedTextMarkerTags 15 | { 16 | public const string BraceHighlight = "bracehighlight"; 17 | public const string WordHighlight = "wordhighlight"; 18 | } 19 | } -------------------------------------------------------------------------------- /source/PowerStudio.LanguageServices/Tagging/Providers/TaggerProviderBase.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using System; 15 | using Microsoft.VisualStudio.Text; 16 | using Microsoft.VisualStudio.Text.Tagging; 17 | 18 | #endregion 19 | 20 | namespace PowerStudio.LanguageServices.Tagging.Providers 21 | { 22 | public abstract class TaggerProviderBase : ITaggerProvider 23 | { 24 | #region ITaggerProvider Members 25 | 26 | /// 27 | /// Creates a tag provider for the specified buffer. 28 | /// 29 | /// The . 30 | /// The type of the tag. 31 | public virtual ITagger CreateTagger( ITextBuffer buffer ) where T : ITag 32 | { 33 | return buffer.Properties.GetOrCreateSingletonProperty( GetFactory( buffer ) ); 34 | } 35 | 36 | #endregion 37 | 38 | protected abstract Func> GetFactory( ITextBuffer buffer ) where T : ITag; 39 | } 40 | } -------------------------------------------------------------------------------- /source/PowerStudio.LanguageServices/Tagging/Tags/GlyphTag.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using Microsoft.VisualStudio.Text.Editor; 15 | 16 | #endregion 17 | 18 | namespace PowerStudio.LanguageServices.Tagging.Tags 19 | { 20 | public class GlyphTag : TokenTag, IGlyphTag 21 | { 22 | } 23 | } -------------------------------------------------------------------------------- /source/PowerStudio.LanguageServices/Tagging/Tags/HighlightWordTag.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using Microsoft.VisualStudio.Text.Tagging; 15 | 16 | #endregion 17 | 18 | namespace PowerStudio.LanguageServices.Tagging.Tags 19 | { 20 | public class HighlightWordTag : TokenTag, ITextMarkerTag 21 | { 22 | /// 23 | /// Initializes a new instance of the class. 24 | /// 25 | public HighlightWordTag() 26 | { 27 | Type = PredefinedTextMarkerTags.WordHighlight; 28 | } 29 | 30 | #region ITextMarkerTag Members 31 | 32 | /// 33 | /// Gets the type of adornment to use. 34 | /// 35 | public string Type { get; private set; } 36 | 37 | #endregion 38 | } 39 | } -------------------------------------------------------------------------------- /source/PowerStudio.LanguageServices/Tagging/Tags/TokenTag.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | #region Using Directives 13 | 14 | using Microsoft.VisualStudio.Text; 15 | 16 | #endregion 17 | 18 | namespace PowerStudio.LanguageServices.Tagging.Tags 19 | { 20 | public class TokenTag : ITokenTag 21 | { 22 | #region ITokenTag Members 23 | 24 | public TTokenTag Token { get; set; } 25 | public SnapshotSpan Span { get; set; } 26 | 27 | #endregion 28 | } 29 | } -------------------------------------------------------------------------------- /source/PowerStudio.LanguageServices/Tagging/TokenClass.cs: -------------------------------------------------------------------------------- 1 | #region License 2 | 3 | // 4 | // Copyright (c) 2011, PowerStudio Project Contributors 5 | // 6 | // Dual-licensed under the Apache License, Version 2.0, and the Microsoft Public License (Ms-PL). 7 | // See the file LICENSE.txt for details. 8 | // 9 | 10 | #endregion 11 | 12 | namespace PowerStudio.LanguageServices.Tagging 13 | { 14 | public enum TokenClass 15 | { 16 | CharacterLiteral, 17 | Comment, 18 | ExcludedCode, 19 | FormalLanguage, 20 | Identifier, 21 | Keyword, 22 | Literal, 23 | NaturalLanguage, 24 | NumberLiteral, 25 | Operator, 26 | Other, 27 | PreprocessorKeyword, 28 | StringLiteral, 29 | SymbolDefinition, 30 | SymbolReference, 31 | WhiteSpace 32 | } 33 | } -------------------------------------------------------------------------------- /source/PowerStudio/GlobalSuppressions.cs: -------------------------------------------------------------------------------- 1 | // This file is used by Code Analysis to maintain SuppressMessage 2 | // attributes that are applied to this project. Project-level 3 | // suppressions either have no target or are given a specific target 4 | // and scoped to a namespace, type, member, etc. 5 | // 6 | // To add a suppression to this file, right-click the message in the 7 | // Error List, point to "Suppress Message(s)", and click "In Project 8 | // Suppression File". You do not need to add suppressions to this 9 | // file manually. 10 | 11 | #region Using Directives 12 | 13 | using System.Diagnostics.CodeAnalysis; 14 | 15 | #endregion 16 | 17 | [assembly : SuppressMessage( "Microsoft.Design", "CA1017:MarkAssembliesWithComVisible" )] -------------------------------------------------------------------------------- /source/PowerStudio/NLog.dll.nlog: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 21 | -------------------------------------------------------------------------------- /source/PowerStudio/ProjectIcon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IntelliTect/PowerStudio/27f5a4c10f564c359ec18bfabb7853290aef1529/source/PowerStudio/ProjectIcon.ico -------------------------------------------------------------------------------- /source/PowerStudio/ProjectTemplates/PowerShellProject.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IntelliTect/PowerStudio/27f5a4c10f564c359ec18bfabb7853290aef1529/source/PowerStudio/ProjectTemplates/PowerShellProject.zip -------------------------------------------------------------------------------- /source/PowerStudio/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | #region Using Directives 2 | 3 | using System; 4 | using System.Reflection; 5 | using System.Resources; 6 | using System.Runtime.CompilerServices; 7 | using System.Runtime.InteropServices; 8 | 9 | #endregion 10 | 11 | // General Information about an assembly is controlled through the following 12 | // set of attributes. Change these attribute values to modify the information 13 | // associated with an assembly. 14 | 15 | [assembly : AssemblyTitle( "PowerStudio" )] 16 | [assembly : AssemblyDescription( "" )] 17 | [assembly : AssemblyConfiguration( "" )] 18 | [assembly : AssemblyTrademark( "" )] 19 | [assembly : AssemblyCulture( "" )] 20 | [assembly : ComVisible( false )] 21 | [assembly : CLSCompliant( false )] 22 | 23 | [assembly : 24 | InternalsVisibleTo( 25 | "PowerStudio.Integration.Tests, PublicKey=0024000004800000940000000602000000240000525341310004000001000100a91693596e8568c557566c88a02fe5eefdfd6f245c2d5d45e9911357d164cdeb28eae1ccc3ca1795fa4879e206ce309104357940e1697fa50a5bc4aa9a7e3ed9dfcb3ab8cd7c55558612c51844c32b694a3dda142f23f9240456b49d720ccb3beee8cb02ca641beafd7e6a76f1116b426efe89aef0c23634198c9ce5f14ca6bb" 26 | )] 27 | [assembly : 28 | InternalsVisibleTo( 29 | "PowerStudio.LanguageServices.Tests, PublicKey=0024000004800000940000000602000000240000525341310004000001000100a91693596e8568c557566c88a02fe5eefdfd6f245c2d5d45e9911357d164cdeb28eae1ccc3ca1795fa4879e206ce309104357940e1697fa50a5bc4aa9a7e3ed9dfcb3ab8cd7c55558612c51844c32b694a3dda142f23f9240456b49d720ccb3beee8cb02ca641beafd7e6a76f1116b426efe89aef0c23634198c9ce5f14ca6bb" 30 | )] -------------------------------------------------------------------------------- /source/PowerStudio/Resources/ProjectIcon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IntelliTect/PowerStudio/27f5a4c10f564c359ec18bfabb7853290aef1529/source/PowerStudio/Resources/ProjectIcon.ico -------------------------------------------------------------------------------- /source/PowerStudio/Templates/ProjectItems/PsProject/ModuleManifest.psd1: -------------------------------------------------------------------------------- 1 | #%scriptName%.ps1 2 | -------------------------------------------------------------------------------- /source/PowerStudio/Templates/ProjectItems/PsProject/ScriptFile.ps1: -------------------------------------------------------------------------------- 1 | <# 2 | .SYNOPSIS 3 | This is the default script created by PowerStudio. 4 | .DESCRIPTION 5 | Use this as a starting point your PowerShell scripting file. 6 | .NOTES 7 | This is a sample note for the script. 8 | .PARAMETER fileName 9 | The filename that the script will use. 10 | .PARAMETER taskList 11 | A list of the possible tasks to execute. 12 | .PARAMETER dwarf 13 | A validated set of options. 14 | .EXAMPLE 15 | Sample command to execute. 16 | %scriptName% myFile.txt 1,2,4 doc 17 | #> 18 | #requires -version 2.0 19 | param( 20 | [Parameter(Mandatory=$true)] 21 | [string]$fileName = 'defaultFile.txt', 22 | 23 | [Parameter(Mandatory=$false)] 24 | [string[]]$taskList = @(), 25 | 26 | [ValidateSet('happy', 'sleepy', 'grumpy', 'doc', 'bashful', 'sneezy', 'dopey')] 27 | [string]$dwarf="happy" 28 | ) 29 | 30 | write-host "$fileName for `"$taskList`" given I am `"$dwarf`"" -------------------------------------------------------------------------------- /source/PowerStudio/Templates/ProjectItems/PsProject/ScriptModule.psm1: -------------------------------------------------------------------------------- 1 | #%scriptName%.ps1 2 | -------------------------------------------------------------------------------- /source/PowerStudio/Templates/Projects/PowerShellProject.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IntelliTect/PowerStudio/27f5a4c10f564c359ec18bfabb7853290aef1529/source/PowerStudio/Templates/Projects/PowerShellProject.zip -------------------------------------------------------------------------------- /source/PowerStudio/Templates/Projects/PsProject/PowerShellProject.psproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | Debug 4 | 2.0 5 | 6CAFC0C6-A428-4d30-A9F9-700E829FEA51 6 | Exe 7 | Scripts 8 | Scripts 9 | 10 | 11 | true 12 | bin\Debug\ 13 | false 14 | 15 | 16 | true 17 | bin\Release\ 18 | false 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | -------------------------------------------------------------------------------- /source/PowerStudio/Templates/Projects/PsProject/PowerShellProject.vstemplate: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | PowerShell Script Project 5 | 6 | A PowerShell project 7 | ProjectIcon.ico 8 | PowerShell 9 | 10 | 11 | 12 | Script.ps1 13 | 14 | 15 | -------------------------------------------------------------------------------- /source/PowerStudio/Templates/Projects/PsProject/ProjectIcon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IntelliTect/PowerStudio/27f5a4c10f564c359ec18bfabb7853290aef1529/source/PowerStudio/Templates/Projects/PsProject/ProjectIcon.ico -------------------------------------------------------------------------------- /source/PowerStudio/Templates/Projects/PsProject/Script.ps1: -------------------------------------------------------------------------------- 1 | #%scriptName%.ps1 2 | -------------------------------------------------------------------------------- /source/Resources/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | 5 | // General Information about an assembly is controlled through the following 6 | // set of attributes. Change these attribute values to modify the information 7 | // associated with an assembly. 8 | [assembly: AssemblyTitle("Resources")] 9 | [assembly: AssemblyDescription("")] 10 | [assembly: AssemblyConfiguration("")] 11 | [assembly: AssemblyCompany("Microsoft")] 12 | [assembly: AssemblyProduct("Resources")] 13 | [assembly: AssemblyCopyright("Copyright © Microsoft 2011")] 14 | [assembly: AssemblyTrademark("")] 15 | [assembly: AssemblyCulture("")] 16 | 17 | // Setting ComVisible to false makes the types in this assembly not visible 18 | // to COM components. If you need to access a type in this assembly from 19 | // COM, set the ComVisible attribute to true on that type. 20 | [assembly: ComVisible(false)] 21 | 22 | // The following GUID is for the ID of the typelib if this project is exposed to COM 23 | [assembly: Guid("3bed11d5-3836-4cad-b752-54407f890b21")] 24 | 25 | // Version information for an assembly consists of the following four values: 26 | // 27 | // Major Version 28 | // Minor Version 29 | // Build Number 30 | // Revision 31 | // 32 | // You can specify all the values or you can default the Build and Revision Numbers 33 | // by using the '*' as shown below: 34 | // [assembly: AssemblyVersion("1.0.*")] 35 | [assembly: AssemblyVersion("1.0.0.0")] 36 | [assembly: AssemblyFileVersion("1.0.0.0")] 37 | -------------------------------------------------------------------------------- /tools/NuGet/NuGet.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IntelliTect/PowerStudio/27f5a4c10f564c359ec18bfabb7853290aef1529/tools/NuGet/NuGet.exe -------------------------------------------------------------------------------- /tools/xunit/xunit.console.clr4.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IntelliTect/PowerStudio/27f5a4c10f564c359ec18bfabb7853290aef1529/tools/xunit/xunit.console.clr4.exe -------------------------------------------------------------------------------- /tools/xunit/xunit.console.clr4.exe.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 |
6 | 7 | 8 | 9 | 10 | 14 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /tools/xunit/xunit.console.clr4.x86.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IntelliTect/PowerStudio/27f5a4c10f564c359ec18bfabb7853290aef1529/tools/xunit/xunit.console.clr4.x86.exe -------------------------------------------------------------------------------- /tools/xunit/xunit.console.clr4.x86.exe.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 |
6 | 7 | 8 | 9 | 10 | 14 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /tools/xunit/xunit.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IntelliTect/PowerStudio/27f5a4c10f564c359ec18bfabb7853290aef1529/tools/xunit/xunit.dll -------------------------------------------------------------------------------- /tools/xunit/xunit.extensions.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IntelliTect/PowerStudio/27f5a4c10f564c359ec18bfabb7853290aef1529/tools/xunit/xunit.extensions.dll -------------------------------------------------------------------------------- /tools/xunit/xunit.runner.utility.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IntelliTect/PowerStudio/27f5a4c10f564c359ec18bfabb7853290aef1529/tools/xunit/xunit.runner.utility.dll --------------------------------------------------------------------------------