示例#1
0
        public ServicesContainer(ISldWorks app, IToolbarAddIn addIn, ILogger logger)
        {
            Instance = this;
            m_AddIn  = addIn;

            m_Logger = logger;

            m_Container = new UnityContainer();

            m_Kit = RegisterServicesManager(app);

            m_Container.RegisterInstance(app);
            m_Container.RegisterInstance(m_AddIn);

            m_Container.RegisterType <IMacroEntryPointsExtractor, MacroEntryPointsExtractor>();

            m_Container.RegisterType <IMacroRunner, MacroRunner>();

            m_Container.RegisterType <IToolbarConfigurationProvider, ToolbarConfigurationProvider>();

            m_Container.RegisterType <ISettingsProvider, SettingsProvider>();

            m_Container.RegisterType <ILocalSettingsProvider, LocalSettingsProvider>();

            m_Container.RegisterType <IMessageService, MessageService>();

            m_Container.RegisterSingleton <CommandManagerVM>();

            m_Container.RegisterFactory <IDocumentsHandler <DocumentHandler> >(c => m_AddIn.CreateDocumentsHandler());

            m_Container.RegisterInstance(m_Logger);

            m_Container.RegisterSingleton <ICommandsManager, CommandsManager>();
            m_Container.RegisterSingleton <ITriggersManager, TriggersManager>();

            m_Container.RegisterInstance(m_Kit.GetService <IUserSettingsService>());
            m_Container.RegisterInstance(m_Kit.GetService <IAboutApplicationService>());
        }
示例#2
0
        public CommandsManager(IToolbarAddIn addIn, ISldWorks app,
                               IMacroRunner macroRunner,
                               IMessageService msg, ISettingsProvider settsProvider,
                               IToolbarConfigurationProvider toolbarConfProvider,
                               ILogger logger)
        {
            m_AddIn               = addIn;
            m_App                 = app;
            m_MacroRunner         = macroRunner;
            m_Msg                 = msg;
            m_SettsProvider       = settsProvider;
            m_ToolbarConfProvider = toolbarConfProvider;
            m_Logger              = logger;

            try
            {
                ToolbarInfo = LoadUserToolbar();
            }
            catch (Exception ex)
            {
                m_Msg.ShowError(ex, "Failed to load toolbar specification");
            }
        }