public BookmarkInfo[] Load() { var section = settingsService.GetOrCreateSection(SETTINGS_GUID); var settings = new List <BookmarkInfo>(); foreach (var bmSect in section.SectionsWithName("Bookmark")) { var isEnabled = bmSect.Attribute <bool?>("IsEnabled"); if (isEnabled == null) { continue; } var location = bookmarkLocationSerializerService.Deserialize(bmSect.TryGetSection("BML")); if (location == null) { continue; } var bmSettings = new BookmarkSettings { IsEnabled = isEnabled.Value, Name = bmSect.Attribute <string>("Name") ?? string.Empty, Labels = new ReadOnlyCollection <string>(LoadLabels(bmSect)), }; settings.Add(new BookmarkInfo(location, bmSettings)); } return(settings.ToArray()); }
/// <summary> /// Constructor /// </summary> /// <param name="module">Module</param> /// <param name="token">Token of a method within the module</param> /// <param name="offset">IL offset of the bookmark within the method body</param> /// <param name="settings">Bookmark settings</param> public DotNetMethodBodyBookmarkInfo(ModuleId module, uint token, uint offset, BookmarkSettings settings) { Module = module; Token = token; Offset = offset; Settings = settings; }
protected override void OnInit(EventArgs e) { base.OnInit(e); settings = new BookmarkSettings(); settings = settings.Load(); btn_Save.Click += new EventHandler(btn_Save_Click); }
void btn_Save_Click(object sender, EventArgs e) { //settings.Maximum = int.Parse(rtg_maximum.Value.ToString()); //settings.Minimum = int.Parse(rtg_minimum.Value.ToString()); settings = settings.Save();// (SPContext.Current.Site); var eventArgsJavaScript = String.Format("{{Message:'{0}',controlIDs:window.frameElement.dialogArgs}}", "The Properties have been updated."); ((EnhancedLayoutsPage)Page).EndOperation(ModalDialogResult.OK, eventArgsJavaScript); Context.Response.Flush(); Context.Response.End(); }
/// <summary> /// Creates a bookmark. If there's already a bookmark at the location, null is returned. /// </summary> /// <param name="module">Module</param> /// <param name="token">Token of a definition (type, method, field, property, event)</param> /// <param name="settings">Bookmark settings</param> /// <returns></returns> public Bookmark Create(ModuleId module, uint token, BookmarkSettings settings) => Create(new[] { new DotNetTokenBookmarkInfo(module, token, settings) }).FirstOrDefault();
/// <summary> /// Creates a bookmark. If there's already a bookmark at the location, null is returned. /// </summary> /// <param name="module">Module</param> /// <param name="token">Token of a method within the module</param> /// <param name="offset">IL offset of the bookmark within the method body</param> /// <param name="settings">Bookmark settings</param> /// <returns></returns> public Bookmark Create(ModuleId module, uint token, uint offset, BookmarkSettings settings) => Create(new[] { new DotNetMethodBodyBookmarkInfo(module, token, offset, settings) }).FirstOrDefault();
/// <summary> /// Constructor /// </summary> /// <param name="module">Module</param> /// <param name="token">Token of a definition (type, method, field, property, event)</param> /// <param name="settings">Bookmark settings</param> public DotNetTokenBookmarkInfo(ModuleId module, uint token, BookmarkSettings settings) { Module = module; Token = token; Settings = settings; }
/// <summary> /// Constructor /// </summary> /// <param name="location">Bookmark location</param> /// <param name="settings">Bookmark settings</param> public BookmarkInfo(BookmarkLocation location, BookmarkSettings settings) { Location = location ?? throw new ArgumentNullException(nameof(location)); Settings = settings; }
/// <summary> /// Constructor /// </summary> /// <param name="bookmark">Bookmark</param> /// <param name="settings">New settings</param> public BookmarkAndSettings(Bookmark bookmark, BookmarkSettings settings) { Bookmark = bookmark ?? throw new ArgumentNullException(nameof(bookmark)); Settings = settings; }
protected override void CreateChildControls() { this.DisableInputFieldLabel = true; base.ControlMode = SPContext.Current.FormContext.FormMode; base.CreateChildControls(); BookmarkField = (HTML5BookmarkField)ItemFieldValue; if (BookmarkField == null) { BookmarkField = new HTML5BookmarkField(); } if (base.ControlMode == SPControlMode.Edit || base.ControlMode == SPControlMode.New) { } else { if (!Page.ClientScript.IsClientScriptIncludeRegistered("JQuery")) { Page.ClientScript.RegisterClientScriptInclude(typeof(HTML5BookmarkControl), "JQuery", "/_layouts/Hemrika/Content/jquery.min.js"); } BookmarkSettings settings = new BookmarkSettings(); settings.Load(); if (!Page.ClientScript.IsClientScriptIncludeRegistered("BookMark")) { Page.ClientScript.RegisterClientScriptInclude(typeof(HTML5BookmarkControl), "BookMark", "/_layouts/Hemrika/Content/jquery.bookmark.js"); } if (!Page.ClientScript.IsClientScriptIncludeRegistered("BookMarkExt") && settings.UseExtended) { Page.ClientScript.RegisterClientScriptInclude(typeof(HTML5BookmarkControl), "BookMarkExt", "/_layouts/Hemrika/Content/jquery.bookmark.ext.js"); } CssRegistration.Register("/_layouts/Hemrika/Content/bookmark.css"); input_Bookmark = (NumberInput)this.TemplateContainer.FindControl("BookmarkInput"); if (input_Bookmark != null) { input_Bookmark.TextChanged += new EventHandler(input_Bookmark_TextChanged); input_Bookmark.Value = BookmarkField.Bookmarks; input_Bookmark.Text = BookmarkField.Bookmarks.ToString(); HtmlGenericControl Bookmark = new HtmlGenericControl("div"); Bookmark.Attributes.Add("class", "hasBookmark"); Bookmark.ID = "selectBookmark"; this.Controls.Add(Bookmark); if (!Page.ClientScript.IsClientScriptBlockRegistered(Bookmark.ClientID)) { StringBuilder script = new StringBuilder(); script.Append("$(function () {"); script.Append("$(\"" + Bookmark.ClientID + "\").bookmark({"); //script.Append("onSelect: customBookmark"); if (settings.UseCommon) { script.Append("Sites: $.bookmark.commonSites"); } else { if (settings.Sites != null && settings.Sites.Count > 0) { script.Append("Sites:["); foreach (string site in settings.Sites) { script.Append("'" + site + "',"); } script.Append("]"); script = script.Replace(",]", "]"); } } if (settings.AddEmail) { script.Append(",addEmail: true"); if (!string.IsNullOrEmpty(settings.EmailSubject)) { script.Append(",emailSubject:'" + settings.EmailSubject + "'"); } if (!string.IsNullOrEmpty(settings.EmailBody)) { script.Append(",emailBody:'" + settings.EmailBody + "'"); } } if (settings.AddFavorite) { script.Append(",addFavorite: true"); } if (settings.AddAnalytics) { script.Append(",addAnalytics : true"); if (!string.IsNullOrEmpty(settings.AnalyticsName)) { script.Append(",analyticsName:'" + settings.AnalyticsName + "'"); } } script.Append("});"); //script = script.Replace("{}","{sites: $.bookmark.commonSites}"); script = script.Replace("{}", ""); script.Append("});"); Page.ClientScript.RegisterClientScriptBlock(typeof(HTML5BookmarkControl), Bookmark.ClientID, script.ToString(), true); } } } }