1ASPx.IS(function(ASPx, dx, DevExpress){ 2(function(dx) { 3 var BootstrapClientTextBox = ASPx.CreateClass(ASPxClientTextBox, { 4 constructor: function(name) { 5 this.constructor.prototype.constructor.call(this, name); 6 this.feedbackRenderHelper = new ASPx.BootstrapEditFeedbackRenderHelper(this); 7 }, 8 InlineInitialize: function() { 9 this.RequireStyleDecoration(); 10 ASPxClientTextBox.prototype.InlineInitialize.call(this); 11 this.feedbackRenderHelper.updateInputRightPadding(); 12 if(ASPx.Browser.TouchUI && !this.GetIsValid()) 13 this.UpdateErrorText(); 14 }, 15 InitializeEvents: function() { 16 ASPxClientTextBox.prototype.InitializeEvents.call(this); 17 var inputElement = this.GetInputElement(); 18 if(inputElement) 19 ASPx.Evt.AttachEventToElement(inputElement, "change", function() { ASPx.EValueChanged(this.name); }.bind(this)); 20 if(ASPx.Browser.MacOSMobilePlatform) { 21 var errorImage = this.GetErrorImage(); 22 if(errorImage) 23 ASPx.Evt.AttachEventToElement(errorImage, "touchstart", function() { }); 24 } 25 }, 26 RaiseStandardOnChange: function() { 27 var element = this.GetInputElement(); 28 if(element) 29 ASPx.Evt.DispatchEvent(element, "change", true, false); 30 else 31 ASPxClientTextBox.prototype.RaiseStandardOnChange.call(this); 32 }, 33 ChangeEnabledStateItems: function(enabled) { }, 34 GetControlCell: function() { 35 return this.GetInputContainerElement(); 36 }, 37 EnsureControlCellStylesLoaded: function() { }, 38 ClearControlCellStyles: function() { }, 39 RestoreControlCellStyles: function() { }, 40 GetElementRequiredForErrorFrame: function() { 41 return this.GetInputContainerElement(); 42 }, 43 GetErrorImage: function() { 44 return this.feedbackRenderHelper.getErrorImage(); 45 }, 46 UpdateErrorText: function() { 47 this.feedbackRenderHelper.updateErrorText(); 48 }, 49 ChangeErrorCellVisibility: function(visible, useVisibilityAttribute) { 50 this.feedbackRenderHelper.setErrorControlVisible(visible); 51 }, 52 PopulateStyleDecorationPostfixes: function() { 53 this.styleDecoration.AddPostfix(""); 54 this.styleDecoration.AddPostfix("div > .form-control"); 55 }, 56 CreateStyleDecoration: function() { 57 return new ASPx.BootstrapEditorStyleDecoration(this); 58 }, 59 GetInputContainerElement: function() { 60 var inputElement = this.GetInputElement(); 61 return inputElement ? inputElement.parentNode : null; 62 }, 63 GetCaptionCell: function() { 64 return ASPx.CacheHelper.GetCachedElement(this, "captionElement", 65 function() { 66 var mainElement = this.GetMainElement(); 67 return mainElement && mainElement.querySelector(".dxbs-edit-caption"); 68 } 69 ); 70 }, 71 getCaptionTextNode: function() { 72 return ASPx.GetNormalizedTextNode(this.GetCaptionCell()); 73 }, 74 getCaptionRelatedCellCount: function() { 75 return undefined; 76 }, 77 helpTextInitialize: function() { 78 if(this.helpText) 79 this.helpTextObj = new ASPx.BootstrapTextEditHelpText(this, this.helpText, this.enableHelpTextPopupAnimation, this.hasPopupHelpText()); 80 }, 81 GetHelpTextElementPrevSibling: function() { 82 return this.feedbackRenderHelper.getErrorTextElement() || this.GetInputContainerElement(); 83 }, 84 getFocusedNullTextElementClassName: function() { 85 return "dxbs-null-text text-muted" + (this.cssClasses.nt ? " " + this.cssClasses.nt : ""); 86 } 87 }); 88 dx.BootstrapClientTextBox = BootstrapClientTextBox; 89 var BootstrapClientMemo = ASPx.CreateClass(ASPxClientMemo, { 90 constructor: function(name) { 91 this.constructor.prototype.constructor.call(this, name); 92 this.feedbackRenderHelper = new ASPx.BootstrapEditFeedbackRenderHelper(this); 93 }, 94 InlineInitialize: function() { 95 this.RequireStyleDecoration(); 96 ASPxClientMemo.prototype.InlineInitialize.call(this); 97 this.feedbackRenderHelper.updateInputRightPadding(); 98 if(ASPx.Browser.TouchUI && !this.GetIsValid()) 99 this.UpdateErrorText(); 100 }, 101 InitializeEvents: function() { 102 ASPxClientMemo.prototype.InitializeEvents.call(this); 103 var inputElement = this.GetInputElement(); 104 if(inputElement) { 105 if(this.maxLengthRestricted) { 106 ASPx.Evt.AttachEventToElement(inputElement, "mouseout", function(evt) { ASPx.MMMouseOut(this.name, evt); }.bind(this)); 107 ASPx.Evt.AttachEventToElement(inputElement, "mouseover", function(evt) { ASPx.MMMouseOver(this.name, evt); }.bind(this)); 108 } 109 ASPx.Evt.AttachEventToElement(inputElement, "change", function () { ASPx.EValueChanged(this.name); }.bind(this)); 110 } 111 if(ASPx.Browser.MacOSMobilePlatform) { 112 var errorImage = this.GetErrorImage(); 113 if(errorImage) 114 ASPx.Evt.AttachEventToElement(errorImage, "touchstart", function() { });
115 } 116 }, 117 RaiseStandardOnChange: function() { 118 var element = this.GetInputElement(); 119 if(element) 120 ASPx.Evt.DispatchEvent(element, "change", true, false); 121 else 122 ASPxClientMemo.prototype.RaiseStandardOnChange.call(this); 123 }, 124 ChangeEnabledStateItems: function (enabled) { }, 125 IsAdjustmentRequired: function() { 126 return false; 127 }, 128 AdjustControl: function() { }, 129 GetControlCell: function() { 130 return this.GetInputContainerElement(); 131 }, 132 EnsureControlCellStylesLoaded: function() { }, 133 ClearControlCellStyles: function() { }, 134 RestoreControlCellStyles: function() { }, 135 GetElementRequiredForErrorFrame: function() { 136 return this.GetInputContainerElement(); 137 }, 138 GetErrorImage: function() { 139 return this.feedbackRenderHelper.getErrorImage(); 140 }, 141 UpdateErrorText: function() { 142 this.feedbackRenderHelper.updateErrorText(); 143 }, 144 ChangeErrorCellVisibility: function(visible, useVisibilityAttribute) { 145 this.feedbackRenderHelper.setErrorControlVisible(visible); 146 }, 147 PopulateStyleDecorationPostfixes: function() { 148 this.styleDecoration.AddPostfix(""); 149 this.styleDecoration.AddPostfix("div > .form-control"); 150 }, 151 CreateStyleDecoration: function() { 152 return new ASPx.BootstrapEditorStyleDecoration(this); 153 }, 154 GetInputContainerElement: function() { 155 var inputElement = this.GetInputElement(); 156 return inputElement ? inputElement.parentNode : null; 157 }, 158 GetCaptionCell: function() { 159 return ASPx.CacheHelper.GetCachedElement(this, "captionElement", 160 function() { 161 var mainElement = this.GetMainElement(); 162 return mainElement && mainElement.querySelector(".dxbs-edit-caption"); 163 } 164 ); 165 }, 166 getCaptionTextNode: function() { 167 return ASPx.GetNormalizedTextNode(this.GetCaptionCell()); 168 }, 169 getCaptionRelatedCellCount: function() { 170 return undefined; 171 }, 172 helpTextInitialize: function() { 173 if(this.helpText) 174 this.helpTextObj = new ASPx.BootstrapTextEditHelpText(this, this.helpText, this.enableHelpTextPopupAnimation, this.hasPopupHelpText()); 175 }, 176 GetHelpTextElementPrevSibling: function() { 177 return this.feedbackRenderHelper.getErrorTextElement() || this.GetInputContainerElement(); 178 }, 179 getFocusedNullTextElementClassName: function() { 180 return "dxbs-null-text text-muted" + (this.cssClasses.nt ? " " + this.cssClasses.nt : ""); 181 } 182 }); 183 dx.BootstrapClientMemo = BootstrapClientMemo; 184 var BootstrapClientButtonEdit = ASPx.CreateClass(ASPxClientButtonEdit, { 185 constructor: function(name) { 186 this.constructor.prototype.constructor.call(this, name); 187 this.feedbackRenderHelper = new ASPx.BootstrapEditFeedbackRenderHelper(this); 188 }, 189 InlineInitialize: function() { 190 this.RequireStyleDecoration(); 191 ASPxClientButtonEdit.prototype.InlineInitialize.call(this); 192 this.feedbackRenderHelper.updateInputRightPadding(); 193 if(ASPx.Browser.TouchUI && !this.GetIsValid()) 194 this.UpdateErrorText(); 195 }, 196 InitializeEvents: function() { 197 ASPxClientButtonEdit.prototype.InitializeEvents.call(this); 198 var inputElement = this.GetInputElement(); 199 if(inputElement) 200 ASPx.Evt.AttachEventToElement(inputElement, "change", function() { ASPx.EValueChanged(this.name); }.bind(this)); 201 var buttonElements = this.GetCustomButtonCollection(); 202 for(var i = 0; i < buttonElements.length; i++) 203 this.InitializeButtonEvents(buttonElements[i], i); 204 var clearButton = this.GetClearButton(); 205 if(clearButton) { 206 ASPx.Evt.AttachEventToElement(clearButton, "mousedown", function(evt) { ASPx.BEClear(this.name, evt); }.bind(this)); 207 if(this.IsAccessibleButton(clearButton)) 208 this.InitAccessibilityAnchorEvents(clearButton); 209 } 210 if(ASPx.Browser.MacOSMobilePlatform) { 211 var errorImage = this.GetErrorImage(); 212 if(errorImage) 213 ASPx.Evt.AttachEventToElement(errorImage, "touchstart", function() { }); 214 } 215 }, 216 InitializeButtonEvents: function(element, number){ 217 ASPx.Evt.AttachEventToElement(element, "click", function() { 218 this.OnButtonClick(number); 219 }.bind(this)); 220 if(this.IsAccessibleButton(element)) 221 this.InitAccessibilityAnchorEvents(element); 222 }, 223 SetButtonVisible: function(number, value) { 224 if(number == -100) { 225 this.feedbackRenderHelper.setClearButtonVisible(value); 226 return; 227 } 228 if(ASPx.BootstrapCore.IsBootstrap3 || ASPx.BootstrapCore.IsBootstrap4) { 229 var inputGroupButton = ASPxClientButtonEdit.prototype.GetButton.call(this, number); 230 if(inputGroupButton) 231 ASPx.SetElementDisplay(inputGroupButton.parentNode, value); 232 } 233 ASPxClientButtonEdit.prototype.SetButtonVisible.call(this, number, value); 234 }, 235 ChangeEnabledAttributes: function(enabled) { 236 ASPxClientButtonEdit.prototype.ChangeEnabledAttributes.call(this, enabled); 237 var clearButton = this.GetClearButton(); 238 if(clearButton) 239 this.ChangeButtonEnabledAttributes(clearButton, this.GetChangeButtonEnabledAttributesMethod(enabled)); 240 }, 241 GetChangeButtonEnabledAttributesMethod: function(enabled) { 242 return dx.BootstrapClientUtils.GetChangeButtonEnabledAttributesMethod(enabled); 243 }, 244 ChangeButtonEnabledAttributes: function(element, method) { 245 if(ASPx.Attr.IsExistsAttribute(element, "disabledOnServer")) 246 return; 247 method(element, ASPx.BootstrapCssSelectors.Disabled); 248 }, 249 NeedEnsureClearButtonVisibilityOnKeyDown: function() { 250 return this.IsAccessibleButton(this.GetClearButton()); 251 }, 252 GetAccessibilityFocusedButtonClassName: function() { 253 return ""; 254 }, 255 IsAccessibleButton: function(button) { 256 return !!button && (button.tagName.toUpperCase() == "BUTTON" || ASPx.Attr.GetAttribute(button, "role") == "button"); 257 }, 258 GetButtonByAccessibilityAnchor: function(anchorElement) { 259 return anchorElement; 260 }, 261 GetAccessibilityAnchor: function(buttonElement) { 262 return buttonElement; 263 }, 264 SetAccessibilityAnchorEnabled: function(buttonElement, enabled) { 265 if(buttonElement.tagName.toUpperCase() == "BUTTON") 266 return; 267 ASPxClientButtonEdit.prototype.SetAccessibilityAnchorEnabled.call(this, buttonElement, enabled); 268 }, 269 EmulateButtonMouseEvent: function(sourceElement) { 270 ASPx.Evt.EmulateMouseClick(sourceElement); 271 }, 272 RaiseStandardOnChange: function() { 273 var element = this.GetInputElement(); 274 if(element) 275 ASPx.Evt.DispatchEvent(element, "change", true, false); 276 else 277 ASPxClientButtonEdit.prototype.RaiseStandardOnChange.call(this); 278 }, 279 ChangeEnabledStateItems: function(enabled) { }, 280 GetControlCell: function() { 281 return this.GetInputContainerElement(); 282 }, 283 EnsureControlCellStylesLoaded: function() { }, 284 ClearControlCellStyles: function() { }, 285 RestoreControlCellStyles: function() { }, 286 GetElementRequiredForErrorFrame: function() { 287 return this.GetInputContainerElement(); 288 }, 289 GetErrorImage: function() { 290 return this.feedbackRenderHelper.getErrorImage(); 291 }, 292 UpdateErrorText: function() { 293 this.feedbackRenderHelper.updateErrorText(); 294 }, 295 ChangeErrorCellVisibility: function(visible, useVisibilityAttribute) { 296 this.feedbackRenderHelper.setErrorControlVisible(visible); 297 }, 298 PopulateStyleDecorationPostfixes: function() { 299 var inputContainerSelector = this.GetInputContainerSelector(); 300 this.styleDecoration.AddPostfix(""); 301 this.styleDecoration.AddPostfix(inputContainerSelector); 302 this.styleDecoration.AddPostfix(inputContainerSelector + " .form-control"); 303 }, 304 GetInputContainerSelector: function() { 305 var selector = ""; 306 if(!!this.GetInputGroupElement()) 307 selector = ".input-group"; 308 else { 309 var invalidSelectors = ASPx.Data.GetDistinctArray(["." + ASPx.BootstrapCssSelectors.InputGroupAppendButton, 310 "." + ASPx.BootstrapCssSelectors.InputGroupPrependButton]); 311 selector = "div"; 312 for(var i = 0; i < invalidSelectors.length; i++) 313 selector += ":not(" + invalidSelectors[i] + ")"; 314 } 315 return selector; 316 }, 317 CreateStyleDecoration: function() { 318 return new ASPx.BootstrapEditorStyleDecoration(this); 319 }, 320 GetHideContentCssClassName: function() { 321 return ASPx.BootstrapCssSelectors.Hidden; 322 }, 323 GetHoverElementToShowClearButton: function() { 324 return this.GetInputGroupElement() || this.GetInputContainerElement(); 325 }, 326 GetInputGroupElement: function() { 327 var mainElement = this.GetMainElement(); 328 return mainElement && mainElement.querySelector(".input-group"); 329 }, 330 GetInputContainerElement: function() { 331 var inputElement = this.GetInputElement(); 332 return inputElement ? inputElement.parentNode : null; 333 }, 334 GetCaptionCell: function() { 335 return ASPx.CacheHelper.GetCachedElement(this, "captionElement", 336 function() { 337 var mainElement = this.GetMainElement(); 338 return mainElement && mainElement.querySelector(".dxbs-edit-caption"); 339 } 340 ); 341 }, 342 getCaptionTextNode: function () { 343 return ASPx.GetNormalizedTextNode(this.GetCaptionCell()); 344 }, 345 getCaptionRelatedCellCount: function () { 346 return undefined; 347 }, 348 GetClearButton: function() { 349 return this.feedbackRenderHelper.getClearButton(); 350 }, 351 GetButton: function (number) { 352 var inputGroupButton = ASPxClientButtonEdit.prototype.GetButton.call(this, number); 353 return number == -100 ? this.GetClearButton() : 354 inputGroupButton && (inputGroupButton.querySelector(".dxbs-edit-btn") || inputGroupButton.querySelector(".btn") || inputGroupButton); 355 }, 356 helpTextInitialize: function() { 357 if(this.helpText) 358 this.helpTextObj = new ASPx.BootstrapTextEditHelpText(this, this.helpText, this.enableHelpTextPopupAnimation, this.hasPopupHelpText()); 359 }, 360 GetHelpTextElementPrevSibling: function() { 361 var errorTextElement = this.feedbackRenderHelper.getErrorTextElement(); 362 return errorTextElement || this.GetInputGroupElement() || this.GetInputContainerElement(); 363 }, 364 getFocusedNullTextElementClassName: function() {
365 return "dxbs-null-text text-muted" + (this.cssClasses.nt ? " " + this.cssClasses.nt : ""); 366 } 367 }); 368 dx.BootstrapClientButtonEdit = BootstrapClientButtonEdit; 369})(dx || (dx = {})); 370},31);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.