View Javadoc
1   
2   /*
3    * Copyright (c) 2011-2022 PrimeFaces Extensions
4    *
5    *  Permission is hereby granted, free of charge, to any person obtaining a copy
6    *  of this software and associated documentation files (the "Software"), to deal
7    *  in the Software without restriction, including without limitation the rights
8    *  to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9    *  copies of the Software, and to permit persons to whom the Software is
10   *  furnished to do so, subject to the following conditions:
11   *
12   *  The above copyright notice and this permission notice shall be included in
13   *  all copies or substantial portions of the Software.
14   *
15   *  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16   *  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17   *  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18   *  AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19   *  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20   *  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21   *  THE SOFTWARE.
22   */
23  
24  package org.primefaces.extensions.model.monacoeditor;
25  
26  import org.primefaces.shaded.json.*;
27  import java.io.ObjectStreamException;
28  import java.io.Serializable;
29  
30  // ============================================================
31  // THIS FILE WAS GENERATED AUTOMATICALLY. DO NOT EDIT DIRECTLY.
32  // ============================================================
33  
34  /**
35   * Control the behavior of sticky scroll options
36   */
37  @SuppressWarnings("serial")
38  public class EditorStickyScrollOptions extends JSONObject implements Serializable {
39      private Object writeReplace() throws ObjectStreamException {
40          return new SerializedEditorStickyScrollOptions(this);
41      }
42  
43      private static class SerializedEditorStickyScrollOptions implements Serializable {
44          private String json;
45  
46          public SerializedEditorStickyScrollOptions(EditorStickyScrollOptions editorStickyScrollOptions) {
47              this.json = editorStickyScrollOptions.toString();
48          }
49  
50          private Object readResolve() throws ObjectStreamException {
51              final EditorStickyScrollOptions editorStickyScrollOptions = new EditorStickyScrollOptions();
52              final JSONObject data = new JSONObject(json);
53              for (final String key : data.keySet()) {
54                  final Object value = data.get(key);
55                  editorStickyScrollOptions.put(key, value);
56              }
57              return editorStickyScrollOptions;
58          }
59      }
60  
61      /**
62       * @return Model to choose for sticky scroll by default.
63       */
64      public String getDefaultModel() {
65          return (String) (has("defaultModel") ? get("defaultModel") : null);
66      }
67  
68      /**
69       * @param defaultModel Model to choose for sticky scroll by default.
70       * @return This same instance, useful for chaining multiple setter methods in one call.
71       */
72      public EditorStickyScrollOptions setDefaultModel(final EStickDefaultModelMode defaultModel) {
73          put("defaultModel", defaultModel != null ? defaultModel.toString() : null);
74          return this;
75      }
76  
77      /**
78       * @param defaultModel Model to choose for sticky scroll by default.
79       * @return This same instance, useful for chaining multiple setter methods in one call.
80       */
81      public EditorStickyScrollOptions setDefaultModel(final String defaultModel) {
82          put("defaultModel", defaultModel);
83          return this;
84      }
85  
86      /**
87       * @return Enable the sticky scroll
88       */
89      public Boolean isEnabled() {
90          return (Boolean) (has("enabled") ? get("enabled") : null);
91      }
92  
93      /**
94       * @param enabled Enable the sticky scroll
95       * @return This same instance, useful for chaining multiple setter methods in one call.
96       */
97      public EditorStickyScrollOptions setEnabled(final Boolean enabled) {
98          put("enabled", enabled);
99          return this;
100     }
101 
102     /**
103      * @return Maximum number of sticky lines to show
104      */
105     public Number getMaxLineCount() {
106         return (Number) (has("maxLineCount") ? get("maxLineCount") : null);
107     }
108 
109     /**
110      * @param maxLineCount Maximum number of sticky lines to show
111      * @return This same instance, useful for chaining multiple setter methods in one call.
112      */
113     public EditorStickyScrollOptions setMaxLineCount(final Number maxLineCount) {
114         put("maxLineCount", maxLineCount);
115         return this;
116     }
117 
118     /**
119      * @return This options object as a serializable JSON object
120      */
121     JSONObject getJSONObject() {
122         return this;
123     }
124 }