public VisualStudioDTE(ReadOnlyTargetRules Target) : base(Target) { Type = ModuleType.External; PublicIncludePaths.Add(ModuleDirectory); if (Target.Platform != UnrealBuildTool.UnrealTargetPlatform.Win64 || Target.WindowsPlatform.Compiler == WindowsCompiler.Clang || Target.WindowsPlatform.StaticAnalyzer == WindowsStaticAnalyzer.PVSStudio) { PublicDefinitions.Add("WITH_VISUALSTUDIO_DTE=0"); } else { // In order to support building the plugin on build machines (which may not have the IDE installed), allow using an OLB rather than registered component. string DteOlbPath; if (TryGetDteOlbPath(out DteOlbPath)) { TypeLibraries.Add(new TypeLibrary(DteOlbPath, "lcid(\"0\") raw_interfaces_only named_guids", "dte80a.tlh")); PublicDefinitions.Add("WITH_VISUALSTUDIO_DTE=1"); } else { Log.TraceWarningOnce("Unable to find Visual Studio SDK. Editor integration will be disabled"); PublicDefinitions.Add("WITH_VISUALSTUDIO_DTE=0"); } } }
public override ExternalProcedure LookupProcedureByName(string moduleName, string procName) { //$Identical to Win32, move into base class? return(TypeLibraries .Select(t => t.Lookup(procName)) .Where(sig => sig != null) .Select(sig => new ExternalProcedure(procName, sig)) .FirstOrDefault()); }
public MainViewModel(TypeLibraries libraries) { _libraries = libraries; LoadedTypeLibraries = new ObservableCollection <LibraryOrTypeNodeViewModel>(); PreLoadSomeLibraries(); foreach (var library in _libraries.LoadedLibraries) { AddTypeLibraryViewModel(library); } Messenger.Default.Register <NotificationMessage <LibraryRegistrationViewModel> >(this, OpenLibrary); }