Beispiel #1
0
        public Result OnStartup(UIControlledApplication application)
        {
            try
            {
                string         str           = "Default Type Selector";
                RibbonPanel    panel         = application.CreateRibbonPanel(str);
                string         directoryName = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);
                PushButtonData data          = new PushButtonData("Default Type Selector", "Default Type Selector", directoryName + @"\GetSetDefaultTypes.dll", "Revit.SDK.Samples.GetSetDefaultTypes.CS.ThisCommand");
                PushButton     button        = panel.AddItem(data) as PushButton;
                button.LargeImage = new BitmapImage(new Uri(directoryName + "\\Resources\\type.png"));

                // register dockable Windows on startup.
                DefaultFamilyTypesPane  = new DefaultFamilyTypes();
                DefaultElementTypesPane = new DefaultElementTypes();
                application.RegisterDockablePane(DefaultFamilyTypes.PaneId, "Default Family Types", DefaultFamilyTypesPane);
                application.RegisterDockablePane(DefaultElementTypes.PaneId, "Default Element Types", DefaultElementTypesPane);

                // register view active event
                application.ViewActivated += new EventHandler <ViewActivatedEventArgs>(application_ViewActivated);

                return(Result.Succeeded);
            }
            catch (Exception exception)
            {
                MessageBox.Show(exception.ToString(), "Default Type Selector");
                return(Result.Failed);
            }
        }
Beispiel #2
0
        public Result OnStartup(UIControlledApplication a)
        {
            try
            {
                // The Shared uiApp variable
                uiApp    = a;
                _thisApp = this;

                // Register the dockable pane
                if (MainDock == null)
                {
                    MainDock = new form_MainDock();
                    DockData = new DockablePaneProviderData
                    {
                        FrameworkElement = MainDock,
                        InitialState     = new DockablePaneState
                        {
                            DockPosition = DockPosition.Right
                        }
                    };
                }
                uiApp.RegisterDockablePane(GlobalHelper.MainDockablePaneId, GlobalHelper.MainPanelName(), MainDock as IDockablePaneProvider);

                // Detect when a new model is in focus
                a.ViewActivated += OnViewActivated;

                // Add the Ribbon Panel!!
                AddRibbonPanel(a);

                // Return Success
                return(Result.Succeeded);
            }
            catch { return(Result.Failed); }
        }
Beispiel #3
0
        public Result OnStartup(UIControlledApplication application)
        {
            var assetLocation = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);

            var settings = new CefSettings
            {
                BrowserSubprocessPath = string.Format("{0}\\CefSharp.BrowserSubprocess.exe", assetLocation),
                LocalesDirPath        = string.Format("{0}\\locales", assetLocation)
            };

            settings.CefCommandLineArgs.Add("disable-gpu", "1");


            if (!Cef.IsInitialized)
            {
                Cef.Initialize(settings, true, null);
            }


            var revitDockPanel = new DockablePage();

            application.RegisterDockablePane(_dockPanelId, "Docked panel", revitDockPanel);


            return(Result.Succeeded);
        }
        public static void RegisterPalette(UIControlledApplication app)
        {
            var view = new PaletteMainView()
            {
                DataContext = new PaletteViewModel(EventInstance.Instance.EventAggregator)
            };

            App.PaletteWindow = view;
            var unused = new DockablePaneProviderData
            {
                FrameworkElement = App.PaletteWindow,
                InitialState     = new DockablePaneState
                {
                    DockPosition = DockPosition.Tabbed,
                    TabBehind    = DockablePanes.BuiltInDockablePanes.ProjectBrowser
                }
            };
            var dpid = new DockablePaneId(new Guid(Properties.Resources.PaletteGuid));

            try
            {
                // It's possible that a dockable panel with the same id already exists
                // This ensures that we don't get an exception here.
                app.RegisterDockablePane(dpid, "Home", App.PaletteWindow);
            }
            catch (Exception e)
            {
                MessageBox.Show(e.Message);
            }
        }
        public Result OnStartup(UIControlledApplication application)
        {
            ThisApp = this;

            var elementCategoryFilter = new ElementCategoryFilter(BuiltInCategory.OST_GenericAnnotation);

            _updaterModified = new UpdaterModified(application.ActiveAddInId);
            if (!UpdaterRegistry.IsUpdaterRegistered(_updaterModified.GetUpdaterId()))
            {
                UpdaterRegistry.RegisterUpdater(_updaterModified);
                UpdaterRegistry.AddTrigger(_updaterModified.GetUpdaterId(), elementCategoryFilter, Element.GetChangeTypeAny());
            }

            _updaterAdded = new UpdaterAdded(application.ActiveAddInId);
            if (!UpdaterRegistry.IsUpdaterRegistered(_updaterAdded.GetUpdaterId()))
            {
                UpdaterRegistry.RegisterUpdater(_updaterAdded);
                UpdaterRegistry.AddTrigger(_updaterAdded.GetUpdaterId(), elementCategoryFilter, Element.GetChangeTypeElementAddition());
            }

            _paneId = new DockablePaneId(Guid.NewGuid());
            _handler = new RequestHandler();
            _exEvent = ExternalEvent.Create(_handler);
            _sheetNoteModel = new ViewModel();
            _mainPage = new MainPage { Resources = {["ViewModel"] = _sheetNoteModel } };

            application.RegisterDockablePane(_paneId, "Sheet Note Manager", (IDockablePaneProvider)_mainPage);
            application.ControlledApplication.DocumentClosed += new EventHandler<DocumentClosedEventArgs>(OnDocumentClosed);
            application.ControlledApplication.DocumentOpened += new EventHandler<DocumentOpenedEventArgs>(OnDocumentOpened);

            return Result.Succeeded;
        }
Beispiel #6
0
        private MainPage RegisterDockableWindow(UIControlledApplication application)
        {
            #region Register DockableDialog
            DockablePaneProviderData data = new DockablePaneProviderData();

            MainPage MainDockableWindow = new MainPage();

            m_MyDockableWindow = MainDockableWindow;

            //MainDockableWindow.SetupDockablePane(me);

            data.FrameworkElement = MainDockableWindow as System.Windows.FrameworkElement;
            data.InitialState     = new DockablePaneState();

            data.InitialState.DockPosition = DockPosition.Tabbed;


            data.InitialState.TabBehind = DockablePanes.BuiltInDockablePanes.ProjectBrowser;

            DockablePaneId dpid = new DockablePaneId(new Guid("{4f3caa71-44fa-4329-9c9c-687956834eac}"));

            application.RegisterDockablePane(dpid, "NFPA 130 Simulator", MainDockableWindow as IDockablePaneProvider);


            return(MainDockableWindow);

            #endregion
        }
Beispiel #7
0
        /// <summary>
        /// Registers Communicator Dockable Panel.
        /// </summary>
        /// <param name="application">UIControlledApp</param>
        public static void RegisterCommunicator(UIControlledApplication application)
        {
            var view = new CommunicatorView();

            AppCommand.CommunicatorWindow = view;

            var unused = new DockablePaneProviderData
            {
                FrameworkElement = AppCommand.CommunicatorWindow,
                InitialState     = new DockablePaneState
                {
                    DockPosition = DockPosition.Tabbed,
                    TabBehind    = DockablePanes.BuiltInDockablePanes.ProjectBrowser
                }
            };

            var dpid = new DockablePaneId(new Guid(Properties.Resources.CommunicatorGuid));

            try
            {
                // (Konrad) It's possible that a dockable panel with the same id already exists
                // This ensures that we don't get an exception here.
                application.RegisterDockablePane(dpid, "Mission Control", AppCommand.CommunicatorWindow);
            }
            catch (Exception e)
            {
                Log.AppendLog(LogMessageType.EXCEPTION, e.Message);
            }
        }
Beispiel #8
0
        /// <summary>
        /// Method to register dock panel at zero doc state
        /// </summary>
        /// <param name="app"></param>
        private void RegisterDockPanel(UIControlledApplication app)
        {
            FamilyBrowserWPF dockPage = new FamilyBrowserWPF();
            DockablePaneId   dpId     = new DockablePaneId(new Guid("{22827024-7B1A-4D88-80A5-1A8E894F1057}"));

            app.RegisterDockablePane(dpId, "Family Browser", dockPage as IDockablePaneProvider);
        }
Beispiel #9
0
        public Result OnStartup(UIControlledApplication a)
        {
            FormToFrameWork Form = new FormToFrameWork();


            ThisApp = this;

            a.RegisterDockablePane(paneId, "Info", Form as IDockablePaneProvider);


            // Method to add Tab and Panel
            RibbonPanel panel            = RibbonPanel(a);
            string      thisAssemblyPath = Assembly.GetExecutingAssembly().Location;

            // BUTTON FOR THE DOCKABLE WPF
            if (panel.AddItem(
                    new PushButtonData("InfoPanel", "InfoPanel", thisAssemblyPath,
                                       "InfoPanel.EntryCommand")) is PushButton button)
            #region makepanel
            {
                // defines the tooltip displayed when the button is hovered over in Revit's ribbon
                button.ToolTip = "Turn Firm Info On/Off";
                // defines the icon for the button in Revit's ribbon - note the string formatting
                Uri         uriImage   = new Uri("pack://application:,,,/InfoPanel;component/Resources/code-small.png");
                BitmapImage largeImage = new BitmapImage(uriImage);
                button.LargeImage = largeImage;
            }
            #endregion


            return(Result.Succeeded);
        }
Beispiel #10
0
 public void RegisterPanel(UIControlledApplication uiControledApp)
 {
     if (!_isRegistered) // if (!_isRegistered)
     {
         uiControledApp.RegisterDockablePane(DockablePaneId_FaceWall, "面层参数", this);
         _isRegistered = true;
     }
 }
Beispiel #11
0
        public Result OnStartup(UIControlledApplication application)
        {
            //Create panel
            var ribbonPanel = application.CreateRibbonPanel("Ruby scripting");
            var pushButton  = ribbonPanel.AddItem(
                new PushButtonData(
                    "RevitRubyShell",
                    "Open Shell",
                    typeof(RevitRubyShellApplication).Assembly.Location,
                    "RevitRubyShell.ShellCommand")) as PushButton;

            pushButton.LargeImage = GetImage("console-5.png");

            //Start ruby interpreter
            _rubyEngine = Ruby.CreateEngine();
            _scope      = _rubyEngine.CreateScope();

            // Warm up the Ruby engine by running some code on another thread:
            new SThread.Thread(
                () =>
            {
                var defaultScripts = GetSettings().Root.Descendants("OnLoad").ToArray();
                var script         = defaultScripts.Any() ? defaultScripts.First().Value.Replace("\n", "\r\n") : "";
                _rubyEngine.Execute(script, _scope);
            }).Start();

            RevitRubyShellApplication.RevitRubyShell = this;

            application.Idling += (sender, args) =>
            {
                var uiapp = sender as UIApplication;
                lock (this.Queue)
                {
                    if (this.Queue.Count <= 0)
                    {
                        return;
                    }

                    var task = this.Queue.Dequeue();

                    // execute the task!
                    try
                    {
                        task(uiapp);
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show(ex.Message, "Error");
                    }
                }
            };

            var win = new ShellWindow();

            application.RegisterDockablePane(new DockablePaneId(DockGuid), "RevitRubyShell", win);

            return(Result.Succeeded);
        }
Beispiel #12
0
        /// <summary>
        /// The DockablePanelActivated
        /// </summary>
        private void DockablePanelActivated()
        {
            PanelProprety panelPropreties = new PanelProprety();

            _panelProprety = panelPropreties;
            DockablePaneId paneId = new DockablePaneId(new Guid("{D7C963CE-B7CA-426A-8D51-6E8254D21157}"));

            _uicapp.RegisterDockablePane(paneId, "Historiques", (IDockablePaneProvider)panelPropreties);
        }
Beispiel #13
0
        private void RegisterDockPanel(UIControlledApplication app)
        {
            DockablePaneProviderData data          = new DockablePaneProviderData();
            DockPanelPage            dockPanelPage = new DockPanelPage();

            dockPanelPage.SetupDockablePane(data);
            DockablePaneId dpid = new DockablePaneId(new Guid("{C38746CB-C632-4C88-9556-4DAEDB1A6E97}"));

            app.RegisterDockablePane(dpid, "MyDockPanel", dockPanelPage as IDockablePaneProvider);
        }
Beispiel #14
0
        public override void SetupUI()
        {
            var dPid = new DockablePaneId(new Guid(AppConstants.APP_ID));

            if (!DockablePane.PaneIsRegistered(dPid))
            {
                DockPane_Provider dataprovider = new DockPane_Provider();
                _uiapp.RegisterDockablePane(dPid, AppConstants.APP_NAME, dataprovider as IDockablePaneProvider);
            }
        }
Beispiel #15
0
    public static void RegisterDockablePane(this UIControlledApplication application,
                                            Guid id, string title, FrameworkElement dockElement, DockablePaneState state)
    {
        var dPid = new DockablePaneId(id);

        var dataProvider = new DockablePaneProviderData {
            FrameworkElement = dockElement, InitialState = state
        };
        IDockablePaneProvider provider = new DockPageProvider(dataProvider);

        application.RegisterDockablePane(dPid, title, provider);
    }
Beispiel #16
0
        //This method will be called OnStartup() to (hopefully) create a custom dockable pane maybe
        public void AddCustomPane(UIControlledApplication app)
        {
            PaneProvider p = new PaneProvider(new DockablePaneProviderData());

            Guid           id = new Guid("827AC140-6F44-4c03-82FE-292705581800");
            DockablePaneId g  = new DockablePaneId(id);

            app.RegisterDockablePane(g, "Custom Pane", p);
            DockablePane myPain = new DockablePane(g);

            myPain.Show();
        }
Beispiel #17
0
        private void RegisterDocablePanelToRevit(UIControlledApplication application)
        {
            DockablePaneProviderData dockablePaneProviderData = new DockablePaneProviderData();

            dockablePaneProviderData.FrameworkElement          = _parameterEditorWPFPage as System.Windows.FrameworkElement;
            dockablePaneProviderData.InitialState              = new DockablePaneState();
            dockablePaneProviderData.InitialState.DockPosition = DockPosition.Bottom;
            DockablePaneId dpid = new DockablePaneId(
                new Guid("{F1D5DCB2-DB78-483C-8A77-C7BD7CBC6557}"));

            application.RegisterDockablePane(
                dpid, "DKTools: Parameter Editor", _parameterEditorWPFPage
                as IDockablePaneProvider);
        }
        public Result OnStartup(UIControlledApplication app)
        {
            DockPanelProvider = new DocPanel()
            {
                DataContext = new DockableViewModel(app)
            };

            if (!DockablePane.PaneIsRegistered(PaneId))
            {
                app.RegisterDockablePane(PaneId, PaneName, DockPanelProvider);
            }

            return(Result.Succeeded);
        }
Beispiel #19
0
        public Result OnStartup(UIControlledApplication a)
        {
            a.CreateRibbonTab("Familien Browser"); //Familien Browser Families Browser
            RibbonPanel G17  = a.CreateRibbonPanel("Familien Browser", "Familien Browser");
            string      path = Assembly.GetExecutingAssembly().Location;

            SingleInstallEvent handler = new SingleInstallEvent();
            ExternalEvent      exEvent = ExternalEvent.Create(handler);

            DockPanel      dockPanel = new DockPanel(exEvent, handler);
            DockablePaneId dpID      = new DockablePaneId(new Guid("FA0C04E6-F9E7-413A-9D33-CFE32622E7B8"));

            a.RegisterDockablePane(dpID, "Familien Browser", (IDockablePaneProvider)dockPanel);

            PushButtonData btnShow = new PushButtonData("ShowPanel", "Panel\nanzeigen", path, "zRevitFamilyBrowser.Revit_Classes.ShowPanel"); //Panel anzeigen ShowPanel

            btnShow.LargeImage = Tools.GetImage(Resources.IconShowPanel.GetHbitmap());
            RibbonItem ri1 = G17.AddItem(btnShow);

            PushButtonData btnFolder = new PushButtonData("OpenFolder", "Verzeichnis\nöffnen", path, "zRevitFamilyBrowser.Revit_Classes.FolderSelect");   //Verzeichnis  öffnen

            btnFolder.LargeImage = Tools.GetImage(Resources.OpenFolder.GetHbitmap());
            RibbonItem ri2 = G17.AddItem(btnFolder);

            PushButtonData btnSpace = new PushButtonData("Space", "Grid Elements\nInstall", path, "zRevitFamilyBrowser.Revit_Classes.Space");

            btnSpace.LargeImage = Tools.GetImage(Resources.Grid.GetHbitmap());
            btnSpace.ToolTip    =
                "1. Select item form browser.\n2. Pick room in project\n3. Adjust item position and quantity.";
            RibbonItem ri3 = G17.AddItem(btnSpace);

            G17.AddSeparator();
            PushButtonData btnSettings = new PushButtonData("Settings", "Settings", path, "zRevitFamilyBrowser.Revit_Classes.Settings");

            btnSettings.LargeImage = Tools.GetImage(Resources.settings.GetHbitmap());
            RibbonItem ri4 = G17.AddItem(btnSettings);

            // a.ControlledApplication.DocumentChanged += OnDocChanged;
            a.ControlledApplication.DocumentOpened += OnDocOpened;
            a.ViewActivated += OnViewActivated;

            if (File.Exists(Properties.Settings.Default.SettingPath))
            {
                Properties.Settings.Default.RootFolder = File.ReadAllText(Properties.Settings.Default.SettingPath);
                Properties.Settings.Default.Save();
            }

            return(Result.Succeeded);
        }
Beispiel #20
0
        /// <summary>
        /// 插件入口
        /// </summary>
        /// <param name="application"></param>
        /// <returns></returns>
        // execute when application open
        public Result OnStartup(UIControlledApplication application)
        {
            #region 注册可停靠窗体

            // dockable window
            Viewer dock = new Viewer();
            _dockableWindow = dock;

            // create a new dockable pane id
            DockablePaneId id = new DockablePaneId(new Guid("{68D44FAC-CF09-46B2-9544-D5A3F809373C}"));
            try
            {
                // register dockable pane
                application.RegisterDockablePane(id, "TwentyTwo Dockable Sample", _dockableWindow as IDockablePaneProvider);

#if DEBUG
                TaskDialog.Show("Info Message", "Dockable window have registered!");
#endif

                // subscribe view activated event
                application.ViewActivated += new EventHandler <ViewActivatedEventArgs>(Application_ViewActivated);
            }
            catch (Exception ex)
            {
                // show error info dialog
                TaskDialog.Show("Info Message", ex.Message);
            }

            #endregion 注册可停靠窗体

            // create a ribbon panel
            RibbonPanel ribbonPanel = application.CreateRibbonPanel(Tab.AddIns, "TwentyTwo Sample");
            // assembly
            Assembly assembly = Assembly.GetExecutingAssembly();
            // assembly path
            string assemblyPath = assembly.Location;

            // Create Show Button
            PushButton showButton = ribbonPanel.AddItem(new PushButtonData("Show Window", "Show", assemblyPath,
                                                                           "RevitAddInsWPFSample.Show")) as PushButton;
            // btn tooltip
            showButton.ToolTip = "Show the registered dockable window.";
            // show button icon images
            showButton.LargeImage = GetResourceImage(assembly, "RevitAddInsWPFSample.Resources.show32.png");
            showButton.Image      = GetResourceImage(assembly, "RevitAddInsWPFSample.Resources.show16.png");

            // return status
            return(Result.Succeeded);
        }
Beispiel #21
0
        public Result OnStartup(UIControlledApplication application)
        {
            string        tabName  = "IFC";
            RibbonControl myRibbon = ComponentManager.Ribbon;
            RibbonTab     ggTab    = null;

            foreach (RibbonTab tab in myRibbon.Tabs)
            {
                if (string.Compare(tab.Id, tabName, true) == 0)
                {
                    ggTab = tab;
                    break;
                }
            }
            if (ggTab == null)
            {
                application.CreateRibbonTab(tabName);
            }
            Autodesk.Revit.UI.RibbonPanel rp = application.CreateRibbonPanel(tabName, "Browser");
            PushButtonData pbd = new PushButtonData("propBrowser", "Ifc Property Browser", Assembly.GetExecutingAssembly().Location, "RevitIfcPropertyBrowser.ShowBrowser");

            pbd.ToolTip = "Show Property Browser";

            rp.AddItem(pbd);
            DockablePaneProviderData data = new DockablePaneProviderData();
            Browser browser = new Browser();

            data.FrameworkElement          = browser as System.Windows.FrameworkElement;
            data.InitialState              = new DockablePaneState();
            data.InitialState.DockPosition = DockPosition.Tabbed;

            mPropertyPanel = new DockablePaneId(new Guid("{C7C70722-1B9B-4454-A054-DFD142F23580}"));
            application.RegisterDockablePane(mPropertyPanel, "IFC Properties", browser);

            foreach (RibbonTab tab in ComponentManager.Ribbon.Tabs)
            {
                if (tab.Id == "Modify")
                {
                    tab.PropertyChanged += PanelEvent;
                    break;
                }
            }
            RequestHandler handler = new RequestHandler(browser);

            mExEvent = ExternalEvent.Create(handler);
            application.ControlledApplication.DocumentChanged += handler.ControlledApplication_DocumentChanged;
            return(Result.Succeeded);
        }
Beispiel #22
0
        public void RegisterDockableSamplePane(UIControlledApplication application)
        {
            // SetCarportNum.AvailabilityClassName = "RevitRedevelop.AvailabilityControll";

            // Guid temp = System.Guid.NewGuid.ToString('D');

            string temp = "ef5b0ecc-5859-4642-bb27-769393383d99";

            UI.UserInfo m_mainPage = new UI.UserInfo();

            Guid retval = Guid.Empty;

            retval = new Guid(temp);
            DockablePaneId sm_UserDockablePaneId = new DockablePaneId(retval);

            application.RegisterDockablePane(sm_UserDockablePaneId, "个人信息", m_mainPage as IDockablePaneProvider);
        }
        private void RegisterWindow(UIControlledApplication app)
        {
            EventLoadfamily          eventLoadfamily          = new EventLoadfamily();
            ExternalEvent            exEvent                  = ExternalEvent.Create(eventLoadfamily);
            DockablePaneProviderData dockablePaneProviderData = new DockablePaneProviderData();
            DockablePage             dockablePage             = new DockablePage(exEvent, eventLoadfamily);

            this.m_window = dockablePage;
            dockablePaneProviderData.FrameworkElement          = dockablePage;
            dockablePaneProviderData.InitialState              = new DockablePaneState();
            dockablePaneProviderData.InitialState.DockPosition = DockPosition.Left;;
            dockablePaneProviderData.InitialState.TabBehind    = DockablePanes.BuiltInDockablePanes.ProjectBrowser;;
            DockablePaneId dockablePaneId = new DockablePaneId(Application.paneGuid);

            app.RegisterDockablePane(dockablePaneId, "BIM-Library", dockablePage);
            app.ViewActivated += new EventHandler <ViewActivatedEventArgs>(this.Application_ViewActivated);
        }
Beispiel #24
0
        public Result OnStartup(UIControlledApplication application)
        {
            var container = CommandContainer.Instance();
            if (container.Valid)
            {
                container.BuildRibbon(application);
            }

            var dPid = new DockablePaneId(DockConstants.Id);
            if (!DockablePane.PaneIsRegistered(dPid))
            {
                var state = new DockablePaneState {DockPosition = DockPosition.Right};
                var element = new DockPage();
                application.RegisterDockablePane(DockConstants.Id, DockConstants.Name, element, state);
            }

            return Result.Succeeded;
        }
Beispiel #25
0
        private void RegisterSideBar(UIControlledApplication app, BardWebClient sidebar)
        {
            try
            {
                LoggingService.LogInfo("Attempting to register Bard Client sidebar with Revit");

                app.RegisterDockablePane(BardWebClient.Id, "BR+A Revit Helper", sidebar);
                app.ControlledApplication.DocumentOpened += sidebar.JoinRevitSession;
                app.ControlledApplication.DocumentOpened += sidebar.ShowSidebar;

                LoggingService.LogInfo("Browser binary resolution complete");
            }

            catch (Exception e)
            {
                throw new Exception("Failed to resolve browser binaries", e);
            }
        }
Beispiel #26
0
        public Result OnStartup(UIControlledApplication a)
        {
            a.CreateRibbonTab("Families Browser");
            RibbonPanel    G17       = a.CreateRibbonPanel("Families Browser", "Families Browser");
            string         path      = Assembly.GetExecutingAssembly().Location;
            DockPanel      dockPanel = new DockPanel();
            DockablePaneId dpID      = new DockablePaneId(new Guid("FA0C04E6-F9E7-413A-9D33-CFE32622E7B8"));

            a.RegisterDockablePane(dpID, "FamilyBrowser", (IDockablePaneProvider)dockPanel);

            PushButtonData btnShow   = new PushButtonData("ShowPanel", "Show\nPanel", path, "RevitFamilyBrowser.Revit_Classes.ShowPanel");
            PushButtonData btnFolder = new PushButtonData("OpenFolder", "Open\nFolder", path, "RevitFamilyBrowser.Revit_Classes.FolderSelect");


            RibbonItem ri1 = G17.AddItem(btnShow);
            RibbonItem ri2 = G17.AddItem(btnFolder);

            return(Result.Succeeded);
        }
Beispiel #27
0
        public Result OnStartup(UIControlledApplication a)
        {
            a.ViewActivated += OnViewActivated;

            MyDockablePaneControl = new MyControl();

            MyDockablePaneViewModel dockablePaneViewModel =
               new MyDockablePaneViewModel();

            MyDockablePaneControl.DataContext = dockablePaneViewModel;

            if (!DockablePane.PaneIsRegistered(MyControl.PaneId))
            {
                a.RegisterDockablePane(MyControl.PaneId,
                    MyControl.PaneName,
                    MyDockablePaneControl);
            }

            return Result.Succeeded;
        }
Beispiel #28
0
        public Result OnStartup(UIControlledApplication app)
        {
            //Allow to create own tab with given name
            app.CreateRibbonTab("Global17");
            RibbonPanel G17PanelDebug = app.CreateRibbonPanel("Global17", "Global17");
            string      path          = Assembly.GetExecutingAssembly().Location;


            //Register Dockable Pane into Revit on startup
            DockablePaneProviderData data = new DockablePaneProviderData();
            MainPage MDW = new MainPage();

            data.FrameworkElement          = MDW as System.Windows.FrameworkElement;
            data.InitialState              = new DockablePaneState();
            data.InitialState.DockPosition = DockPosition.Tabbed;
            data.InitialState.TabBehind    = DockablePanes.BuiltInDockablePanes.ProjectBrowser;
            DockablePaneId dpid = new DockablePaneId(new Guid("{D7C963CE-B7CA-426A-8D51-6E8254D21157}"));

            app.RegisterDockablePane(dpid, "Custom Families Global17", MDW as IDockablePaneProvider);

            //Create Button to show panel
            PushButtonData btnShow = new PushButtonData("ShowPanel", "ShowPanel", path, "MyDockablePanel.ShowPanel");

            btnShow.LargeImage = GetImage(Resources.green.GetHbitmap());

            PushButtonData btnInfo = new PushButtonData("ShowInfo", "ShowInfo", path, "MyDockablePanel.DBElement");

            btnInfo.LargeImage = GetImage(Resources.green.GetHbitmap());

            PushButtonData btnInsert = new PushButtonData("InsertFamily", "InsertFamily", path, "MyDockablePanel.FamilyInsert");

            btnInsert.LargeImage = GetImage(Resources.green.GetHbitmap());

            //Add button to ribbon tab
            RibbonItem ri1 = G17PanelDebug.AddItem(btnShow);
            RibbonItem ri2 = G17PanelDebug.AddItem(btnInfo);
            RibbonItem ri3 = G17PanelDebug.AddItem(btnInsert);

            return(Result.Succeeded);
        }
Beispiel #29
0
        public Result OnStartup(UIControlledApplication a)
        {
            try
            {
                uiApp    = a;
                _thisApp = this;

                if (MainDock == null)
                {
                    MainDock = new FormMainDock();
                    DockData = new DockablePaneProviderData
                    {
                        FrameworkElement = MainDock,
                        InitialState     = new DockablePaneState
                        {
                            DockPosition = DockPosition.Right
                        }
                    };
                }

                uiApp.RegisterDockablePane(GlobalHelper.MainDockablePaneId, GlobalHelper.MainPanelName(), MainDock);

                // (Konrad) We are going to use this External Event Handler all across Speckle
                // It's best to keep it on the main app, and keep it public.
                SpeckleHandler = new SpeckleRequestHandler();
                SpeckleEvent   = ExternalEvent.Create(SpeckleHandler);

                a.ControlledApplication.DocumentCreated += OnDocumentCreated;
                a.ControlledApplication.DocumentOpened  += OnDocumentOpened;

                AddRibbonPanel(a);

                return(Result.Succeeded);
            }
            catch
            {
                return(Result.Failed);
            }
        }
Beispiel #30
0
        public Result OnStartup(UIControlledApplication a)
        {
            //a.ViewActivated += OnViewActivated;
            MyDockablePaneControl = new Controls.Control1()
            {
                DataContext = new Controls.Control1ViewModel(a)
            };

            //Controls.Control1ViewModel dockablePaneViewModel =
            //	new Controls.Control1ViewModel();
            //
            //MyDockablePaneControl.DataContext = dockablePaneViewModel;

            if (!DockablePane.PaneIsRegistered(Controls.Control1.PaneId))
            {
                a.RegisterDockablePane(Controls.Control1.PaneId,
                                       Controls.Control1.PaneName,
                                       MyDockablePaneControl);
            }

            return(Result.Succeeded);
        }
Beispiel #31
0
        public Result OnStartup(UIControlledApplication a)
        {
            //Register dockable pane
            //EXTERNAL EVENTS WITH ARGUMENTS
            EventHandlerMethodPropertiesOnOff     evP  = new EventHandlerMethodPropertiesOnOff();
            EventHandlerMethodProjectBrowserOnOff evPB = new EventHandlerMethodProjectBrowserOnOff();
            NewForm Form = new NewForm(evP, evPB);

            // DockablePaneId paneId = new DockablePaneId(new Guid("9d7ed357-534f-4d87-afc4-8e784e3b119e"));

            myForm = Form;

            ThisApp = this;

            a.RegisterDockablePane(paneId, "P PB", Form as IDockablePaneProvider);

            // Method to add Tab and Panel
            RibbonPanel panel            = RibbonPanel(a);
            string      thisAssemblyPath = Assembly.GetExecutingAssembly().Location;

            // BUTTON FOR THE DOCKABLE WPF
            if (panel.AddItem(
                    new PushButtonData("PropertiesProjectBrowserOnOff", "PropertiesProjectBrowserOnOff", thisAssemblyPath,
                                       "PropertiesProjectBrowserOnOff.EntryCommand")) is PushButton button)
            {
                // defines the tooltip displayed when the button is hovered over in Revit's ribbon
                button.ToolTip = "Turn Properties & ProjectBrowser On/Off";
                // defines the icon for the button in Revit's ribbon - note the string formatting
                Uri         uriImage   = new Uri("pack://application:,,,/PropertiesProjectBrowserOnOff;component/Resources/code-small.png");
                BitmapImage largeImage = new BitmapImage(uriImage);
                button.LargeImage = largeImage;
            }

            // listeners/watchers for external events (if you choose to use them)
            a.ApplicationClosing += a_ApplicationClosing; //Set Application to Idling
            a.Idling             += a_Idling;

            return(Result.Succeeded);
        }
Beispiel #32
0
        public Result OnStartup(UIControlledApplication a)
        {
            thisApp    = this;
            _path      = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);
            _dockPanel = null;

            _assembly = Assembly.GetExecutingAssembly().GetName().Name;

            if (_dockPanel == null)
            {
                RequestHandler handler = new RequestHandler();
                ExternalEvent  exEvent = ExternalEvent.Create(handler);
                _dockPanel = new DockPanel(exEvent, handler);
            }

            paneId = new DockablePaneId(Guid.NewGuid());
            a.RegisterDockablePane(paneId, "Videos", (IDockablePaneProvider)_dockPanel);

            //Load Ribbon and stuff.

            return(Result.Succeeded);
        }
Beispiel #33
0
        // public static App thisApp = null;
        public Result OnStartup(UIControlledApplication a)
        {
            a.CreateRibbonTab("Familien Browser"); //Familien Browser Families Browser
            RibbonPanel G17  = a.CreateRibbonPanel("Familien Browser", "Familien Browser");
            string      path = Assembly.GetExecutingAssembly().Location;

            MyEvent       handler = new MyEvent();
            ExternalEvent exEvent = ExternalEvent.Create(handler);

            DockPanel      dockPanel = new DockPanel(exEvent, handler);
            DockablePaneId dpID      = new DockablePaneId(new Guid("FA0C04E6-F9E7-413A-9D33-CFE32622E7B8"));

            a.RegisterDockablePane(dpID, "Familien Browser", (IDockablePaneProvider)dockPanel);

            PushButtonData btnShow = new PushButtonData("ShowPanel", "Panel\nanzeigen", path, "RevitFamilyBrowser.Revit_Classes.ShowPanel"); //Panel anzeigen ShowPanel

            btnShow.LargeImage = GetImage(Resources.IconShowPanel.GetHbitmap());
            RibbonItem ri1 = G17.AddItem(btnShow);

            PushButtonData btnFolder = new PushButtonData("OpenFolder", "Verzeichnis\nöffnen", path, "RevitFamilyBrowser.Revit_Classes.FolderSelect");   //Verzeichnis  öffnen

            btnFolder.LargeImage = GetImage(Resources.OpenFolder.GetHbitmap());
            RibbonItem ri2 = G17.AddItem(btnFolder);

            //PushButtonData btnImage = new PushButtonData("Image", "Image", path, "RevitFamilyBrowser.Revit_Classes.Test");
            //RibbonItem ri3 = G17.AddItem(btnImage);

            a.ControlledApplication.DocumentChanged          += OnDocChanged;
            a.ControlledApplication.DocumentOpened           += OnDocOpened;
            a.ControlledApplication.FamilyLoadedIntoDocument += OnFamilyLoad;
            a.ControlledApplication.DocumentSaved            += OnDocSaved;
            a.ViewActivated += OnViewActivated;

            Properties.Settings.Default.CollectedData = string.Empty;
            Properties.Settings.Default.FamilyPath    = string.Empty;
            Properties.Settings.Default.SymbolList    = string.Empty;

            return(Result.Succeeded);
        }