internal static bool AreDefault(this JqGridColumnFormatterOptions formatterOptions, string formatter) { switch (formatter) { case JqGridPredefinedFormatters.Integer: return((formatterOptions.DefaultValue == JqGridOptionsDefaults.ColumnModel.Formatter.IntegerDefaultValue) && (formatterOptions.ThousandsSeparator == JqGridOptionsDefaults.ColumnModel.Formatter.ThousandsSeparator)); case JqGridPredefinedFormatters.Number: return((formatterOptions.DecimalPlaces == JqGridOptionsDefaults.ColumnModel.Formatter.DecimalPlaces) && (formatterOptions.DecimalSeparator == JqGridOptionsDefaults.ColumnModel.Formatter.DecimalSeparator) && (formatterOptions.DefaultValue == JqGridOptionsDefaults.ColumnModel.Formatter.NumberDefaultValue) && (formatterOptions.ThousandsSeparator == JqGridOptionsDefaults.ColumnModel.Formatter.ThousandsSeparator)); case JqGridPredefinedFormatters.Currency: return((formatterOptions.DecimalPlaces == JqGridOptionsDefaults.ColumnModel.Formatter.DecimalPlaces) && (formatterOptions.DecimalSeparator == JqGridOptionsDefaults.ColumnModel.Formatter.DecimalSeparator) && (formatterOptions.DefaultValue == JqGridOptionsDefaults.ColumnModel.Formatter.CurrencyDefaultValue) && String.IsNullOrWhiteSpace(formatterOptions.Prefix) && String.IsNullOrWhiteSpace(formatterOptions.Suffix) && (formatterOptions.ThousandsSeparator == JqGridOptionsDefaults.ColumnModel.Formatter.ThousandsSeparator)); case JqGridPredefinedFormatters.Date: return((formatterOptions.SourceFormat == JqGridOptionsDefaults.ColumnModel.Formatter.SourceFormat) && (formatterOptions.OutputFormat == JqGridOptionsDefaults.ColumnModel.Formatter.OutputFormat)); case JqGridPredefinedFormatters.Link: return(String.IsNullOrWhiteSpace(formatterOptions.Target)); case JqGridPredefinedFormatters.ShowLink: return(String.IsNullOrWhiteSpace(formatterOptions.BaseLinkUrl) && String.IsNullOrWhiteSpace(formatterOptions.ShowAction) && String.IsNullOrWhiteSpace(formatterOptions.AddParam) && String.IsNullOrWhiteSpace(formatterOptions.Target) && (formatterOptions.IdName == JqGridOptionsDefaults.ColumnModel.Formatter.IdName)); case JqGridPredefinedFormatters.CheckBox: return(formatterOptions.Disabled == JqGridOptionsDefaults.ColumnModel.Formatter.Disabled); case JqGridPredefinedFormatters.Actions: return((formatterOptions.Keys == JqGridOptionsDefaults.ColumnModel.Formatter.Keys) && (formatterOptions.EditButton == JqGridOptionsDefaults.ColumnModel.Formatter.EditButton) && (formatterOptions.UseFormEditing == JqGridOptionsDefaults.ColumnModel.Formatter.UseFormEditing) && ((formatterOptions.InlineEditingOptions == null) || formatterOptions.InlineEditingOptions.AreDefault()) && (formatterOptions.DeleteButton == JqGridOptionsDefaults.ColumnModel.Formatter.DeleteButton) && ((formatterOptions.DeleteOptions == null) || formatterOptions.DeleteOptions.AreDefault())); case JqGridPredefinedFormatters.JQueryUIButton: return(String.IsNullOrEmpty(formatterOptions.Label) && (formatterOptions.Text == JqGridOptionsDefaults.ColumnModel.Formatter.Text) && String.IsNullOrEmpty(formatterOptions.PrimaryIcon) && String.IsNullOrEmpty(formatterOptions.SecondaryIcon)); default: return(true); } }
/// <summary> /// Initializes a new instance of the JqGridColumnFormatterAttribute class. /// </summary> /// <param name="formatter">The predefined formatter type ('' delimited string) or custom JavaScript formatting function name.</param> public JqGridColumnFormatterAttribute(string formatter) { if (String.IsNullOrWhiteSpace(formatter)) { throw new ArgumentNullException(nameof(formatter)); } Formatter = formatter; FormatterOptions = new JqGridColumnFormatterOptions(formatter); }
/// <summary> /// Initializes a new instance of the JqGridColumnFormatterAttribute class. /// </summary> /// <param name="formatter">The predefined formatter type ('' delimited string) or custom JavaScript formatting function name.</param> public JqGridColumnFormatterAttribute(string formatter) { if (String.IsNullOrWhiteSpace(formatter)) { throw new ArgumentNullException("formatter"); } Formatter = formatter; Options = new JqGridColumnFormatterOptions(formatter); PrimaryIcon = String.Empty; SecondaryIcon = String.Empty; Label = String.Empty; Text = true; }
internal static void SetColumnFormatterOptions(this ModelMetadata metadata, JqGridColumnFormatterOptions formatterOptions) { metadata.AdditionalValues.Add(_formatterOptionsKey, formatterOptions); }
private static StringBuilder AppendColumnModelActionsFormatterOptions(this StringBuilder javaScriptBuilder, JqGridColumnFormatterOptions formatterOptions) { javaScriptBuilder.AppendJavaScriptObjectBooleanField(JqGridOptionsNames.ColumnModel.Formatter.KEYS, formatterOptions.Keys, JqGridOptionsDefaults.ColumnModel.Formatter.Keys) .AppendJavaScriptObjectBooleanField(JqGridOptionsNames.ColumnModel.Formatter.EDIT_BUTTON, formatterOptions.EditButton, JqGridOptionsDefaults.ColumnModel.Formatter.EditButton) .AppendJavaScriptObjectBooleanField(JqGridOptionsNames.ColumnModel.Formatter.DELETE_BUTTON, formatterOptions.DeleteButton, JqGridOptionsDefaults.ColumnModel.Formatter.DeleteButton) .AppendJavaScriptObjectBooleanField(JqGridOptionsNames.ColumnModel.Formatter.USE_FORM_EDITING, formatterOptions.UseFormEditing, JqGridOptionsDefaults.ColumnModel.Formatter.UseFormEditing); if (formatterOptions.EditButton) { if (formatterOptions.UseFormEditing) { javaScriptBuilder.AppendNavigatorEditActionOptions(JqGridOptionsNames.ColumnModel.Formatter.EDIT_OPTIONS, formatterOptions.FormEditingOptions); } else { javaScriptBuilder.AppendInlineNavigatorActionOptions(null, formatterOptions.InlineEditingOptions); } } if (formatterOptions.DeleteButton) { javaScriptBuilder.AppendNavigatorDeleteActionOptions(JqGridOptionsNames.ColumnModel.Formatter.DELETE_OPTIONS, formatterOptions.DeleteOptions); } return(javaScriptBuilder); }
private static StringBuilder AppendColumnModelCheckBoxFormatterOptions(this StringBuilder javaScriptBuilder, JqGridColumnFormatterOptions formatterOptions) { return(javaScriptBuilder.AppendJavaScriptObjectBooleanField(JqGridOptionsNames.ColumnModel.Formatter.DISABLED, formatterOptions.Disabled)); }
private static StringBuilder AppendColumnModelShowLinkFormatterOptions(this StringBuilder javaScriptBuilder, JqGridColumnFormatterOptions formatterOptions) { return(javaScriptBuilder.AppendJavaScriptObjectStringField(JqGridOptionsNames.ColumnModel.Formatter.BASE_LINK_URL, formatterOptions.BaseLinkUrl) .AppendJavaScriptObjectStringField(JqGridOptionsNames.ColumnModel.Formatter.SHOW_ACTION, formatterOptions.ShowAction) .AppendJavaScriptObjectStringField(JqGridOptionsNames.ColumnModel.Formatter.ADD_PARAM, formatterOptions.AddParam) .AppendJavaScriptObjectStringField(JqGridOptionsNames.ColumnModel.Formatter.TARGET, formatterOptions.Target) .AppendJavaScriptObjectStringField(JqGridOptionsNames.ColumnModel.Formatter.ID_NAME, formatterOptions.IdName, JqGridOptionsDefaults.ColumnModel.Formatter.IdName)); }
private static StringBuilder AppendColumnModelLinkFormatterOptions(this StringBuilder javaScriptBuilder, JqGridColumnFormatterOptions formatterOptions) { return(javaScriptBuilder.AppendJavaScriptObjectStringField(JqGridOptionsNames.ColumnModel.Formatter.TARGET, formatterOptions.Target)); }
private static StringBuilder AppendColumnModelDateFormatterOptions(this StringBuilder javaScriptBuilder, JqGridColumnFormatterOptions formatterOptions) { return(javaScriptBuilder.AppendJavaScriptObjectStringField(JqGridOptionsNames.ColumnModel.Formatter.SOURCE_FORMAT, formatterOptions.SourceFormat, JqGridOptionsDefaults.ColumnModel.Formatter.SourceFormat) .AppendJavaScriptObjectStringField(JqGridOptionsNames.ColumnModel.Formatter.OUTPUT_FORMAT, formatterOptions.OutputFormat, JqGridOptionsDefaults.ColumnModel.Formatter.OutputFormat)); }
private static StringBuilder AppendColumnModelCurrencyFormatterOptions(this StringBuilder javaScriptBuilder, JqGridColumnFormatterOptions formatterOptions) { return(javaScriptBuilder.AppendJavaScriptObjectIntegerField(JqGridOptionsNames.ColumnModel.Formatter.DECIMAL_PLACES, formatterOptions.DecimalPlaces, JqGridOptionsDefaults.ColumnModel.Formatter.DecimalPlaces) .AppendJavaScriptObjectStringField(JqGridOptionsNames.ColumnModel.Formatter.DECIMAL_SEPARATOR, formatterOptions.DecimalSeparator, JqGridOptionsDefaults.ColumnModel.Formatter.DecimalSeparator) .AppendJavaScriptObjectStringField(JqGridOptionsNames.ColumnModel.Formatter.DEFAULT_VALUE, formatterOptions.DefaultValue, JqGridOptionsDefaults.ColumnModel.Formatter.NumberDefaultValue) .AppendJavaScriptObjectStringField(JqGridOptionsNames.ColumnModel.Formatter.PREFIX, formatterOptions.Prefix) .AppendJavaScriptObjectStringField(JqGridOptionsNames.ColumnModel.Formatter.SUFFIX, formatterOptions.Suffix) .AppendJavaScriptObjectStringField(JqGridOptionsNames.ColumnModel.Formatter.THOUSANDS_SEPARATOR, formatterOptions.ThousandsSeparator, JqGridOptionsDefaults.ColumnModel.Formatter.ThousandsSeparator)); }
private static StringBuilder AppendColumnModelIntegerFormatterOptions(this StringBuilder javaScriptBuilder, JqGridColumnFormatterOptions formatterOptions) { return(javaScriptBuilder.AppendJavaScriptObjectStringField(JqGridOptionsNames.ColumnModel.Formatter.DEFAULT_VALUE, formatterOptions.DefaultValue, JqGridOptionsDefaults.ColumnModel.Formatter.IntegerDefaultValue) .AppendJavaScriptObjectStringField(JqGridOptionsNames.ColumnModel.Formatter.THOUSANDS_SEPARATOR, formatterOptions.ThousandsSeparator, JqGridOptionsDefaults.ColumnModel.Formatter.ThousandsSeparator)); }
private static StringBuilder AppendColumnModelFormatterOptions(this StringBuilder javaScriptBuilder, string formatter, JqGridColumnFormatterOptions formatterOptions) { if ((formatterOptions != null) && !formatterOptions.AreDefault(formatter)) { javaScriptBuilder.AppendJavaScriptObjectFieldOpening(JqGridOptionsNames.ColumnModel.FORMATTER_OPTIONS); switch (formatter) { case JqGridPredefinedFormatters.Integer: javaScriptBuilder.AppendColumnModelIntegerFormatterOptions(formatterOptions); break; case JqGridPredefinedFormatters.Number: javaScriptBuilder.AppendColumnModelNumberFormatterOptions(formatterOptions); break; case JqGridPredefinedFormatters.Currency: javaScriptBuilder.AppendColumnModelCurrencyFormatterOptions(formatterOptions); break; case JqGridPredefinedFormatters.Date: javaScriptBuilder.AppendColumnModelDateFormatterOptions(formatterOptions); break; case JqGridPredefinedFormatters.Link: javaScriptBuilder.AppendColumnModelLinkFormatterOptions(formatterOptions); break; case JqGridPredefinedFormatters.ShowLink: javaScriptBuilder.AppendColumnModelShowLinkFormatterOptions(formatterOptions); break; case JqGridPredefinedFormatters.CheckBox: javaScriptBuilder.AppendColumnModelCheckBoxFormatterOptions(formatterOptions); break; case JqGridPredefinedFormatters.Actions: javaScriptBuilder.AppendColumnModelActionsFormatterOptions(formatterOptions); break; } javaScriptBuilder.AppendJavaScriptObjectFieldClosing(); } return(javaScriptBuilder); }
private static StringBuilder AppendColumnModelJQueryUIButtonFormatter(this StringBuilder javaScriptBuilder, JqGridColumnFormatterOptions formatterOptions) { StringBuilder jQueryUIButtonFormatterBuilder = new StringBuilder(80); jQueryUIButtonFormatterBuilder.Append(JQUERY_UI_BUTTON_FORMATTER_START); if (!formatterOptions.AreDefault(JqGridPredefinedFormatters.JQueryUIButton)) { jQueryUIButtonFormatterBuilder.AppendJavaScriptObjectOpening() .AppendJavaScriptObjectStringField(JqGridOptionsNames.ColumnModel.Formatter.LABEL, formatterOptions.Label) .AppendJavaScriptObjectBooleanField(JqGridOptionsNames.ColumnModel.Formatter.TEXT, formatterOptions.Text, JqGridOptionsDefaults.ColumnModel.Formatter.Text); if (!String.IsNullOrEmpty(formatterOptions.PrimaryIcon) || !String.IsNullOrEmpty(formatterOptions.SecondaryIcon)) { jQueryUIButtonFormatterBuilder.AppendJavaScriptObjectFieldOpening(JqGridOptionsNames.ColumnModel.Formatter.ICONS) .AppendJavaScriptObjectStringField(JqGridOptionsNames.ColumnModel.Formatter.PRIMARY, formatterOptions.PrimaryIcon) .AppendJavaScriptObjectStringField(JqGridOptionsNames.ColumnModel.Formatter.SECONDARY, formatterOptions.SecondaryIcon) .AppendJavaScriptObjectFieldClosing(); } jQueryUIButtonFormatterBuilder.AppendJavaScriptObjectClosing(); } if (!String.IsNullOrWhiteSpace(formatterOptions.OnClick)) { jQueryUIButtonFormatterBuilder.AppendFormat(JQUERY_UI_BUTTON_FORMATTER_ON_CLICK, formatterOptions.OnClick); } jQueryUIButtonFormatterBuilder.Append(JQUERY_UI_BUTTON_FORMATTER_END); return(javaScriptBuilder.AppendJavaScriptObjectFunctionField(JqGridOptionsNames.ColumnModel.FORMATTER, jQueryUIButtonFormatterBuilder.ToString())); }
/// <summary> /// Initializes a new instance of the JqGridColumnFormatterAttribute class. /// </summary> /// <param name="formatter">The predefined formatter type ('' delimited string) or custom JavaScript formatting function name.</param> public JqGridColumnFormatterAttribute(string formatter) { if (String.IsNullOrWhiteSpace(formatter)) throw new ArgumentNullException("formatter"); Formatter = formatter; Options = new JqGridColumnFormatterOptions(formatter); PrimaryIcon = String.Empty; SecondaryIcon = String.Empty; Label = String.Empty; Text = true; }