Giter VIP home page Giter VIP logo

docs's Introduction

Docs

Table of Contents

The Official DroidScript Documentation

Preview available at https://droidscript.github.io/Docs

Mobile-sized iframe for desktop browsers: https://droidscript.github.io/Docs/docs

DocsPreview app for downloading the latest docs: https://github.com/SymDSTools/DocsPreview

More DS tools here

Structure

  • docs: The latest generated documentation for the GitHub Pages preview
  • files: docs source files and generation scripts

The docs sources are written in a custom markup format. For legacy reasons those markup files will be converted into an intermediate JSON Format which will then be converted to the HTML docs you all know and love.

For Contributors:

To contribute to the Docs you need to have an active GitHub account. Sign up if you don't have one.

Fork the DroidScript Repository

To edit the Docs you need to 'fork' the DroidScript repository. The easiest way is to open up a new Codespace on the DroidScript repository.

Open Codespace Dialog

Make Changes

When the Codespace is open, navigate to the files/markup/en directory and make changes on any file you want to contribute. DroidScript has multiple scopes each having its own subdirectory with every possible method defined as markup.js file. Inside you can modify the description, subfunctions, parameters and more. Make sure to follow the markup format!

Commit Changes

When you finished your changes switch to the git tab on the left and descibe briefly what you have changed in the commit message field. The first line should describe what you did in general and each following line should include a more detailed list of your changes.
After that commit and synchronize your changes to GitHub with the green button below. If you just opened the Codespace on the DroidScript repository it will ask to create a fork.

Note: there is an ongoing Codespace bug that prevents you from committing to your fork. If that applies to you, open your workspace terminal and execute git push --set-upstream origin master

Commit Description Dialog

Create a Pull Request

When you are satisfied with your changes and want us to review your changes, go on to the GitHub tab on the left and hit the small 'Create Pull Request' Button that appears on the 'Pull Requests' dropdown menu. This will open a new 'Pull Request' tab where you can provide a description of your changes across all commits you made. You can also review all your commits and changed files. After that hit the green 'Create' button.

Pull Request Dialog

Check on your Pull Request

When a developer is satisfied with the request he will merge them into the DroidScript repository. If not he will leave a comment on your pull request so make sure to regulary check on it until it gets approved, and enable notifications.

Thank you for your contribution and support of DroidScript.org.!

docs's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

docs's Issues

RenameFile example fails

Alan Hendry Mon, 25 Sept, 11:29 to DroidScript
HI,
The example for RenameFile fails
It sets up variables newfile and oldfile
but then uses variable file to write and rename

app.GetInstalledApps() and app.GetAcitivites() need a warning notice and/or deprecation

Testing the Launcher sample I noticed app.GetAcitivites() didn't returned all the activities it should.

Searching the forums I found a post from Steve Garman stating this:
"Unfortunately this is caused by changes to package visibility rules introduced in apps targeting Android 11 and above
https://developer.android.com/training/package-visibility
There is no workaround for this as far as I know in the latest version of DroidScript"

Followed by Dave's message:
"Showing all apps will be possible in the next 'X' release."

src: https://groups.google.com/g/droidscriptpremium/c/pmqF0RHC83c

I think app.GetInstalledApps() and app.GetAcitivites() (maybe also app.GetRunningApps() and app.GetRunningServices()) should then be deprecated in DroidScript standard, with a warning notice explaining their possible limitations.

Marketing Statement

d_a_v_e β€” 05/08/2023 14:12
We generate very little income (as people don't like paying for software tools), but it has been improving slightly recently... if we ever get lucky enough to be in a position where we are making more than we need, then we can simply make DS cheaper, so that we don't make a significant profit.
Note: DS Premium is already extremely cheap in developing countries

CaptainStarbuck β€” 05/08/2023 18:10
I had no idea about the nuance of your model. I think that statement there belongs on the site and in the docs, in the Playstore info, in Twitter and Facebook, and wherever people meet DS. It's a Marketing statement and i believe a compelling one. You GO dude! 😎

Typo: OnResume called OnPause in AppEvents

In Intro/AppEvents there is a typo in the OnResume function description:
"The OnPause event will be called when the user returns to your app after sending it to the background."

It should be:
"The OnResume event will be called when the user returns to your app after sending it to the background."

TextToSpeech Engine infos

CaptainStarbuck β€” 04/09/2023 04:53
Can we get sone insight into the text-to-speech feature? Exactly what does it expect for locale and engine? For example, this primitive code is all that's possible with the current doc and i know the locale is wrong.

function conversation()
{
    app.TextToSpeech("Yes?", .5, .9, finishedPrompt,false,'en-us'  )
}
function finishedPrompt(data)
{
    // any data? No doc info
}

For the engine, do we specify the com.name? An ID?
If I know exactly how this wraps the underlying Java class, I'll test and write docs for it.
Can someone recommend built in or good installable engines to try, along with the correct engine ID?
THANKS!

Symbroson β€” 04/09/2023 12:15
locales are in underscore format. examples I found were: en_GB, en_IN, bn_BD
couldnt find something about the engine parameter though

CaptainStarbuck β€” 04/09/2023 20:06
About TTS: I tried com.google.android.tts for engine, but no joy.

Installed the update for that from Play store, no joy:
Speech Recognition and Synthesis from Google
https://play.google.com/store/apps/details?id=com.google.android.tts

For now I'll hook into the Google cloud solution or Microsoft, but I'd like to use onboard decent tooling and fall back to cloud if desired.

CaptainStarbuck β€” 04/09/2023 20:40
Languages and locales are dash-delimited:
https://www.science.co.il/language/Locale-codes.php
Engines should come from here but the list is empty:
var list = app.GetSpeechEngines()
Still looking around...

Automated In-App Docs updating, Git-Sourced Plugin Docs

david enjineio Fri, 10 Feb, 14:34 to Jumar, me

I'd like to convert most of the DS functionality to run as a big bunch of plugins which carry their own documentation. Currently the docs are all in one block, but I would like to break them up into separate plugins and make them open source so that others can contribute to them.

d_a_v_e β€” 13/02/2023 15:22
We'll probably have to keep the core framework docs as a single plugin, then Music, MUI, GameView, UI etc would all be updateable plugins (from the plugins menu)

Our new way of writing docs is to include comments in the javascript source code, then generate the docs from that, so we might have to create a set of dummy javascript files to represent the core functionality... possibly by hacking Symbroson's docs generator
Any new functionality would be written as a DS plugin with documentation included.

We could put those plugins into our public git repo and others could contribute as and when they spot missing bits or mistakes
We can then update the docs for each part of DS without waiting for an official DS release
The administrator(s) of the git repo would moderate any pull requests for changes to the docs (or plugin code)

I'm also thinking of moving all our plugins to git and changing the plugins list to point at that instead.... and allowing 3rd party plugins to be searched for and installed directly from git.

Docs Tasks:

  • Integrate Docs update button directly in DS, use app.Execute to run within DS
  • check Docs update compatibility with WEB IDE

ui doc details

starlight β€” 28/02/2023 03:28
tbh i think all the ui docs specifically need initial, upon creation, parameters to be explained in detail.
down here is exceptionally detailed and nice when touched for parameters good job
image
but the tops lack crucial info
image
the only way currently to find parameters to create items initially with is looking at the examples and guessing. Just my opinion is starting parameters should be as neatly and fully explained as the method parameters at the bottom. They are among the most important

List of internal assets

Is there, or should there be, a list of provided layout background jpg files in the docs? I will PR this later, if approved.

Symbroson β€” 27/08/2023 18:50
Good idea
there are several subfolders available (you can see all of them when extracting the DroidScript.apk as zip)
ie there is /Sys /Img /assets and so on - several of them are used across the samples, but theres no complete list somewhere (probably because it frequently changes when new samples are released or removed)

probably best to put this into a details tag in the intro section either Overview or File Structure
https://www.quackit.com/html/tags/html_details_tag.cfm
i think intro/FileStructure works best

AlanH β€” 27/08/2023 19:39
Not in the docs
ditto for /Sys/Snd and /Sys/fonts and /Sys/fonts/MUI

CaptainStarbuck β€” 27/08/2023 19:41
Yeah, thanks. I'll hit all of these, not just the images. The challenge is that when we are in code and want to use SetBackground(filename) we have no idea what filenames are available except for their reference in samples, publicly available code, and our own poking into the zip.
Intellisense would be great in there ... everywhere actually. πŸ˜‰
But I understand that it doesn't know that it might need to default to the Sys folders. This would need to be a list of literals or an enum. Hmmm.....

AlanH β€” 27/08/2023 19:47
I have small apps to list these folders
Also fontawesome icons and MUI icons
CaptainStarbuck β€” 27/08/2023 19:49
If you add those to the Samples, we can refer to them from the docs. This will make the lists dynamic rather than static, requiring manual recognition of changes and updates.

AlanH β€” 27/08/2023 19:51
I think the icons are in the wiki

CaptainStarbuck β€” 27/08/2023 19:52
Well, it looks like the wiki may be deprecated... I would volunteer to enhance a basic list app with a display of the colors and icons. It would be a nice exercise for me. If you'd prefer, I'll be happy to write these from scratch.
Feedback from the team would help us to know if anything like this is already planned, available, or if this might be obsoleted by some other effort.

List of paths posted by Alan - may be incomplete:

"Choose a path"
+",/DCIM,/Pictures"
+",/Sys/Img,/Sys/Snd,/Sys/Html"
+",/Sys/fonts"
+",/Sys/fonts/mui"
+",res/drawable"
+","+app.GetInternalFolder()
+","+app.GetPath()
+","+app.GetPath()+"/"+"Gameview Tutorial/Img"
//+","+app.GetAppPath()
+","+app.GetPath()+"/APKs"
+","+app.GetPath()+"/SPKs"
+","+app.GetInternalFolder()+"/.Droidscript"
//+","+app.GetInternalFolder()+"/external"
+",/extsdcard"
+","+app.GetExternalFolder()
+","+app.GetExternalFolder()+"/Android"
//+","+app.GetExternalFolder()+"/Android/data"
//+","+app.GetExternalFolder()+"/SPKs"
+","+app.GetPrivateFolder()
//+","+app.GetPrivateFolder("pictures")
+","+app.GetPrivateFolder("pictures","external")
+",/sdcard/Pictures"
+","+app.GetSpecialFolder( "Pictures" ) 
 +","+app.GetSpecialFolder( "Music" ) 
 +","+app.GetSpecialFolder( "Downloads" ) 

Blank Page Samples

CaptainStarbuck β€” 17/03/2023 21:20
Many layout doc pages have a Run button to actually run sample code. AWESOME! However, the simpler examples open to essentially empty pages. Sure, if the feature is something like CreateLayout, the focus is on creating a layout, not adding other components. But when a Run sample shows an empty page, I / the user is left wondering if the sample is not working. Yes, again, looking at the code, there is nothing else there and the Run sample is doing exactly what it's being told to do, and nothing more. But someone looking at that help page wants to see "something", if only eye candy that demonstrates "hey, something is going on here". My recommendation therefore is that no Run sample from the docs should return an empty page - all runnable samples should display "something", if nothing other than text that says "sample", or an inactive button.
It seemed to me that a few of these Run-able samples also did not actually show the topical control in action. I'll get specifics when I go through this again. For example though, I think the Drawer layout didn't actually include a drawer.

"Copy" and "Copy All" button doesn't work randomly in Droidscript Docs

Type: Bug

Hi Droidscript team!

Sometimes, in Droidscript IDE app, when copying any code in any examples in the docs, the buttons "Copy" and "Copy All" doesn't work – it can't copy any of the code. Also, it happens randomly. I can't seem to find a way to reproduce this bug because it happens randomly.

This bug actually happens very often. I unsure but I doubt this is a caused by a memory issue or in the app or docs itself. It is very irritating to type the codes manually instead of just pressing the copy buttons and paste it to your project.

The only solution was to restart the Droidscript app. There, I can go copy the examples again but after some time, it will not work. The cycle continues.

I hope you might investigate this issue and hoping that this bug may be fixed in future versions.

Device Info:
Android 11 / Droidscript v2.09 / Free Subscription

dialog setbackcolor radius parameter

Alan Hendry Mon, 25 Sept, 11:21 to DroidScript
In the docs for CreateDialog the method SetBackColor
has a second parameter radius
Also for CreateYesNoDialog

Docs dialog settitlecolor

Alan Hendry Thu, 28 Sept, 13:19 to DroidScript
HI,
In the docs for CreateDialog
the method SetTitleColor is described as
Changes the colour of the title divider

Autocomplete for dialog SetTitleDividerHeight has second parm for options that doesn't seem to be in the docs
Not sure that setting titleheight, titletextsize, titledividerheight are working

function OnStart()
{
    dlg = app.CreateDialog( "Custom Dialog" );

dlg.SetTitleColor( "red" )
dlg.SetTitleDividerColor( "yellow" )
dlg.SetTitleDividerHeight( 25 ,"px")
dlg.SetTitleHeight( 35,"px" )
dlg.SetTitleTextSize( 50,"px" )

    layDlg = app.CreateLayout( "linear", "VCenter,FillXY" );
    layDlg.SetSize( 0.7, 0.7 );
    dlg.AddLayout( layDlg );

    chk = app.CreateCheckBox( "Check Box" );
    chk.SetMargins( 0, 0.02, 0, 0.02 );
    layDlg.AddChild( chk );

    btnDlg = app.CreateButton( "Close Dialog", 0.6, 0.1 );
    btnDlg.SetOnTouch( btnDlg_OnTouch );
    layDlg.AddChild( btnDlg );

    dlg.Show();
}

function btnDlg_OnTouch()
{
    dlg.Dismiss();
}

Tabs add~ and options

Alan Hendry Thu, 21 Jan 2021, 17:23 to DroidScript

  • The doc site (and app reference) have CreateTabs, but not AddTabs.
  • CreateTabs has options, but none are listed in the popup
    (The example has VCenter)

Camera Option to access OTG Webcam

искандСр β€” 23/08/2023 08:43
Hello.How to take picture from webcam, which connected via otg?

d_a_v_e β€” 23/08/2023 14:27
You can select the camera id using the options of app.CreateCameraView, use 'front', 'back', 'cam0', 'cam1', 'cam2', 'cam3'
cam = app.CreateCameraView( 0.8, 0.4, "cam2" ); //<-- try this.
This is missing from the docs BTW

Full description not showing when running `node generate.js -c <scope>.<pattern>`

If the full description is located in the desc folder which is reference through "desc": "#Member.md", the description of the rendered html is just #Member.md instead of showing the content of Member.md in the desc folder. This issue occurs when generating a certain member of the scope. e.g. node generate.js -c app.CreateButton

Improve Game Docs

CaptainStarbuck β€” 01/09/2023 20:31
I would LOVE πŸ’• to use DS for game dev, but frankly there aren't enough docs or examples to give me the confidence that i need to do that. I can easily see this marketed as a game development platform, completely separate from its life as a tool for other kinds of apps. It just needs lots of docs for that specific kind of application. Unity is a great example of that kind of tool. Perhaps someone could earn a license by being the Game Development Czar?

More Generic Overview Pages

We need some more generic overview type docs writing...
Please make suggestions as comment unter in this issue

Accepted:

  • #68 explain the different types of app available and the pros/cons
  • #70 explain how APK building works and what goes into publishing on PlayStore
  • #72 FileSystem Access

Cloud store account

Maybe here isn't the best place to do that, but i sent a lot of emails to DroidScript designed email asking for the Cloud Store account and got no awnsers. How can i get an account?

Missing informations in app.AddCanvas() and app.CreateCanvas()

In the app.AddCanvas() page the parameters are missing, as well as the "See CreateCanvas for full documentation.".
In the app.CreateCanvas() page the parameters are missing, and there is a wrong "See CreateButton for full documentation." line.
Otherwise good job for the doc, it is very helpful.

ui/webview

AlanH β€” 27/08/2023 12:25
Docs/plugins/ui/webview shows third parm can be NoScrollBar.
The app version has a whole bunch of options (and functions like forward, back, cangoforward, capture, clearhistory, setonurl, setuseragent, setonprogress, setonconsole, …)
so I hope the object and docs are still in dev.

Tabs smartedit

Alan Hendry 21 Jan 2021, 17:23 to DroidScript
if I type
tabs = app.CreateTabs("a,b,c",1,1,"VCenter")
then on the next line type
laya =tabs.
the Smart Editor doesn't populate the right-hand toolbar (I guess it only reacts to app.)

If I type and touch laya=tabs.GetLayout("a")
then the search bar doesn't show the parameters for GetLayout.

Building APKs and publish on PlayStore

Inspiration from https://bit.ly/ds-hiw-doc:

How do we control an APK MB manifest.xml?

  • How does build.json work?
  • What does it not include and why?
  • Can we follow Android docs to control parts of manifest.xml?
  • what is /sdcard/.DroidScript/user.keystore

What are concerns of publishing an APK?

  • Play Store
  • Side load
  • permissions
  • security for the consumer/user
  • security of our code
  • Costs
  • Google intervention
  • Support
  • Updates
  • Monetization
  • Defining limits between application and DroidScript platform responsibilities.

Easier Issue Reporting

[AFK] captainstarbuck
OP
β€” 02/08/2023 20:54
I think for doc purposes, if it's a recognized "thing" that people are welcome and encouraged to submit suggestions for doc improvements, there will be more of that. I'd certainly enjoy helping with that process of getting the community familiar with the process.
What I mean is,
the average user might want to contribute via a simple web page, this discord, the google groups, etc. We can take that source material and incorporate it into the docs for those who choose not to do that part themselves.
I don't think that's a huge hurdle ... could be way wrong.

d_a_v_e β€” 02/08/2023 20:56
Also, they could use the git issues system to report, if it is backed by git
That's not complicated to use

[AFK] captainstarbuck
OP
β€” 02/08/2023 20:57
Yeah, and personally I prefer a ticketing system like that to ensure nothing gets lost. I'm not a fan of this discord as a mechanism for documentation contributions, but ... we work with what we got...
d_a_v_e β€” 02/08/2023 20:58
We could include a 'report issues' link in the docs which takes users straight to the git issues tab

[AFK] captainstarbuck
OP
β€” 02/08/2023 21:00
To avoid asking people to login to a site just to help others, I'd prefer a web form - a simple Google form can be posted anywhere and that might be scripted to post an issue into GH. (Thinking out loud ... all of this is surmountable.)
Derp - or just a sample app in DS that defaults to submission to a place where you can get the data, maybe a Google Sheet.
( This is getting easier and more fun as we talk about it. )

ChooseFile cb args

feom Alan Hendry in DroidScript, 30/11/23 12:24

In the app docs for ChooseFile the callback is documented as

function(path,name)

name seems to return as undefined

(path returned is path and name)

Android 13, DS 2.61

Regards, ah

function OnStart() {
Β  Β  lay = app.CreateLayout( "linear", "VCenter,FillXY" );

Β  Β  var txt = app.AddText( lay,"Import a file into this project")

Β  Β  var list = "/,application/text,application/apk,application/zip," +
Β  Β  Β  Β  "audio/mpeg,audio/mp4,audio/ogg,image/png,image/jpeg,text/css," +
Β  Β  Β  Β  "text/html,text/javascript,text/plain,video/mpeg,video/mp4,video/ogg";
Β  Β  spnMime = app.AddSpinner(lay,list);

Β  Β  btnChoose = app.AddButton(lay, "Choose File", 0.5, 0.1 );
Β  Β  btnChoose.SetOnTouch( btnChoose_OnTouch );

Β  Β  app.AddLayout( lay );
}
function btnChoose_OnTouch() {
Β  Β  app.ChooseFile( "Choose a File", spnMime.GetText(), OnChoose );
}
function OnChoose( path,name ) {
Β  Β  alert( "file path: " + path );
Β  Β  alert( "file name: " + name );
}

NoPause Option

Dave Sun, 28 May, 13:34 to DroidScript
You could try using the 'NoPause' option if you are using a webview or app.SetOptions( "NoPause" ) if using an HTML/Hybrid app. Webviews/Browser windows (including the javascript) are normally paused by Android shortly after loosing focus.

Pascal Georges Sun, 28 May, 18:02 to DroidScript
Thanks Dave for your support.

For app.SetOptions( "NoPause" ), there is no such NoPause option in the doc https://symdstools.github.io/Docs/docs/app/SetOptions.htm
Anyway I tried this option but did not notice any difference in the event cycle : OnPause, OnResume, etc. are called in the same way.

Dave Sun, 28 May, 21:17 to me
Hi Alex. 'NoPause' option needs adding to docs.

CreateNode Page & options

A random error occured somewhere after copy all/clicking popups. Where?

Also the options popup is partly broken:

Screenshot_20231205_200057_com.smartphoneremote.androidscriptfree.jpg

GetVersion

FrickelPit 12 Oct 2023, 06:10 to DroidScriptBeta
as currently stated in the docs: app.GetVersion() --> String, although a number is returned

FrickelPit Sat, 4 Feb, 20:25 to DroidScriptBeta
In DS version 2.58 reference says app.GetVersion() β†’ String but typeof(app.GetVersion()) returns number.
Please update the documentation (it cost me several apk buildings until i realized this)

app.Uri2Path needs deprecating

In recent versions of Android, its no longer to query the content database for the _data column (for security reasons) which makes it impossible to work out the original file path. So we need to mark app.Uri2Path as deprecated in the docs and make sure all DS methods can cope with URI as well as absolute path.

Make DS Wiki Obsolete

SteveG β€” 08/08/2023 16:18
I've been looking around the Wiki to see what might be of use in any new system and the truth is it's pretty much obsolete
It started out because the docs were very sketchy but they outshine the ancient code in the wiki now
There are some intents that are most easily found in the wiki but I suspect that's about all we need to salvage

Tasks:

  • scan wiki for remaining content
  • transfer content into wiki

Content

  • Intent description and examples
  • Tips & Tricks
  • Sample Code
  • Getting Started

App Type Overview

app type overview, coupled with the cfg. object and maybe comparisons to app.Create alternatives (for Node, GameView,and WebView for Instance).
Include a tabular comparison with features and check marks similar to how other websites promote their solutions with other competitors

Features that are available for each app type HTML, Native, Node Native, Hybrid, Python, (cfg.Fast)
Underlying technology for each could be listed

Python Samples

FYI: I think we can use the ChatGPT 3.5 APIs for free. I just signed in to OpenAI and got an API key -
OpenAI Platform
There is a node.js module we could use too
I think we could create an assistant for translating code samples/docs and use that on our current docs. https://platform.openai.com/assistants

tasks:

  • extract and feed back samples
  • chatgpt website automation script
  • OpenAI API
  • translate samples

Overview for specific app methods

  • obj.Method
  • app.SendIntent (related to #88)

Alan Hendry Tue, 12 Jan 2021, 10:51 to DroidScript
obj.Method seems to apply to many object types
Might be nice to have a specific page with an example of obj.Method.
(particularly for those of us who are not object experts).
Regards, ah

HTTPRequest Examples

AlanH β€” 02/03/2023 11:20
Get, post, json, put, delete or head
are valid for httprequest. Examples would be nice (there may already be some out there in Google groups). Generally more examples are good, particularly if different options need completely code around them (like GET and PUT).

Symbroson β€” 02/03/2023 12:51
I agree adding another example for POST might be helpful but for most cases GET and POST are the only ones ever used
Theres a wide range of HTTP methods
https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods but technically they are all the same except they can represent different actions on the server - therefore they are completely dependent on its API implementation

Object Animations

Symbroson β€” 23/08/2023 09:48
has anyone ever seen and understood this graphic in the obj.Animate description?
I was wondering if there is something more intuitive than this to display the huge amount of animation types
This image is definitely compact but maybe its not that easy to read? what are your thoughts?
Image

Symbroson β€” 23/08/2023 11:13
fyi the complete list from the 'Animate' sample is

"NewsPaper","Jelly", "Flash","RubberBand","ShakeHorizontal","ShakeVertical","Swing","TaDa",
"Bounce","BounceLeft","BounceTop","BounceRight","BounceBottom",
"FadeIn","FadeOut",
"Fall","FallRotate",
"FlipFromHorizontal","FlipFromBottom","FlipFromVertical","FlipFromTop","FlipFromRight","FlipFromLeft",
"FlipToHorizontal","FlipToVertical","FlipFromVerticalSwing","FlipFromHorizontalSwing",
"SlideFromLeft","SlideFromTop","SlideFromRight","SlideFromBottom",
"SlideToLeft","SlideToTop","SlideToRight","SlideToBottom",
"ScaleFromLeft","ScaleFromTop","ScaleFromRight","ScaleFromBottom",
"ScaleToLeft","ScaleToTop","ScaleToRight","ScaleToBottom",
"ZoominEnter","ZoominExit","ZoominLeft","ZoominTop","ZoominRight","ZoominBottom",
"ZoomOutExit","ZoomOutLeft","ZoomOutTop","ZoomOutRight","ZoomOutBottom"

CaptainStarbuck β€” 23/08/2023 16:53
I understood the graphic when I first saw it z but it took a minute. It makes sense when you actually use it.
As time permits I'll look at this with you.
My first thought here is to put it in a live sample: a dropdown list has all of the animations, and on selection a button is rendered with that animation.

CaptainStarbuck β€” 23/08/2023 17:01
Or slowly loop through all animations displaying the name at the top and performing the animation. Record that into a GIF or a YouTube vid that can be controlled by the user, even referenced in doc and forum.
Bannerscript β€” 23/08/2023 17:02
Hi, some of these don't work, like pulse, wobble
Etc..

CaptainStarbuck β€” 23/08/2023 17:03
Maybe report that in ⁠bug-reports ?

Bannerscript β€” 23/08/2023 17:04
I'm working at moment but just tried those two and didn't do anything
Flash works
imgmic.Animate("flash", null, 3000);
imgmic2.Animate("flash", null, 3000);
layacrossred.Animate("flash",null,3000)

CaptainStarbuck β€” 23/08/2023 17:06
I believe code will do that diagnostic. Can be left for the team now.

AlanH β€” 23/08/2023 21:58
If you have developer options in settings then check display animations.
Some animations make things appear and some make things disappear, you usually need to alternate them.

AlanH β€” 25/08/2023 22:08
I think pulse and wobble are hybrid.
Think I posted an app in the groups a while ago for DS animations

AlanH β€” 26/08/2023 21:08
Here’s my code for testing DS animations

AlanH β€” 26/08/2023 22:13
I recalled there was a thread, that it wasn’t clear to me what all the combinations were or what they should do, probably that some didn’t work, questions about the docs, thought I’d modified the sample
Probably a senior moment

AlanH β€” 27/08/2023 01:26
Should be able to copy a list of hybrid animations from https://enjine-io.github.io/ui/docs/ui-v0.26/Button/Button.html?id=ui/Button&page=0&home=false&cmp=true into a drop down to test

CaptainStarbuck β€” Today at 00:50
@johnpraise I've initiated discussion for a pattern that we can use to improve doc generation. Whether accepted or not as a general practice here, I'll use this to quickly drive creation of new docs for Node with DroidScript. I'm very interested in this too and know nothing about how they are intended to work together.

I'll post here about how this is progressing.
ο»Ώ

Docs Translation

Symbroson β€” 28/08/2023 18:18
think we can use clyde and some semi automated scripting to read strings from a text file that will be thrown at clyde to translate it into a certain language and write the results back to a new text file?
If its not possible as a client we can make use of a discord bot

My first duty will be to create a mechanism that produces those translation text files out of the docs sources. I imagine it to be similar to the search index, but we can remove duplicated sentences from the translations. This might require some tweaks to the generator here and there as well, as type desciptions are hardcoded into conf.json for instance
CaptainStarbuck β€” 28/08/2023 19:26
I'm guessing Clyde is based on GPT v3.5, the free/public LLM. GPT v4 is vastly superior. I've been thinking along the same lines, not using Clyde via Discord, but just coding to the GPT API.

I created a prototype in ChatGPT. What do you think? ChatGPT

Symbroson β€” 28/08/2023 19:33
I thought about just writing a plain txt file with each sentence that appears in the docs on a new line so that it can translated efficiently while avoiding as many duplicates as possible
json has alot of control characters in it that we dont need. So I write a tool that extracts sentences from the docs, this will get translated by chatgpt and my tool feeds this back into the docs via search replace
we will have to do the translatin in chunks as chatgpt cant translate a whole megabyte of text at once. So we need a tool that feeds chatgpt with chunks of text and writes them back to a new text file
I can probably make my tool sort the sentence into several text files in a way that often reused sentences are in a single files, and sentences with only one appearance in separate file(s)

Symbroson β€” 28/08/2023 19:41
But I dont know how much of a difference duplicate sentences will have. Its possible that its irrelevant after all as each doc file is very individual (except of the type descriptions and inherited methods)
only collecting ideas so far - I will probably not start implementing this before friday as I have an essay to complete for my university and I already procrastinated way too much distracting myself with the docs πŸ˜‚

Symbroson β€” 28/08/2023 19:53
Alternatively we can also just feed in the raw markup files. I had to hit "Continue Generating" one time for this whole layout page.
https://chat.openai.com/share/4865d7da-c88b-4be1-a1d6-08b143dd0015
it has a few flaws (ie it shouldnt translate the // ------ sections, but overall this might just work as well
only takes a good while to translate the whole docs this way ^^ (still way faster as if a person would do it manually)
also, do you think we should ask it to translate variable names? not too sure about that, especially if it throws unicode in. I believe at least DS supports it, but I might have to adjust many of my generator regexes

You have a good idea how something like this could be implemened? maybe with a free chatgpt api? or maybe with a browser scripting tool like greasemonkey?

CaptainStarbuck β€” 29/08/2023 18:40
All of this can be done with the GPT API v4.
The quality of v4 is vastly superior to the free v3.5.

Symbroson β€” 29/08/2023 18:41
afaik the developer api is based on a paid plan as well, using rates for the amount of tokens sent and received

CaptainStarbuck β€” 29/08/2023 18:44
To use GPT like this, we need to provide context in a prompt. I'll make this up....

I'm going to provide you with raw data for new DroidScript documentation that needs to be translated. Don't convert ...this... When you see ...this... convert it to ...this... If context is missing for a specific phrase, consider the larger context. If there is still confusion, batch the text at the end of your translation so that we can figure it out.

A complete prompt like this will guide it very nicely.
Yes, the v4 API is for-fee but the cost is trivial. If we track changes then only the first batch will be large and after that one-off changes will be pennies or less.
With this technology we can also ask for suggestions for better text. It's really REALLY good with this stuff.
As to variables, I do not think they should be changed for the reasons you've mentioned - and this is common convention.

Symbroson β€” 29/08/2023 18:50
could you develop such a tool that takes the markup files from the docs as input and calls the GPT API to translate it and write it back? It can be part of the repository too so you can work directly in xour Docs fork
Its perfectly fine if you have other responsibilities atm - its not high priority

CaptainStarbuck β€” 29/08/2023 18:56
I can't do it immediately for two reasons. First, normal business commitments. Second, I haven't setup a separate billing account for API v4. We don't get v4 API with my ChatGPT-Plus plan. However, as time permits I will address that, and until then I can write this up with v3.5 as a POC and we can see the difference when switching to v4 for production.

Symbroson β€” 29/08/2023 19:22
sounds like a plan πŸ‘
thanks alot.

FileSystem Access Overview

Overview for common fs functionality

  • absolute, relative paths, content uris
  • path shortcuts /sdcard, /extsdcard, /internal, /external, ...
  • scoped storage
  • Save/Load* functions & location

Python Docs Overview

d_a_v_e β€” 19/08/2023 18:42
Here is some demo pthon code that I have been using for testing -

print('hello')

from enjine import app, ui
 
app.ShowPopup( 'Hello Python!' ) 

main = ui.addLayout( "main", "Linear", "Center", 1, 1 )
main.setChildMargins( 0, 0, 0, 0.1 )

apb = ui.addAppBar( main, "My App", "", 1 )

def btn1_onTouch(ev) :
    ui.showPopup( "button pressed" )

btn1 = ui.addButton( main, "Primary", "Contained,Primary" )
btn1.setOnTouch( btn1_onTouch )

txt = ui.addText( main, "" )

import calendar
yy = 2017
mm = 11
txt.text = calendar.month(yy, mm)

Samples Linkage

There is a new samples extension developed by Cemal. It needs to be integrated to the docs so that they can open the tab and specific samples.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.