Properties Window: Difference between revisions

From NSB App Studio
Jump to navigation Jump to search
 
(132 intermediate revisions by 3 users not shown)
Line 1: Line 1:
[[file:3.6.jpg]] <br />
[[file:3.6.png]] <br />
The project, its forms and the controls on those forms have information about them that can be edited in the Properties Window. Where such a change would affect the appearance of a form or control, the Design Screen will be updated.  
The project, its forms and the controls on those forms have information about them that can be edited in the Properties Window.  


* If a change would affect the appearance of a form or control, the Design Screen will be updated.
* A short description of the property appears in the Help window below the Properties Window.
== Project Properties ==
== Project Properties ==


{| class = "wikitable"
{| class = "wikitable"
|-
|-
| background image || The background image on the screen. Default is a gray pattern with vertical lines.
| backgroundColor || Sets the default background color for all forms. Can be a color name, #RRGGBB, rgb(R,G,B), or transparent. To enable [https://blog.appstudio.dev/2020/01/appstudio-8-dark-mode/ Dark Mode], set to 'inherit'.
|-
|-
| browserwarnmsg || Message which appears is app is run on an unsupported browser. Can be blank.
| backgroundImage || Sets the default background pattern or image for all forms. Overrides the backgroundColor property. Works best if image is in the project folder. Do not use absolute paths. To stop image from repeating to fill the screen, put <code>background-repeat:no-repeat;</code> into the style property of Project Properties. Gradients like <code>linear-gradient(#55aaee,#003366)</code> can be set at design time or runtime. URLs like <code>url(https://www.nsbasic.com/images/eiffel.gif)</code> can be set at runtime only.
|-
|-
| configxml || Configuration information for [https://build.phonegap.com/docs/config-xml PhoneGap Build]. Includes things like icons, splash screens, autorotation (orientation) and more.
| browserwarnmsg || Message which appears is app is run on an unsupported browser. If blank, the warning does not appear. See also [[Projects,_Forms,_and_Controls#Browser_Warning_Message|browserWarningMessageAfterScript]].
|-
| [https://en.wikipedia.org/wiki/Content_Security_Policy contentSecurityPolicy] || The [https://content-security-policy.com/ Content Security Policy] defines the security rules that the browser should enforce. The default is to allow everything, which is not sufficient for secure apps. Required by VoltBuilder apps. This can be multiline for complex policies. The Content Security Policy is not used if you are running on the desktop.
|-
|-
| copyright || The copyright message. This will be placed in the generated code.
| copyright || The copyright message. This will be placed in the generated code.
|-
|-
| defaultformsize || Standard form size for most devices. If you want a size not on the list, set the height and width for each form in Form Properties.
| defaultformsize || The default size used for new forms. If you want a size not on the list, set the height and width for each form in Form Properties.
|-
|-
| description || Description of the project. Used in config.xml.
| description || Description of the project. Used in config.xml.
|-
|-
| extraheaders || Additional lines to the header. This is a good place to include extra JavaScript libraries.
| enableAppScroll || Allow app to scroll? Use for forms longer than the screen. See [http://blog.nsbasic.com/2016/01/making-apps-which-scroll/ Making Apps which Scroll].  Needs to be set to true for jQuery Mobile swipeleft and swiperight.
|-
| enableBrowserArrows || After [[ChangeForm]], enable the back and forward arrows of the browser to move between forms. Defaults to false.
|-
| enableNiceLinks || Don't use hash (#) in URL? Also needs to be [[Manage_apps|set in Dashboard]].
|-
| eslintRules || For syntax checking. A JSON configuration object that modifies the [https://github.com/airbnb/javascript default style guide]. <p>See the [https://eslint.org/docs/latest/rules/ Eslint Rules Reference] for all the rules. <p>Sample value:
<pre>{
  "quotes": ["error", "single"]
}</pre>
|-
| enableNiceLinks || On servers where this is enabled, do not show '#' character in URL. If you are deploying to VoltServer, go into the Dashboard for your app and set Nice Links to true as well. Defaults to false.
|-
| EULA || The text of the End User License Agreement that the user has to agree to before the app will run.
|-
| events || Project wide events which are responded to.
|-
|-
| firstform || The name of the initial form to display. If left blank, the first form is used.
| extrafiles || Files to include with your project. These files should be in your project's folder. If you include the name of a folder, the folder and all of its files will be included.
|-
|-
| globalfont || The default font for all controls. Default value is Helvetica.
| extraheaders || Additional lines to the header. This is a good place to include extra JavaScript libraries.
|-
|-
| HomescreenTitle || The title to be used for the app when saved to the Home Screen on the device. iOS only.
| firstform || The name of the initial form to display. If left blank, the first form is used. If the form specified no longer exists, it will be changed to the first form on the next deploy.
|-
|-
| icon || The icon to be used when the app is saved to the launcher. For iOS, it should be 114x114.
| fontfamily || The default font for all controls. Default value is system, which uses the default font for each device. Android and iOS each have custom fonts: Roboto and San Francisco. To use a single font for all platforms, use something like Helvetica.
|-
|-
| id || The saved name of the project. Unicode characters cannot be used.
| icon || Should be 512x512 in png format. If you are not building for Electron, 192x192 is OK. Works best if the image is in the project folder. If you do not specify an icon, the AppStudio icon will be used. Do not use absolute paths. Unix file names must be used: you cannot include spaces or invalid characters such as colon (":") or parentheses ("()").  
|-
|-
| language || BASIC or JavaScript. If BASIC, code is converted to JavaScript before running.  
| language || BASIC or JavaScript. If BASIC, code is converted to JavaScript before running.  
|-
|-
| manifest || A list of files to be saved with the project. See “[[Distributing your App]]”.
| [[Obfuscation|obfuscation]] || Name of the external routine to obfuscate the runtime code.
|-
|-
| manifestFile || “appcache” or “manifest”. “appcache” is recommended for all new projects.
| [[Obfuscation|obfuscatorSettings]] || If obfuscation is set to js-obfuscator-custom, these settings are used.
|-
|-
| obfuscation || Name of the external routine to obfucsate the runtime code.
| [[Responsive Design Made Simple|projectCSS]] || Opens an editor window with CSS rules for the project.
|-
|-
| phonegapBuildID || Build number returned by PhoneGap Build.
| rtl || Use right to left language on controls?
|-
|-
| splashscreen || An image to display as the app is loading.
| script || Opens a Code Window with the Global Code for the project.
|-
|-
| splashscreen-iPad ||An image to display as the app is loading on an iPad.
| statusbar || The appearance of the iOS status bar at the very top of the screen. If content is set to default, the status bar appears normal. If set to black, the status bar has a black background. If set to black-translucent, the status bar is black and translucent. If set to default or black, the web content is displayed below the status bar. If set to black-translucent, the web content is displayed on the entire screen, partially obscured by the status bar.
|-
|-
| statusbar || The appearance of the status bar at the very top of the screen. Choices are default, black or black-translucent.
| stopOnError || Show a MsgBox if error at runtime?
|-
|-
| style || The style used by the body of the app.
| [[style]] || The style used by the body of the app. See the [[Style]] page for more info. Must be on a single line.
|-
|-
| title || The public title of the program.
| title || The public title of the program. Special characters like "&" are not allowed if compiling with VoltBuilder.
|-
| useStrict || Do additional syntax checking at runtime, such as undeclared variables.
|-
|-
| version || Version number of app. User specified.  
| version || Version number of app. User specified.  
|}
== Form Properties ==
{| class = "wikitable"
|-
|-
| height || The height of the form. You will want this to be the correct size for your device. The [[Design Screen]] uses this property.
| viewportFit || iOS: How should the app cover the screen?<br><b>auto</b> currently same as <b>contain</b>.<br><b>cover</b> fills the entire screen.<br><b>contain</b> sticks within the safe area.<p>[http://blog.nsbasic.com/?p=3127&preview=true More info]
|-
! Electron
|-
| Chrome Dev Tools? || Open Chrome Dev Tools automatically at run time?
|-
| electronMain.js || Startup module for app. [https://electronjs.org/docs/api/browser-window More info].
|-
| icon (512) || Icon template. Must be 512x512 png, jpg or jpeg. If not supplied, AppStudio icon will be used.
|-
| package.json || Parameters for app. Node modules, etc. [https://docs.npmjs.com/files/package.json More Info].
|-
! Frameworks
|-
| BootstrapPath || The path to the Bootstrap.Leave blank for the default, but if you have a custom build of Bootstrap, put the path here. If to a local folder, should end in /. Must be single line.
|-
| [[Introduction to Bootstrap|BootstrapTheme]] || The theme used by Bootstrap. Affects the appearance of all Bootstrap controls.
|-
| jQueryMobileTheme || If jQuery Mobile is used, the default theme.
|-
| jqWidgetsLicence || When you pay for a jqWidgets license, you'll get a serial number. Enter it here.
|-
| pathTo_jqWidgets || The path to the jqWidgets files. Should end in "/" if local path. See this [http://blog.nsbasic.com/2015/05/appstudio-5-using-a-local-copy-of-jqwidgets/ blog post] for changing the path to a local folder.
|-
! Progressive Web App
|-
|-
| id || The name of the form.
| homescreenTitle || App title when saved to Home Screen.
|-
|-
| left || The position of the left of the form. Usually 0.
| Make PWA? || Make a PWA? Defaults to true.
|-
|-
| method || The http method used to send data. Can be GET or POST.
| manifest || Manifest for PWA. See [[Progressive Web Apps]].  
|-
|-
| onkeypress || Function to call when a key is pressed in the form.
! VoltServer
|-
|-
| onsubmit || Function to call when a form is submitted to the server.
| AppID || ID of the app in VoltServer. Assigned automatically when deployed to VoltServer.
|-
|-
| openMode || Should the form be opened on startup?
| Dashboard Access || Allow the app access to user data on VoltServer, much like the Dashboard has.
|-
|-
| style || The style attributes for the form.
| Domain || The location of the app on VoltServer. For example, signon-controls-sharply.volt.live.  
|-
|-
| top || The position of the top of the form. Usually 0.
! VoltBuilder
|-
|-
| URL || The URL to send data to.
| &nbsp; || See [[VoltBuilder]] docs
|-
|-
| width || The width of the form. You will want this to be the correct size for your device. The Design Screen uses this property.
|}
|}


== Code Module Properties ==  
== [[Code Modules|Code Module]] Properties ==  


{| class = "wikitable"
{| class = "wikitable"
Line 86: Line 126:
| id || The name of the Code Module.
| id || The name of the Code Module.
|-
|-
| Language || The programming language used in the Code Module. Can be JavaScript or BASIC.
| Language || The programming language used in the Code Module. Can be JavaScript, BASIC or PHP.
|-
| loadType || How will this JavaScript module be loaded?
* default: simple load.
* async: execute right away
* defer: execute when page finishes
* webworker: loaded as a webworker
* noload: module is not loaded by app
|-
| script || Opens a Code Window to edit the script.
|-
| src || Location of the external file this Code Module refers to.
|}
|}
== Form Properties ==
See the [[Form]] page.
== Control Properties ==
See the [[Properties and Methods]] page.


Next: [[Status_Bar|Status Bar]]
Next: [[Status_Bar|Status Bar]]

Latest revision as of 13:48, 3 June 2024


The project, its forms and the controls on those forms have information about them that can be edited in the Properties Window.

  • If a change would affect the appearance of a form or control, the Design Screen will be updated.
  • A short description of the property appears in the Help window below the Properties Window.

Project Properties

backgroundColor Sets the default background color for all forms. Can be a color name, #RRGGBB, rgb(R,G,B), or transparent. To enable Dark Mode, set to 'inherit'.
backgroundImage Sets the default background pattern or image for all forms. Overrides the backgroundColor property. Works best if image is in the project folder. Do not use absolute paths. To stop image from repeating to fill the screen, put background-repeat:no-repeat; into the style property of Project Properties. Gradients like linear-gradient(#55aaee,#003366) can be set at design time or runtime. URLs like url(https://www.nsbasic.com/images/eiffel.gif) can be set at runtime only.
browserwarnmsg Message which appears is app is run on an unsupported browser. If blank, the warning does not appear. See also browserWarningMessageAfterScript.
contentSecurityPolicy The Content Security Policy defines the security rules that the browser should enforce. The default is to allow everything, which is not sufficient for secure apps. Required by VoltBuilder apps. This can be multiline for complex policies. The Content Security Policy is not used if you are running on the desktop.
copyright The copyright message. This will be placed in the generated code.
defaultformsize The default size used for new forms. If you want a size not on the list, set the height and width for each form in Form Properties.
description Description of the project. Used in config.xml.
enableAppScroll Allow app to scroll? Use for forms longer than the screen. See Making Apps which Scroll. Needs to be set to true for jQuery Mobile swipeleft and swiperight.
enableBrowserArrows After ChangeForm, enable the back and forward arrows of the browser to move between forms. Defaults to false.
enableNiceLinks Don't use hash (#) in URL? Also needs to be set in Dashboard.
eslintRules For syntax checking. A JSON configuration object that modifies the default style guide.

See the Eslint Rules Reference for all the rules.

Sample value:

{
  "quotes": ["error", "single"]
}
enableNiceLinks On servers where this is enabled, do not show '#' character in URL. If you are deploying to VoltServer, go into the Dashboard for your app and set Nice Links to true as well. Defaults to false.
EULA The text of the End User License Agreement that the user has to agree to before the app will run.
events Project wide events which are responded to.
extrafiles Files to include with your project. These files should be in your project's folder. If you include the name of a folder, the folder and all of its files will be included.
extraheaders Additional lines to the header. This is a good place to include extra JavaScript libraries.
firstform The name of the initial form to display. If left blank, the first form is used. If the form specified no longer exists, it will be changed to the first form on the next deploy.
fontfamily The default font for all controls. Default value is system, which uses the default font for each device. Android and iOS each have custom fonts: Roboto and San Francisco. To use a single font for all platforms, use something like Helvetica.
icon Should be 512x512 in png format. If you are not building for Electron, 192x192 is OK. Works best if the image is in the project folder. If you do not specify an icon, the AppStudio icon will be used. Do not use absolute paths. Unix file names must be used: you cannot include spaces or invalid characters such as colon (":") or parentheses ("()").
language BASIC or JavaScript. If BASIC, code is converted to JavaScript before running.
obfuscation Name of the external routine to obfuscate the runtime code.
obfuscatorSettings If obfuscation is set to js-obfuscator-custom, these settings are used.
projectCSS Opens an editor window with CSS rules for the project.
rtl Use right to left language on controls?
script Opens a Code Window with the Global Code for the project.
statusbar The appearance of the iOS status bar at the very top of the screen. If content is set to default, the status bar appears normal. If set to black, the status bar has a black background. If set to black-translucent, the status bar is black and translucent. If set to default or black, the web content is displayed below the status bar. If set to black-translucent, the web content is displayed on the entire screen, partially obscured by the status bar.
stopOnError Show a MsgBox if error at runtime?
style The style used by the body of the app. See the Style page for more info. Must be on a single line.
title The public title of the program. Special characters like "&" are not allowed if compiling with VoltBuilder.
useStrict Do additional syntax checking at runtime, such as undeclared variables.
version Version number of app. User specified.
viewportFit iOS: How should the app cover the screen?
auto currently same as contain.
cover fills the entire screen.
contain sticks within the safe area.

More info

Electron
Chrome Dev Tools? Open Chrome Dev Tools automatically at run time?
electronMain.js Startup module for app. More info.
icon (512) Icon template. Must be 512x512 png, jpg or jpeg. If not supplied, AppStudio icon will be used.
package.json Parameters for app. Node modules, etc. More Info.
Frameworks
BootstrapPath The path to the Bootstrap.Leave blank for the default, but if you have a custom build of Bootstrap, put the path here. If to a local folder, should end in /. Must be single line.
BootstrapTheme The theme used by Bootstrap. Affects the appearance of all Bootstrap controls.
jQueryMobileTheme If jQuery Mobile is used, the default theme.
jqWidgetsLicence When you pay for a jqWidgets license, you'll get a serial number. Enter it here.
pathTo_jqWidgets The path to the jqWidgets files. Should end in "/" if local path. See this blog post for changing the path to a local folder.
Progressive Web App
homescreenTitle App title when saved to Home Screen.
Make PWA? Make a PWA? Defaults to true.
manifest Manifest for PWA. See Progressive Web Apps.
VoltServer
AppID ID of the app in VoltServer. Assigned automatically when deployed to VoltServer.
Dashboard Access Allow the app access to user data on VoltServer, much like the Dashboard has.
Domain The location of the app on VoltServer. For example, signon-controls-sharply.volt.live.
VoltBuilder
  See VoltBuilder docs

Code Module Properties

id The name of the Code Module.
Language The programming language used in the Code Module. Can be JavaScript, BASIC or PHP.
loadType How will this JavaScript module be loaded?
  • default: simple load.
  • async: execute right away
  • defer: execute when page finishes
  • webworker: loaded as a webworker
  • noload: module is not loaded by app
script Opens a Code Window to edit the script.
src Location of the external file this Code Module refers to.

Form Properties

See the Form page.

Control Properties

See the Properties and Methods page.

Next: Status Bar