profoundjs 7.4.0 → 7.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. package/LICENSE.txt +27 -25
  2. package/htdocs/jszip/FileSaver.min.js +2 -2
  3. package/htdocs/profoundui/proddata/css/atrium.css +201 -201
  4. package/htdocs/profoundui/proddata/css/designer_respeditor.css +91 -91
  5. package/htdocs/profoundui/proddata/css/ipademulator.css +38 -38
  6. package/htdocs/profoundui/proddata/css/iphoneemulator.css +29 -29
  7. package/htdocs/profoundui/proddata/css/jumpstart.css +442 -442
  8. package/htdocs/profoundui/proddata/css/key_management.css +122 -122
  9. package/htdocs/profoundui/proddata/css/logic.css +1669 -1665
  10. package/htdocs/profoundui/proddata/css/markdown.css +754 -754
  11. package/htdocs/profoundui/proddata/css/profoundai.css +42 -0
  12. package/htdocs/profoundui/proddata/css/puisplash.css +186 -186
  13. package/htdocs/profoundui/proddata/css/qtips.css +32 -32
  14. package/htdocs/profoundui/proddata/html/genieframe.html +25 -25
  15. package/htdocs/profoundui/proddata/js/designer.js +4022 -4002
  16. package/htdocs/profoundui/proddata/js/key_management.js +34 -34
  17. package/htdocs/profoundui/proddata/js/profoundai.js +26 -0
  18. package/htdocs/profoundui/proddata/js/rich-display-react-component.js +45 -45
  19. package/htdocs/profoundui/proddata/js/rich-display-vue-component.js +28 -28
  20. package/htdocs/profoundui/proddata/js/runtime.js +1373 -1369
  21. package/htdocs/profoundui/proddata/js/soapclient.js +419 -419
  22. package/htdocs/profoundui/proddata/typings/profoundjs.d.ts +881 -881
  23. package/htdocs/profoundui/proddata/typings/profoundui.d.ts +388 -388
  24. package/htdocs/profoundui/userdata/atrium themes/css/xtheme-gray.css +414 -414
  25. package/htdocs/profoundui/userdata/atrium themes/css/xtheme-olive.css +623 -623
  26. package/htdocs/profoundui/userdata/atrium themes/css/xtheme-slate.css +672 -672
  27. package/htdocs/profoundui/userdata/atrium themes/css/xtheme-steel.css +10437 -10437
  28. package/htdocs/profoundui/userdata/css/atrium_banner.css +13 -13
  29. package/htdocs/profoundui/userdata/css/atrium_home.css +37 -37
  30. package/htdocs/profoundui/userdata/custom/themes/enhanced.js +104 -104
  31. package/htdocs/profoundui/userdata/custom/themes/hybrid.js +109 -109
  32. package/htdocs/profoundui/userdata/custom/themes/standard.js +68 -68
  33. package/htdocs/profoundui/userdata/custom/widgets/googlemaps.js +139 -139
  34. package/htdocs/profoundui/userdata/custom/widgets/listbox.js +37 -37
  35. package/htdocs/profoundui/userdata/custom/widgets/panel.js +74 -74
  36. package/htdocs/profoundui/userdata/custom/widgets/styled_button.js +71 -71
  37. package/htdocs/profoundui/userdata/custom/widgets/tabpanel.js +61 -61
  38. package/htdocs/profoundui/userdata/genie skins/Classic/Classic.css +562 -562
  39. package/htdocs/profoundui/userdata/genie skins/Classic/custom.js +3 -3
  40. package/htdocs/profoundui/userdata/genie skins/Gradient/Gradient.css +616 -616
  41. package/htdocs/profoundui/userdata/genie skins/Gradient/adjusted columns custom.js +83 -83
  42. package/htdocs/profoundui/userdata/genie skins/Gradient/custom.js +83 -83
  43. package/htdocs/profoundui/userdata/genie skins/Hybrid/Hybrid.css +616 -616
  44. package/htdocs/profoundui/userdata/genie skins/Hybrid/custom.js +330 -330
  45. package/htdocs/profoundui/userdata/genie skins/Plain/Plain.css +546 -546
  46. package/htdocs/profoundui/userdata/genie skins/Plain/custom.js +6 -6
  47. package/htdocs/profoundui/userdata/genie skins/Skyline/Skyline.css +753 -753
  48. package/htdocs/profoundui/userdata/genie skins/Skyline/adjusted columns custom.js +97 -97
  49. package/htdocs/profoundui/userdata/genie skins/Skyline/custom.js +97 -97
  50. package/htdocs/profoundui/userdata/genie skins/Tablet/Tablet.css +743 -743
  51. package/htdocs/profoundui/userdata/genie skins/Tablet/custom.js +153 -153
  52. package/htdocs/profoundui/userdata/samples/ordentry/OrdEntry.js +92 -92
  53. package/package.json +3 -2
  54. package/profound.jse +1 -1
  55. package/setup/pjsdist.savf +0 -0
@@ -1,139 +1,139 @@
1
-
2
-
3
- // Example - creating a custom widget
4
-
5
- pui.widgets.add({
6
- // widget name - this is placed into the standard "field type" property
7
- name: "google maps",
8
-
9
- // the default id prefix - used to assign id's when the element is first created
10
- newId: "Map",
11
-
12
- // pull-down menu name
13
- menuName: "Google Maps Widget",
14
-
15
- // default properties for the widget
16
- defaults: {
17
- "width": "400px",
18
- "height": "300px",
19
- "z index": "25",
20
- "background color": "#FFFFFF"
21
- },
22
-
23
- // property setter functions
24
- propertySetters: {
25
-
26
- // this will fire when the field type property is set to "google maps"
27
- // initialization code for the element should go here
28
- "field type": function(parms) {
29
- if (parms.design) {
30
- // design mode content creation code goes here
31
- // add preview image
32
- var img = document.createElement("img");
33
- img.src = "/profoundui/proddata/images/GoogleMaps.jpg";
34
- img.style.position = "absolute";
35
- img.style.left = "0px";
36
- img.style.top = "0px";
37
- //img.style.width = parms.dom.style.width;
38
- //img.style.height = parms.dom.style.height;
39
- img.style.width = "100%";
40
- img.style.height = "100%";
41
- parms.dom.appendChild(img);
42
- parms.dom.style.overflow = "hidden";
43
- }
44
- else {
45
- // runtime content creation code goes here
46
- // clear
47
- parms.dom.innerHTML = "";
48
- // get url property - evalProperty will evaluate any js expressions that may have been used to build the property
49
- address = parms.evalProperty("google maps address");
50
- // populate the widget's dom element
51
- if (address == null || address == "") {
52
- parms.dom.innerHTML = "Google Maps Address property not specified.";
53
- }
54
- else {
55
- // here, we build an iframe element and put it into the dom
56
- var url = document.location.protocol + "//maps.google.com/maps?hl=enl&q=" + encodeURIComponent(address) + "&ie=UTF8&hq=&hnear=" + encodeURIComponent(address) + "&output=embed";
57
- var html = '<iframe src="' + url;
58
- html += '" frameborder="0" scrolling="no" marginheight="0" marginwidth="0"" width="100%" height="100%">';
59
- parms.dom.innerHTML = html;
60
- }
61
- }
62
- },
63
- "visibility": function(parms) {
64
-
65
- if (!parms.design) {
66
-
67
- var iframe = parms.dom.getElementsByTagName("iframe");
68
- if (iframe && iframe.length == 1) {
69
-
70
- iframe = iframe[0];
71
- if (parms.value == "hidden") {
72
-
73
- iframe.style.visibility = "hidden";
74
- iframe.style.display = "none";
75
-
76
- }
77
- else {
78
-
79
- iframe.style.visibility = "";
80
- iframe.style.display = "";
81
-
82
- }
83
-
84
- }
85
-
86
- }
87
- }
88
- }
89
-
90
- });
91
-
92
-
93
- // the widget will already have prebuilt standard properties relating to css attributes, js events, etc.
94
- // here, we can add additional custom properties
95
- pui.addCustomProperty({
96
- // property name
97
- name: "google maps address",
98
-
99
- // optional type of input
100
- // "long" specifies that the text can be long, and an exta text area prompt box is added
101
- // other types include: "color", "boolean", "image", "list", "js", "file", and "field"
102
- type: "long",
103
-
104
- // help text appears at the bottom of the properties window
105
- help: "Specifies the full address to be mapped within Google Maps.",
106
-
107
- // array of widget elements that this property is applicable to
108
- controls: ["google maps"],
109
-
110
- // properties are categorized in the properties window
111
- // if the specified category doesn't already exist, it will be created
112
- category: "Field Settings"
113
- });
114
-
115
-
116
- // Now, we add an entry to the left-hand side Widgets Toolbox
117
- // More than one entry can be added for the same base widget - this would makes sense if we vary default properties
118
- pui.toolbox.add({
119
- // specifies category - this can be an existing category or a new one
120
- // if the category does not exist, it is created on the fly
121
- category: "Custom Widgets",
122
-
123
- widget: "google maps",
124
- text: "Google Maps Widget",
125
- icon: "/profoundui/proddata/images/icons/google_maps.png",
126
-
127
- // this determines the look of the drag/drop proxy as we drag the widget element off the toolbox
128
- proxyHeight: 302,
129
- proxyWidth: 402,
130
- proxyHTML: '<img src="/profoundui/proddata/images/GoogleMaps.jpg" style="width: 400px; height: 300px;">',
131
-
132
-
133
- // additional default property values can be specified here
134
- defaults: {
135
- }
136
-
137
- });
138
-
139
-
1
+
2
+
3
+ // Example - creating a custom widget
4
+
5
+ pui.widgets.add({
6
+ // widget name - this is placed into the standard "field type" property
7
+ name: "google maps",
8
+
9
+ // the default id prefix - used to assign id's when the element is first created
10
+ newId: "Map",
11
+
12
+ // pull-down menu name
13
+ menuName: "Google Maps Widget",
14
+
15
+ // default properties for the widget
16
+ defaults: {
17
+ "width": "400px",
18
+ "height": "300px",
19
+ "z index": "25",
20
+ "background color": "#FFFFFF"
21
+ },
22
+
23
+ // property setter functions
24
+ propertySetters: {
25
+
26
+ // this will fire when the field type property is set to "google maps"
27
+ // initialization code for the element should go here
28
+ "field type": function(parms) {
29
+ if (parms.design) {
30
+ // design mode content creation code goes here
31
+ // add preview image
32
+ var img = document.createElement("img");
33
+ img.src = "/profoundui/proddata/images/GoogleMaps.jpg";
34
+ img.style.position = "absolute";
35
+ img.style.left = "0px";
36
+ img.style.top = "0px";
37
+ //img.style.width = parms.dom.style.width;
38
+ //img.style.height = parms.dom.style.height;
39
+ img.style.width = "100%";
40
+ img.style.height = "100%";
41
+ parms.dom.appendChild(img);
42
+ parms.dom.style.overflow = "hidden";
43
+ }
44
+ else {
45
+ // runtime content creation code goes here
46
+ // clear
47
+ parms.dom.innerHTML = "";
48
+ // get url property - evalProperty will evaluate any js expressions that may have been used to build the property
49
+ address = parms.evalProperty("google maps address");
50
+ // populate the widget's dom element
51
+ if (address == null || address == "") {
52
+ parms.dom.innerHTML = "Google Maps Address property not specified.";
53
+ }
54
+ else {
55
+ // here, we build an iframe element and put it into the dom
56
+ var url = document.location.protocol + "//maps.google.com/maps?hl=enl&amp;q=" + encodeURIComponent(address) + "&amp;ie=UTF8&amp;hq=&amp;hnear=" + encodeURIComponent(address) + "&amp;output=embed";
57
+ var html = '<iframe src="' + url;
58
+ html += '" frameborder="0" scrolling="no" marginheight="0" marginwidth="0"" width="100%" height="100%">';
59
+ parms.dom.innerHTML = html;
60
+ }
61
+ }
62
+ },
63
+ "visibility": function(parms) {
64
+
65
+ if (!parms.design) {
66
+
67
+ var iframe = parms.dom.getElementsByTagName("iframe");
68
+ if (iframe && iframe.length == 1) {
69
+
70
+ iframe = iframe[0];
71
+ if (parms.value == "hidden") {
72
+
73
+ iframe.style.visibility = "hidden";
74
+ iframe.style.display = "none";
75
+
76
+ }
77
+ else {
78
+
79
+ iframe.style.visibility = "";
80
+ iframe.style.display = "";
81
+
82
+ }
83
+
84
+ }
85
+
86
+ }
87
+ }
88
+ }
89
+
90
+ });
91
+
92
+
93
+ // the widget will already have prebuilt standard properties relating to css attributes, js events, etc.
94
+ // here, we can add additional custom properties
95
+ pui.addCustomProperty({
96
+ // property name
97
+ name: "google maps address",
98
+
99
+ // optional type of input
100
+ // "long" specifies that the text can be long, and an exta text area prompt box is added
101
+ // other types include: "color", "boolean", "image", "list", "js", "file", and "field"
102
+ type: "long",
103
+
104
+ // help text appears at the bottom of the properties window
105
+ help: "Specifies the full address to be mapped within Google Maps.",
106
+
107
+ // array of widget elements that this property is applicable to
108
+ controls: ["google maps"],
109
+
110
+ // properties are categorized in the properties window
111
+ // if the specified category doesn't already exist, it will be created
112
+ category: "Field Settings"
113
+ });
114
+
115
+
116
+ // Now, we add an entry to the left-hand side Widgets Toolbox
117
+ // More than one entry can be added for the same base widget - this would makes sense if we vary default properties
118
+ pui.toolbox.add({
119
+ // specifies category - this can be an existing category or a new one
120
+ // if the category does not exist, it is created on the fly
121
+ category: "Custom Widgets",
122
+
123
+ widget: "google maps",
124
+ text: "Google Maps Widget",
125
+ icon: "/profoundui/proddata/images/icons/google_maps.png",
126
+
127
+ // this determines the look of the drag/drop proxy as we drag the widget element off the toolbox
128
+ proxyHeight: 302,
129
+ proxyWidth: 402,
130
+ proxyHTML: '<img src="/profoundui/proddata/images/GoogleMaps.jpg" style="width: 400px; height: 300px;">',
131
+
132
+
133
+ // additional default property values can be specified here
134
+ defaults: {
135
+ }
136
+
137
+ });
138
+
139
+
@@ -1,37 +1,37 @@
1
-
2
-
3
- // Example - creating a custom widget based on an existing one
4
- // In this example, we create a list box ("select box" field type) with modified default properties
5
-
6
-
7
- // Add an entry to the Widgets Toolbox
8
- pui.toolbox.add({
9
- // specifies category - this can be an existing category or a new one
10
- // if the category does not exist, it is created on the fly
11
- category: "Custom Widgets",
12
-
13
- // the widget parameter determines the "field type" property of an element
14
- widget: "select box",
15
-
16
- text: "Custom List Box",
17
- icon: "/profoundui/proddata/images/icons/list_box.png",
18
-
19
- // this determines the look of the drag/drop proxy as we drag the widget element off the toolbox
20
- // in this case, an image of the tab panel is used
21
- proxyHeight: 86,
22
- proxyWidth: 150,
23
- proxyHTML: '<select size="5" style="font-family: Sans-Serif; width: 150px; color: #666666; background-color: #FAE4AA; font-size: 12px"><option>Choice 1</option><option>Choice 2</option><option>Choice 3</option><option>Choice 4</option><option>Choice 5</option></select>',
24
-
25
- // any property of a "select box" can be specified here
26
- defaults: {
27
- "select box height": "5",
28
- "width": "150px",
29
- "color": "#666666",
30
- "background color": "#FAE4AA",
31
- "choices": "Choice 1,Choice 2,Choice 3,Choice 4,Choice 5",
32
- "font family": "Sans-Serif",
33
- "font size": "12px"
34
- }
35
-
36
- });
37
-
1
+
2
+
3
+ // Example - creating a custom widget based on an existing one
4
+ // In this example, we create a list box ("select box" field type) with modified default properties
5
+
6
+
7
+ // Add an entry to the Widgets Toolbox
8
+ pui.toolbox.add({
9
+ // specifies category - this can be an existing category or a new one
10
+ // if the category does not exist, it is created on the fly
11
+ category: "Custom Widgets",
12
+
13
+ // the widget parameter determines the "field type" property of an element
14
+ widget: "select box",
15
+
16
+ text: "Custom List Box",
17
+ icon: "/profoundui/proddata/images/icons/list_box.png",
18
+
19
+ // this determines the look of the drag/drop proxy as we drag the widget element off the toolbox
20
+ // in this case, an image of the tab panel is used
21
+ proxyHeight: 86,
22
+ proxyWidth: 150,
23
+ proxyHTML: '<select size="5" style="font-family: Sans-Serif; width: 150px; color: #666666; background-color: #FAE4AA; font-size: 12px"><option>Choice 1</option><option>Choice 2</option><option>Choice 3</option><option>Choice 4</option><option>Choice 5</option></select>',
24
+
25
+ // any property of a "select box" can be specified here
26
+ defaults: {
27
+ "select box height": "5",
28
+ "width": "150px",
29
+ "color": "#666666",
30
+ "background color": "#FAE4AA",
31
+ "choices": "Choice 1,Choice 2,Choice 3,Choice 4,Choice 5",
32
+ "font family": "Sans-Serif",
33
+ "font size": "12px"
34
+ }
35
+
36
+ });
37
+
@@ -1,74 +1,74 @@
1
-
2
-
3
- // Example - creating a custom panel or dialog
4
-
5
- // Note: panels and dialogs are the same type of element
6
- // dialogs use a different set of corner/border images to make them look like a dialog
7
-
8
-
9
- // Add a new panel style
10
- // This will appear as an option in the "tab panel style" property of a panel
11
- pui.widgets.panelStyles["Custom Panel"] = {
12
- // width of the left side of the panel (should match the width of the images provided in the /images/panels/ folder)
13
- left: 10,
14
-
15
- // width of the right side of the panel (should match the width of the images provided in the /images/panels/ folder)
16
- right: 10,
17
-
18
- // height of the top side of the panel, including title bar if this is a dialog (should match the height of the images provided in the /images/panels/ folder)
19
- top: 33,
20
-
21
- // height of the bottom side of the panel (should match the height of the images provided in the /images/panels/ folder)
22
- bottom: 9,
23
-
24
- // panel's background color
25
- background: "#f0b310",
26
-
27
- // panel title font color
28
- textColor: "#000000",
29
-
30
- // background color of the panel title edit box in the designer
31
- textBackground: "#f6d47a",
32
-
33
- // top padding in pixels for the panel title
34
- textTopPadding: "7px"
35
-
36
-
37
- // optional parameters...
38
- //textAlign: // title alignment
39
- //fontSize: // title font size
40
- //noTitle: // true or false
41
- //width: // override default width
42
- //height: // override default height
43
- //dialog: // true or false
44
- }
45
-
46
-
47
-
48
-
49
- // Now, add an entry to the Widgets Toolbox
50
- pui.toolbox.add({
51
- // specifies category - this can be an existing category or a new one
52
- // if the category does not exist, it is created on the fly
53
- category: "Custom Widgets",
54
-
55
- widget: "panel",
56
- text: "Custom Panel",
57
- icon: "/profoundui/proddata/images/panels/Custom Panel/icon.png",
58
-
59
- // this determines the look of the drag/drop proxy as we drag the widget element off the toolbox
60
- proxyHeight: 100,
61
- proxyWidth: 200,
62
- proxyHTML: function(defaults) {
63
- return pui.widgets.getPanelProxy(defaults);
64
- },
65
-
66
- // additional default property values can be specified here
67
- defaults: {
68
- "panel style": "Custom Panel",
69
- "color": "#000000"
70
- }
71
-
72
- });
73
-
74
-
1
+
2
+
3
+ // Example - creating a custom panel or dialog
4
+
5
+ // Note: panels and dialogs are the same type of element
6
+ // dialogs use a different set of corner/border images to make them look like a dialog
7
+
8
+
9
+ // Add a new panel style
10
+ // This will appear as an option in the "tab panel style" property of a panel
11
+ pui.widgets.panelStyles["Custom Panel"] = {
12
+ // width of the left side of the panel (should match the width of the images provided in the /images/panels/ folder)
13
+ left: 10,
14
+
15
+ // width of the right side of the panel (should match the width of the images provided in the /images/panels/ folder)
16
+ right: 10,
17
+
18
+ // height of the top side of the panel, including title bar if this is a dialog (should match the height of the images provided in the /images/panels/ folder)
19
+ top: 33,
20
+
21
+ // height of the bottom side of the panel (should match the height of the images provided in the /images/panels/ folder)
22
+ bottom: 9,
23
+
24
+ // panel's background color
25
+ background: "#f0b310",
26
+
27
+ // panel title font color
28
+ textColor: "#000000",
29
+
30
+ // background color of the panel title edit box in the designer
31
+ textBackground: "#f6d47a",
32
+
33
+ // top padding in pixels for the panel title
34
+ textTopPadding: "7px"
35
+
36
+
37
+ // optional parameters...
38
+ //textAlign: // title alignment
39
+ //fontSize: // title font size
40
+ //noTitle: // true or false
41
+ //width: // override default width
42
+ //height: // override default height
43
+ //dialog: // true or false
44
+ }
45
+
46
+
47
+
48
+
49
+ // Now, add an entry to the Widgets Toolbox
50
+ pui.toolbox.add({
51
+ // specifies category - this can be an existing category or a new one
52
+ // if the category does not exist, it is created on the fly
53
+ category: "Custom Widgets",
54
+
55
+ widget: "panel",
56
+ text: "Custom Panel",
57
+ icon: "/profoundui/proddata/images/panels/Custom Panel/icon.png",
58
+
59
+ // this determines the look of the drag/drop proxy as we drag the widget element off the toolbox
60
+ proxyHeight: 100,
61
+ proxyWidth: 200,
62
+ proxyHTML: function(defaults) {
63
+ return pui.widgets.getPanelProxy(defaults);
64
+ },
65
+
66
+ // additional default property values can be specified here
67
+ defaults: {
68
+ "panel style": "Custom Panel",
69
+ "color": "#000000"
70
+ }
71
+
72
+ });
73
+
74
+
@@ -1,71 +1,71 @@
1
-
2
-
3
- // Example - creating a gradient / styled button
4
-
5
- // Add a new button style
6
- // This will appear as an option in the "button style" property of a styled button
7
-
8
- pui.widgets.buttonStyles["Custom Button"] = {
9
-
10
- // width of the left side of the button (should match the width of the images provided in the /images/buttons/ folder)
11
- left: 23,
12
-
13
- // width of the right side of the button (should match the width of the images provided in the /images/buttons/ folder)
14
- right: 23,
15
-
16
- // height of the top side of the button (should match the height of the images provided in the /images/buttons/ folder)
17
- top: 10,
18
-
19
- // height of the bottom side of the button (should match the height of the images provided in the /images/buttons/ folder)
20
- bottom: 10,
21
-
22
- // determines if the button has a separate set of images for when the user hovers the mouse over it
23
- hasOverState: false,
24
-
25
- // determines if the button has a separate set of images for when the user clicks it
26
- hasClickState: false,
27
-
28
- // color of text within the button
29
- textColor: "#000000",
30
-
31
- // edit box background color used in inline editing within the visual designer
32
- editBackgroundColor: "#eca430",
33
-
34
- // default button width
35
- width: 125
36
-
37
- // optional parameters...
38
- //clickStateIsNormalState: // set to true if the click state images are the same as the normal state images
39
- //hiColor: // highlight color
40
- }
41
-
42
-
43
-
44
-
45
- // Now, add an entry to the Widgets Toolbox
46
- pui.toolbox.add({
47
- // specifies category - this can be an existing category or a new one
48
- // if the category does not exist, it is created on the fly
49
- category: "Custom Widgets",
50
-
51
- widget: "styled button",
52
- text: "Custom Styled Button",
53
- icon: "/profoundui/proddata/images/buttons/Custom Button/icon.png",
54
-
55
- // this determines the look of the drag/drop proxy as we drag the widget element off the toolbox
56
- proxyHeight: 23,
57
- proxyWidth: 125,
58
- proxyHTML: function(defaults) {
59
- return pui.widgets.getStyledButtonProxy(defaults);
60
- },
61
-
62
- // additional default property values can be specified here
63
- defaults: {
64
- "button style": "Custom Button",
65
- "width": "125px",
66
- "color": "#000000"
67
- }
68
-
69
- });
70
-
71
-
1
+
2
+
3
+ // Example - creating a gradient / styled button
4
+
5
+ // Add a new button style
6
+ // This will appear as an option in the "button style" property of a styled button
7
+
8
+ pui.widgets.buttonStyles["Custom Button"] = {
9
+
10
+ // width of the left side of the button (should match the width of the images provided in the /images/buttons/ folder)
11
+ left: 23,
12
+
13
+ // width of the right side of the button (should match the width of the images provided in the /images/buttons/ folder)
14
+ right: 23,
15
+
16
+ // height of the top side of the button (should match the height of the images provided in the /images/buttons/ folder)
17
+ top: 10,
18
+
19
+ // height of the bottom side of the button (should match the height of the images provided in the /images/buttons/ folder)
20
+ bottom: 10,
21
+
22
+ // determines if the button has a separate set of images for when the user hovers the mouse over it
23
+ hasOverState: false,
24
+
25
+ // determines if the button has a separate set of images for when the user clicks it
26
+ hasClickState: false,
27
+
28
+ // color of text within the button
29
+ textColor: "#000000",
30
+
31
+ // edit box background color used in inline editing within the visual designer
32
+ editBackgroundColor: "#eca430",
33
+
34
+ // default button width
35
+ width: 125
36
+
37
+ // optional parameters...
38
+ //clickStateIsNormalState: // set to true if the click state images are the same as the normal state images
39
+ //hiColor: // highlight color
40
+ }
41
+
42
+
43
+
44
+
45
+ // Now, add an entry to the Widgets Toolbox
46
+ pui.toolbox.add({
47
+ // specifies category - this can be an existing category or a new one
48
+ // if the category does not exist, it is created on the fly
49
+ category: "Custom Widgets",
50
+
51
+ widget: "styled button",
52
+ text: "Custom Styled Button",
53
+ icon: "/profoundui/proddata/images/buttons/Custom Button/icon.png",
54
+
55
+ // this determines the look of the drag/drop proxy as we drag the widget element off the toolbox
56
+ proxyHeight: 23,
57
+ proxyWidth: 125,
58
+ proxyHTML: function(defaults) {
59
+ return pui.widgets.getStyledButtonProxy(defaults);
60
+ },
61
+
62
+ // additional default property values can be specified here
63
+ defaults: {
64
+ "button style": "Custom Button",
65
+ "width": "125px",
66
+ "color": "#000000"
67
+ }
68
+
69
+ });
70
+
71
+