Пример #1
0
		public void OnLoad(IRibbonUI ribbonUI) {
			this.ribbon = ribbonUI;
			Globals.ThisAddIn.Application.WindowSelectionChange += delegate { ribbon.Invalidate(); };
			Globals.ThisAddIn.Application.WindowDeactivate += delegate { ribbon.Invalidate(); };

			StatsManager.Changed += delegate { ribbonUI.Invalidate(); };
		}
Пример #2
0
        public void btnUnlock_Click(IRibbonControl control)
        {
            foreach (WordOM.Table table in Globals.ThisAddIn.Application.ActiveDocument.Tables)
            {
                try
                {
                    var controls = table.Range.ContentControls;
                    if (controls == null || controls.Count == 0)
                    {
                        continue;
                    }
                    controls[1].Ungroup();
                    //Globals.ThisAddIn.Application.Selection.Range.ParentContentControl.Ungroup();
                }

                catch (Exception e)
                {
#if DEBUG
                    MessageBox.Show(e.ToString(), @"sorry");
#endif
                }
            }

            var storedMode =
                Globals.ThisAddIn.Application.ActiveDocument.GetPropertyValue(
                    Constants.WordDocumentProperties.ToggleLockMode);
            var newMode = string.Equals(storedMode, Constants.WordDocumentPropertyValues.ToggleLockModeUnlocked)
                ? Constants.WordDocumentPropertyValues.ToggleLockModeLocked
                : Constants.WordDocumentPropertyValues.ToggleLockModeUnlocked;
            Globals.ThisAddIn.Application.ActiveDocument.UpdateOrCreatePropertyValue(
                Constants.WordDocumentProperties.ToggleLockMode, newMode);
            ribbon.Invalidate();
        }
Пример #3
0
            private void XlApp_WorkbookAfterSave(Excel.Workbook Wb, bool Success)
            {
                var path = Wb.FullName;

                if (!path.StartsWith(StagingPath))
                {
                    return;
                }

                //get workbookBranch from workbook path/filename
                var workbookPath   = GetWorkbookPath(path);
                var workbookBranch = repositories.GetWorkbookVersionFromPath(workbookPath);

                //circuit breaker
                if (workbookBranch == null)
                {
                    return;
                }

                //get credentials
                var pushUrl     = workbookBranch.Workbook.Repository.GitRepository.Network.Remotes["origin"].PushUrl;
                var credentials = Config.Credentials.Where(c => pushUrl.StartsWith(c.Url)).FirstOrDefault();

                //commit
                workbookBranch.Commit(path, credentials.Username ?? Environment.UserName, credentials.Email);

                //invalidate ribbon
                ribbon.Invalidate();
            }
Пример #4
0
        /*public bool getStateRefresh(IRibbonControl control)
         * {
         *  return ((apiKeyFrm.validApiKey == true) ? true : false);
         * }*/

        public void OnApiKeyButtonPressed(IRibbonControl control)
        {
            try
            {
                //helperClass.log.Info("On Api key button is pressed");
                if (apiKeyFrm.validApiKey == true)
                {
                    apiKeyFrm.validApiKey = false;
                    ribbon.Invalidate();
                }
                else
                {
                    var apkFrm = new apiKeyFrm();
                    apkFrm.ShowDialog();
                    if (ribbon != null)
                    {
                        ribbon.Invalidate();
                    }
                }
            }
            catch (Exception ex)
            {
                helperClass.log.Error(ex);
            }
        }
Пример #5
0
        /*
         * public override string GetCustomUI(string ribbonId)
         * {
         *  _excel = new Application(null, ExcelDna.Integration.ExcelDnaUtil.Application);
         *  string ribbonXml = GetCustomRibbonXML();
         *  return ribbonXml;
         * }
         *
         * private string GetCustomRibbonXML()
         * {
         *  string ribbonXml;
         *  var thisAssembly = typeof(CustomRibbon).Assembly;
         *  var resourceName = typeof(CustomRibbon).Namespace + ".CustomRibbon.xml";
         *
         *  using (Stream stream = thisAssembly.GetManifestResourceStream(resourceName))
         *  using (StreamReader reader = new StreamReader(stream))
         *  {
         *      ribbonXml = reader.ReadToEnd();
         *  }
         *
         *  if (ribbonXml == null)
         *  {
         *      throw new MissingManifestResourceException(resourceName);
         *  }
         *  return ribbonXml;
         * }
         */
        public void OnLoad(IRibbonUI ribbon)
        {
            if (ribbon == null)
            {
                throw new ArgumentNullException(nameof(ribbon));
            }

            _thisRibbon = ribbon;

            _excel = new Application(null, ExcelDna.Integration.ExcelDnaUtil.Application); //added this
            //_excel.WorkbookActivateEvent += OnInvalidateRibbon;
            //_excel.WorkbookDeactivateEvent += OnInvalidateRibbon;
            //_excel.SheetActivateEvent += OnInvalidateRibbon;
            //_excel.SheetDeactivateEvent += OnInvalidateRibbon;
            _thisRibbon.Invalidate();
            //if (_excel.ActiveWorkbook == null)
            //{
            //    _excel.Workbooks.Add();
            //}

            //get apikey
            Utils.apiKey = System.Configuration.ConfigurationManager.AppSettings["apiKey"];

            //get projects;
            _projects = Projects.GetProjects(Utils.apiKey);
        }
Пример #6
0
 public static void InvalidateRibbon()
 {
     if (_thisRibbon != null)
     {
         _thisRibbon.Invalidate();
         _thisRibbon.InvalidateControl("openApiTab");
     }
 }
Пример #7
0
 internal void Invalidate(string controlId = null)
 {
     if (!String.IsNullOrEmpty(controlId))
     {
         _ribbon.InvalidateControl(controlId);
     }
     else
     {
         _ribbon.Invalidate();
     }
 }
Пример #8
0
        //========================================================================================
        // Addin menu behaviors

        public bool EnsureBodyContext(IRibbonControl control)
        {
            XElement page;

            using (var manager = new ApplicationManager()) { page = manager.CurrentPage(); }

            var ns = page.GetNamespaceOfPrefix("one");

            var found = page.Elements(ns + "Outline")?
                        .Descendants(ns + "T")?
                        .Attributes("selected")?
                        .Any(a => a.Value.Equals("all"));

            ribbon.Invalidate();

            return(found ?? true);
        }
Пример #9
0
        public void onLoad(IRibbonUI ribbon)
        {
            try
            {
                logger.Info("onLoad: " + (ribbon != null).ToString());
                ribbonUI = ribbon;

                if (ribbonUI != null)
                {
                    ribbonUI.Invalidate();
                }
            }
            catch (Exception ex)
            {
                logger.Error(ex);
            }
        }
Пример #10
0
 private void InvalidateRibbon(string id = null)
 {
     try
     {
         if (ribbonUI != null)
         {
             if (id != null)
             {
                 ribbonUI.InvalidateControl(id);
             }
             else
             {
                 ribbonUI.Invalidate();
             }
         }
     }
     catch (Exception ex)
     {
         logger.Error(ex);
     }
 }
Пример #11
0
 private void OnInvalidateRibbon(object obj)
 {
     _thisRibbon.Invalidate();
 }
Пример #12
0
 public void EditStylesCmd(IRibbonControl control)
 {
     factory.GetCommand <EditStylesCommand>().Execute();
     ribbon.Invalidate();             // TODO: only if changes?
 }