From smudge.andy at googlemail.com Tue Aug 1 01:50:18 2017 From: smudge.andy at googlemail.com (AndyP) Date: Mon, 31 Jul 2017 22:50:18 -0700 (PDT) Subject: Mark in a kilt... In-Reply-To: References: Message-ID: <1501566618149-4717801.post@n4.nabble.com> What a great way to announce that LiveCode (and Scotland) have arrived. Super publicity move. ----- Andy Piddock My software never has bugs. It just develops random features. TinyIDE a Free alternative minimalist IDE Plugin for LiveCode TinyIDE Script editor Themer for LC http://2108.co.uk PointandSee is a FREE simple but full featured under cursor colour picker / finder. http://www.pointandsee.co.uk - made with LiveCode -- View this message in context: http://runtime-revolution.278305.n4.nabble.com/Mark-in-a-kilt-tp4717794p4717801.html Sent from the Revolution - User mailing list archive at Nabble.com. From richmondmathewson at gmail.com Tue Aug 1 02:53:00 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Tue, 1 Aug 2017 09:53:00 +0300 Subject: Mark in a kilt... In-Reply-To: <0635f89e-fa2a-b4d5-5e60-a2668b281bef@tweedly.net> References: <0635f89e-fa2a-b4d5-5e60-a2668b281bef@tweedly.net> Message-ID: <2aaf5a10-93b8-13a7-6eac-46b5ad96b750@gmail.com> Indeed: never could stand suits and ties. I salute Kevin and Mark for their adoption of kilts. Richmond. On 8/1/17 2:48 am, Alex Tweedly via use-livecode wrote: > Agreed. > I'd feel much less self-conscious wearing a kilt and shirt than I > would wearing a suit & tie :-) > > Alex. > > > On 01/08/2017 00:45, Jonathan Lynch via use-livecode wrote: >> Excellent! >> >> Sent from my iPhone >> >>> On Jul 31, 2017, at 6:44 PM, Colin Holgate via use-livecode >>> wrote: >>> >>> I bet Kevin and Mark didn?t feel at all self conscious: >>> >>> https://www.youtube.com/watch?v=ZBUR8U03B3U >>> >>> >>> >>> _______________________________________________ >>> use-livecode mailing list >>> use-livecode at lists.runrev.com >>> Please visit this url to subscribe, unsubscribe and manage your >>> subscription preferences: >>> http://lists.runrev.com/mailman/listinfo/use-livecode >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode > > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From monte at appisle.net Tue Aug 1 02:55:43 2017 From: monte at appisle.net (Monte Goulding) Date: Tue, 1 Aug 2017 16:55:43 +1000 Subject: "Cascading" Object-Behaviors In-Reply-To: References: <7DFBE93A-5AB3-4E4B-A824-DA7D11D9DDF5@appisle.net> <6709D57C-C887-42BE-915C-8AA0A240FE49@iotecdigital.com> <46340D6B-333E-445A-A3F1-C24E2775C519@appisle.net> Message-ID: > On 1 Aug 2017, at 7:00 am, Bob Sneidar via use-livecode wrote: > > OK got it. I take it this is supposed to be a script only stack? That is how I saved it. Yes it will generate a very simple UI when you open it Cheers Monte From richmondmathewson at gmail.com Tue Aug 1 04:25:04 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Tue, 1 Aug 2017 11:25:04 +0300 Subject: Release 8.1.6 In-Reply-To: References: Message-ID: Still making a "ham sandwich" of snapshot export: I have a group called "pp" right in the middle of a stack, but this: exportsnapshot from group"pp" toimg "Nova.png" as PNG give this: Message execution error: Error description: Chunk: no such object Not very good. Richmond. From klaus at major-k.de Tue Aug 1 04:39:53 2017 From: klaus at major-k.de (Klaus major-k) Date: Tue, 1 Aug 2017 10:39:53 +0200 Subject: Release 8.1.6 In-Reply-To: References: Message-ID: <01E9581F-29F5-48C9-92CD-7CB2E5671C1F@major-k.de> Hi Richmond, > Am 01.08.2017 um 10:25 schrieb Richmond Mathewson via use-livecode : > > Still making a "ham sandwich" of snapshot export: > I have a group called "pp" right in the middle of a stack, but this: > exportsnapshot from group"pp" toimg "Nova.png" as PNG > give this: > Message execution error: > Error description: Chunk: no such object > Not very good. after adding some SPACES, this line worked for me in LC 8.1.6 on macOS 10.12.6: ... export snapshot from group "pp" to img 2 as PNG ... Very good. :-) > Richmond. Best Klaus -- Klaus Major http://www.major-k.de klaus at major-k.de From richmondmathewson at gmail.com Tue Aug 1 04:55:08 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Tue, 1 Aug 2017 11:55:08 +0300 Subject: Release 8.1.6 In-Reply-To: <01E9581F-29F5-48C9-92CD-7CB2E5671C1F@major-k.de> References: <01E9581F-29F5-48C9-92CD-7CB2E5671C1F@major-k.de> Message-ID: <39ba0fa5-0c3c-f9eb-254b-0ac7fba5f93e@gmail.com> Mine had spaces, but the copy-paste from LC to Thunderbird . . . I DID find that in7.1.4 this did NOT work either: export snapshot from group "pp" to img "Nova.png" as PNG BUT this did: export snapshot from group "pp" to file "Nova.png" as PNG Richmond. On 8/1/17 11:39 am, Klaus major-k via use-livecode wrote: > Hi Richmond, > >> Am 01.08.2017 um 10:25 schrieb Richmond Mathewson via use-livecode : >> >> Still making a "ham sandwich" of snapshot export: >> I have a group called "pp" right in the middle of a stack, but this: >> exportsnapshot from group"pp" toimg "Nova.png" as PNG >> give this: >> Message execution error: >> Error description: Chunk: no such object >> Not very good. > after adding some SPACES, this line worked for me in LC 8.1.6 on macOS 10.12.6: > ... > export snapshot from group "pp" to img 2 as PNG > ... > Very good. :-) > >> Richmond. > Best > > Klaus > > -- > Klaus Major > http://www.major-k.de > klaus at major-k.de > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From hh at hyperhh.de Tue Aug 1 05:52:18 2017 From: hh at hyperhh.de (hh) Date: Tue, 1 Aug 2017 11:52:18 +0200 Subject: Release 8.1.6 Message-ID: if there is no img "Nova.png" then create img "Nova.png" A file is created by LiveCode if not existing, but NOT an image, it has to be created by you. From bobsneidar at iotecdigital.com Tue Aug 1 10:38:22 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Tue, 1 Aug 2017 14:38:22 +0000 Subject: Mark in a kilt... In-Reply-To: <2aaf5a10-93b8-13a7-6eac-46b5ad96b750@gmail.com> References: <0635f89e-fa2a-b4d5-5e60-a2668b281bef@tweedly.net> <2aaf5a10-93b8-13a7-6eac-46b5ad96b750@gmail.com> Message-ID: <6BA000CC-F2A0-454E-8DBF-2B81AFA184D1@iotecdigital.com> I used to play marching drums in a Scottish bagpipe band. We were good too. Won 1st place in the DC 4th of July parade once. We had excellent instructors. Bob S From smudge.andy at googlemail.com Tue Aug 1 11:30:51 2017 From: smudge.andy at googlemail.com (AndyP) Date: Tue, 1 Aug 2017 08:30:51 -0700 (PDT) Subject: "Cascading" Object-Behaviors In-Reply-To: References: <7DFBE93A-5AB3-4E4B-A824-DA7D11D9DDF5@appisle.net> <6709D57C-C887-42BE-915C-8AA0A240FE49@iotecdigital.com> <46340D6B-333E-445A-A3F1-C24E2775C519@appisle.net> Message-ID: <1501601451929-4717809.post@n4.nabble.com> Monte, great tool. thanks...saves a lot of time. ----- Andy Piddock My software never has bugs. It just develops random features. TinyIDE a Free alternative minimalist IDE Plugin for LiveCode TinyIDE Script editor Themer for LC http://2108.co.uk PointandSee is a FREE simple but full featured under cursor colour picker / finder. http://www.pointandsee.co.uk - made with LiveCode -- View this message in context: http://runtime-revolution.278305.n4.nabble.com/Cascading-Object-Behaviors-tp4717715p4717809.html Sent from the Revolution - User mailing list archive at Nabble.com. From andre at andregarzia.com Tue Aug 1 14:02:45 2017 From: andre at andregarzia.com (Andre Garzia) Date: Tue, 1 Aug 2017 15:02:45 -0300 Subject: revHTTP In-Reply-To: References: Message-ID: Hey Alex, I have multiple sources for it here. This is in the most recent location: https://www.dropbox.com/s/0636wl30z4btg1u/RevHTTP.zip?dl=0 Be aware that this httpd was never safe. It handles only one connection at a time. We can build better stuff these days. I haven't tested the new httpd library, I actually have a lot of difficulty in keeping up to date with the recent libraries in LC because the docs are spread in release notes. I wish there was a more comprehensive documentation effort going on. om om andre On Mon, Jul 31, 2017 at 4:22 PM, Alex Tweedly via use-livecode < use-livecode at lists.runrev.com> wrote: > Does anyone have a copy of (or a currently working link to) Andre's > revHTTP ? > > Thanks > > Alex > > P.S. I'm thinking of making a script-only stack that is a UI-free Simple > HTTP server - and then suggesting to Livecode Ltd that the HTML5 deployment > guide recommend it rather than the Python SimpleHTTPServer solution > currently suggested. Building this on top of Andre's core code would > probably mean I'd get a working version, without too many bugs, much more > quickly than if I do it myself. > > P.P.S and as a bonus, I'd then be able to add the bridge/relay function > easily, so I can download off-domain web pages for my little app :-) > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > -- http://www.andregarzia.com -- All We Do Is Code. http://fon.nu -- minimalist url shortening service. From dan at clearvisiontech.com Tue Aug 1 15:36:17 2017 From: dan at clearvisiontech.com (Dan Friedman) Date: Tue, 1 Aug 2017 19:36:17 +0000 Subject: OT: Hackintosh Message-ID: Greetings! Has anyone built their own Hackintosh computer? If so, have you had any trouble working with XCode, iTunes Connect, Apple Developer tools, getting apps approved, etc. I would like to build one (I?m not in love with Apple?s pre-built choices), but don?t want any hassles down the road. I wouldn?t put it past Apple to disallow an app if it wasn?t developed/built on an Apple Certified Mac. -Dan From roger.e.eller at sealedair.com Tue Aug 1 16:01:09 2017 From: roger.e.eller at sealedair.com (Roger Eller) Date: Tue, 1 Aug 2017 16:01:09 -0400 Subject: OT: Hackintosh In-Reply-To: References: Message-ID: I have only built one out of hobbyist curiosity, not for work. In use I cannot tell the difference, but I have not submitted any apps to the app store. I have built Android apps and loaded them onto my own devices without any problem. ~Roger On Tue, Aug 1, 2017 at 3:36 PM, Dan Friedman via use-livecode < use-livecode at lists.runrev.com> wrote: > Greetings! > > Has anyone built their own Hackintosh computer? If so, have you had any > trouble working with XCode, iTunes Connect, Apple Developer tools, getting > apps approved, etc. I would like to build one (I?m not in love with > Apple?s pre-built choices), but don?t want any hassles down the road. I > wouldn?t put it past Apple to disallow an app if it wasn?t developed/built > on an Apple Certified Mac. > > -Dan > > From beugelaar at solidit.nl Tue Aug 1 16:03:28 2017 From: beugelaar at solidit.nl (Erik Beugelaar) Date: Tue, 01 Aug 2017 22:03:28 +0200 Subject: Hackintosh In-Reply-To: References: Message-ID: <5F417068-1321-4E4B-8EA4-BED9449C58DA@solidit.nl> Hi Dan, I have built 6 years ago a Hackintosh computer based on a (nowadays) old Foxconn H55 MS motherboard with and (nowadays) old Intel i7 processor. Working on this desktop machine (12 GB RM, 512 GB SSD) is even now still a pleasure beside the fact that I own a real MacBook Pro i7 which I use when I am on the road. The machine is booting Windows 10 Pro, Mac OS X El Captain and Ubuntu flawless (although configuration the Clover Bootloader took me a little more time than expected). The good thing is that nowadays Mac OS X is free available. The only thing I would advise you when you start to build a Hackintosh is to go buy a motherboard from GigaByte (UEFI Bios) which is nowadays much closest to the specs of an iMac etc. For Wifi/Bluetooth compatibility buy an PCIe Broadcomm card (native Apple support). For video stay to NVDIA (http://www.macbreaker.com/2012/06/hackintosh-graphics-cards.html). Use Clover Bootloader for installation bootloader. A lot of information you can find on TonyMac which is one of the first pioneers: https://www.tonymacx86.com/ I have passed in the beginning all the failures and successes? so if you encounter any problems just contact me if you need help. Most important: Yes, LiveCode (all versions) have worked on this machine without any problems. Goodluck, Erik On 01/08/17 21:36, "use-livecode on behalf of Dan Friedman via use-livecode" wrote: Greetings! Has anyone built their own Hackintosh computer? If so, have you had any trouble working with XCode, iTunes Connect, Apple Developer tools, getting apps approved, etc. I would like to build one (I?m not in love with Apple?s pre-built choices), but don?t want any hassles down the road. I wouldn?t put it past Apple to disallow an app if it wasn?t developed/built on an Apple Certified Mac. -Dan _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode From skiplondon at gmail.com Tue Aug 1 16:10:58 2017 From: skiplondon at gmail.com (Skip Kimpel) Date: Tue, 1 Aug 2017 16:10:58 -0400 Subject: OT: Hackintosh In-Reply-To: References: Message-ID: I have built one and submitted apps with no problems. A pain to install but it is a possibility. Another option is MacInCloud (https://www.macincloud.com) I have used them before as well and then map a DropBox folder to my PC so I can transfer files back forth effortlessly. SKIP On Tue, Aug 1, 2017 at 4:01 PM, Roger Eller via use-livecode < use-livecode at lists.runrev.com> wrote: > I have only built one out of hobbyist curiosity, not for work. In use I > cannot tell the difference, but I have not submitted any apps to the app > store. I have built Android apps and loaded them onto my own devices > without any problem. > > ~Roger > > > On Tue, Aug 1, 2017 at 3:36 PM, Dan Friedman via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > Greetings! > > > > Has anyone built their own Hackintosh computer? If so, have you had any > > trouble working with XCode, iTunes Connect, Apple Developer tools, > getting > > apps approved, etc. I would like to build one (I?m not in love with > > Apple?s pre-built choices), but don?t want any hassles down the road. I > > wouldn?t put it past Apple to disallow an app if it wasn?t > developed/built > > on an Apple Certified Mac. > > > > -Dan > > > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From skiplondon at gmail.com Tue Aug 1 16:12:44 2017 From: skiplondon at gmail.com (Skip Kimpel) Date: Tue, 1 Aug 2017 16:12:44 -0400 Subject: Hackintosh In-Reply-To: <5F417068-1321-4E4B-8EA4-BED9449C58DA@solidit.nl> References: <5F417068-1321-4E4B-8EA4-BED9449C58DA@solidit.nl> Message-ID: By the way, I would go the route of a VM version of a hackitosh, not a hardware, build from scratch concept. SKIP On Tue, Aug 1, 2017 at 4:03 PM, Erik Beugelaar via use-livecode < use-livecode at lists.runrev.com> wrote: > Hi Dan, > > I have built 6 years ago a Hackintosh computer based on a (nowadays) old > Foxconn H55 MS motherboard with and (nowadays) old Intel i7 processor. > Working on this desktop machine (12 GB RM, 512 GB SSD) is even now still a > pleasure beside the fact that I own a real MacBook Pro i7 which I use when > I am on the road. The machine is booting Windows 10 Pro, Mac OS X El > Captain and Ubuntu flawless (although configuration the Clover Bootloader > took me a little more time than expected). > > The good thing is that nowadays Mac OS X is free available. The only thing > I would advise you when you start to build a Hackintosh is to go buy a > motherboard from GigaByte (UEFI Bios) which is nowadays much closest to the > specs of an iMac etc. For Wifi/Bluetooth compatibility buy an PCIe > Broadcomm card (native Apple support). > For video stay to NVDIA (http://www.macbreaker.com/ > 2012/06/hackintosh-graphics-cards.html). > Use Clover Bootloader for installation bootloader. > A lot of information you can find on TonyMac which is one of the first > pioneers: https://www.tonymacx86.com/ > I have passed in the beginning all the failures and successes? so if you > encounter any problems just contact me if you need help. > > Most important: Yes, LiveCode (all versions) have worked on this machine > without any problems. > > Goodluck, > Erik > > > > On 01/08/17 21:36, "use-livecode on behalf of Dan Friedman via > use-livecode" use-livecode at lists.runrev.com> wrote: > > Greetings! > > Has anyone built their own Hackintosh computer? If so, have you had > any trouble working with XCode, iTunes Connect, Apple Developer tools, > getting apps approved, etc. I would like to build one (I?m not in love > with Apple?s pre-built choices), but don?t want any hassles down the road. > I wouldn?t put it past Apple to disallow an app if it wasn?t > developed/built on an Apple Certified Mac. > > -Dan > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From beugelaar at solidit.nl Tue Aug 1 16:17:41 2017 From: beugelaar at solidit.nl (Erik Beugelaar) Date: Tue, 01 Aug 2017 22:17:41 +0200 Subject: Hackintosh In-Reply-To: References: <5F417068-1321-4E4B-8EA4-BED9449C58DA@solidit.nl> Message-ID: I agree with Skip, no hardware issues. There are many clean pre-built versions of Mac OS X (Yosemite+) available on the net to use with VMWare or Virtual Box. Regards, Erik On 01/08/17 22:13, "use-livecode on behalf of Skip Kimpel via use-livecode" wrote: By the way, I would go the route of a VM version of a hackitosh, not a hardware, build from scratch concept. SKIP On Tue, Aug 1, 2017 at 4:03 PM, Erik Beugelaar via use-livecode < use-livecode at lists.runrev.com> wrote: > Hi Dan, > > I have built 6 years ago a Hackintosh computer based on a (nowadays) old > Foxconn H55 MS motherboard with and (nowadays) old Intel i7 processor. > Working on this desktop machine (12 GB RM, 512 GB SSD) is even now still a > pleasure beside the fact that I own a real MacBook Pro i7 which I use when > I am on the road. The machine is booting Windows 10 Pro, Mac OS X El > Captain and Ubuntu flawless (although configuration the Clover Bootloader > took me a little more time than expected). > > The good thing is that nowadays Mac OS X is free available. The only thing > I would advise you when you start to build a Hackintosh is to go buy a > motherboard from GigaByte (UEFI Bios) which is nowadays much closest to the > specs of an iMac etc. For Wifi/Bluetooth compatibility buy an PCIe > Broadcomm card (native Apple support). > For video stay to NVDIA (http://www.macbreaker.com/ > 2012/06/hackintosh-graphics-cards.html). > Use Clover Bootloader for installation bootloader. > A lot of information you can find on TonyMac which is one of the first > pioneers: https://www.tonymacx86.com/ > I have passed in the beginning all the failures and successes? so if you > encounter any problems just contact me if you need help. > > Most important: Yes, LiveCode (all versions) have worked on this machine > without any problems. > > Goodluck, > Erik > > > > On 01/08/17 21:36, "use-livecode on behalf of Dan Friedman via > use-livecode" use-livecode at lists.runrev.com> wrote: > > Greetings! > > Has anyone built their own Hackintosh computer? If so, have you had > any trouble working with XCode, iTunes Connect, Apple Developer tools, > getting apps approved, etc. I would like to build one (I?m not in love > with Apple?s pre-built choices), but don?t want any hassles down the road. > I wouldn?t put it past Apple to disallow an app if it wasn?t > developed/built on an Apple Certified Mac. > > -Dan > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode From monte at appisle.net Tue Aug 1 16:18:06 2017 From: monte at appisle.net (Monte Goulding) Date: Wed, 2 Aug 2017 06:18:06 +1000 Subject: revHTTP In-Reply-To: References: Message-ID: > On 2 Aug 2017, at 4:02 am, Andre Garzia via use-livecode wrote: > > I wish there was a more comprehensive documentation effort going on. Hi Andre Can you give a little more detail on your complaint here. All our new libraries are documented with lcdoc block comments which are extracted during the build and appear in the documentation. At the moment you need to choose the extension you are interested in as they don?t appear in the LiveCode Script api but in the future we will change this so all things available from LiveCode script are in the LiveCode Script API section. Cheers Monte From alex at tweedly.net Tue Aug 1 16:19:10 2017 From: alex at tweedly.net (Alex Tweedly) Date: Tue, 1 Aug 2017 21:19:10 +0100 Subject: revHTTP In-Reply-To: References: Message-ID: <5574a251-155c-bbba-262b-9a3dbf219e73@tweedly.net> Thanks Andre. I hadn't even known there was a new httpd library; now that I do know about it, I'm pretty sure that's the best place to start (indeed, the comments in the library include enough of a 'how to use' sample that you can just copy/paste, fix up a couple of typos and have a working very simple server). I'm pretty sure that'll give me what I want - and I'm now just playing with adding a couple of mini features to it. Thanks Alex. On 01/08/2017 19:02, Andre Garzia wrote: > Hey Alex, > > I have multiple sources for it here. This is in the most recent location: > > https://www.dropbox.com/s/0636wl30z4btg1u/RevHTTP.zip?dl=0 > > Be aware that this httpd was never safe. It handles only one > connection at a time. We can build better stuff these days. I haven't > tested the new httpd library, I actually have a lot of difficulty in > keeping up to date with the recent libraries in LC because the docs > are spread in release notes. I wish there was a more comprehensive > documentation effort going on. > > om om > andre > > On Mon, Jul 31, 2017 at 4:22 PM, Alex Tweedly via use-livecode > > > wrote: > > Does anyone have a copy of (or a currently working link to) > Andre's revHTTP ? > > Thanks > > Alex > > P.S. I'm thinking of making a script-only stack that is a UI-free > Simple HTTP server - and then suggesting to Livecode Ltd that the > HTML5 deployment guide recommend it rather than the Python > SimpleHTTPServer solution currently suggested. Building this on > top of Andre's core code would probably mean I'd get a working > version, without too many bugs, much more quickly than if I do it > myself. > > P.P.S and as a bonus, I'd then be able to add the bridge/relay > function easily, so I can download off-domain web pages for my > little app :-) > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > > > > > > -- > http://www.andregarzia.com -- All We Do Is Code. > http://fon.nu -- minimalist url shortening service. From alex at tweedly.net Tue Aug 1 16:29:18 2017 From: alex at tweedly.net (Alex Tweedly) Date: Tue, 1 Aug 2017 21:29:18 +0100 Subject: revHTTP In-Reply-To: References: Message-ID: <38442c64-bd25-8784-b772-9905038d03ce@tweedly.net> I have to admit, I had the same complaint as Andre - I didn't see anything about it in the dictionary. OK, now that I've looked harder, I see them :-) But I had no idea there was library documentation within the "API" drop-down. Brings up another question - I see there's a 'getopt' library for parsing command line arguments, but I can't find a way to run with command line arguments. I thought it was, in my case, /Livecode-Indy -u myscript.lc but that simply says "Startup error - cannot run in command line mode" Is there some other new way to do this ? -- Alex. On 01/08/2017 21:18, Monte Goulding via use-livecode wrote: >> On 2 Aug 2017, at 4:02 am, Andre Garzia via use-livecode wrote: >> >> I wish there was a more comprehensive documentation effort going on. > Hi Andre > > Can you give a little more detail on your complaint here. All our new libraries are documented with lcdoc block comments which are extracted during the build and appear in the documentation. At the moment you need to choose the extension you are interested in as they don?t appear in the LiveCode Script api but in the future we will change this so all things available from LiveCode script are in the LiveCode Script API section. > > Cheers > > Monte > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From alex at tweedly.net Tue Aug 1 16:33:22 2017 From: alex at tweedly.net (Alex Tweedly) Date: Tue, 1 Aug 2017 21:33:22 +0100 Subject: revHTTP In-Reply-To: References: Message-ID: <3aca354c-f646-4b47-1c73-1707ad8acf18@tweedly.net> On 31/07/2017 21:18, Monte Goulding via use-livecode wrote: > Hi Alex > > You could use the new httpd library that is already included in LiveCode 9 for this. Indeed this is what it was created for. We build a standalone with all our tests and serve it with the library. Yep - found it, and now playing with it. As I said in the other email, I couldn't find the docs, but simply ticking "Show IDE Stacks in Lists" and then using the project browser got me there. I love Livecode - there's always another way :-) > What would be ideal is to create a deploy library similar to the the iOS and Android ones. That way the Test button would build and launch the standalone in your browser. > That would be useful - but it's not what I have in mind. I'll describe what I'm trying to do in a separate rant .... Thanks - and thanks for all the help, Monte, Richard, Matthias. -- Alex. From alex at tweedly.net Tue Aug 1 17:16:36 2017 From: alex at tweedly.net (Alex Tweedly) Date: Tue, 1 Aug 2017 22:16:36 +0100 Subject: httpd library and missed opportunity. Message-ID: [ started a new thread, so I can't rant without tainting the other thread ] I started out on the 'find a rev/livecode solution for a simple HTTP server" for one small reason : the LC 9.0 Dictionary Guide, under "HTML5 Deployment" says > Testing your HTML5 app with a local web server > Some browsers, such as Google Chrome, do not permit pages to download > resources from file:// URLs. You won't be able to test your > application in these browsers unless you run a local HTTP server. > > A quick and easy way to run a simple local HTTP server is to use > Python. Open a terminal window, change directory to your standalone's > directory, and run: > > python -m SimpleHTTPServer 8080 > This will let you access your standalone by opening your web browser > and visiting http://localhost:8080. > What ? IMO, this is just plain "wrong". This is like going into the BMW dealership and being told "Yeah, you'll love the way the new Z4 drives. Just get into this Mercedes sports car here and we'll take you over to the racetrack to watch someone else drive one." Why are we suggesting that users use another (OK, a "competing") scripting language to test HTML5 deployment ? Livecode is perfectly able to run a simple HTTP server. It is perfectly possible and not too hard to write a basic one. In fact, we now even have an included library that makes it trivial to write that very basic server. Why didn't we (i.e. Livecode - a careful use of the word "we") just package up that simple server, and then include that, with suitable instructions. That would have avoided any implication that LC is any less capable than other scripting languages, and avoided reminding anyone that LC doesn't (yet) come packaged with all the libraries and therefore utilities that you could hope for. So - I'm hoping to write a basic version (including my "get around the same-domain limitation") and get it, or something like it, included in the LC distribution, so that the documentation has no need to recommend another language. Alex. From jacque at hyperactivesw.com Tue Aug 1 17:38:13 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Tue, 1 Aug 2017 16:38:13 -0500 Subject: httpd library and missed opportunity. In-Reply-To: References: Message-ID: <60150609-7eaf-0715-510b-3d002c8ff712@hyperactivesw.com> My first reaction was: I bet LC didn't have enough spare time and people. My second reaction was: Well, it's open source, after all. My third reaction was: Good for you, Alex! Bravo! On 8/1/17 4:16 PM, Alex Tweedly via use-livecode wrote: > [ started a new thread, so I can't rant without tainting the other thread ] > > I started out on the 'find a rev/livecode solution for a simple HTTP > server" for one small reason : > > the LC 9.0 Dictionary Guide, under "HTML5 Deployment" says > >> Testing your HTML5 app with a local web server >> Some browsers, such as Google Chrome, do not permit pages to download >> resources from file:// URLs. You won't be able to test your >> application in these browsers unless you run a local HTTP server. >> >> A quick and easy way to run a simple local HTTP server is to use >> Python. Open a terminal window, change directory to your standalone's >> directory, and run: >> >> python -m SimpleHTTPServer 8080 >> This will let you access your standalone by opening your web browser >> and visiting http://localhost:8080. >> > What ? IMO, this is just plain "wrong". > > This is like going into the BMW dealership and being told "Yeah, you'll > love the way the new Z4 drives. Just get into this Mercedes sports car > here and we'll take you over to the racetrack to watch someone else > drive one." > > Why are we suggesting that users use another (OK, a "competing") > scripting language to test HTML5 deployment ? > > Livecode is perfectly able to run a simple HTTP server. It is perfectly > possible and not too hard to write a basic one. In fact, we now even > have an included library that makes it trivial to write that very basic > server. > > Why didn't we (i.e. Livecode - a careful use of the word "we") just > package up that simple server, and then include that, with suitable > instructions. > > That would have avoided any implication that LC is any less capable than > other scripting languages, and avoided reminding anyone that LC doesn't > (yet) come packaged with all the libraries and therefore utilities that > you could hope for. > > > So - I'm hoping to write a basic version (including my "get around the > same-domain limitation") and get it, or something like it, included in > the LC distribution, so that the documentation has no need to recommend > another language. > > > > Alex. > > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com From andre at andregarzia.com Tue Aug 1 18:18:42 2017 From: andre at andregarzia.com (Andre Garzia) Date: Tue, 1 Aug 2017 19:18:42 -0300 Subject: httpd library and missed opportunity. In-Reply-To: References: Message-ID: Alex, Python is kinda tricky to bundle. If you're looking into writing an extension, then these might be useful: * Libmicrohttpd - from GNU project, embedable httpd in C: https://www.gnu.org/software/libmicrohttpd/ Implementing httpd is not hard, it could be done quite easily. On Tue, Aug 1, 2017 at 6:16 PM, Alex Tweedly via use-livecode < use-livecode at lists.runrev.com> wrote: > [ started a new thread, so I can't rant without tainting the other thread ] > > I started out on the 'find a rev/livecode solution for a simple HTTP > server" for one small reason : > > the LC 9.0 Dictionary Guide, under "HTML5 Deployment" says > > Testing your HTML5 app with a local web server >> Some browsers, such as Google Chrome, do not permit pages to download >> resources from file:// URLs. You won't be able to test your application in >> these browsers unless you run a local HTTP server. >> >> A quick and easy way to run a simple local HTTP server is to use Python. >> Open a terminal window, change directory to your standalone's directory, >> and run: >> >> python -m SimpleHTTPServer 8080 >> This will let you access your standalone by opening your web browser and >> visiting http://localhost:8080. >> >> What ? IMO, this is just plain "wrong". > > This is like going into the BMW dealership and being told "Yeah, you'll > love the way the new Z4 drives. Just get into this Mercedes sports car here > and we'll take you over to the racetrack to watch someone else drive one." > > Why are we suggesting that users use another (OK, a "competing") scripting > language to test HTML5 deployment ? > > Livecode is perfectly able to run a simple HTTP server. It is perfectly > possible and not too hard to write a basic one. In fact, we now even have > an included library that makes it trivial to write that very basic server. > > Why didn't we (i.e. Livecode - a careful use of the word "we") just > package up that simple server, and then include that, with suitable > instructions. > > That would have avoided any implication that LC is any less capable than > other scripting languages, and avoided reminding anyone that LC doesn't > (yet) come packaged with all the libraries and therefore utilities that you > could hope for. > > > So - I'm hoping to write a basic version (including my "get around the > same-domain limitation") and get it, or something like it, included in the > LC distribution, so that the documentation has no need to recommend another > language. > > > > Alex. > > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > -- http://www.andregarzia.com -- All We Do Is Code. http://fon.nu -- minimalist url shortening service. From kaveh at rivervalleytechnologies.com Tue Aug 1 18:21:13 2017 From: kaveh at rivervalleytechnologies.com (Kaveh Bazargan) Date: Tue, 1 Aug 2017 23:21:13 +0100 Subject: Can't use double finger scroll on mac for grouped controls Message-ID: Using LiveCode 9 on Mac OSX I have some controls that are grouped and the group has been made smaller, so have a vertical scroll bar ? very nice feature. On one stack I can use two finger scroll on mac trackpad, but on another I can't. But mouse on scroll bar works ok. I have checked and all settings are the same. Is there a particular setting that allows two finger scrolling? -- Kaveh Bazargan Director River Valley Technologies @kaveh1000 +44 7771 824 111 www.rivervalleytechnologies.com From andre at andregarzia.com Tue Aug 1 18:48:55 2017 From: andre at andregarzia.com (Andre Garzia) Date: Tue, 1 Aug 2017 19:48:55 -0300 Subject: revHTTP In-Reply-To: References: Message-ID: Hey Monte, Yes, I can give more details, I am not talking about library documentation as it is generated by lcdoc but the overall state of the documentation. The main issue for me is a UX one. The built-in LC dictionary UI is not good. For example, on my Surface 4 Pro, I can't change the little dropdown to select the httpd API as the popup list is larger than my screen and does not scroll with the trackpad. That is just an example, a simple list of opportunities for enhancement would be: * Provide sample stacks for all LC dictionary entries (multiple entries can share the same sample but no entry can be without at least one sample). The sample stacks need to be something that the person can click and run. * A better wiki or comment system. * Libraries need to be more discoverable. Right now we have documentation spread all over the place. There are things in release notes, things in emails, stuff in the dictionary, stuff only on the website, and finding things is quite hard. The navigation is challenging, for example, searching httpd on the website yields nothing. I had to go to github and look for the source. om om andre On Tue, Aug 1, 2017 at 5:18 PM, Monte Goulding via use-livecode < use-livecode at lists.runrev.com> wrote: > > > On 2 Aug 2017, at 4:02 am, Andre Garzia via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > > I wish there was a more comprehensive documentation effort going on. > > Hi Andre > > Can you give a little more detail on your complaint here. All our new > libraries are documented with lcdoc block comments which are extracted > during the build and appear in the documentation. At the moment you need to > choose the extension you are interested in as they don?t appear in the > LiveCode Script api but in the future we will change this so all things > available from LiveCode script are in the LiveCode Script API section. > > Cheers > > Monte > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > -- http://www.andregarzia.com -- All We Do Is Code. http://fon.nu -- minimalist url shortening service. From andre at andregarzia.com Tue Aug 1 18:57:45 2017 From: andre at andregarzia.com (Andre Garzia) Date: Tue, 1 Aug 2017 19:57:45 -0300 Subject: revHTTP In-Reply-To: <3aca354c-f646-4b47-1c73-1707ad8acf18@tweedly.net> References: <3aca354c-f646-4b47-1c73-1707ad8acf18@tweedly.net> Message-ID: Friends, I just looked at the source code for the new httpd library, it is quite similar in "what it is doing" to mchttpd and my own revhttpd. Basically both of them use LC to accept and process requests. I had the impression that the new library was using some C/C++ based implementation. The implementation Monte made is very minimalist and elegant. It is easy to follow and can even serve as a base for more ambitious projects. It suffers from the same problems as mchttpd and revhttpd though which is, it can't handle any form of concurrency. If your callback handler blocks, there is a great chance that any other requests will be discarded (unless LC is actually buffering and queueing them which would be awesome and also solve the same issue on the other implementations). om om andre On Tue, Aug 1, 2017 at 5:33 PM, Alex Tweedly via use-livecode < use-livecode at lists.runrev.com> wrote: > On 31/07/2017 21:18, Monte Goulding via use-livecode wrote: > > Hi Alex >> >> You could use the new httpd library that is already included in LiveCode >> 9 for this. Indeed this is what it was created for. We build a standalone >> with all our tests and serve it with the library. >> > Yep - found it, and now playing with it. As I said in the other email, I > couldn't find the docs, but simply ticking "Show IDE Stacks in Lists" and > then using the project browser got me there. I love Livecode - there's > always another way :-) > >> What would be ideal is to create a deploy library similar to the the >> iOS and Android ones. That way the Test button would build and launch the >> standalone in your browser. >> >> That would be useful - but it's not what I have in mind. > > I'll describe what I'm trying to do in a separate rant .... > > Thanks - and thanks for all the help, Monte, Richard, Matthias. > -- Alex. > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > -- http://www.andregarzia.com -- All We Do Is Code. http://fon.nu -- minimalist url shortening service. From ahsoftware at sonic.net Tue Aug 1 19:00:52 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Tue, 1 Aug 2017 16:00:52 -0700 Subject: revHTTP In-Reply-To: References: Message-ID: On 08/01/2017 03:48 PM, Andre Garzia via use-livecode wrote: > Right now we have documentation spread all over the place. There are things > in release notes, things in emails, stuff in the dictionary, stuff only on > the website, and finding things is quite hard. The navigation is > challenging, for example, searching httpd on the website yields nothing. I > had to go to github and look for the source. +1 -- Mark Wieder ahsoftware at gmail.com From jacque at hyperactivesw.com Tue Aug 1 19:03:13 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Tue, 1 Aug 2017 18:03:13 -0500 Subject: revHTTP In-Reply-To: References: Message-ID: On 8/1/17 5:48 PM, Andre Garzia via use-livecode wrote: > Right now we have documentation spread all over the place. There are things > in release notes, things in emails, stuff in the dictionary, stuff only on > the website, and finding things is quite hard. I read the release notes with every new version, but what happens to me often is that I'll find something new I'm interested in but later I can't remember what it's called. By the time I need to use it, I've forgotten what I need to look up in the dictionary. It's hard to locate a feature if you can't remember even a part of the name. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com From andre at andregarzia.com Tue Aug 1 19:22:42 2017 From: andre at andregarzia.com (Andre Garzia) Date: Tue, 1 Aug 2017 20:22:42 -0300 Subject: revHTTP In-Reply-To: References: Message-ID: Thats how I feel too :-) Em 1 de ago de 2017 20:04, "J. Landman Gay via use-livecode" < use-livecode at lists.runrev.com> escreveu: > On 8/1/17 5:48 PM, Andre Garzia via use-livecode wrote: > >> Right now we have documentation spread all over the place. There are >> things >> in release notes, things in emails, stuff in the dictionary, stuff only on >> the website, and finding things is quite hard. >> > > I read the release notes with every new version, but what happens to me > often is that I'll find something new I'm interested in but later I can't > remember what it's called. By the time I need to use it, I've forgotten > what I need to look up in the dictionary. It's hard to locate a feature if > you can't remember even a part of the name. > > -- > Jacqueline Landman Gay | jacque at hyperactivesw.com > HyperActive Software | http://www.hyperactivesw.com > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From bobsneidar at iotecdigital.com Tue Aug 1 19:27:43 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Tue, 1 Aug 2017 23:27:43 +0000 Subject: OT: Hackintosh In-Reply-To: References: Message-ID: <49F06A35-C4F4-4182-85C6-304CC1B5227F@iotecdigital.com> I tried once. The problem is getting a graphics card to work correctly if you are thinking about gaming. There are all kinds of hacks to get it to work, but the bottom line is it can be iffy, and the next OS X update might break it. Bob S > On Aug 1, 2017, at 12:36 , Dan Friedman via use-livecode wrote: > > Greetings! > > Has anyone built their own Hackintosh computer? From monte at appisle.net Tue Aug 1 19:28:22 2017 From: monte at appisle.net (Monte Goulding) Date: Wed, 2 Aug 2017 09:28:22 +1000 Subject: revHTTP In-Reply-To: References: <3aca354c-f646-4b47-1c73-1707ad8acf18@tweedly.net> Message-ID: <6FF0AA58-E064-4466-A7A8-A8684EC8A46D@appisle.net> > On 2 Aug 2017, at 8:57 am, Andre Garzia via use-livecode wrote: > > I just looked at the source code for the new httpd library, it is quite > similar in "what it is doing" to mchttpd and my own revhttpd. Basically > both of them use LC to accept and process requests. I had the impression > that the new library was using some C/C++ based implementation. > > The implementation Monte made is very minimalist and elegant. It is easy to > follow and can even serve as a base for more ambitious projects. It suffers > from the same problems as mchttpd and revhttpd though which is, it can't > handle any form of concurrency. If your callback handler blocks, there is a > great chance that any other requests will be discarded (unless LC is > actually buffering and queueing them which would be awesome and also solve > the same issue on the other implementations). It is only really intended to be a simple implementation to use to serve something on localhost. As I mentioned previously it was only implemented for serving a HTML5 standalone in one of our test tools but generalised into a library for reuse for a number of things (HTML5 deploy library & FileMaker plugin web view, users serving things like reports in a local browser). I would not use it on a public webserver although it probably could handle some low traffic. It has not had any load testing done on it but I?m really not sure why it would drop requests unless the client has a very short timeout or each request takes a long time to handle. Of course if there?s a thousand requests coming in a second or something you?re on your own ;-) Cheers Monte From brian at milby7.com Tue Aug 1 19:50:04 2017 From: brian at milby7.com (Brian Milby) Date: Tue, 1 Aug 2017 18:50:04 -0500 Subject: httpd library and missed opportunity. In-Reply-To: References: Message-ID: I'd like to think that by the time LC 9 leaves DP status that this will be possible. There is already a library included in DP 8 to handle httpd requests. On Tue, Aug 1, 2017 at 5:18 PM, Andre Garzia via use-livecode < use-livecode at lists.runrev.com> wrote: > Alex, > > Python is kinda tricky to bundle. If you're looking into writing an > extension, then these might be useful: > > * Libmicrohttpd - from GNU project, embedable httpd in C: > https://www.gnu.org/software/libmicrohttpd/ > > Implementing httpd is not hard, it could be done quite easily. > > On Tue, Aug 1, 2017 at 6:16 PM, Alex Tweedly via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > [ started a new thread, so I can't rant without tainting the other > thread ] > > > > I started out on the 'find a rev/livecode solution for a simple HTTP > > server" for one small reason : > > > > the LC 9.0 Dictionary Guide, under "HTML5 Deployment" says > > > > Testing your HTML5 app with a local web server > >> Some browsers, such as Google Chrome, do not permit pages to download > >> resources from file:// URLs. You won't be able to test your application > in > >> these browsers unless you run a local HTTP server. > >> > >> A quick and easy way to run a simple local HTTP server is to use Python. > >> Open a terminal window, change directory to your standalone's directory, > >> and run: > >> > >> python -m SimpleHTTPServer 8080 > >> This will let you access your standalone by opening your web browser and > >> visiting http://localhost:8080. > >> > >> What ? IMO, this is just plain "wrong". > > > > This is like going into the BMW dealership and being told "Yeah, you'll > > love the way the new Z4 drives. Just get into this Mercedes sports car > here > > and we'll take you over to the racetrack to watch someone else drive > one." > > > > Why are we suggesting that users use another (OK, a "competing") > scripting > > language to test HTML5 deployment ? > > > > Livecode is perfectly able to run a simple HTTP server. It is perfectly > > possible and not too hard to write a basic one. In fact, we now even have > > an included library that makes it trivial to write that very basic > server. > > > > Why didn't we (i.e. Livecode - a careful use of the word "we") just > > package up that simple server, and then include that, with suitable > > instructions. > > > > That would have avoided any implication that LC is any less capable than > > other scripting languages, and avoided reminding anyone that LC doesn't > > (yet) come packaged with all the libraries and therefore utilities that > you > > could hope for. > > > > > > So - I'm hoping to write a basic version (including my "get around the > > same-domain limitation") and get it, or something like it, included in > the > > LC distribution, so that the documentation has no need to recommend > another > > language. > > > > > > > > Alex. > > > > > > > > _______________________________________________ > > use-livecode mailing list > > use-livecode at lists.runrev.com > > Please visit this url to subscribe, unsubscribe and manage your > > subscription preferences: > > http://lists.runrev.com/mailman/listinfo/use-livecode > > > > > > -- > http://www.andregarzia.com -- All We Do Is Code. > http://fon.nu -- minimalist url shortening service. > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From monte at appisle.net Tue Aug 1 20:02:38 2017 From: monte at appisle.net (Monte Goulding) Date: Wed, 2 Aug 2017 10:02:38 +1000 Subject: revHTTP In-Reply-To: References: Message-ID: Thanks for your thoughts Andre > On 2 Aug 2017, at 8:48 am, Andre Garzia wrote: > > Yes, I can give more details, I am not talking about library documentation as it is generated by lcdoc but the overall state of the documentation. The main issue for me is a UX one. The built-in LC dictionary UI is not good. For example, on my Surface 4 Pro, I can't change the little dropdown to select the httpd API as the popup list is larger than my screen and does not scroll with the trackpad. Yes, we know this is not right. Plans are afoot to merge all the extension APIs into the LiveCode script one which will solve the problem above. > That is just an example, a simple list of opportunities for enhancement would be: > > * Provide sample stacks for all LC dictionary entries (multiple entries can share the same sample but no entry can be without at least one sample). The sample stacks need to be something that the person can click and run. Yes we need some kind of related resources thing where we can setup two way links between in a lesson, example stack or interactive tutorial. I?ve opened a report here http://quality.livecode.com/show_bug.cgi?id=20215 My suggestion is the tags be expanded to all resources rather than just api so it?s easy to setup a blob of resources about a thing. > * A better wiki or comment system. We are encouraging people that have something to contribute to do so directly to the document as that way it both gets reviewed and more visibility. I know this presents a bit of a hurdle for some potential contributors but it also means there isn?t yet another place for good information to get lost in. > * Libraries need to be more discoverable. Indeed (mentioned above) > > Right now we have documentation spread all over the place. There are things in release notes, things in emails, stuff in the dictionary, stuff only on the website, and finding things is quite hard. The navigation is challenging, for example, searching httpd on the website yields nothing. I had to go to github and look for the source. In the past it was possible for stuff to be in the release notes but not documented in the dictionary but that shouldn?t be the case with anything new and anything that is not in the API please open a report on. We know we need to do better with the docs, however, there are a *lot* of them so community contributions really do need to be a big part of getting them right. Adding tags is a good place to start. Cheers Monte From brian at milby7.com Tue Aug 1 20:09:26 2017 From: brian at milby7.com (Brian Milby) Date: Tue, 1 Aug 2017 19:09:26 -0500 Subject: revHTTP In-Reply-To: References: Message-ID: Hopefully the UX in DP9 will improve this issue. The drop-down menu for APIs will scroll if taller than the window height. On Tue, Aug 1, 2017 at 5:48 PM, Andre Garzia via use-livecode < use-livecode at lists.runrev.com> wrote: > Hey Monte, > > The built-in LC dictionary UI is not good. > For example, on my Surface 4 Pro, I can't change the little dropdown to > select the httpd API as the popup list is larger than my screen and does > not scroll with the trackpad. From monte at appisle.net Tue Aug 1 20:13:45 2017 From: monte at appisle.net (Monte Goulding) Date: Wed, 2 Aug 2017 10:13:45 +1000 Subject: httpd library and missed opportunity. In-Reply-To: References: Message-ID: <69845EF8-87F3-4182-BB88-6BB899D13E34@appisle.net> > On 2 Aug 2017, at 7:16 am, Alex Tweedly via use-livecode wrote: > >> python -m SimpleHTTPServer 8080 >> This will let you access your standalone by opening your web browser and visiting http://localhost:8080 . >> > What ? IMO, this is just plain "wrong". I think there?s a couple of things here. The scope of the original HTML5 implementation did not include writing a HTTP server in LCS. It was before my time at the company but I believe a significant proportion of the project was Peter?s first thing he did in LC and he probably wasn?t aware of the fact there?s a few HTTPd implementations around the community. Anyway, now that we have one included in the IDE we definitely want to implement a deploy library so that you just need to click the Test button and it will pop up in your browser. Bonus points for being able to add extra browsers so you can choose a target. I create a report about this a while back http://quality.livecode.com/show_bug.cgi?id=19909 Anyway, this could either be contributed by someone in the community or done in house when we get a chance. Cheers Monte From monte at appisle.net Tue Aug 1 20:35:08 2017 From: monte at appisle.net (Monte Goulding) Date: Wed, 2 Aug 2017 10:35:08 +1000 Subject: Can't use double finger scroll on mac for grouped controls In-Reply-To: References: Message-ID: <89B45966-2DC0-438C-B27F-865868F9D739@appisle.net> This is something you need to script for groups. Something like this: on rawKeyDown pKeyCode if pKeyCode is 65308 then get the scroll of me add 10 to it set the scroll of me to it else if pKeyCode is 65309 then get the scroll of me subtract 10 from it set the scroll of me to it end if end rawKeyDown > On 2 Aug 2017, at 8:21 am, Kaveh Bazargan via use-livecode wrote: > > Using LiveCode 9 on Mac OSX > > I have some controls that are grouped and the group has been made smaller, > so have a vertical scroll bar ? very nice feature. > > On one stack I can use two finger scroll on mac trackpad, but on another I > can't. But mouse on scroll bar works ok. > > I have checked and all settings are the same. Is there a particular setting > that allows two finger scrolling? > > -- > Kaveh Bazargan > Director > River Valley Technologies > @kaveh1000 > +44 7771 824 111 > www.rivervalleytechnologies.com > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From alex at tweedly.net Tue Aug 1 20:36:52 2017 From: alex at tweedly.net (Alex Tweedly) Date: Wed, 2 Aug 2017 01:36:52 +0100 Subject: httpd library and missed opportunity. In-Reply-To: <69845EF8-87F3-4182-BB88-6BB899D13E34@appisle.net> References: <69845EF8-87F3-4182-BB88-6BB899D13E34@appisle.net> Message-ID: <279d983b-103c-d199-8830-28479457fa79@tweedly.net> The 'test' button is handy - but it's not the only way. In fact, I rarely use it - I build my standalones, then try it out on 2 or 3 platforms (OK, this may be very untypical, because I am just starting to play with mobile and html5 ... but I suspect it will continue to be a viable work-flow - if only because of frequent interruptions, etc.) So I would hope to be able to run the server, and then make multiple tests with a single standalone. You said "[HTTPd library] ... now that we have one included in the IDE we ...". So is it the intention that this library is only available in the IDE, and won't be available for inclusion in a standalone, or for use from LCServer ? (I can't see it in the list of inclusions in the SB, unlike diff, getopt, etc. - though that list is getting long enough that scrolling through it to see if something is there or not is becoming inexact). Alex. On 02/08/2017 01:13, Monte Goulding via use-livecode wrote: >> On 2 Aug 2017, at 7:16 am, Alex Tweedly via use-livecode wrote: >> >>> python -m SimpleHTTPServer 8080 >>> This will let you access your standalone by opening your web browser and visiting http://localhost:8080 . >>> >> What ? IMO, this is just plain "wrong". > I think there?s a couple of things here. The scope of the original HTML5 implementation did not include writing a HTTP server in LCS. It was before my time at the company but I believe a significant proportion of the project was Peter?s first thing he did in LC and he probably wasn?t aware of the fact there?s a few HTTPd implementations around the community. Anyway, now that we have one included in the IDE we definitely want to implement a deploy library so that you just need to click the Test button and it will pop up in your browser. Bonus points for being able to add extra browsers so you can choose a target. > > I create a report about this a while back http://quality.livecode.com/show_bug.cgi?id=19909 > > Anyway, this could either be contributed by someone in the community or done in house when we get a chance. > > Cheers > > Monte > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From monte at appisle.net Tue Aug 1 20:42:50 2017 From: monte at appisle.net (Monte Goulding) Date: Wed, 2 Aug 2017 10:42:50 +1000 Subject: httpd library and missed opportunity. In-Reply-To: <279d983b-103c-d199-8830-28479457fa79@tweedly.net> References: <69845EF8-87F3-4182-BB88-6BB899D13E34@appisle.net> <279d983b-103c-d199-8830-28479457fa79@tweedly.net> Message-ID: > On 2 Aug 2017, at 10:36 am, Alex Tweedly via use-livecode wrote: > > The 'test' button is handy - but it's not the only way. > In fact, I rarely use it - I build my standalones, then try it out on 2 or 3 platforms (OK, this may be very untypical, because I am just starting to play with mobile and html5 ... but I suspect it will continue to be a viable work-flow - if only because of frequent interruptions, etc.) So I would hope to be able to run the server, and then make multiple tests with a single standalone. Hmm? Well click the Test button and then from your other platform enter the IP of the machine with the IDE. Should work fine. > You said "[HTTPd library] ... now that we have one included in the IDE we ...". So is it the intention that this library is only available in the IDE, and won't be available for inclusion in a standalone, or for use from LCServer ? (I can't see it in the list of inclusions in the SB, unlike diff, getopt, etc. - though that list is getting long enough that scrolling through it to see if something is there or not is becoming inexact). It should be in the list in dp-9. Cheers Monte From alex at tweedly.net Tue Aug 1 20:50:01 2017 From: alex at tweedly.net (Alex Tweedly) Date: Wed, 2 Aug 2017 01:50:01 +0100 Subject: httpd library and missed opportunity. In-Reply-To: References: <69845EF8-87F3-4182-BB88-6BB899D13E34@appisle.net> <279d983b-103c-d199-8830-28479457fa79@tweedly.net> Message-ID: On 02/08/2017 01:42, Monte Goulding via use-livecode wrote: >> On 2 Aug 2017, at 10:36 am, Alex Tweedly via use-livecode wrote: >> >> The 'test' button is handy - but it's not the only way. >> In fact, I rarely use it - I build my standalones, then try it out on 2 or 3 platforms (OK, this may be very untypical, because I am just starting to play with mobile and html5 ... but I suspect it will continue to be a viable work-flow - if only because of frequent interruptions, etc.) So I would hope to be able to run the server, and then make multiple tests with a single standalone. > Hmm? Well click the Test button and then from your other platform enter the IP of the machine with the IDE. Should work fine. I was a bit unclear, sorry. I make some edits, then build for multiple platforms (Mac, Android and HTML). Then I want to test each of those platforms out, perhaps multiple times. Maybe all it needs is a "Retest" button (or "cmd+Test") to re-use the most-recently-built for the selected test target. >> You said "[HTTPd library] ... now that we have one included in the IDE we ...". So is it the intention that this library is only available in the IDE, and won't be available for inclusion in a standalone, or for use from LCServer ? (I can't see it in the list of inclusions in the SB, unlike diff, getopt, etc. - though that list is getting long enough that scrolling through it to see if something is there or not is becoming inexact). > It should be in the list in dp-9. I don't see it (or don't recognize it). (dp8 Indy, OSX) Alex. From brahma at hindu.org Tue Aug 1 23:10:13 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Wed, 2 Aug 2017 03:10:13 +0000 Subject: Sluggish on Mobile Device In-Reply-To: <4bff9795-fe59-b818-7b3e-007bc9602391@hyperactivesw.com> References: <5FD5BFC7-EFD7-46B6-AC76-61DB9FD40078@clearvisiontech.com> <9615463E-03A5-4855-922B-D7F9D12D8A9F@livecode.com> <15d90eb0e30.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <61aacaf9-a865-cc8e-1282-ec3509478654@hyperactivesw.com> <3D9971C9-225E-4574-AD02-D5E47834E0A6@livecode.com> <7d03de7b-e661-2be8-1d2b-34504cadcdd0@hyperactivesw.com> <362e79a0e92dbbf5a430d31851e74373@livecode.com> <4bff9795-fe59-b818-7b3e-007bc9602391@hyperactivesw.com> Message-ID: @ monte: Elanor has the project link to our app on Git Hub if you are interested. I was going to submit a business support request to have your team examine that stack and see if there was a way to optimze it but I think Jacque has the bottom line: the "Siva-Siva-Portal.livecode" stack is what Jacqueline is referring to. there is a series of "link" panels or subgroups. each includes "rows" with 414 wide grc about 100px high Left site is a text field with the link "label" right side is a small thumbnail. These are then stacked on top of each other dynamically, based on a JSON file that defines both the content of the row, what image is used etc. It works rather well, surprising fast to build even on Android. BUT these are all then grouped into one big group that is assigned the scrolling behavior? AcceleratedRendering does help, because, we presume, the group is not a free standalone group on top of the card. ergo, until the Datagrid2 initiative is complete, apparently we have no solution. but you can try: git at github.com:Himalayan-Academy/Siva-Siva-App.git be sure to check out the "nightly" branch? which is the most up-to-date? then you boot Siva-Siva-App.livecode (launcher stack which is never close) and after it init's (starts using all the libs) then it opens the Siva-Siva-Portal.livecode stack that?s the one that "jitters." when it scrolls, quite a few beta testers who "are sensitive" have pointed this out? Others seem not to care, they are focused on content/navigation and not necessarily screen performance? it's fast enough, just "ugly scrolling" The structure is card "portal" group "Portal Layout" # contains 2 groups group "SivaSiva Portal Scrolling" # this is the group that scrolls very badly no matter what we do. # Sub groups Header-group row 1 -(small group) row 2 -(small group) row 3 -(small group) row 4 -(small group) row 5 -(small group) group "SivaSiva Portal Navigation # this a fixed tool bar at the bottom of the screen Ahhh, I wonder if we only had two groups like this card "portal" group "SivaSiva Portal Scrolling" # this is the group that scrolls very badly no matter what we do. # Sub groups Header-group row 1 -(small group) row 2 -(small group) row 3 -(small group) row 4 -(small group) row 5 -(small group) group "SivaSiva Portal Navigation # this a fixed tool bar at the bottom of the screen so that the group that scrolls is *not* inside another group? if accelerated Rending make it scroll better. BR On 7/31/17, 5:22 PM, "use-livecode on behalf of J. Landman Gay via use-livecode" wrote: On 7/29/17 11:02 PM, Mark Waddingham via use-livecode wrote: >It sounds like *something* in the group structure is causing >accelRendering not to be effective (although I'm not sure what from the >description). @Mark: I've just found why it's failing. It's the stack structure, not the engine. That's what happens when a lot of people work on the same project; it changed without my noticing. From harrison at all-auctions.com Tue Aug 1 23:22:04 2017 From: harrison at all-auctions.com (Rick Harrison) Date: Tue, 1 Aug 2017 23:22:04 -0400 Subject: OT: Hackintosh In-Reply-To: <49F06A35-C4F4-4182-85C6-304CC1B5227F@iotecdigital.com> References: <49F06A35-C4F4-4182-85C6-304CC1B5227F@iotecdigital.com> Message-ID: <7D498FD4-AC37-4614-82D4-411A159DCBD0@all-auctions.com> Hi Dan, You have to ask yourself the question, why are you trying to create a Hackintosh computer? Is it about the learning experience, or about trying to save yourself some money, or both? If you are doing it just to try to save some money, you have to ask yourself how much money is your time worth? You are going to have to put a good deal of time into building the machine yourself. You might just find that by the time you are all done, that it would have been cheaper just to buy a Macintosh with all the bells, and whistles you wanted in the first place. If you are doing it just for the experience, well then by all means please feel free to knock yourself out with it all. You will definitely learn a lot in the process I?m sure. Good luck with whatever you decide to do, and please feel free to share the story with us when you have it all put together. Cheers, Rick > On Aug 1, 2017, at 7:27 PM, Bob Sneidar via use-livecode wrote: > > I tried once. The problem is getting a graphics card to work correctly if you are thinking about gaming. There are all kinds of hacks to get it to work, but the bottom line is it can be iffy, and the next OS X update might break it. > > Bob S > > >> On Aug 1, 2017, at 12:36 , Dan Friedman via use-livecode wrote: >> >> Greetings! >> >> Has anyone built their own Hackintosh computer? > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From brahma at hindu.org Tue Aug 1 23:25:21 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Wed, 2 Aug 2017 03:25:21 +0000 Subject: "Cascading" Object-Behaviors In-Reply-To: <7DFBE93A-5AB3-4E4B-A824-DA7D11D9DDF5@appisle.net> References: <7DFBE93A-5AB3-4E4B-A824-DA7D11D9DDF5@appisle.net> Message-ID: "GIT DUMMY" here.. How does one get the script without downloading the entire LC repository? All I can see is to copy it.. which works I guess you have to then remove all the leading "+" signs and save to your plugins folder? BR On 7/30/17, 10:28 AM, "use-livecode on behalf of Monte Goulding via use-livecode" wrote: I have implemented a scriptifier utility script if you are interested here https://github.com/livecode/livecode/pull/5600 From monte at appisle.net Tue Aug 1 23:26:28 2017 From: monte at appisle.net (Monte Goulding) Date: Wed, 2 Aug 2017 13:26:28 +1000 Subject: Sluggish on Mobile Device In-Reply-To: References: <5FD5BFC7-EFD7-46B6-AC76-61DB9FD40078@clearvisiontech.com> <9615463E-03A5-4855-922B-D7F9D12D8A9F@livecode.com> <15d90eb0e30.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <61aacaf9-a865-cc8e-1282-ec3509478654@hyperactivesw.com> <3D9971C9-225E-4574-AD02-D5E47834E0A6@livecode.com> <7d03de7b-e661-2be8-1d2b-34504cadcdd0@hyperactivesw.com> <362e79a0e92dbbf5a430d31851e74373@livecode.com> <4bff9795-fe59-b818-7b3e-007bc9602391@hyperactivesw.com> Message-ID: > On 2 Aug 2017, at 1:10 pm, Sannyasin Brahmanathaswami via use-livecode wrote: > > Ahhh, I wonder if we only had two groups like this > > card "portal" > group "SivaSiva Portal Scrolling" # this is the group that scrolls very badly no matter what we do. > # Sub groups > Header-group > row 1 -(small group) > row 2 -(small group) > row 3 -(small group) > row 4 -(small group) > row 5 -(small group) > > group "SivaSiva Portal Navigation > # this a fixed tool bar at the bottom of the screen > > so that the group that scrolls is *not* inside another group? if accelerated Rending make it scroll better. I haven?t been following this thread sorry but yes if the group is directly on the card instead of nested then you can use scrolling layer mode otherwise it won?t work. You can check the effective layerMode to determine if you are getting what you think you should be getting. You also need to ensure you have no adornments like borders, graphic effects etc? I just opened this report which should make things easier for people if we can do that http://quality.livecode.com/show_bug.cgi?id=20217 Cheers Monte From monte at appisle.net Tue Aug 1 23:34:31 2017 From: monte at appisle.net (Monte Goulding) Date: Wed, 2 Aug 2017 13:34:31 +1000 Subject: "Cascading" Object-Behaviors In-Reply-To: References: <7DFBE93A-5AB3-4E4B-A824-DA7D11D9DDF5@appisle.net> Message-ID: <3D49C80C-C102-4AF6-B391-0ABB4D0A585D@appisle.net> Use the following url: > I?d like to say you can go stack url with this url but you can?t because it?s broken for script only stacks although from the looks of things go stack byte 4 to -1 of url might work in LC 9? http://quality.livecode.com/show_bug.cgi?id=18998 Cheers Monte > On 2 Aug 2017, at 1:25 pm, Sannyasin Brahmanathaswami via use-livecode wrote: > > "GIT DUMMY" here.. > > > How does one get the script without downloading the entire LC repository? > > All I can see is to copy it.. which works I guess you have to then remove all the leading "+" signs and save to your plugins folder? > > BR > > > > > On 7/30/17, 10:28 AM, "use-livecode on behalf of Monte Goulding via use-livecode" wrote: > > I have implemented a scriptifier utility script if you are interested here https://github.com/livecode/livecode/pull/5600 > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From brahma at hindu.org Tue Aug 1 23:51:24 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Wed, 2 Aug 2017 03:51:24 +0000 Subject: Points of Graphic Oval In-Reply-To: References: Message-ID: <3D150F6C-1494-45E2-BA59-77B315CAFB03@hindu.org> Sequently found "effectivePoints" and used that and it works fine on Mobile. But this thread became something more, it became about generating a polygon object that "looks like" an oval. But is an oval such an object at all? Mark Wieder via use-livecode" wrote: How many points would you guess are in an oval? BR Ahhh, programmatically perhaps it has no "points" as such? being a single continuous line shaped only by its changing arc-radius values.? i.e. a mystic conundrum: "infinite number of points and not points at all" SCOTT Rossi wrote: You can use the effectivePoints to get the points of any graphic shape, but depending on the size, your oval may produce too many points. In any event, your source oval doesn't need to be perfect. If you reference a "decent" number of points along the shape of the oval, your image will have the appearance of moving along an elliptical path. BR: But using "The effectivePoints" seems to work as if there were no points (as such), but only a contiguous line? Which takes us back to Marks first question?"how many points in an oval" which I will re cast as: At the depths of the LC engine imaging algorithms? is a circle or oval made up of points at all? br From brahma at hindu.org Wed Aug 2 00:45:05 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Wed, 2 Aug 2017 04:45:05 +0000 Subject: Parsing (scraping) OpenGraph Tags from html HEAD In-Reply-To: References: <85475638-9212-4514-83B3-E0AA5B31E219@hindu.org> Message-ID: <493EE9BB-21E1-4096-9385-7793A93D102B@hindu.org> Thanks Thierry though I'm yet sure when using regEx this is better than using Jacque's method on parseHeader pData set the lineDel to "",l)-1 of l & cr after tList end repeat -- do something with tList end parseHeader Either way it would seem prudent to extract the head first before processing put the htmlText of widget "youtubes" into _HTML # interesting convention of underscore usage for var declaration put char ( offset("",_HTML)) to ( ( offset("",_HTML))+6) of _html into tHead Using jacques method just gets the list.. and we need to do more coding to get the array we need. but it returns: "og:site_name" content="YouTube" "og:url" content="https://www.youtube.com/user/kauaiaadheenam" "og:title" content="Kauai's Hindu Monastery" "og:image" content="https://yt3.ggpht.com/-p766LczvKHY/AAAAAAAAAAI/AAAAAAAAAAA/SIu6ZAJbMDc/s900-c-k-no-mo-rj-c0xffffff/photo.jpg" "og:description" content="{where hinduism meets the future}" "og:type" content="profile" "og:video:tag" content="kauai" "og:video:tag" content="hawaii" "og:video:tag" content="hindu" "og:video:tag" content="hinduism" "og:video:tag" content="siva" # And many more tags total of 39 tags? But your method can only handle 1 tag. description:{where hinduism meets the future} image:https://yt3.ggpht.com/-p766LczvKHY/AAAAAAAAAAI/AAAAAAAAAAA/SIu6ZAJbMDc/s900-c-k-no-mo-rj-c0xffffff/photo.jpg site_name:YouTube title:Kauai's Hindu Monastery type:profile url:https://www.youtube.com/user/kauaiaadheenam video:tag:scriptural #r est of the tags, all preceeding 38 of them, are lost -- "scriptural" was the last one # and so stands as the final output for the key as the loop which is # effectively retain the single key "og:video"tag" and replacing the value 39 times # leaving us with on the last value of the 39th tag. # so we would need an ordered multi-dimensional array like OG["site_name"] # and the other top keys, then: OG["video"]["tags"][1] OG["video"]["tags"][2] But I'm not sure we need tags for the particular use case in question which is to create a robust "history" of web viewing with more detail. OTOH, since we are coding for "Oh God" data, we may as well get all the tags into the array. This could be useful later to have this code in the toolbox for when we *do* want all the tags from the OG set? God does not like to see partial metadata, because S/He Knows All the Metadata. BR On 7/31/17, 12:31 AM, "use-livecode on behalf of Thierry Douez via use-livecode" wrote: So, here is the code: local Rx, Rslt, _Html, OG put empty into Rslt put URL "https://www.youtube.com/user/kauaiaadheenam" into _Html get "(?ms)" put IT into Rx repeat while matchChunk( _Html, Rx,p1,p2,p3,p4 ) put char p3 to p4 of _Html into OG[ char p1 to p2 of _Html ] delete char 1 to p4 of _Html end repeat and you can test it this way: combine OG using return and ":" put OG into fld 1 HTH and feel free to ask any question... Kind regards, Thierry From dan at clearvisiontech.com Wed Aug 2 01:14:05 2017 From: dan at clearvisiontech.com (Dan Friedman) Date: Wed, 2 Aug 2017 05:14:05 +0000 Subject: App Rejected: IPv6 network? Message-ID: <3EAB7D3C-537A-4D1A-9447-1615FD03AEC3@clearvisiontech.com> Hello. My app was rejected my Apple today. :( Here?s what they said: ******************************************** We discovered one or more bugs in your app when reviewed on iPhone and iPad running iOS 10.3.3 on Wi-Fi connected to an IPv6 network. The error occurs after launch with the only option to quit the app. Please see attached screenshots for details. ******************************************** The screen shot is of a answer command with the result of the download: ?can?t connect to host?. The app, on launch, downloads a file (a compressed stack) from my server. I know for fact that went without error. That freshly downloaded stack then downloads another compressed stack. The error happened on this second stack. The app (with the development profile, of course) works perfectly on numerous iPads and iPhones (using several versions of iOS including 10.3.3) tested on several WI-Fi wireless networks at multiple locations. It also preformed perfectly using cellular data. The message from Apple reports they use a IPv6 network. Are there any issues with LC 8.1.5 on a IPv6 network? Thank you for any advice! -Dan From monte at appisle.net Wed Aug 2 01:31:18 2017 From: monte at appisle.net (Monte Goulding) Date: Wed, 2 Aug 2017 15:31:18 +1000 Subject: App Rejected: IPv6 network? In-Reply-To: <3EAB7D3C-537A-4D1A-9447-1615FD03AEC3@clearvisiontech.com> References: <3EAB7D3C-537A-4D1A-9447-1615FD03AEC3@clearvisiontech.com> Message-ID: <18EE55FC-117F-41EF-8E97-93BD3F5C53D4@appisle.net> Are you using sockets? We do not support IPv6 sockets and they will rejection from Apple when they test on an IPv6 _only_ network which is their policy to do. Cheers Monte > On 2 Aug 2017, at 3:14 pm, Dan Friedman via use-livecode wrote: > > Hello. My app was rejected my Apple today. :( Here?s what they said: > > ******************************************** > We discovered one or more bugs in your app when reviewed on iPhone and iPad running iOS 10.3.3 on Wi-Fi connected to an IPv6 network. > > The error occurs after launch with the only option to quit the app. > > Please see attached screenshots for details. > ******************************************** > > The screen shot is of a answer command with the result of the download: ?can?t connect to host?. > > The app, on launch, downloads a file (a compressed stack) from my server. I know for fact that went without error. That freshly downloaded stack then downloads another compressed stack. The error happened on this second stack. > > The app (with the development profile, of course) works perfectly on numerous iPads and iPhones (using several versions of iOS including 10.3.3) tested on several WI-Fi wireless networks at multiple locations. It also preformed perfectly using cellular data. > > The message from Apple reports they use a IPv6 network. Are there any issues with LC 8.1.5 on a IPv6 network? > > Thank you for any advice! > -Dan > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From th.douez at gmail.com Wed Aug 2 04:06:55 2017 From: th.douez at gmail.com (Thierry Douez) Date: Wed, 2 Aug 2017 10:06:55 +0200 Subject: Parsing (scraping) OpenGraph Tags from html HEAD In-Reply-To: <493EE9BB-21E1-4096-9385-7793A93D102B@hindu.org> References: <85475638-9212-4514-83B3-E0AA5B31E219@hindu.org> <493EE9BB-21E1-4096-9385-7793A93D102B@hindu.org> Message-ID: 2017-08-02 6:45 GMT+02:00 Sannyasin Brahmanathaswami: ?Hi Brahmanathaswami, ? Thanks Thierry > > though I'm yet sure when using regEx this is better than using Jacque's > method > ?That's 2 different ways.. but with the regex one, you have the exact key and value of each tags, nothing more to do.? Either way it would seem prudent to extract the head first before processing > ?Mmm, don't really see why, but I've added a line of code for this too below. ? > > Using jacques method just gets the list.. and we need to do more coding to get the array we need. > > But your method can only handle 1 tag. > ?I was aware of that but didn't know what you want to achieve, therefore I leave it for the reader. However this has nothing to do with the regex but with the code inside the repeat loop. Here is another way to do it, changing only *1* line of code inside the loop with the same regex as before: -- to please BR wishes, but not necessary -- erase everything after put replaceText( _Html, "(?ms).*?$", empty) into _Html repeat while matchChunk( _Html, Rx, p1,p2,p3,p4 ) put char p1 to p2 of _Html & tab& char p3 to p4 of _Html &cr after Rslt delete char 1 to p4 of _Html end repeat delete last char of Rslt -- extra cr put Rslt into fld 1 answer "Got " & the number of lines of Rslt & " og: meta tags!" Building a multi-dimensionnal array after the extraction, a bit more work inside the repeat loop will be needed, but the extraction part is still valid. ? ? Finally, if you are not at ease with regex, go with Jacque's way and everything will be fine. There are fundamentally not much differences in between the 2 ways. Kind regards, Thierry > On 7/31/17, 12:31 AM, "use-livecode on behalf of Thierry Douez wrote: > > So, here is the code: > > local Rx, Rslt, _Html, OG > > put empty into Rslt > put URL "https://www.youtube.com/user/kauaiaadheenam" into _Html > > get > "(?ms) 22}(.+?)\x{22}>" > put IT into Rx > > repeat while matchChunk( _Html, Rx,p1,p2,p3,p4 ) > put char p3 to p4 of _Html into OG[ char p1 to p2 of _Html ] > delete char 1 to p4 of _Html > end repeat > > > > and you can test it this way: > > combine OG using return and ":" > put OG into fld 1 > > > > HTH and feel free to ask any question... > > Kind regards, > > Thierry > -- ------------------------------------------------ Thierry Douez - sunny-tdz.com sunnYrex - sunnYtext2speech - sunnYperl - sunnYmidi - sunnYmage From roger.e.eller at sealedair.com Wed Aug 2 07:13:29 2017 From: roger.e.eller at sealedair.com (Roger Eller) Date: Wed, 2 Aug 2017 07:13:29 -0400 Subject: OT: Hackintosh In-Reply-To: <49F06A35-C4F4-4182-85C6-304CC1B5227F@iotecdigital.com> References: <49F06A35-C4F4-4182-85C6-304CC1B5227F@iotecdigital.com> Message-ID: Hackintoshers Rule #1: "If it ain't broke, don't update it!" Hackintoshers Rule #2: "Carbon Copy Clone it FIRST!" Realizing that it's not real, not "of Apple", and not updating frequently is the first step toward Hacky-happiness. Always wait until the forums are reporting update success stories. Knocking on wood, following the above rules, I have never bricked my machine. ~Roger On Tue, Aug 1, 2017 at 7:27 PM, Bob Sneidar via use-livecode < use-livecode at lists.runrev.com> wrote: > I tried once. The problem is getting a graphics card to work correctly if > you are thinking about gaming. There are all kinds of hacks to get it to > work, but the bottom line is it can be iffy, and the next OS X update might > break it. > > Bob S > > > > On Aug 1, 2017, at 12:36 , Dan Friedman via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > > Greetings! > > > > Has anyone built their own Hackintosh computer? > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From richmondmathewson at gmail.com Wed Aug 2 07:43:59 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Wed, 2 Aug 2017 14:43:59 +0300 Subject: Made with . . . Message-ID: <922d0470-1d83-e731-8306-08526df3605e@gmail.com> " remember that LC is made with LC, so everything in the IDE is a stack resp. scripted and can be modified!" recently claimed by someone elsewhere [Hi, Klaus :) ] BUT: it that really true? Why do I have a funny feeling that a lot of the "heavy lifting" is done with C++ ? Richmond. From klaus at major-k.de Wed Aug 2 07:50:01 2017 From: klaus at major-k.de (Klaus major-k) Date: Wed, 2 Aug 2017 13:50:01 +0200 Subject: Made with . . . In-Reply-To: <922d0470-1d83-e731-8306-08526df3605e@gmail.com> References: <922d0470-1d83-e731-8306-08526df3605e@gmail.com> Message-ID: <1EBBACDA-7DDD-41A6-86D0-8F888931EB99@major-k.de> Hi Richmond, > Am 02.08.2017 um 13:43 schrieb Richmond Mathewson via use-livecode : > > " remember that LC is made with LC, so everything in the IDE is a stack resp. scripted and can be modified!" > recently claimed by someone elsewhere [Hi, Klaus :) ] hi mate! :-) > BUT: it that really true? > Why do I have a funny feeling that a lot of the "heavy lifting" is done with C++ ? Yes, that is true, except for the engine and its functionality which is made with C++ or whatever. > Richmond. Best Klaus -- Klaus Major http://www.major-k.de klaus at major-k.de From hh at hyperhh.de Wed Aug 2 07:50:16 2017 From: hh at hyperhh.de (hh) Date: Wed, 2 Aug 2017 13:50:16 +0200 Subject: Points of Graphic Oval Message-ID: The effective points of an oval (circle) are the 360 points of a regular polygon with 360 vertices (if it's closed). You could look at stack #2 of the Raspi-Collection, runs on Mac/Win/linux using LC 6/7/8/9: http://forums.livecode.com/viewtopic.php?p=98716#p98716 (in LC 8/9 add a semicolon after "origin" in line 66 of the card script). Change there the number of vertices N to 24,32,64 or 360 and you will understand, why Scott said, a "decent" number is enough. A circle is, just like a Bezier curve, a mathematical model, for thinking, doing mathematics. Not realizable in our virtual world. What you can have and what you see are (more or less good) approximations to that model, here nothing more than simple polygons. From beugelaar at solidit.nl Wed Aug 2 07:51:26 2017 From: beugelaar at solidit.nl (Erik Beugelaar) Date: Wed, 02 Aug 2017 13:51:26 +0200 Subject: Hackintosh In-Reply-To: References: <49F06A35-C4F4-4182-85C6-304CC1B5227F@iotecdigital.com> Message-ID: <9E55B499-19FA-45EF-B725-3EA9FF2DF6DA@solidit.nl> In addition what Roger said. Hackintosh Rule #3: Buy only PC hardware components (if possible) which are supported by Apple native. Most problems can be avoided to use the wright components which are critical to build a good working Hackintosh. Buy a motherboard which has already Wifi/BT (e.g.. Broadcomm) and Sound (e.g. RealTek) compatible to Apple on board (e.g. GigaByte). Buy a videocard compatible to Apple (NVIDIA) or use the internal videocard supporting Intel HD 5000+ Buy a USB (e.g. Logitech) video camera compatible to Apple. If you follow these rules you will have a natively working Apple. Even nowadays updating Mac OS X from Yosemite up to Sierra using Clover is working via the normal Apple procedure (App Store). Sometimes you have to refresh your kexts for sound, networking etc. after upgrading but that?s all. Regards, Erik On 02/08/17 13:14, "use-livecode on behalf of Roger Eller via use-livecode" wrote: Hackintoshers Rule #1: "If it ain't broke, don't update it!" Hackintoshers Rule #2: "Carbon Copy Clone it FIRST!" Realizing that it's not real, not "of Apple", and not updating frequently is the first step toward Hacky-happiness. Always wait until the forums are reporting update success stories. Knocking on wood, following the above rules, I have never bricked my machine. ~Roger On Tue, Aug 1, 2017 at 7:27 PM, Bob Sneidar via use-livecode < use-livecode at lists.runrev.com> wrote: > I tried once. The problem is getting a graphics card to work correctly if > you are thinking about gaming. There are all kinds of hacks to get it to > work, but the bottom line is it can be iffy, and the next OS X update might > break it. > > Bob S > > > > On Aug 1, 2017, at 12:36 , Dan Friedman via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > > Greetings! > > > > Has anyone built their own Hackintosh computer? > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode From brian at milby7.com Wed Aug 2 09:02:49 2017 From: brian at milby7.com (Brian Milby) Date: Wed, 2 Aug 2017 08:02:49 -0500 Subject: "Cascading" Object-Behaviors In-Reply-To: <3D49C80C-C102-4AF6-B391-0ABB4D0A585D@appisle.net> References: <7DFBE93A-5AB3-4E4B-A824-DA7D11D9DDF5@appisle.net> <3D49C80C-C102-4AF6-B391-0ABB4D0A585D@appisle.net> Message-ID: I just tried it on Mac/Win and it works in LC9DP8 that way for me. On Tue, Aug 1, 2017 at 10:34 PM, Monte Goulding via use-livecode < use-livecode at lists.runrev.com> wrote: > Use the following url: > > 811fa6e77e514c7e3ccae150af5fd856199719e1/tools/Scriptifier.livecodescript > 811fa6e77e514c7e3ccae150af5fd856199719e1/tools/Scriptifier.livecodescript > >> > > I?d like to say you can go stack url with this url but you can?t because > it?s broken for script only stacks although from the looks of things go > stack byte 4 to -1 of url might work in LC 9? > > http://quality.livecode.com/show_bug.cgi?id=18998 < > http://quality.livecode.com/show_bug.cgi?id=18998> > > Cheers > > Monte > > > On 2 Aug 2017, at 1:25 pm, Sannyasin Brahmanathaswami via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > > "GIT DUMMY" here.. > > > > > > How does one get the script without downloading the entire LC repository? > > > > All I can see is to copy it.. which works I guess you have to then > remove all the leading "+" signs and save to your plugins folder? > > > > BR > > > > > > > > > > On 7/30/17, 10:28 AM, "use-livecode on behalf of Monte Goulding via > use-livecode" use-livecode at lists.runrev.com> wrote: > > > > I have implemented a scriptifier utility script if you are interested > here https://github.com/livecode/livecode/pull/5600 github.com/livecode/livecode/pull/5600> > > > > _______________________________________________ > > use-livecode mailing list > > use-livecode at lists.runrev.com > > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > > http://lists.runrev.com/mailman/listinfo/use-livecode > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From roger.e.eller at sealedair.com Wed Aug 2 09:05:50 2017 From: roger.e.eller at sealedair.com (Roger Eller) Date: Wed, 2 Aug 2017 09:05:50 -0400 Subject: Hackintosh In-Reply-To: <9E55B499-19FA-45EF-B725-3EA9FF2DF6DA@solidit.nl> References: <49F06A35-C4F4-4182-85C6-304CC1B5227F@iotecdigital.com> <9E55B499-19FA-45EF-B725-3EA9FF2DF6DA@solidit.nl> Message-ID: It's also great that enthusiasts have already tested much of what's out there. You can pick your components from this buyers guide for best results. https://www.tonymacx86.com/buyersguide/january/2017 ~Roger On Wed, Aug 2, 2017 at 7:51 AM, Erik Beugelaar via use-livecode < use-livecode at lists.runrev.com> wrote: > In addition what Roger said. > > Hackintosh Rule #3: Buy only PC hardware components (if possible) which > are supported by Apple native. > > Most problems can be avoided to use the wright components which are > critical to build a good working Hackintosh. > Buy a motherboard which has already Wifi/BT (e.g.. Broadcomm) and Sound > (e.g. RealTek) compatible to Apple on board (e.g. GigaByte). > Buy a videocard compatible to Apple (NVIDIA) or use the internal videocard > supporting Intel HD 5000+ > Buy a USB (e.g. Logitech) video camera compatible to Apple. > > If you follow these rules you will have a natively working Apple. Even > nowadays updating Mac OS X from Yosemite up to Sierra using Clover is > working via the normal Apple procedure (App Store). Sometimes you have to > refresh your kexts for sound, networking etc. after upgrading but that?s > all. > > Regards, > Erik > > > On 02/08/17 13:14, "use-livecode on behalf of Roger Eller via > use-livecode" use-livecode at lists.runrev.com> wrote: > > Hackintoshers Rule #1: "If it ain't broke, don't update it!" > Hackintoshers Rule #2: "Carbon Copy Clone it FIRST!" > > From MikeKerner at roadrunner.com Wed Aug 2 09:09:57 2017 From: MikeKerner at roadrunner.com (Mike Kerner) Date: Wed, 2 Aug 2017 09:09:57 -0400 Subject: Mark in a kilt... In-Reply-To: <6BA000CC-F2A0-454E-8DBF-2B81AFA184D1@iotecdigital.com> References: <0635f89e-fa2a-b4d5-5e60-a2668b281bef@tweedly.net> <2aaf5a10-93b8-13a7-6eac-46b5ad96b750@gmail.com> <6BA000CC-F2A0-454E-8DBF-2B81AFA184D1@iotecdigital.com> Message-ID: were they from north of the wall? On Tue, Aug 1, 2017 at 10:38 AM, Bob Sneidar via use-livecode < use-livecode at lists.runrev.com> wrote: > I used to play marching drums in a Scottish bagpipe band. We were good > too. Won 1st place in the DC 4th of July parade once. We had excellent > instructors. > > Bob S > > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > -- On the first day, God created the heavens and the Earth On the second day, God created the oceans. On the third day, God put the animals on hold for a few hours, and did a little diving. And God said, "This is good." From bobsneidar at iotecdigital.com Wed Aug 2 10:56:48 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Wed, 2 Aug 2017 14:56:48 +0000 Subject: Mark in a kilt... In-Reply-To: References: <0635f89e-fa2a-b4d5-5e60-a2668b281bef@tweedly.net> <2aaf5a10-93b8-13a7-6eac-46b5ad96b750@gmail.com> <6BA000CC-F2A0-454E-8DBF-2B81AFA184D1@iotecdigital.com> Message-ID: I couldn't say. I had no notion of such things back then. It was a high school band, but don't let that put you off. We imported everything from Scotland, even the drumsticks. The kilts and other atire were from a real Scottish clan. The instructors were top notch. I never saw it but I was told the drum instructor had so many trophys there were no more flat places in his house to display them so he had to put some in storage. They took teenage kids who knew nothing and in 2 years had them marching in real parades and winning awards. The learning was hard. If you were late once for practice you were automatically cut, and it didn't matter why. They started with 30+ kids and by the last cut they had 4. I was one of the 4. We were expected to practice on our own for hours a day. It was one of the best experiences of my teenage life. Bob S > On Aug 2, 2017, at 06:09 , Mike Kerner via use-livecode wrote: > > were they from north of the wall? > > On Tue, Aug 1, 2017 at 10:38 AM, Bob Sneidar via use-livecode < > use-livecode at lists.runrev.com> wrote: > >> I used to play marching drums in a Scottish bagpipe band. We were good >> too. Won 1st place in the DC 4th of July parade once. We had excellent >> instructors. >> >> Bob S From brahma at hindu.org Wed Aug 2 11:44:19 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Wed, 2 Aug 2017 15:44:19 +0000 Subject: Points of Graphic Oval In-Reply-To: References: Message-ID: <7D6F9E7A-23FE-4FD4-BFF1-FD653295D6F3@hindu.org> HH wrote: A circle is, just like a Bezier curve, a mathematical model, for thinking, doing mathematics. Not realizable in our virtual world. What you can have and what you see are (more or less good) approximations to that model, here nothing more than simple polygons. But then, as the circle/oval got bigger one would see 360 "sides" but we don't. So, how is it a "simple polygon" From bobsneidar at iotecdigital.com Wed Aug 2 11:47:39 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Wed, 2 Aug 2017 15:47:39 +0000 Subject: Points of Graphic Oval In-Reply-To: <7D6F9E7A-23FE-4FD4-BFF1-FD653295D6F3@hindu.org> References: <7D6F9E7A-23FE-4FD4-BFF1-FD653295D6F3@hindu.org> Message-ID: <2D8E1C38-095B-4981-AECD-14F68DAA6648@iotecdigital.com> It's simple because all the angles are obtuse. Bob S > On Aug 2, 2017, at 08:44 , Sannyasin Brahmanathaswami via use-livecode wrote: > > But then, as the circle/oval got bigger one would see 360 "sides" but we don't. So, how is it a "simple polygon" From bobsneidar at iotecdigital.com Wed Aug 2 11:48:40 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Wed, 2 Aug 2017 15:48:40 +0000 Subject: Points of Graphic Oval In-Reply-To: <2D8E1C38-095B-4981-AECD-14F68DAA6648@iotecdigital.com> References: <7D6F9E7A-23FE-4FD4-BFF1-FD653295D6F3@hindu.org> <2D8E1C38-095B-4981-AECD-14F68DAA6648@iotecdigital.com> Message-ID: WHOOPS! I mean none of the lines intersect. Bob S > On Aug 2, 2017, at 08:47 , Bob Sneidar via use-livecode wrote: > > It's simple because all the angles are obtuse. > > Bob S From brahma at hindu.org Wed Aug 2 11:54:33 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Wed, 2 Aug 2017 15:54:33 +0000 Subject: Parsing (scraping) OpenGraph Tags from html HEAD In-Reply-To: References: <85475638-9212-4514-83B3-E0AA5B31E219@hindu.org> <493EE9BB-21E1-4096-9385-7793A93D102B@hindu.org> Message-ID: Responding on top Jacque's method only gets us a list, not an array, so one ends up having to write more code to parse the list anyway, your method is more efficient. "not comfortable with RegEx" Ha,, right. but it worth the effort to keep the little grey cells green! I will have to study the regEx? things like ?ms are "brand new" to me. re: extracting the head first: I was under the impression your repeat loop would have to work through the entire text of _HTML unnecessarily and that extracting the heads would reduce processing time. OTOH, Andre tells me that for this kind of operation, even cell phones have CPU's that are more powerful than some desktop machines and so perhaps the time to loop through the entire html source is too trivial to consider at all. Thanks for the effort you put into this. We are adding OG tags to all the media on our web site (eventually) and our apps will need to parse that out in various contexts. BR On 8/1/17, 10:07 PM, "use-livecode on behalf of Thierry Douez via use-livecode" wrote: 2017-08-02 6:45 GMT+02:00 Sannyasin Brahmanathaswami: ?Hi Brahmanathaswami, ? Thanks Thierry > > though I'm yet sure when using regEx this is better than using Jacque's > method > ?That's 2 different ways.. but with the regex one, you have the exact key and value of each tags, nothing more to do.? Either way it would seem prudent to extract the head first before processing > ?Mmm, don't really see why, but I've added a line of code for this too below. ? > > Using jacques method just gets the list.. and we need to do more coding to get the array we need. > > But your method can only handle 1 tag. > ?I was aware of that but didn't know what you want to achieve, therefore I leave it for the reader. However this has nothing to do with the regex but with the code inside the repeat loop. Here is another way to do it, changing only *1* line of code inside the loop with the same regex as before: -- to please BR wishes, but not necessary -- erase everything after put replaceText( _Html, "(?ms).*?$", empty) into _Html repeat while matchChunk( _Html, Rx, p1,p2,p3,p4 ) put char p1 to p2 of _Html & tab& char p3 to p4 of _Html &cr after Rslt delete char 1 to p4 of _Html end repeat delete last char of Rslt -- extra cr put Rslt into fld 1 answer "Got " & the number of lines of Rslt & " og: meta tags!" Building a multi-dimensionnal array after the extraction, a bit more work inside the repeat loop will be needed, but the extraction part is still valid. ? ? Finally, if you are not at ease with regex, go with Jacque's way and everything will be fine. There are fundamentally not much differences in between the 2 ways. Kind regards, Thierry > On 7/31/17, 12:31 AM, "use-livecode on behalf of Thierry Douez wrote: > > So, here is the code: > > local Rx, Rslt, _Html, OG > > put empty into Rslt > put URL "https://www.youtube.com/user/kauaiaadheenam" into _Html > > get > "(?ms) 22}(.+?)\x{22}>" > put IT into Rx > > repeat while matchChunk( _Html, Rx,p1,p2,p3,p4 ) > put char p3 to p4 of _Html into OG[ char p1 to p2 of _Html ] > delete char 1 to p4 of _Html > end repeat > > > > and you can test it this way: > > combine OG using return and ":" > put OG into fld 1 > > > > HTH and feel free to ask any question... > > Kind regards, > > Thierry > -- ------------------------------------------------ Thierry Douez - sunny-tdz.com sunnYrex - sunnYtext2speech - sunnYperl - sunnYmidi - sunnYmage _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode From ambassador at fourthworld.com Wed Aug 2 11:56:49 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Wed, 2 Aug 2017 08:56:49 -0700 Subject: Hackintosh In-Reply-To: References: Message-ID: <46babc4f-2c3f-732f-790f-ed0b4a36a565@fourthworld.com> We have a great community, having earned a reputation for providing a safe, friendly environment for learning LiveCode. With that in mind, please remember that Apple's EULA for macOS requires that it be run only on "Apple-branded computers". Discussions of using VMs on Mac hosts is great, useful for testing our apps on multiple OS versions. But we probably don't want to have discussions of violating Apple's copyright as part of this community's permanent public archive. There are other venues where such discussion can take place. Here in this official LiveCode support venue, it may be better to follow the guidelines used for the Forums, in which we avoid discussions which may be construed as encouraging illegal activity. Forum Guidelines -- Richard Gaskin LiveCode Community Liaison richard at livecode.org From bobsneidar at iotecdigital.com Wed Aug 2 12:13:23 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Wed, 2 Aug 2017 16:13:23 +0000 Subject: Hackintosh In-Reply-To: <46babc4f-2c3f-732f-790f-ed0b4a36a565@fourthworld.com> References: <46babc4f-2c3f-732f-790f-ed0b4a36a565@fourthworld.com> Message-ID: <75B4B06B-6C63-4B33-8371-4E96D40AF956@iotecdigital.com> Not to start a riot or anything, but I wasn't aware discussions could violate a copyright. Bob S > On Aug 2, 2017, at 08:56 , Richard Gaskin via use-livecode wrote: > > But we probably don't want to have discussions of violating Apple's copyright as part of this community's permanent public archive. From th.douez at gmail.com Wed Aug 2 12:22:56 2017 From: th.douez at gmail.com (Thierry Douez) Date: Wed, 2 Aug 2017 18:22:56 +0200 Subject: Parsing (scraping) OpenGraph Tags from html HEAD In-Reply-To: References: <85475638-9212-4514-83B3-E0AA5B31E219@hindu.org> <493EE9BB-21E1-4096-9385-7793A93D102B@hindu.org> Message-ID: 2017-08-02 17:54 GMT+02:00 Sannyasin Brahmanathaswami via use-livecode < use-livecode at lists.runrev.com>: > Responding on top > > Jacque's method only gets us a list, not an array, so one ends up having > to write more code to parse the list anyway, your method is more efficient. > > "not comfortable with RegEx" Ha,, right. but it worth the effort to keep > the little grey cells green! I will have to study the regEx? things like ?ms > are "brand new" to me. > ?So, you win your first Regex training :) (?ms) are regex options. m means multi-lines s means the dot ( '.' ) could also match a return/cr/lf char. ? > > > re: extracting the head first: I was under the impression your repeat loop > would have to work through the entire text of _HTML unnecessarily and that > extracting the heads would reduce processing time. ?Well, you are right: but only when the regex will try to match after the last valid pattern. What is most costly is the delete inside the loop; so working only with the ... of your html might be more efficient in this case. But this is more a LC thing. ? > OTOH, Andre tells me that for this kind of operation, even cell phones > have CPU's that are more powerful than some desktop machines and so perhaps > the time to loop through the entire html source is too trivial to consider > at all. > ?Yep, as I said, only after the last match, the regex will loop through the end of the html and only one time. About quality concerns, restricting the regex to the part is a good idea as you never know what could be some html in the future... ? > > Thanks for the effort you put into this. You're welcome. Kind regards, Thierry We are adding OG tags to all the media on our web site (eventually) and our > apps will need to parse that out in various contexts. > > BR > > > > > > On 8/1/17, 10:07 PM, "use-livecode on behalf of Thierry Douez via > use-livecode" use-livecode at lists.runrev.com> wrote: > > 2017-08-02 6:45 GMT+02:00 Sannyasin Brahmanathaswami: > > > ?Hi Brahmanathaswami, > ? > > Thanks Thierry > > > > though I'm yet sure when using regEx this is better than using > Jacque's > > method > > > > ?That's 2 different ways.. > but with the regex one, you have the exact key and value of each tags, > nothing more to do.? > > > Either way it would seem prudent to extract the head first before > processing > > > > ?Mmm, don't really see why, but I've added a line of code for this too > below. > > ? > > > > > Using jacques method just gets the list.. > > and we need to do more coding to get the array we need. > > > > But your method can only handle 1 tag. > > > > > ?I was aware of that but didn't know what you want to achieve, > therefore I > leave it for the reader. > However this has nothing to do with the regex but with the code inside > the > repeat loop. > > > Here is another way to do it, changing only *1* line of code inside > the loop > with the same regex as before: > > > > -- to please BR wishes, but not necessary > -- erase everything after > put replaceText( _Html, "(?ms).*?$", empty) into _Html > > repeat while matchChunk( _Html, Rx, p1,p2,p3,p4 ) > put char p1 to p2 of _Html & tab& char p3 to p4 of _Html &cr > after > Rslt > delete char 1 to p4 of _Html > end repeat > delete last char of Rslt -- extra cr > > put Rslt into fld 1 > answer "Got " & the number of lines of Rslt & " og: meta tags!" > > > Building a multi-dimensionnal array after the extraction, > a bit more work inside the repeat loop will be needed, > but the extraction part is still valid. > ? > > ? > > Finally, if you are not at ease with regex, go with Jacque's way and > everything will be fine. > There are fundamentally not much differences in between the 2 ways. > > > Kind regards, > > Thierry > > > > > > > > On 7/31/17, 12:31 AM, "use-livecode on behalf of Thierry Douez wrote: > > > > So, here is the code: > > > > local Rx, Rslt, _Html, OG > > > > put empty into Rslt > > put URL "https://www.youtube.com/user/kauaiaadheenam" into > _Html > > > > get > > "(?ms) > 22}(.+?)\x{22}>" > > put IT into Rx > > > > repeat while matchChunk( _Html, Rx,p1,p2,p3,p4 ) > > put char p3 to p4 of _Html into OG[ char p1 to p2 of > _Html ] > > delete char 1 to p4 of _Html > > end repeat > > > > > > > > and you can test it this way: > > > > combine OG using return and ":" > > put OG into fld 1 > > > > > > > > HTH and feel free to ask any question... > > > > Kind regards, > > > > Thierry > > > > > -- > ------------------------------------------------ > Thierry Douez - sunny-tdz.com > sunnYrex - sunnYtext2speech - sunnYperl - sunnYmidi - sunnYmage > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > -- ------------------------------------------------ Thierry Douez - sunny-tdz.com sunnYrex - sunnYtext2speech - sunnYperl - sunnYmidi - sunnYmage From capellan2000 at gmail.com Wed Aug 2 12:31:33 2017 From: capellan2000 at gmail.com (Alejandro Tejada) Date: Wed, 2 Aug 2017 12:31:33 -0400 Subject: Hackintosh Message-ID: In the country where I live, the first step to buy an Apple Computer is to built a Hackintosh. After they fall in love with Mac OS X and their hackintosh crash and burn really hard, their next step is to buy the real thing... This happens everytime without fail. In the same way, I suspect that free Microsoft OS Virtual Machines are part of Microsoft strategy to reach 100% presence in every desktop computer (Linux and Mac OS X). Al From ambassador at fourthworld.com Wed Aug 2 12:32:08 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Wed, 2 Aug 2017 09:32:08 -0700 Subject: Hackintosh In-Reply-To: <75B4B06B-6C63-4B33-8371-4E96D40AF956@iotecdigital.com> References: <75B4B06B-6C63-4B33-8371-4E96D40AF956@iotecdigital.com> Message-ID: Bob Sneidar wrote: >> On Aug 2, 2017, at 08:56 , Richard Gaskin wrote: >> >> But we probably don't want to have discussions of violating Apple's >> copyright as part of this community's permanent public archive. > > Not to start a riot or anything, but I wasn't aware discussions could > violate a copyright. I wrote "...discussions OF..." See also: bikeshedding -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From roger.e.eller at sealedair.com Wed Aug 2 12:45:09 2017 From: roger.e.eller at sealedair.com (Roger Eller) Date: Wed, 2 Aug 2017 12:45:09 -0400 Subject: Hackintosh In-Reply-To: <46babc4f-2c3f-732f-790f-ed0b4a36a565@fourthworld.com> References: <46babc4f-2c3f-732f-790f-ed0b4a36a565@fourthworld.com> Message-ID: Also of interest, MacWorld article (yes, MacWorld) tells users how to build a Hackintosh. Although the author whines a little about it being involving some work. http://www.macworld.com/article/3196994/macs/how-to-build-a-hackintosh.html Someday, I believe Apple will come around and offer Genuine OS X to select models of PC hardware. But that's just my own hopeful idea. For now, it is only for fun, and should not be considered for any type of business. If your business can't afford a computer, then close the doors. ~Roger On Wed, Aug 2, 2017 at 11:56 AM, Richard Gaskin via use-livecode < use-livecode at lists.runrev.com> wrote: > We have a great community, having earned a reputation for providing a > safe, friendly environment for learning LiveCode. > > With that in mind, please remember that Apple's EULA for macOS requires > that it be run only on "Apple-branded computers". > > Discussions of using VMs on Mac hosts is great, useful for testing our > apps on multiple OS versions. > > But we probably don't want to have discussions of violating Apple's > copyright as part of this community's permanent public archive. > > There are other venues where such discussion can take place. Here in this > official LiveCode support venue, it may be better to follow the guidelines > used for the Forums, in which we avoid discussions which may be construed > as encouraging illegal activity. > > Forum Guidelines > > > -- > Richard Gaskin > LiveCode Community Liaison > richard at livecode.org > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From matthias_livecode_150811 at m-r-d.de Wed Aug 2 13:20:13 2017 From: matthias_livecode_150811 at m-r-d.de (Matthias Rebbe) Date: Wed, 2 Aug 2017 19:20:13 +0200 Subject: how to get the value of a custom property if the name of the cProperty is in a variable? Message-ID: Hi, let?s say a card has a custom property name cMyProp. The variable tMyVar contains the word ?cMyProp? How do i get the value of the custom property using the variable tMyVar? Regards, Matthias Matthias Rebbe +49 5741 310000 ?matthiasrebbe.eu ? From klaus at major-k.de Wed Aug 2 13:25:28 2017 From: klaus at major-k.de (Klaus major-k) Date: Wed, 2 Aug 2017 19:25:28 +0200 Subject: how to get the value of a custom property if the name of the cProperty is in a variable? In-Reply-To: References: Message-ID: <8F48407D-F2F3-4489-B030-94C259914AF4@major-k.de> Hi Matthias, > Am 02.08.2017 um 19:20 schrieb Matthias Rebbe via use-livecode : > > Hi, > > let?s say a card has a custom property name cMyProp. > The variable tMyVar contains the word ?cMyProp? > How do i get the value of the custom property using the variable tMyVar? ... answer the tMyVar of this cd ... :-) > Regards, > Matthias Best Klaus -- Klaus Major http://www.major-k.de klaus at major-k.de From matthias_livecode_150811 at m-r-d.de Wed Aug 2 13:35:00 2017 From: matthias_livecode_150811 at m-r-d.de (Matthias Rebbe) Date: Wed, 2 Aug 2017 19:35:00 +0200 Subject: Hackintosh In-Reply-To: References: <46babc4f-2c3f-732f-790f-ed0b4a36a565@fourthworld.com> Message-ID: I also thought about creating a Hackintosh for my workplace to spent money. After i read many many instructions and forum posts at that time i decided to by a Mac. Why? Because i wanted to start working right away and did not want to spent to much time on building, fiddling and so on. And i wanted a system which i could update right away if an important update was available instead of reading again forums and waiting until a working solution was available. And if i count the time i used just for my initial investigations how to build it and if a Hackintosh suits me? Regards, Matthias Matthias Rebbe +49 5741 310000 ?matthiasrebbe.eu ? > Am 02.08.2017 um 18:45 schrieb Roger Eller via use-livecode >: > > Also of interest, MacWorld article (yes, MacWorld) tells users how to build > a Hackintosh. Although the author whines a little about it being involving > some work. > > http://www.macworld.com/article/3196994/macs/how-to-build-a-hackintosh.html > > Someday, I believe Apple will come around and offer Genuine OS X to select > models of PC hardware. But that's just my own hopeful idea. For now, it > is only for fun, and should not be considered for any type of business. If > your business can't afford a computer, then close the doors. > > ~Roger > > > On Wed, Aug 2, 2017 at 11:56 AM, Richard Gaskin via use-livecode < > use-livecode at lists.runrev.com> wrote: > >> We have a great community, having earned a reputation for providing a >> safe, friendly environment for learning LiveCode. >> >> With that in mind, please remember that Apple's EULA for macOS requires >> that it be run only on "Apple-branded computers". >> >> Discussions of using VMs on Mac hosts is great, useful for testing our >> apps on multiple OS versions. >> >> But we probably don't want to have discussions of violating Apple's >> copyright as part of this community's permanent public archive. >> >> There are other venues where such discussion can take place. Here in this >> official LiveCode support venue, it may be better to follow the guidelines >> used for the Forums, in which we avoid discussions which may be construed >> as encouraging illegal activity. >> >> Forum Guidelines >> >> >> -- >> Richard Gaskin >> LiveCode Community Liaison >> richard at livecode.org >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From hh at hyperhh.de Wed Aug 2 13:35:51 2017 From: hh at hyperhh.de (hh) Date: Wed, 2 Aug 2017 19:35:51 +0200 Subject: Points of Graphic Oval Message-ID: > BR wrote: >> HH wrote: >> A circle is, just like a Bezier curve, a mathematical model, for thinking, >> doing mathematics. Not realizable in our virtual world. >> What you can have and what you see are (more or less good) approximations >> to that model, here nothing more than simple polygons. > > But then, as the circle/oval got bigger one would see 360 "sides" but we don't. > So, how is it a "simple polygon" Create a new stack and an oval (=circle) of radius 68 or larger and get the effective points of it (you need to use LC > 6 for that). Then create a polygon with these points and increase the width and height of that graphic to card's size. Then you'll see the 360 sides ... ... IF, yes IF the width and height of the circle is 136 or larger. ELSE the number of lines of the effective points is less than 360. Probably because Mark is filtering without duplicate lines --- to your advantage in case you are going to move along these points list. on mouseUp if there is no grc "demo1" then create grc "demo1" set style of grc "demo1" to "oval" set width of grc "demo1" to 68 set height of grc "demo1" to 68 set loc of grc "demo1" to the loc of this card if there is no grc "demo2" then create grc "demo2" set style of grc "demo2" to the "Polygon" put the effective points of grc "demo1" into ep put the number of lines of ep set the points of grc "demo2" to ep set loc of grc "demo2" to the loc of this card set width of grc "demo2" to -100+the width of this card set height of grc "demo2" to -100+the height of this card end mouseUp Of course the graphics library increases the number of points to draw an oval whenever the width and height increases, also uses antialiasing to create the "optical illusion" of a circle. From matthias_livecode_150811 at m-r-d.de Wed Aug 2 13:46:48 2017 From: matthias_livecode_150811 at m-r-d.de (Matthias Rebbe) Date: Wed, 2 Aug 2017 19:46:48 +0200 Subject: how to get the value of a custom property if the name of the cProperty is in a variable? In-Reply-To: <8F48407D-F2F3-4489-B030-94C259914AF4@major-k.de> References: <8F48407D-F2F3-4489-B030-94C259914AF4@major-k.de> Message-ID: <2A7C9CDD-3055-4F3C-8DEC-EF1A6C145BE8@m-r-d.de> Thanks Klaus Tried your suggestion already before posting, but that did not work. Therefore I thought i have to use value or so. But i just had a ?little? error in my script. I should check my code twice before asking. Thanks again. Matthias Matthias Rebbe +49 5741 310000 ?matthiasrebbe.eu ? > Am 02.08.2017 um 19:25 schrieb Klaus major-k via use-livecode >: > > Hi Matthias, > >> Am 02.08.2017 um 19:20 schrieb Matthias Rebbe via use-livecode >: >> >> Hi, >> >> let?s say a card has a custom property name cMyProp. >> The variable tMyVar contains the word ?cMyProp? >> How do i get the value of the custom property using the variable tMyVar? > > ... > answer the tMyVar of this cd > ... > :-) > >> Regards, >> Matthias > > Best > > Klaus > > -- > Klaus Major > http://www.major-k.de > klaus at major-k.de > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From hh at hyperhh.de Wed Aug 2 13:47:08 2017 From: hh at hyperhh.de (hh) Date: Wed, 2 Aug 2017 19:47:08 +0200 Subject: Points of Graphic Oval Message-ID: <552CFDA6-01AC-445E-9E93-6D9868102EE3@hyperhh.de> Actually you don't see "sides" of a regular 360-gon because the engine uses "trunc()" differing from my "round()" used earlier in this thread. So the approximation using "round" may be better in case you are scaling such points lists. From mark at livecode.com Wed Aug 2 14:07:57 2017 From: mark at livecode.com (Mark Waddingham) Date: Wed, 2 Aug 2017 20:07:57 +0200 Subject: Made with . . . In-Reply-To: <1EBBACDA-7DDD-41A6-86D0-8F888931EB99@major-k.de> References: <922d0470-1d83-e731-8306-08526df3605e@gmail.com> <1EBBACDA-7DDD-41A6-86D0-8F888931EB99@major-k.de> Message-ID: <72FA60EB-5662-44B1-89F6-932A5C6E7AAB@livecode.com> Increasingly less - and in contrast the amount that could be done in LC instead of C++ continues to increase (far more slowly than I'd like - but hey, if wishes were horses...) Indeed, a lot of the 'heavy lifting' seen in the engine comes down to either the core abstractions which the LiveCode script language requires (i.e. the VM), direct access to C exposed APIs, or for speed. For example a lot of 'compound' operations such as the set operation commands can be implemented in LCS - indeed it is a very readable way to define their behaviour - but become far more effective for large arrays if done in C++ (i.e. for optimisation purposes). Although that is largely because we don't have a native code compiler for LCS. LCB has started to provide more of what is needed to 'get away from C++' - admittedly its performance is not great as yet, but for its current purposes it is more than sufficient. In particular, UI elements generally require little 'hardcore' performance - just rendering and property marshalling; similarly, wrapping system and third-party APIs to the level where they are 'more natural' in LCS mainly just requires appropriate type mapping and indexing of objects (enter LCB). LiveCode Script is a complete programming language in its own right; it lacks direct access to third-party APIs certainly, however it is perhaps surprising how much outside of user interaction related tasks require that. Even in 7+, it's speed is perfectly reasonable for 'reasonably sized' computational tasks (for certain types of thing it is actually much more memory efficient due to copy on write being used for values - which increase the memory size of tasks, if not speed). As a mode of expression of algorithms, it perhaps start to approach Knuth's idea of 'literate programming' *without* using a blended typesetting + code approach (which is how TeX and MetaFont are written, for example). So, if for that reason alone there's rarely harm in writing something in LCS first, and *then* taking to rewrite critical parts in a lower level language if required for speed reasons. Warmest Regards, Mark. Sent from my iPhone > On 2 Aug 2017, at 13:50, Klaus major-k via use-livecode wrote: > > Hi Richmond, > >> Am 02.08.2017 um 13:43 schrieb Richmond Mathewson via use-livecode : >> >> " remember that LC is made with LC, so everything in the IDE is a stack resp. scripted and can be modified!" >> recently claimed by someone elsewhere [Hi, Klaus :) ] > > hi mate! :-) > >> BUT: it that really true? >> Why do I have a funny feeling that a lot of the "heavy lifting" is done with C++ ? > > Yes, that is true, except for the engine and its functionality which is made with C++ or whatever. > >> Richmond. > > Best > > Klaus > > -- > Klaus Major > http://www.major-k.de > klaus at major-k.de > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From mark at livecode.com Wed Aug 2 14:15:14 2017 From: mark at livecode.com (Mark Waddingham) Date: Wed, 2 Aug 2017 20:15:14 +0200 Subject: Made with . . . In-Reply-To: <922d0470-1d83-e731-8306-08526df3605e@gmail.com> References: <922d0470-1d83-e731-8306-08526df3605e@gmail.com> Message-ID: <909418BA-4225-4109-8C38-A3305C6442D1@livecode.com> Hah! I missed the IDE bit - 99.99% of the IDE is written in LCS (some widgets in LCB). Pretty much the only bits which aren't are done script introspection features (e.g. revAvailableHandlers), the core standalone building part (which fettles with executables on each platform) and the mechanism it uses for detecting changes in properties. The latter couldn't be done in LCS as it stands - the rest probably could but would be too slow for large scripts and message paths (revAvailableHandlers); or where having direct access to the system headers and such in their natural state made the code 'easier' to write (although not necessarily on the readability / maintenance) side of things. Warmest Regards, Mark. Sent from my iPhone > On 2 Aug 2017, at 13:43, Richmond Mathewson via use-livecode wrote: > > " remember that LC is made with LC, so everything in the IDE is a stack resp. scripted and can be modified!" > > recently claimed by someone elsewhere [Hi, Klaus :) ] > > BUT: it that really true? > > Why do I have a funny feeling that a lot of the "heavy lifting" is done with C++ ? > > Richmond. > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From mark at livecode.com Wed Aug 2 14:41:42 2017 From: mark at livecode.com (Mark Waddingham) Date: Wed, 2 Aug 2017 20:41:42 +0200 Subject: Hackintosh In-Reply-To: References: <75B4B06B-6C63-4B33-8371-4E96D40AF956@iotecdigital.com> Message-ID: Indeed - freedom of speech and all. However, I have to side with Richard here - this forum is about LiveCode and not anything else. Sure we have 'OT' discussions now and again but generally they either 'peter out' or are suggested that this is not the appropriate forum (the latter in this case). Whilst I appreciate Apple's policy maybe irksome to many, it works for them so we do have to respect that. Warmest Regards, Mark. Sent from my iPhone > On 2 Aug 2017, at 18:32, Richard Gaskin via use-livecode wrote: > > Bob Sneidar wrote: > > >> On Aug 2, 2017, at 08:56 , Richard Gaskin wrote: > >> > >> But we probably don't want to have discussions of violating Apple's > >> copyright as part of this community's permanent public archive. > > > > Not to start a riot or anything, but I wasn't aware discussions could > > violate a copyright. > > I wrote "...discussions OF..." > > See also: bikeshedding > > -- > Richard Gaskin > Fourth World Systems > Software Design and Development for the Desktop, Mobile, and the Web > ____________________________________________________________________ > Ambassador at FourthWorld.com http://www.FourthWorld.com > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From dochawk at gmail.com Wed Aug 2 15:02:28 2017 From: dochawk at gmail.com (Dr. Hawkins) Date: Wed, 2 Aug 2017 12:02:28 -0700 Subject: merge() only evaluating first expression? Message-ID: Before I file the bug report, I want to check that this is an error (or am I missing something I have the custom property blElQry with value SELECT kywd FROM [[dhtbl_dat]] WHERE kywd LIKE '[[the leadFdWc of srcRw]]%' ESCAPE '\' ORDER BY kywd However, the single quote appears to be blocking evaluation of the second bracketed term; the first is correctly taken from a variable, but the second retains that literal text. I don't believe that LiveCode should be treating a single-quoted range as a literal in merge(), should it? For that matter, nothing in the dictionary suggests that a double-quoted string would be exempt from valuation. -- Dr. Richard E. Hawkins, Esq. (702) 508-8462 From mark at livecode.com Wed Aug 2 15:13:55 2017 From: mark at livecode.com (Mark Waddingham) Date: Wed, 2 Aug 2017 21:13:55 +0200 Subject: Points of Graphic Oval In-Reply-To: References: Message-ID: <2BDA25CF-872A-4577-B292-26DE3D46B418@livecode.com> B?zier curves are a polynomial - usually quadratic (2nd degree) or cubic (3rd degree) but the model extends to arbitrary order. With four cubic B?zier curves (so 8 quadratic) you can make an exceptionally good approximation to an oval - but it is not exact. Indeed (anyone who might have a better memory of this than I, please correct me) from memory, to accurately represent an oval (or arc - any general planar quardratic shape written naturally as a quadratic polynomial in TWO not ONE variable - eg x^2 + y^2 = 0) you would require an infinite single variate polynomial (and I think this would only work for a quadrant too). This can be seen from the fact that to compute cos/sin/tan (which are the mathematical primitives in some sense acting here) require a 'taylor' expansion which is an infinite polynomial sequence (with order tending to infinity) which converges to the required value. Enough abstract math over - here the only 'issue' with the effectivePoints for the purpose described is that it does not take into account radius to adjust the number of generated points - hence the 'too many points at certain sizes' problem. Now this is not an error or bug - I remember Mark (not me!) submitting that PR and reviewing it - what he did was entirely reasonable given that there were no apparent use-cases at the time, and without use-case then you can only make things generally useful, and not specifically useful. (After all 360 is a key number as it is the number of DEGREES in a full circle - so is something which is understandable to most). Indeed, what is actually needed here is to approximate the required arc based on a notion of 'flatness' and 'pixel positioning'. Meaning that you want the line segments to have minimal maximal (that is not a typo a for once!) perpendicular distance from the true curve, and still be large enough to sit at pixel positions so as not to cause jitter (a slightly subjective idea). I strongly suspect Malte's animationEngine does this 'correctly' for this case as it was designed with this kind of use case in mind. Anyway I know this thread has gone on a bit and perhaps the above is not really useful anymore but I thought it (1) might be interesting and (2) might perhaps encourage the more mathematically minded among us (and yes, I have one or two specific people in mind!) to maybe find a spare moment to 'do the math' and write up how it should work. And yes, there are those on the team who probably could - but I think all of us have long sinced 'hung up' our mathematician's cowels and are now focused on more concrete day to day endeavours... However, that focus does perhaps mean we could happily implement whatever correct (relative to this use case - which is probably the singularly most important one!) solutions appear. Warmest Regards, Mark. Sent from my iPhone > On 31 Jul 2017, at 22:23, Bob Sneidar via use-livecode wrote: > > Both are part of the joke. I shouldn't explain it because that is like disecting a frog. The frog dies and nobody cares. :-) > > But geometrically in any line there are an infinite number of points, because a point is an infinitely small coordinate. That's if by point you mean literally points in the geometrical sense. But if you mean how many pixels on a given display to create a visually smooth curve, well that is another matter. And if by points you meant anchors in a vector based drawing program, why typically 4 points, although 3 will do, I just don't know how perfect the circle can be and I thing an oval would require 4. > > See? The frog died and nobody cares! > > Bob S > > >>> On Jul 31, 2017, at 08:34 , hh via use-livecode wrote: >>> >>> Bob S. wrote: >>> By strict geometry, an infinite amount. Using Bezier, 4. :-) >> >> Just because I am curious which part of your statement is the joke: >> >> How do you define "strict geometry"? >> And what is an "infinite amount"? > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From richmondmathewson at gmail.com Wed Aug 2 15:29:29 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Wed, 2 Aug 2017 22:29:29 +0300 Subject: Mark in a kilt... In-Reply-To: References: <0635f89e-fa2a-b4d5-5e60-a2668b281bef@tweedly.net> <2aaf5a10-93b8-13a7-6eac-46b5ad96b750@gmail.com> <6BA000CC-F2A0-454E-8DBF-2B81AFA184D1@iotecdigital.com> Message-ID: <77dd6cb6-c6e1-8d60-fd43-9fdab6cd953b@gmail.com> Would that be Emperor Trump's wall between the United States of America and the United States of Mexico (and Texas), or Emperor Hadrian's one between Newcastle and the Solway Firth, Emperor Antoninus' one between Glasgow and the Firth of Forth, or the one between command-line languages and object-based ones? Were I Emperor kilts would be compulsory all over. Richmond. On 8/2/17 4:09 pm, Mike Kerner via use-livecode wrote: > were they from north of the wall? > > On Tue, Aug 1, 2017 at 10:38 AM, Bob Sneidar via use-livecode < > use-livecode at lists.runrev.com> wrote: > >> I used to play marching drums in a Scottish bagpipe band. We were good >> too. Won 1st place in the DC 4th of July parade once. We had excellent >> instructors. >> >> Bob S >> >> >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> > > From mark at livecode.com Wed Aug 2 15:43:02 2017 From: mark at livecode.com (Mark Waddingham) Date: Wed, 2 Aug 2017 21:43:02 +0200 Subject: Points of Graphic Oval In-Reply-To: <3D150F6C-1494-45E2-BA59-77B315CAFB03@hindu.org> References: <3D150F6C-1494-45E2-BA59-77B315CAFB03@hindu.org> Message-ID: <5650629A-ED42-49F8-92D1-34990F2A7BE8@livecode.com> A general arc (which an oval is an example of) is represented in LiveCode like elsewhere as a maximum of four cubic B?zier curves. These B?zier curves are then flattened to polynomials relative to a notion of 'flatness' - which means that the you iterate (using the de Casteljeu method) until you reach a point that the maximum perpendicular distance that the curve lies from the line segment (imagine drawing lines at 90deg up from the line to hit the arc - you are looking for the longest or equal, which always exists). Basically if you set flatness to be 0.5 pixels then the human eye cannot distinguish the difference (when taking into account the visual quantisation that occurs - resolution of the screen and antialiasing more than makes up for it). So, at the level of the graphic object it is a true arc, at the level of instructing the graphics library it is a B?zier approximation but at the level of working out what pixels to render it is a polygon. Whether that means the engine works in true ovals or not, I'll leave to whatever existential proclivities you hold ;) Warmest Regards, Mark. Sent from my iPhone > On 2 Aug 2017, at 05:51, Sannyasin Brahmanathaswami via use-livecode wrote: > > Sequently found "effectivePoints" and used that and it works fine on Mobile. > > But this thread became something more, it became about generating a polygon object that "looks like" an oval. > > But is an oval such an object at all? > > Mark Wieder via use-livecode" wrote: > > How many points would you guess are in an oval? > > BR Ahhh, programmatically perhaps it has no "points" as such? being a single continuous line shaped only by its changing arc-radius values.? > i.e. a mystic conundrum: "infinite number of points and not points at all" > > SCOTT Rossi wrote: > > You can use the effectivePoints to get the points of any graphic shape, but depending on the size, your oval may produce too many points. > > In any event, your source oval doesn't need to be perfect. If you reference a "decent" number of points along the shape of the oval, your image will have the appearance of moving along an elliptical path. > > > BR: But using "The effectivePoints" seems to work as if there were no points (as such), but only a contiguous line? > > Which takes us back to Marks first question?"how many points in an oval" which I will re cast as: > > At the depths of the LC engine imaging algorithms? is a circle or oval made up of points at all? > > br > > > > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From mark at livecode.com Wed Aug 2 15:50:59 2017 From: mark at livecode.com (Mark Waddingham) Date: Wed, 2 Aug 2017 21:50:59 +0200 Subject: Mark in a kilt... In-Reply-To: <77dd6cb6-c6e1-8d60-fd43-9fdab6cd953b@gmail.com> References: <0635f89e-fa2a-b4d5-5e60-a2668b281bef@tweedly.net> <2aaf5a10-93b8-13a7-6eac-46b5ad96b750@gmail.com> <6BA000CC-F2A0-454E-8DBF-2B81AFA184D1@iotecdigital.com> <77dd6cb6-c6e1-8d60-fd43-9fdab6cd953b@gmail.com> Message-ID: <0802DFE2-2FD2-4260-B312-A7EA9224AD7B@livecode.com> Heh - I'll say one thing for kilts... in the blistering heat of Arizona (I think it peaked at 42 Celsius) - it was a lot more comfortable outside than shorts or trousers! (The black long sleeved shirt less so - but life's not perfect!) Warmest Regards, Mark. Sent from my iPhone > On 2 Aug 2017, at 21:29, Richmond Mathewson via use-livecode wrote: > > Would that be Emperor Trump's wall between the United States of America and the United States of Mexico (and Texas), > or Emperor Hadrian's one between Newcastle and the Solway Firth, Emperor Antoninus' one between Glasgow and the Firth of Forth, > or the one between command-line languages and object-based ones? > > Were I Emperor kilts would be compulsory all over. > > Richmond. > >> On 8/2/17 4:09 pm, Mike Kerner via use-livecode wrote: >> were they from north of the wall? >> >> On Tue, Aug 1, 2017 at 10:38 AM, Bob Sneidar via use-livecode < >> use-livecode at lists.runrev.com> wrote: >> >>> I used to play marching drums in a Scottish bagpipe band. We were good >>> too. Won 1st place in the DC 4th of July parade once. We had excellent >>> instructors. >>> >>> Bob S >>> >>> >>> >>> _______________________________________________ >>> use-livecode mailing list >>> use-livecode at lists.runrev.com >>> Please visit this url to subscribe, unsubscribe and manage your >>> subscription preferences: >>> http://lists.runrev.com/mailman/listinfo/use-livecode >>> >> >> > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From richmondmathewson at gmail.com Wed Aug 2 15:53:18 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Wed, 2 Aug 2017 22:53:18 +0300 Subject: Mark in a kilt... In-Reply-To: References: <0635f89e-fa2a-b4d5-5e60-a2668b281bef@tweedly.net> <2aaf5a10-93b8-13a7-6eac-46b5ad96b750@gmail.com> <6BA000CC-F2A0-454E-8DBF-2B81AFA184D1@iotecdigital.com> Message-ID: On 8/2/17 5:56 pm, Bob Sneidar via use-livecode wrote: > > a real Scottish clan. And what would a "real" Scottish clan be, forbye? Personally I wear a green kilt in "Hunting McIntosh" (invented in 1952) because my father's family are originally Scandinavian and my maternal Grandfather's name was Richmond McIntosh. He never wore a kilt, but, occasionally wore tartan trews in some generic plaid. My paternal grandfather's folk never wore kilts. My paternal grandmother's father wore a sort of muddy brown/bottle green kilt that he picked up in a cheap Army surplus shop. Most tartans were "fixed" to names by the Sobieski Stewarts: 2 crafty Polish businessmen who landed in the Cromarty Firth claiming to be the legitimate heirs to His majesties Charles III and Henry IX (which is nonsense because the heir general to the Jacobite line is Franz Herzog von Bayern): they set up a tartan factory and started churning out "authentic" clan kilts faster than you can say "Donald Trump". McIntosh are a sept of the Clan Chattan (clan of the cat) federation that held feudal power in a large swathe of central Alba for some time. Beyond the chief (Lachlan Mackintosh; a poncy sort of fellow who teaches English in Singapore when he isn't wiggling his spindle shanks round Moy house) there are no "official" clans . . . All this reminds me of 2 jokes: 1. A man in Carbondale who certainly looked as if at least some of his ancestors had "enjoyed" a forced trip over the Atlantic from the Barbary coast assured me he was 100% American (a bit like Donald Trump, Barack Obama and Bill Clinton). 2. I can assure I am a "real" Scot as: 2.1. I was born in Scotland. 2.2. My mother is half-English, half-Scots, my father is 100% Scots (with a Scandanavian name). 2.3. I went to school in England and spent all my childhood there. 2.4. I have red hair: which I inherited from my English grandmother (who had Norwegian ancestry), as all my Scots relatives had either jet-black or lint-white hair. 2.5 I own a house in Scotland (right next door to a man from California). 2.6 There is a story (unchecked and uncheckable) that, on my paternal great-grandfather's side there was a woman from Ethiopia a few generations back. It might also be worth reflecting that for quite a long period the biggest kilt factory in the world was in the Yukon (presumably also a part of Scotland). Oh, and while I'm here: my wife is a "pure" Bulgarian as many of her family came from Macedonia with Albanian as their mother-tongue. Lots of Irishmen wear kilts. Macedonians sometimes wear kilts. People in Bhutan and Tonga wear kilts. People in Kerala wear long kilts called lunghis. NOW: go and make your ANSWER DIALOGS tartan (Hunting Macintosh [oh, and you can spell 'McIntosh' at least 3 ways] of course): http://forums.livecode.com/viewtopic.php?f=7&t=29541&start=15#p156507 Richmond. From kaveh at rivervalleytechnologies.com Wed Aug 2 15:53:33 2017 From: kaveh at rivervalleytechnologies.com (Kaveh Bazargan) Date: Wed, 2 Aug 2017 20:53:33 +0100 Subject: Can't use double finger scroll on mac for grouped controls In-Reply-To: <89B45966-2DC0-438C-B27F-865868F9D739@appisle.net> References: <89B45966-2DC0-438C-B27F-865868F9D739@appisle.net> Message-ID: Genius. Thank you :-) On 2 August 2017 at 01:35, Monte Goulding via use-livecode < use-livecode at lists.runrev.com> wrote: > This is something you need to script for groups. Something like this: > > on rawKeyDown pKeyCode > if pKeyCode is 65308 then > get the scroll of me > add 10 to it > set the scroll of me to it > else if pKeyCode is 65309 then > get the scroll of me > subtract 10 from it > set the scroll of me to it > end if > end rawKeyDown > > > On 2 Aug 2017, at 8:21 am, Kaveh Bazargan via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > > Using LiveCode 9 on Mac OSX > > > > I have some controls that are grouped and the group has been made > smaller, > > so have a vertical scroll bar ? very nice feature. > > > > On one stack I can use two finger scroll on mac trackpad, but on another > I > > can't. But mouse on scroll bar works ok. > > > > I have checked and all settings are the same. Is there a particular > setting > > that allows two finger scrolling? > > > > -- > > Kaveh Bazargan > > Director > > River Valley Technologies > > @kaveh1000 > > +44 7771 824 111 > > www.rivervalleytechnologies.com > > _______________________________________________ > > use-livecode mailing list > > use-livecode at lists.runrev.com > > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > > http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode -- Kaveh Bazargan Director River Valley Technologies @kaveh1000 +44 7771 824 111 www.rivervalleytechnologies.com From dochawk at gmail.com Wed Aug 2 15:56:48 2017 From: dochawk at gmail.com (Dr. Hawkins) Date: Wed, 2 Aug 2017 12:56:48 -0700 Subject: how to get the value of a custom property if the name of the cProperty is in a variable? In-Reply-To: <8F48407D-F2F3-4489-B030-94C259914AF4@major-k.de> References: <8F48407D-F2F3-4489-B030-94C259914AF4@major-k.de> Message-ID: On Wed, Aug 2, 2017 at 10:25 AM, Klaus major-k via use-livecode < use-livecode at lists.runrev.com> wrote: > > answer the tMyVar of this cd > This is an area that is awkward in live code. The use of unquoted literals for this is inconsistent with most of live code (but quoting would be inconsistent with the built in properties, so . . .) I have "loops" like repeat for each word someProp in "theOnlyPropInTheList" set the someProp of someControl to myVal end repeat If you have a variable whose name is the same as the property, there does does not seem to be a good solution. -- Dr. Richard E. Hawkins, Esq. (702) 508-8462 From mark at livecode.com Wed Aug 2 16:00:14 2017 From: mark at livecode.com (Mark Waddingham) Date: Wed, 2 Aug 2017 22:00:14 +0200 Subject: merge() only evaluating first expression? In-Reply-To: References: Message-ID: If you evaluate the second expression in that merge in the context (i.e. Same handler) of the call to merge does it throw an error? If a compile or runtime error occurs in any [[ ... ]] bracketed part of the merge string, then it gets rendered literally and not the value of it (as it can't be evaluated). Warmest Regards, Mark. Sent from my iPhone > On 2 Aug 2017, at 21:02, Dr. Hawkins via use-livecode wrote: > > Before I file the bug report, I want to check that this is an error (or am > I missing something > > I have the custom property blElQry with value > > SELECT kywd FROM [[dhtbl_dat]] WHERE kywd LIKE '[[the leadFdWc of srcRw]]%' > ESCAPE '\' ORDER BY kywd > > However, the single quote appears to be blocking evaluation of the second > bracketed term; the first is correctly taken from a variable, but the > second retains that literal text. > > I don't believe that LiveCode should be treating a single-quoted range as > a literal in merge(), should it? > > For that matter, nothing in the dictionary suggests that a double-quoted > string would be exempt from valuation. > -- > Dr. Richard E. Hawkins, Esq. > (702) 508-8462 > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From dochawk at gmail.com Wed Aug 2 16:00:22 2017 From: dochawk at gmail.com (Dr. Hawkins) Date: Wed, 2 Aug 2017 13:00:22 -0700 Subject: Hackintosh In-Reply-To: <75B4B06B-6C63-4B33-8371-4E96D40AF956@iotecdigital.com> References: <46babc4f-2c3f-732f-790f-ed0b4a36a565@fourthworld.com> <75B4B06B-6C63-4B33-8371-4E96D40AF956@iotecdigital.com> Message-ID: On Wed, Aug 2, 2017 at 9:13 AM, Bob Sneidar via use-livecode < use-livecode at lists.runrev.com> wrote: > Not to start a riot or anything, but I wasn't aware discussions could > violate a copyright. > > Under some legal systems, discussions about how to engage in a crime, and encouraging others to do so, can be part of a civil or criminal conspiracy, among others. Or inducement to commit a crime. Or . . In the US, it's a fuzzy line -- Dr. Richard E. Hawkins, Esq. (702) 508-8462 From richmondmathewson at gmail.com Wed Aug 2 16:07:09 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Wed, 2 Aug 2017 23:07:09 +0300 Subject: Hackintosh In-Reply-To: <46babc4f-2c3f-732f-790f-ed0b4a36a565@fourthworld.com> References: <46babc4f-2c3f-732f-790f-ed0b4a36a565@fourthworld.com> Message-ID: Apple's EULA may not actually be legal or legally enforcable in a large number of territories where this Use-List is read. Just seen Tim Cook "sucking the kneecaps" of China's one-party state's leaders and blethering anent "adhering to the law" re VPNs. Nothing makes me despise anyone more than trying to justify adherence to laws of a totalitarian state. Sometimes the law is an ass; as has been demonstrated by sensible lawyers time out of mind. This kind of reaction makes me want to scream "Richard Stallman" in a very trenchant tones. I also don't see how discussing how one might go about something has to be seen as a demonstration of an intention to carry out those actions . . . . . . but then I don't live in a paranoid police state (Bulgaria had a patch of that and gave it up, just as some, previously open, states started on an opposite journey). Of course in "parts west" they don't even need the full apparatus of a police-state any more as they have, through political correctness effectively erected what Mao Zedong ( a well-known advocate of democracy) termed "a dictatorship of the proletariat" where the people police themselves. Anyway we don't need to worry about that when we have our own folk attempting to impose censorship nearer to home. I have come up against this attitude in several places recently, the idea that a place is "safe and friendly" only when we are not allowed to express certain opinions. That is the beginning of the end of proper, robust discussion and healthy creativity. Richmond. On 8/2/17 6:56 pm, Richard Gaskin via use-livecode wrote: > We have a great community, having earned a reputation for providing a > safe, friendly environment for learning LiveCode. > > With that in mind, please remember that Apple's EULA for macOS > requires that it be run only on "Apple-branded computers". > > Discussions of using VMs on Mac hosts is great, useful for testing our > apps on multiple OS versions. > > But we probably don't want to have discussions of violating Apple's > copyright as part of this community's permanent public archive. > > There are other venues where such discussion can take place. Here in > this official LiveCode support venue, it may be better to follow the > guidelines used for the Forums, in which we avoid discussions which > may be construed as encouraging illegal activity. > > Forum Guidelines > > > -- > Richard Gaskin > LiveCode Community Liaison > richard at livecode.org > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From richmondmathewson at gmail.com Wed Aug 2 16:07:55 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Wed, 2 Aug 2017 23:07:55 +0300 Subject: Hackintosh In-Reply-To: <75B4B06B-6C63-4B33-8371-4E96D40AF956@iotecdigital.com> References: <46babc4f-2c3f-732f-790f-ed0b4a36a565@fourthworld.com> <75B4B06B-6C63-4B33-8371-4E96D40AF956@iotecdigital.com> Message-ID: <286d9e6e-1fc3-7929-f279-2352c24aa60d@gmail.com> I have just started the riot: but, hey, you knew you could rely on me :) Kisses, Richmond. On 8/2/17 7:13 pm, Bob Sneidar via use-livecode wrote: > Not to start a riot or anything, but I wasn't aware discussions could violate a copyright. > > Bob S > > >> On Aug 2, 2017, at 08:56 , Richard Gaskin via use-livecode wrote: >> >> But we probably don't want to have discussions of violating Apple's copyright as part of this community's permanent public archive. > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From dochawk at gmail.com Wed Aug 2 16:14:15 2017 From: dochawk at gmail.com (Dr. Hawkins) Date: Wed, 2 Aug 2017 13:14:15 -0700 Subject: merge() only evaluating first expression? In-Reply-To: References: Message-ID: On Wed, Aug 2, 2017 at 1:00 PM, Mark Waddingham via use-livecode < use-livecode at lists.runrev.com> wrote: > If you evaluate the second expression in that merge in the context (i.e. > Same handler) of the call to merge does it throw an error? > Ahh, it was viciously subtle (and visibly taunting) In this routine, I had used "srcRr" in the way I often use "srcRw" (it's a source row), probably over variable name/custom property collisions. And I'm in need of a stronger eyeball prescription and couldn't tell them apart! Thanks so much (now to go scoop my hair back from the floor and glue it on my head . . ) -- Dr. Richard E. Hawkins, Esq. (702) 508-8462 From richmondmathewson at gmail.com Wed Aug 2 16:15:08 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Wed, 2 Aug 2017 23:15:08 +0300 Subject: Hackintosh In-Reply-To: References: <75B4B06B-6C63-4B33-8371-4E96D40AF956@iotecdigital.com> Message-ID: <0ce1f7c2-1ab9-462f-b6fa-f1f626b7d655@gmail.com> No, I don't think we have to respect Apple's policy at all. But I do tend to agree that any discussion of anything that might rub Apple up the wrong way if it is to take place on this use-list should only be in relation to LiveCode. Oh, and, by the way: there are buckets of resources and dicussion forums about Hackintoshes elsewhere; so this really is necessary HERE. BUT, there is absolutely nothing wrong with discussing how to construct a machine that might or might not violate Apple's EULA. Richmond. On 8/2/17 9:41 pm, Mark Waddingham via use-livecode wrote: > Indeed - freedom of speech and all. > > However, I have to side with Richard here - this forum is about LiveCode and not anything else. Sure we have 'OT' discussions now and again but generally they either 'peter out' or are suggested that this is not the appropriate forum (the latter in this case). > > Whilst I appreciate Apple's policy maybe irksome to many, it works for them so we do have to respect that. > > Warmest Regards, > > Mark. > > Sent from my iPhone > >> On 2 Aug 2017, at 18:32, Richard Gaskin via use-livecode wrote: >> >> Bob Sneidar wrote: >> >>>> On Aug 2, 2017, at 08:56 , Richard Gaskin wrote: >>>> >>>> But we probably don't want to have discussions of violating Apple's >>>> copyright as part of this community's permanent public archive. >>> Not to start a riot or anything, but I wasn't aware discussions could >>> violate a copyright. >> I wrote "...discussions OF..." >> >> See also: bikeshedding >> >> -- >> Richard Gaskin >> Fourth World Systems >> Software Design and Development for the Desktop, Mobile, and the Web >> ____________________________________________________________________ >> Ambassador at FourthWorld.com http://www.FourthWorld.com >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From richmondmathewson at gmail.com Wed Aug 2 16:16:48 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Wed, 2 Aug 2017 23:16:48 +0300 Subject: Mark in a kilt... In-Reply-To: <0802DFE2-2FD2-4260-B312-A7EA9224AD7B@livecode.com> References: <0635f89e-fa2a-b4d5-5e60-a2668b281bef@tweedly.net> <2aaf5a10-93b8-13a7-6eac-46b5ad96b750@gmail.com> <6BA000CC-F2A0-454E-8DBF-2B81AFA184D1@iotecdigital.com> <77dd6cb6-c6e1-8d60-fd43-9fdab6cd953b@gmail.com> <0802DFE2-2FD2-4260-B312-A7EA9224AD7B@livecode.com> Message-ID: <3637f612-54fa-831f-5196-620fe18365cd@gmail.com> Yes, I did wonder at the black shirt: I tend to wear a white one in the summer. But the two of you did look absolutely smashing! Richmond. On 8/2/17 10:50 pm, Mark Waddingham via use-livecode wrote: > Heh - I'll say one thing for kilts... in the blistering heat of Arizona (I think it peaked at 42 Celsius) - it was a lot more comfortable outside than shorts or trousers! (The black long sleeved shirt less so - but life's not perfect!) > > Warmest Regards, > > Mark. > > Sent from my iPhone > >> On 2 Aug 2017, at 21:29, Richmond Mathewson via use-livecode wrote: >> >> Would that be Emperor Trump's wall between the United States of America and the United States of Mexico (and Texas), >> or Emperor Hadrian's one between Newcastle and the Solway Firth, Emperor Antoninus' one between Glasgow and the Firth of Forth, >> or the one between command-line languages and object-based ones? >> >> Were I Emperor kilts would be compulsory all over. >> >> Richmond. >> >>> On 8/2/17 4:09 pm, Mike Kerner via use-livecode wrote: >>> were they from north of the wall? >>> >>> On Tue, Aug 1, 2017 at 10:38 AM, Bob Sneidar via use-livecode < >>> use-livecode at lists.runrev.com> wrote: >>> >>>> I used to play marching drums in a Scottish bagpipe band. We were good >>>> too. Won 1st place in the DC 4th of July parade once. We had excellent >>>> instructors. >>>> >>>> Bob S >>>> >>>> >>>> >>>> _______________________________________________ >>>> use-livecode mailing list >>>> use-livecode at lists.runrev.com >>>> Please visit this url to subscribe, unsubscribe and manage your >>>> subscription preferences: >>>> http://lists.runrev.com/mailman/listinfo/use-livecode >>>> >>> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From richmondmathewson at gmail.com Wed Aug 2 16:18:04 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Wed, 2 Aug 2017 23:18:04 +0300 Subject: Hackintosh In-Reply-To: References: <46babc4f-2c3f-732f-790f-ed0b4a36a565@fourthworld.com> <75B4B06B-6C63-4B33-8371-4E96D40AF956@iotecdigital.com> Message-ID: <912ce34f-c5a9-413c-c29c-16833b804059@gmail.com> "a fuzzy line" Sounds a bit like the Emperor's USA/Mexico wall. Richmond. On 8/2/17 11:00 pm, Dr. Hawkins via use-livecode wrote: > On Wed, Aug 2, 2017 at 9:13 AM, Bob Sneidar via use-livecode < > use-livecode at lists.runrev.com> wrote: > >> Not to start a riot or anything, but I wasn't aware discussions could >> violate a copyright. >> >> Under some legal systems, discussions about how to engage in a crime, and > encouraging others to do so, can be part of a civil or criminal conspiracy, > among others. Or inducement to commit a crime. Or . . > > In the US, it's a fuzzy line > > From hh at hyperhh.de Wed Aug 2 16:18:20 2017 From: hh at hyperhh.de (hh) Date: Wed, 2 Aug 2017 22:18:20 +0200 Subject: Points of Graphic Oval Message-ID: <0B00CACF-4BFF-4F85-8D61-AF2C6749FE26@hyperhh.de> > Mark wrote: > So, at the level of the graphic object it is a true arc, at the level of instructing > the graphics library it is a B?zier approximation but at the level of working out what > pixels to render it is a polygon. Thanks for arriving from your previous post at this very clear statement. You will have to do a lot of such approximations by simple polygons when you implement to move along an SVG path for your SVG widget... ;-) p.s. The 360 points of Mark are really good enough for very large circles in order to move along such points in 2 seconds. These are 3 points per tick! From mark at livecode.com Wed Aug 2 16:34:08 2017 From: mark at livecode.com (Mark Waddingham) Date: Wed, 2 Aug 2017 22:34:08 +0200 Subject: Hackintosh In-Reply-To: References: <46babc4f-2c3f-732f-790f-ed0b4a36a565@fourthworld.com> Message-ID: <23B6FDE0-6352-4A58-9664-A701D35D3296@livecode.com> Whilst that may be true - a significant part of LiveCode's business comes from the US... As does our support for Apple devices. Of course, Apple probably don't care (why would they? Hackintoshes are not Macs). However, Apple did think it reasonable to outlaw anything other than Obj-C and JS (through the WebView) apps on iOS for a while. So let's not presume we can 'read' intent of such 'powerful' entities. As I said there are other forums for discussing hackintosh creation - it is definitely off topic for this forum; so beyond a few links of elsewhere to look (which our helpful users have already supplied) I think this discussion has probably done all it needs to, hasn't it? At the end of the day, unless you believe in anarchy (which you might, I have no issue with that - particularly if you can explain to me how that works in practice ;)), some observance of rules is required - and there is a difference between discussing the rules (e.g. the meta level) which can be most enlightening; and the discussing of how to break them (which often gets quite boring in any specific case after a while - especially as plenty of other people have discussed them at length and in detail elsewhere) ;) Caution is sometimes the greatest approach anyone can take, if you actually want to effect change. Warmest Regards, Mark. Sent from my iPhone > On 2 Aug 2017, at 22:07, Richmond Mathewson via use-livecode wrote: > > Apple's EULA may not actually be legal or legally enforcable in a large number of territories > where this Use-List is read. > > Just seen Tim Cook "sucking the kneecaps" of China's one-party state's leaders and blethering anent "adhering to the law" re VPNs. > Nothing makes me despise anyone more than trying to justify adherence to laws of a totalitarian state. > > Sometimes the law is an ass; as has been demonstrated by sensible lawyers time out of mind. > > This kind of reaction makes me want to scream "Richard Stallman" in a very trenchant tones. > > I also don't see how discussing how one might go about something has to be seen as a demonstration of an intention > to carry out those actions . . . > > . . . but then I don't live in a paranoid police state (Bulgaria had a patch of that and gave it up, just as some, previously open, states > started on an opposite journey). > > Of course in "parts west" they don't even need the full apparatus of a police-state any more as they have, through political > correctness effectively erected what Mao Zedong ( a well-known advocate of democracy) termed "a dictatorship of the > proletariat" where the people police themselves. > > Anyway we don't need to worry about that when we have our own folk attempting to impose censorship nearer to home. > > I have come up against this attitude in several places recently, the idea that a place is "safe and friendly" only when we are not allowed to > express certain opinions. > > That is the beginning of the end of proper, robust discussion and healthy creativity. > > Richmond. > >> On 8/2/17 6:56 pm, Richard Gaskin via use-livecode wrote: >> We have a great community, having earned a reputation for providing a safe, friendly environment for learning LiveCode. >> >> With that in mind, please remember that Apple's EULA for macOS requires that it be run only on "Apple-branded computers". >> >> Discussions of using VMs on Mac hosts is great, useful for testing our apps on multiple OS versions. >> >> But we probably don't want to have discussions of violating Apple's copyright as part of this community's permanent public archive. >> >> There are other venues where such discussion can take place. Here in this official LiveCode support venue, it may be better to follow the guidelines used for the Forums, in which we avoid discussions which may be construed as encouraging illegal activity. >> >> Forum Guidelines >> >> >> -- >> Richard Gaskin >> LiveCode Community Liaison >> richard at livecode.org >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From mark at livecode.com Wed Aug 2 16:44:17 2017 From: mark at livecode.com (Mark Waddingham) Date: Wed, 2 Aug 2017 22:44:17 +0200 Subject: Points of Graphic Oval In-Reply-To: <0B00CACF-4BFF-4F85-8D61-AF2C6749FE26@hyperhh.de> References: <0B00CACF-4BFF-4F85-8D61-AF2C6749FE26@hyperhh.de> Message-ID: <1022749C-F1DC-420C-9D49-5AC95E5D42F9@livecode.com> Heh - sometimes it takes a relative tome of justification to arrive at a simple explanation! However the beauty of B?zier curves is that arcs are just a small subset of what they can represent 'well enough'. For moving along an arbitrary (B?zier - you can represent a straight line segment as one trivially) path, what you actually need is first the length of the path (annoyingly not a representable function - iirc) and a parametric form of a B?zier curve (which is how they are best expressed). Then to step along the path at fixed distance at each step you use f(n * fixeddist / length) (here f is the parametric form of the B?zier - returning a 2d point). You'd need some adjustment (+/- 1 pix) to account for rounding error - but I think the idea is sound. Warmest Regards, Mark. Sent from my iPhone On 2 Aug 2017, at 22:18, hh via use-livecode wrote: >> Mark wrote: >> So, at the level of the graphic object it is a true arc, at the level of instructing >> the graphics library it is a B?zier approximation but at the level of working out what >> pixels to render it is a polygon. > > Thanks for arriving from your previous post at this very clear statement. > You will have to do a lot of such approximations by simple polygons when you implement > to move along an SVG path for your SVG widget... ;-) > > p.s. The 360 points of Mark are really good enough for very large circles in order to > move along such points in 2 seconds. These are 3 points per tick! > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From brian at milby7.com Wed Aug 2 16:44:56 2017 From: brian at milby7.com (Brian Milby) Date: Wed, 2 Aug 2017 15:44:56 -0500 Subject: "Cascading" Object-Behaviors In-Reply-To: References: <7DFBE93A-5AB3-4E4B-A824-DA7D11D9DDF5@appisle.net> <3D49C80C-C102-4AF6-B391-0ABB4D0A585D@appisle.net> Message-ID: So is the BOM causing the issue with detection of the URL being a script only stack or is it in the function that actually reads in the file? Trying to wrap my head around how the go stack works (still looking at code). On Wed, Aug 2, 2017 at 8:02 AM, Brian Milby wrote: > I just tried it on Mac/Win and it works in LC9DP8 that way for me. > > On Tue, Aug 1, 2017 at 10:34 PM, Monte Goulding via use-livecode < > use-livecode at lists.runrev.com> wrote: > >> Use the following url: >> >> > 1fa6e77e514c7e3ccae150af5fd856199719e1/tools/Scriptifier.livecodescript < >> https://raw.githubusercontent.com/montegoulding/livecode/81 >> 1fa6e77e514c7e3ccae150af5fd856199719e1/tools/Scriptifier.livecodescript>> >> >> I?d like to say you can go stack url with this url but you can?t because >> it?s broken for script only stacks although from the looks of things go >> stack byte 4 to -1 of url might work in LC 9? >> >> http://quality.livecode.com/show_bug.cgi?id=18998 < >> http://quality.livecode.com/show_bug.cgi?id=18998> >> >> Cheers >> >> Monte >> >> > On 2 Aug 2017, at 1:25 pm, Sannyasin Brahmanathaswami via use-livecode < >> use-livecode at lists.runrev.com> wrote: >> > >> > "GIT DUMMY" here.. >> > >> > >> > How does one get the script without downloading the entire LC >> repository? >> > >> > All I can see is to copy it.. which works I guess you have to then >> remove all the leading "+" signs and save to your plugins folder? >> > >> > BR >> > >> > >> > >> > >> > On 7/30/17, 10:28 AM, "use-livecode on behalf of Monte Goulding via >> use-livecode" > use-livecode at lists.runrev.com> wrote: >> > >> > I have implemented a scriptifier utility script if you are >> interested here https://github.com/livecode/livecode/pull/5600< >> https://github.com/livecode/livecode/pull/5600> >> > >> > _______________________________________________ >> > use-livecode mailing list >> > use-livecode at lists.runrev.com >> > Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> > http://lists.runrev.com/mailman/listinfo/use-livecode >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> > > From dochawk at gmail.com Wed Aug 2 16:45:00 2017 From: dochawk at gmail.com (Dr. Hawkins) Date: Wed, 2 Aug 2017 13:45:00 -0700 Subject: Hackintosh In-Reply-To: <912ce34f-c5a9-413c-c29c-16833b804059@gmail.com> References: <46babc4f-2c3f-732f-790f-ed0b4a36a565@fourthworld.com> <75B4B06B-6C63-4B33-8371-4E96D40AF956@iotecdigital.com> <912ce34f-c5a9-413c-c29c-16833b804059@gmail.com> Message-ID: On Wed, Aug 2, 2017 at 1:18 PM, Richmond Mathewson via use-livecode < use-livecode at lists.runrev.com> wrote: > "a fuzzy line" > > Sounds a bit like the Emperor's USA/Mexico wall. > > Nah, it was Representative Lincoln that questioned where the line was, not Santa Anna . . . :) -- Dr. Richard E. Hawkins, Esq. (702) 508-8462 From monte at appisle.net Wed Aug 2 16:49:14 2017 From: monte at appisle.net (Monte Goulding) Date: Thu, 3 Aug 2017 06:49:14 +1000 Subject: "Cascading" Object-Behaviors In-Reply-To: References: <7DFBE93A-5AB3-4E4B-A824-DA7D11D9DDF5@appisle.net> <3D49C80C-C102-4AF6-B391-0ABB4D0A585D@appisle.net> Message-ID: <51AE7D29-7417-4B57-868B-218D949C7765@appisle.net> > On 3 Aug 2017, at 6:44 am, Brian Milby via use-livecode wrote: > > So is the BOM causing the issue with detection of the URL being a script > only stack or is it in the function that actually reads in the file? > Trying to wrap my head around how the go stack works (still looking at > code). Go stack tries to work out whether it has been passed a blob that is the content of a stack file. Script only stacks may have a BOM but the current detection doesn?t handle that. Cheers Monte From beugelaar at solidit.nl Wed Aug 2 16:52:23 2017 From: beugelaar at solidit.nl (Erik Beugelaar - Solidit) Date: Wed, 2 Aug 2017 22:52:23 +0200 Subject: Hackintosh In-Reply-To: <23B6FDE0-6352-4A58-9664-A701D35D3296@livecode.com> References: <46babc4f-2c3f-732f-790f-ed0b4a36a565@fourthworld.com> <23B6FDE0-6352-4A58-9664-A701D35D3296@livecode.com> Message-ID: <01ea01d30bd1$403a0150$c0ae03f0$@solidit.nl> Dear Mark, " At the end of the day, unless you believe in anarchy (which you might, I have no issue with that - particularly if you can explain to me how that works in practice ;)), some observance of rules is required - and there is a difference between discussing the rules (e.g. the meta level) which can be most enlightening; and the discussing of how to break them (which often gets quite boring in any specific case after a while - especially as plenty of other people have discussed them at length and in detail elsewhere) ;)" Mark, It works in practice, please read: https://www.youtube.com/watch?v=MPojltjv4M0 https://www.youtube.com/watch?v=MPojltjv4M0 Off topic but to me of interest. All the best, Erik -----Original Message----- From: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] On Behalf Of Mark Waddingham via use-livecode Sent: Wednesday, August 2, 2017 10:34 PM To: How to use LiveCode Cc: Mark Waddingham Subject: Re: Hackintosh Whilst that may be true - a significant part of LiveCode's business comes from the US... As does our support for Apple devices. Of course, Apple probably don't care (why would they? Hackintoshes are not Macs). However, Apple did think it reasonable to outlaw anything other than Obj-C and JS (through the WebView) apps on iOS for a while. So let's not presume we can 'read' intent of such 'powerful' entities. As I said there are other forums for discussing hackintosh creation - it is definitely off topic for this forum; so beyond a few links of elsewhere to look (which our helpful users have already supplied) I think this discussion has probably done all it needs to, hasn't it? At the end of the day, unless you believe in anarchy (which you might, I have no issue with that - particularly if you can explain to me how that works in practice ;)), some observance of rules is required - and there is a difference between discussing the rules (e.g. the meta level) which can be most enlightening; and the discussing of how to break them (which often gets quite boring in any specific case after a while - especially as plenty of other people have discussed them at length and in detail elsewhere) ;) Caution is sometimes the greatest approach anyone can take, if you actually want to effect change. Warmest Regards, Mark. Sent from my iPhone > On 2 Aug 2017, at 22:07, Richmond Mathewson via use-livecode wrote: > > Apple's EULA may not actually be legal or legally enforcable in a > large number of territories where this Use-List is read. > > Just seen Tim Cook "sucking the kneecaps" of China's one-party state's leaders and blethering anent "adhering to the law" re VPNs. > Nothing makes me despise anyone more than trying to justify adherence to laws of a totalitarian state. > > Sometimes the law is an ass; as has been demonstrated by sensible lawyers time out of mind. > > This kind of reaction makes me want to scream "Richard Stallman" in a very trenchant tones. > > I also don't see how discussing how one might go about something has > to be seen as a demonstration of an intention to carry out those actions . . . > > . . . but then I don't live in a paranoid police state (Bulgaria had a > patch of that and gave it up, just as some, previously open, states started on an opposite journey). > > Of course in "parts west" they don't even need the full apparatus of a > police-state any more as they have, through political correctness > effectively erected what Mao Zedong ( a well-known advocate of democracy) termed "a dictatorship of the proletariat" where the people police themselves. > > Anyway we don't need to worry about that when we have our own folk attempting to impose censorship nearer to home. > > I have come up against this attitude in several places recently, the > idea that a place is "safe and friendly" only when we are not allowed to express certain opinions. > > That is the beginning of the end of proper, robust discussion and healthy creativity. > > Richmond. > >> On 8/2/17 6:56 pm, Richard Gaskin via use-livecode wrote: >> We have a great community, having earned a reputation for providing a safe, friendly environment for learning LiveCode. >> >> With that in mind, please remember that Apple's EULA for macOS requires that it be run only on "Apple-branded computers". >> >> Discussions of using VMs on Mac hosts is great, useful for testing our apps on multiple OS versions. >> >> But we probably don't want to have discussions of violating Apple's copyright as part of this community's permanent public archive. >> >> There are other venues where such discussion can take place. Here in this official LiveCode support venue, it may be better to follow the guidelines used for the Forums, in which we avoid discussions which may be construed as encouraging illegal activity. >> >> Forum Guidelines >> >> >> -- >> Richard Gaskin >> LiveCode Community Liaison >> richard at livecode.org >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode From ali.lloyd at livecode.com Wed Aug 2 16:55:18 2017 From: ali.lloyd at livecode.com (Ali Lloyd) Date: Wed, 02 Aug 2017 20:55:18 +0000 Subject: how to get the value of a custom property if the name of the cProperty is in a variable? In-Reply-To: References: <8F48407D-F2F3-4489-B030-94C259914AF4@major-k.de> Message-ID: A good reason to use consistent prefixes to distinguish custom props and variables perhaps. On Wed, 2 Aug 2017 at 20:56, Dr. Hawkins via use-livecode < use-livecode at lists.runrev.com> wrote: > On Wed, Aug 2, 2017 at 10:25 AM, Klaus major-k via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > > > answer the tMyVar of this cd > > > > This is an area that is awkward in live code. > > The use of unquoted literals for this is inconsistent with most of live > code (but quoting would be inconsistent with the built in properties, so . > . .) > > I have "loops" like > > repeat for each word someProp in "theOnlyPropInTheList" > > set the someProp of someControl to myVal > > end repeat > > > If you have a variable whose name is the same as the property, there does > does not seem to be a good solution. > -- > Dr. Richard E. Hawkins, Esq. > (702) 508-8462 > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From ambassador at fourthworld.com Wed Aug 2 17:03:35 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Wed, 2 Aug 2017 14:03:35 -0700 Subject: Hackintosh In-Reply-To: <0ce1f7c2-1ab9-462f-b6fa-f1f626b7d655@gmail.com> References: <0ce1f7c2-1ab9-462f-b6fa-f1f626b7d655@gmail.com> Message-ID: <156acf39-5dc5-29c5-2963-402c83df3040@fourthworld.com> Richmond Mathewson wrote: > No, I don't think we have to respect Apple's policy at all. A similar view might ask whether the DevaWriter license terms need to be respected, or LiveCode Ltd.'s, or Stephen King's, or the protections afforded any creator of an original work. Many of us here earn our living through intellectual property. So personally, I feel it reflects well on our community to respect other people's IP as we ask them to respect ours. Whether any given action may be a violation of law is a matter for attorneys. Encouraging mutual respect seems simply a matter of good taste. FWIW I have no personal opinion about hackintoshes one way or another, and I think Apple might do its platform a favor by considering licensing the OS on other hardware (though unlike before, this time do it earnestly so it might actually stand a a chance of working). But Apple has made their intentions clear, and it is their right to apply any terms they feel are in the interest of their shareholders. Those who want a different license can choose software governed by a license they like. > But I do tend to agree that any discussion of anything that might rub > Apple up the wrong way if it is to take place on this use-list should > only be in relation to LiveCode. That's pretty much all the Forum Guidelines ask for, and all that Mark Waddingham has asked for here. It's not even about Apple really, but about creating an environment that clearly respects the efforts of developers and the rights afforded them under the Berne agreement. -- Richard Gaskin LiveCode Community Liaison richard at livecode.org From mark at livecode.com Wed Aug 2 17:04:17 2017 From: mark at livecode.com (Mark Waddingham) Date: Wed, 2 Aug 2017 23:04:17 +0200 Subject: Hackintosh In-Reply-To: <01ea01d30bd1$403a0150$c0ae03f0$@solidit.nl> References: <46babc4f-2c3f-732f-790f-ed0b4a36a565@fourthworld.com> <23B6FDE0-6352-4A58-9664-A701D35D3296@livecode.com> <01ea01d30bd1$403a0150$c0ae03f0$@solidit.nl> Message-ID: Heh - I'm apologise for being slightly glib - and definitely off-topic there. Although, I'd point out (because I'm a very pedantic person at times) - that there are always rules we can't change such as the rules of nature (e.g. Physics - although the rules evolve as we 'understand more' - or Mathematics (at least within zermelo-fraenkel set theory which is the predominant interpretation). And this is 'me' speaking not CTO of LiveCode - which might be an important point I should make (perhaps I need an IANAL type acronym for that ;)). In all good faith, Mark. Sent from my iPhone > On 2 Aug 2017, at 22:52, Erik Beugelaar - Solidit via use-livecode wrote: > > Dear Mark, > > " At the end of the day, unless you believe in anarchy (which you might, I > have no issue with that - particularly if you can explain to me how that > works in practice ;)), some observance of rules is required - and there is a > difference between discussing the rules (e.g. the meta level) which can be > most enlightening; and the discussing of how to break them (which often gets > quite boring in any specific case after a while - especially as plenty of > other people have discussed them at length and in detail elsewhere) ;)" > > Mark, It works in practice, please read: > > https://www.youtube.com/watch?v=MPojltjv4M0 > https://www.youtube.com/watch?v=MPojltjv4M0 > > Off topic but to me of interest. > > All the best, > Erik > > > > > -----Original Message----- > From: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] On Behalf > Of Mark Waddingham via use-livecode > Sent: Wednesday, August 2, 2017 10:34 PM > To: How to use LiveCode > Cc: Mark Waddingham > Subject: Re: Hackintosh > > Whilst that may be true - a significant part of LiveCode's business comes > from the US... As does our support for Apple devices. > > Of course, Apple probably don't care (why would they? Hackintoshes are not > Macs). However, Apple did think it reasonable to outlaw anything other than > Obj-C and JS (through the WebView) apps on iOS for a while. So let's not > presume we can 'read' intent of such 'powerful' entities. > > As I said there are other forums for discussing hackintosh creation - it is > definitely off topic for this forum; so beyond a few links of elsewhere to > look (which our helpful users have already supplied) I think this discussion > has probably done all it needs to, hasn't it? > > At the end of the day, unless you believe in anarchy (which you might, I > have no issue with that - particularly if you can explain to me how that > works in practice ;)), some observance of rules is required - and there is a > difference between discussing the rules (e.g. the meta level) which can be > most enlightening; and the discussing of how to break them (which often gets > quite boring in any specific case after a while - especially as plenty of > other people have discussed them at length and in detail elsewhere) ;) > > Caution is sometimes the greatest approach anyone can take, if you actually > want to effect change. > > Warmest Regards, > > Mark. > > Sent from my iPhone > >> On 2 Aug 2017, at 22:07, Richmond Mathewson via use-livecode > wrote: >> >> Apple's EULA may not actually be legal or legally enforcable in a >> large number of territories where this Use-List is read. >> >> Just seen Tim Cook "sucking the kneecaps" of China's one-party state's > leaders and blethering anent "adhering to the law" re VPNs. >> Nothing makes me despise anyone more than trying to justify adherence to > laws of a totalitarian state. >> >> Sometimes the law is an ass; as has been demonstrated by sensible lawyers > time out of mind. >> >> This kind of reaction makes me want to scream "Richard Stallman" in a very > trenchant tones. >> >> I also don't see how discussing how one might go about something has >> to be seen as a demonstration of an intention to carry out those actions . > . . >> >> . . . but then I don't live in a paranoid police state (Bulgaria had a >> patch of that and gave it up, just as some, previously open, states > started on an opposite journey). >> >> Of course in "parts west" they don't even need the full apparatus of a >> police-state any more as they have, through political correctness >> effectively erected what Mao Zedong ( a well-known advocate of democracy) > termed "a dictatorship of the proletariat" where the people police > themselves. >> >> Anyway we don't need to worry about that when we have our own folk > attempting to impose censorship nearer to home. >> >> I have come up against this attitude in several places recently, the >> idea that a place is "safe and friendly" only when we are not allowed to > express certain opinions. >> >> That is the beginning of the end of proper, robust discussion and healthy > creativity. >> >> Richmond. >> >>> On 8/2/17 6:56 pm, Richard Gaskin via use-livecode wrote: >>> We have a great community, having earned a reputation for providing a > safe, friendly environment for learning LiveCode. >>> >>> With that in mind, please remember that Apple's EULA for macOS requires > that it be run only on "Apple-branded computers". >>> >>> Discussions of using VMs on Mac hosts is great, useful for testing our > apps on multiple OS versions. >>> >>> But we probably don't want to have discussions of violating Apple's > copyright as part of this community's permanent public archive. >>> >>> There are other venues where such discussion can take place. Here in > this official LiveCode support venue, it may be better to follow the > guidelines used for the Forums, in which we avoid discussions which may be > construed as encouraging illegal activity. >>> >>> Forum Guidelines >>> >>> >>> -- >>> Richard Gaskin >>> LiveCode Community Liaison >>> richard at livecode.org >>> >>> _______________________________________________ >>> use-livecode mailing list >>> use-livecode at lists.runrev.com >>> Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: >>> http://lists.runrev.com/mailman/listinfo/use-livecode >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription > preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From mark at livecode.com Wed Aug 2 17:05:08 2017 From: mark at livecode.com (Mark Waddingham) Date: Wed, 2 Aug 2017 23:05:08 +0200 Subject: Hackintosh In-Reply-To: <156acf39-5dc5-29c5-2963-402c83df3040@fourthworld.com> References: <0ce1f7c2-1ab9-462f-b6fa-f1f626b7d655@gmail.com> <156acf39-5dc5-29c5-2963-402c83df3040@fourthworld.com> Message-ID: Richard just said what I was thinking but much much better! Warmest Regards, Mark. Sent from my iPhone > On 2 Aug 2017, at 23:03, Richard Gaskin via use-livecode wrote: > > Richmond Mathewson wrote: > > > No, I don't think we have to respect Apple's policy at all. > > A similar view might ask whether the DevaWriter license terms need to be respected, or LiveCode Ltd.'s, or Stephen King's, or the protections afforded any creator of an original work. > > Many of us here earn our living through intellectual property. So personally, I feel it reflects well on our community to respect other people's IP as we ask them to respect ours. > > Whether any given action may be a violation of law is a matter for attorneys. Encouraging mutual respect seems simply a matter of good taste. > > FWIW I have no personal opinion about hackintoshes one way or another, and I think Apple might do its platform a favor by considering licensing the OS on other hardware (though unlike before, this time do it earnestly so it might actually stand a a chance of working). > > But Apple has made their intentions clear, and it is their right to apply any terms they feel are in the interest of their shareholders. Those who want a different license can choose software governed by a license they like. > > > > But I do tend to agree that any discussion of anything that might rub > > Apple up the wrong way if it is to take place on this use-list should > > only be in relation to LiveCode. > > That's pretty much all the Forum Guidelines ask for, and all that Mark Waddingham has asked for here. > > It's not even about Apple really, but about creating an environment that clearly respects the efforts of developers and the rights afforded them under the Berne agreement. > > -- > Richard Gaskin > LiveCode Community Liaison > richard at livecode.org > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From tom at makeshyft.com Wed Aug 2 17:12:13 2017 From: tom at makeshyft.com (Tom Glod) Date: Wed, 2 Aug 2017 17:12:13 -0400 Subject: Taking quotes on building LC external for RethinkDB Message-ID: Hi folks, my company is currently taking quotes on building an LC external to act as a driver for RethinkDB. I have already submitted a request with Monte & Ian over at Livecode, but would like to open it up to everyone that has the skill to build the external....I don't really even know if there is anyone else. Here are the exact specs. https://www.rethinkdb.com/docs/writing-drivers/ The more precise the quote the better. Thanks, Tom From revolution at derbrill.de Wed Aug 2 17:12:56 2017 From: revolution at derbrill.de (Malte Pfaff-Brill) Date: Wed, 2 Aug 2017 23:12:56 +0200 Subject: use-livecode Digest, Vol 167, Issue 7 In-Reply-To: References: Message-ID: <62BF0C06-A614-41B5-A770-78EB512C3B9D@derbrill.de> Mark wrote: I strongly suspect Malte's animationEngine does this 'correctly' for this case as it was designed with this kind of use case in mind. Good thing: Due to the Dual license nature anyone who might want to have a peek From revolution at derbrill.de Wed Aug 2 17:15:59 2017 From: revolution at derbrill.de (Malte Pfaff-Brill) Date: Wed, 2 Aug 2017 23:15:59 +0200 Subject: Points of Graphic Oval In-Reply-To: References: Message-ID: <288E9109-092C-44FC-8263-F6642CE84F20@derbrill.de> Haha? Fun of having one of those touch bars on top of the keyboard and sausage-fingers? ->Not a good combo... Mark wrote: I strongly suspect Malte's animationEngine does this 'correctly' for this case as it was designed with this kind of use case in mind. Good thing: Due to the Dual license nature anyone who might want to have a peek can: https://github.com/derbrill/animationEngine Cheers! Malte From richmondmathewson at gmail.com Wed Aug 2 17:24:10 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Thu, 3 Aug 2017 00:24:10 +0300 Subject: Hackintosh In-Reply-To: <156acf39-5dc5-29c5-2963-402c83df3040@fourthworld.com> References: <0ce1f7c2-1ab9-462f-b6fa-f1f626b7d655@gmail.com> <156acf39-5dc5-29c5-2963-402c83df3040@fourthworld.com> Message-ID: <4674c74c-e8a2-6bd6-a632-202d65851338@gmail.com> On 8/3/17 12:03 am, Richard Gaskin via use-livecode wrote: > Richmond Mathewson wrote: > > > No, I don't think we have to respect Apple's policy at all. > > A similar view might ask whether the DevaWriter license terms need to > be respected, or LiveCode Ltd.'s, or Stephen King's, or the > protections afforded any creator of an original work. > LOL. I have just changed my Devawriter licensing system so that each instantiation of it that I sell is tied to the MAC address of an individual computer. Therefore there is nothing to respect, a chain is a chain, and if someone manages to spoof Mac Addresses on a large scale to use my program the fact that they would go to that trouble proves it's a program worth having! I have made my "licensing" system as hard as I can: I'm sure it can be broken: whether it is worth going to that bother remains to be seen; after all you can have a site licence for 10 machines at $200. If I really wanted to make "my fortune" programming computers I wouldn't be tinkering around in our spare bedroom at 55 anyway . . . The reason I have changed it is because I know of someone who purchased my Devawriter 3 years ago and now has copies all over the place: my bad, I should have taken a bit more trouble: at least some people are finally getting their heads around "Sanskrit As it Should Be": http://andregarzia.on-rev.com/richmond/home.html Apple's policy is "just" Apple trying something on. A EULA is NOT a legally binding agreement: if you choose to abide by it you can feel "awfully" moral, much in the same sort of way I haven't fathered 27 children with 27 mothers simultaneously (which, oddly enough, is not illegal) makes me fell that I'm slightly more moral in some respects. I bought a 10 year-old Intel iMac about 8 months ago. I had the system install disks from a Mac laptop of my wife's that went bang about 3 years ago. Now I was probably breaking some sort of agreement by using those disks to get my iMac going - possibly not "meant" to install on another Mac other than the one they were bought with. Morally, as the one the disks came with a dead computer I could see nothing wrong with using them to get another, similar computer running; especially as I could find no way to purchase Mac OS Lion disks from Apple. LiveCode give away the Open Source version of their product. . . Stephen King . . . well, if you really have to read his books you can borrow them from the library . . . I read 3 of them in about 1984. Love, Richmond. From hh at hyperhh.de Wed Aug 2 17:24:48 2017 From: hh at hyperhh.de (hh) Date: Wed, 2 Aug 2017 23:24:48 +0200 Subject: Points of Graphic Oval Message-ID: <593A8332-FEAA-46D2-8C5A-8B6B1C4FD42E@hyperhh.de> I have already done what you describe in a HTML5 standalone for displaying progress along a Bezier curve, using LC Script only. http://hh.on-rev.com/html5/hhProgressHTML5_2-8.0.2X.html And it is done for all LC's SVG icons using the jquery-drawsvg plugin in a browser widget (incl. optional affine transformations of the SVG icons). http://livecodeshare.runrev.com/stack/833/AutoDraw_SVGicon What I meant is to have such a tricky translation of model elements (arc, curve etc.) of an SVG path into an appropriate points-only path in LCB? Perhaps one could use parts of LC-Ian's SVG work for that? > Mark wrote: > Heh - sometimes it takes a relative tome of justification to arrive at a > simple explanation! > > However the beauty of B?zier curves is that arcs are just a small subset > of what they can represent 'well enough'. > > For moving along an arbitrary (B?zier - you can represent a straight line > segment as one trivially) path, what you actually need is first the length > of the path (annoyingly not a representable function - iirc) and a parametric > form of a B?zier curve (which is how they are best expressed). > > Then to step along the path at fixed distance at each step you use > f(n * fixeddist / length) (here f is the parametric form of the B?zier > - returning a 2d point). You'd need some adjustment (+/- 1 pix) to account > for rounding error - but I think the idea is sound. From richmondmathewson at gmail.com Wed Aug 2 17:29:10 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Thu, 3 Aug 2017 00:29:10 +0300 Subject: Hackintosh In-Reply-To: <01ea01d30bd1$403a0150$c0ae03f0$@solidit.nl> References: <46babc4f-2c3f-732f-790f-ed0b4a36a565@fourthworld.com> <23B6FDE0-6352-4A58-9664-A701D35D3296@livecode.com> <01ea01d30bd1$403a0150$c0ae03f0$@solidit.nl> Message-ID: <315b9bd7-0bb2-778e-68db-495bc4ab24d4@gmail.com> There are one or two people around here who probably don't know what a *devil's advocate* is . . . Off to polish my horns. Richmond. From richmondmathewson at gmail.com Wed Aug 2 17:33:36 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Thu, 3 Aug 2017 00:33:36 +0300 Subject: Made with . . . In-Reply-To: <72FA60EB-5662-44B1-89F6-932A5C6E7AAB@livecode.com> References: <922d0470-1d83-e731-8306-08526df3605e@gmail.com> <1EBBACDA-7DDD-41A6-86D0-8F888931EB99@major-k.de> <72FA60EB-5662-44B1-89F6-932A5C6E7AAB@livecode.com> Message-ID: That's a very good explanation, Thank you very much indeed. I had a "small problem" with a teenager in my programming classes who asked: "If Livecode is written using C++ why don't we just bypass Livecode completely?" Which prove that his English is up to a high standard :) I found a book in a junk shop that was an introduction to C++ and sent him home with it and asked him to start teaching himself C++ and to duplicate the simplest exercise stacks we were doing in the classes. On the Monday he turned up with a big box of chocolates for me and an apology. I will be forever grateful to the Livecode team that they have saved me from having to learn C++. Richmond. On 8/2/17 9:07 pm, Mark Waddingham via use-livecode wrote: > Increasingly less - and in contrast the amount that could be done in LC instead of C++ continues to increase (far more slowly than I'd like - but hey, if wishes were horses...) > > Indeed, a lot of the 'heavy lifting' seen in the engine comes down to either the core abstractions which the LiveCode script language requires (i.e. the VM), direct access to C exposed APIs, or for speed. > > For example a lot of 'compound' operations such as the set operation commands can be implemented in LCS - indeed it is a very readable way to define their behaviour - but become far more effective for large arrays if done in C++ (i.e. for optimisation purposes). Although that is largely because we don't have a native code compiler for LCS. > > LCB has started to provide more of what is needed to 'get away from C++' - admittedly its performance is not great as yet, but for its current purposes it is more than sufficient. In particular, UI elements generally require little 'hardcore' performance - just rendering and property marshalling; similarly, wrapping system and third-party APIs to the level where they are 'more natural' in LCS mainly just requires appropriate type mapping and indexing of objects (enter LCB). > > LiveCode Script is a complete programming language in its own right; it lacks direct access to third-party APIs certainly, however it is perhaps surprising how much outside of user interaction related tasks require that. Even in 7+, it's speed is perfectly reasonable for 'reasonably sized' computational tasks (for certain types of thing it is actually much more memory efficient due to copy on write being used for values - which increase the memory size of tasks, if not speed). > > As a mode of expression of algorithms, it perhaps start to approach Knuth's idea of 'literate programming' *without* using a blended typesetting + code approach (which is how TeX and MetaFont are written, for example). > > So, if for that reason alone there's rarely harm in writing something in LCS first, and *then* taking to rewrite critical parts in a lower level language if required for speed reasons. > > Warmest Regards, > > Mark. > > Sent from my iPhone > >> On 2 Aug 2017, at 13:50, Klaus major-k via use-livecode wrote: >> >> Hi Richmond, >> >>> Am 02.08.2017 um 13:43 schrieb Richmond Mathewson via use-livecode : >>> >>> " remember that LC is made with LC, so everything in the IDE is a stack resp. scripted and can be modified!" >>> recently claimed by someone elsewhere [Hi, Klaus :) ] >> hi mate! :-) >> >>> BUT: it that really true? >>> Why do I have a funny feeling that a lot of the "heavy lifting" is done with C++ ? >> Yes, that is true, except for the engine and its functionality which is made with C++ or whatever. >> >>> Richmond. >> Best >> >> Klaus >> >> -- >> Klaus Major >> http://www.major-k.de >> klaus at major-k.de >> >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From mark at livecode.com Wed Aug 2 17:36:52 2017 From: mark at livecode.com (Mark Waddingham) Date: Wed, 2 Aug 2017 23:36:52 +0200 Subject: how to get the value of a custom property if the name of the cProperty is in a variable? In-Reply-To: References: <8F48407D-F2F3-4489-B030-94C259914AF4@major-k.de> Message-ID: <4A35F45F-C97E-4AA3-B37A-2D4FB4CF50EB@livecode.com> You can put the name of the property into a local var and use that (unless I misunderstood the problem). Ali's suggestion is however the very pragmatic one - there are always going to be cases where var names might conflict with other things 'in context' and require disambiguation. (Although even that doesn't work in some cases - consider 'tExt' - when you have case insensitivity and no need to explicitly declare variables). Of course, if you'd like to file a bug report / enhancement about being able to do 'the "mycustompropname" of ... - then that is probably the 'future' much better solution :) Warmest Regards, Mark. Sent from my iPhone > On 2 Aug 2017, at 21:56, Dr. Hawkins via use-livecode wrote: > > On Wed, Aug 2, 2017 at 10:25 AM, Klaus major-k via use-livecode < > use-livecode at lists.runrev.com> wrote: > >> >> answer the tMyVar of this cd >> > > This is an area that is awkward in live code. > > The use of unquoted literals for this is inconsistent with most of live > code (but quoting would be inconsistent with the built in properties, so . > . .) > > I have "loops" like > > repeat for each word someProp in "theOnlyPropInTheList" > > set the someProp of someControl to myVal > > end repeat > > > If you have a variable whose name is the same as the property, there does > does not seem to be a good solution. > -- > Dr. Richard E. Hawkins, Esq. > (702) 508-8462 > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From mark at livecode.com Wed Aug 2 17:40:47 2017 From: mark at livecode.com (Mark Waddingham) Date: Wed, 2 Aug 2017 23:40:47 +0200 Subject: Hackintosh In-Reply-To: <315b9bd7-0bb2-778e-68db-495bc4ab24d4@gmail.com> References: <46babc4f-2c3f-732f-790f-ed0b4a36a565@fourthworld.com> <23B6FDE0-6352-4A58-9664-A701D35D3296@livecode.com> <01ea01d30bd1$403a0150$c0ae03f0$@solidit.nl> <315b9bd7-0bb2-778e-68db-495bc4ab24d4@gmail.com> Message-ID: Indeed - and (if I remember correctly) - one purpose of devils advocate is to ensure the other side justifies its case 'sufficiently' (for some definition of sufficiently - usually a great deal harder when pedanticism kicks in!). I'm off to have another G&T! Warmest Regards, Mark. Sent from my iPhone > On 2 Aug 2017, at 23:29, Richmond Mathewson via use-livecode wrote: > > There are one or two people around here who probably don't know what a *devil's advocate* is . . . > > Off to polish my horns. > > Richmond. > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From mark at livecode.com Wed Aug 2 17:42:51 2017 From: mark at livecode.com (Mark Waddingham) Date: Wed, 2 Aug 2017 23:42:51 +0200 Subject: Made with . . . In-Reply-To: References: <922d0470-1d83-e731-8306-08526df3605e@gmail.com> <1EBBACDA-7DDD-41A6-86D0-8F888931EB99@major-k.de> <72FA60EB-5662-44B1-89F6-932A5C6E7AAB@livecode.com> Message-ID: Well they do say 'out of the mouths of babes'. At the very least it helps us to reinforce the fact that 'we' have a purpose :) Warmest Regards, Mark. Sent from my iPhone > On 2 Aug 2017, at 23:33, Richmond Mathewson via use-livecode wrote: > > That's a very good explanation, > > Thank you very much indeed. > > I had a "small problem" with a teenager in my programming classes who asked: > > "If Livecode is written using C++ why don't we just bypass Livecode completely?" > > Which prove that his English is up to a high standard :) > > I found a book in a junk shop that was an introduction to C++ and sent him home with it and asked > him to start teaching himself C++ and to duplicate the simplest exercise stacks we were doing in the classes. > > On the Monday he turned up with a big box of chocolates for me and an apology. > > I will be forever grateful to the Livecode team that they have saved me from having to learn C++. > > Richmond. > >> On 8/2/17 9:07 pm, Mark Waddingham via use-livecode wrote: >> Increasingly less - and in contrast the amount that could be done in LC instead of C++ continues to increase (far more slowly than I'd like - but hey, if wishes were horses...) >> >> Indeed, a lot of the 'heavy lifting' seen in the engine comes down to either the core abstractions which the LiveCode script language requires (i.e. the VM), direct access to C exposed APIs, or for speed. >> >> For example a lot of 'compound' operations such as the set operation commands can be implemented in LCS - indeed it is a very readable way to define their behaviour - but become far more effective for large arrays if done in C++ (i.e. for optimisation purposes). Although that is largely because we don't have a native code compiler for LCS. >> >> LCB has started to provide more of what is needed to 'get away from C++' - admittedly its performance is not great as yet, but for its current purposes it is more than sufficient. In particular, UI elements generally require little 'hardcore' performance - just rendering and property marshalling; similarly, wrapping system and third-party APIs to the level where they are 'more natural' in LCS mainly just requires appropriate type mapping and indexing of objects (enter LCB). >> >> LiveCode Script is a complete programming language in its own right; it lacks direct access to third-party APIs certainly, however it is perhaps surprising how much outside of user interaction related tasks require that. Even in 7+, it's speed is perfectly reasonable for 'reasonably sized' computational tasks (for certain types of thing it is actually much more memory efficient due to copy on write being used for values - which increase the memory size of tasks, if not speed). >> >> As a mode of expression of algorithms, it perhaps start to approach Knuth's idea of 'literate programming' *without* using a blended typesetting + code approach (which is how TeX and MetaFont are written, for example). >> >> So, if for that reason alone there's rarely harm in writing something in LCS first, and *then* taking to rewrite critical parts in a lower level language if required for speed reasons. >> >> Warmest Regards, >> >> Mark. >> >> Sent from my iPhone >> >>> On 2 Aug 2017, at 13:50, Klaus major-k via use-livecode wrote: >>> >>> Hi Richmond, >>> >>>> Am 02.08.2017 um 13:43 schrieb Richmond Mathewson via use-livecode : >>>> >>>> " remember that LC is made with LC, so everything in the IDE is a stack resp. scripted and can be modified!" >>>> recently claimed by someone elsewhere [Hi, Klaus :) ] >>> hi mate! :-) >>> >>>> BUT: it that really true? >>>> Why do I have a funny feeling that a lot of the "heavy lifting" is done with C++ ? >>> Yes, that is true, except for the engine and its functionality which is made with C++ or whatever. >>> >>>> Richmond. >>> Best >>> >>> Klaus >>> >>> -- >>> Klaus Major >>> http://www.major-k.de >>> klaus at major-k.de >>> >>> >>> _______________________________________________ >>> use-livecode mailing list >>> use-livecode at lists.runrev.com >>> Please visit this url to subscribe, unsubscribe and manage your subscription preferences: >>> http://lists.runrev.com/mailman/listinfo/use-livecode >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From mark at livecode.com Wed Aug 2 18:09:37 2017 From: mark at livecode.com (Mark Waddingham) Date: Thu, 3 Aug 2017 00:09:37 +0200 Subject: Points of Graphic Oval In-Reply-To: <593A8332-FEAA-46D2-8C5A-8B6B1C4FD42E@hyperhh.de> References: <593A8332-FEAA-46D2-8C5A-8B6B1C4FD42E@hyperhh.de> Message-ID: File an enhancement - it's not something we have gotten round to doing yet but a 'flattened path' api was always on the cards to do but we hadn't gotten around to it yet. Warmest Regards, Mark. P.S. 'Flattening' is the term used to describe the process of turning paths into sequences of line segments. Sent from my iPhone > On 2 Aug 2017, at 23:24, hh via use-livecode wrote: > > I have already done what you describe in a HTML5 standalone for displaying > progress along a Bezier curve, using LC Script only. > http://hh.on-rev.com/html5/hhProgressHTML5_2-8.0.2X.html > > And it is done for all LC's SVG icons using the jquery-drawsvg plugin in > a browser widget (incl. optional affine transformations of the SVG icons). > http://livecodeshare.runrev.com/stack/833/AutoDraw_SVGicon > > What I meant is to have such a tricky translation of model elements > (arc, curve etc.) of an SVG path into an appropriate points-only path > in LCB? Perhaps one could use parts of LC-Ian's SVG work for that? > >> Mark wrote: >> Heh - sometimes it takes a relative tome of justification to arrive at a >> simple explanation! >> >> However the beauty of B?zier curves is that arcs are just a small subset >> of what they can represent 'well enough'. >> >> For moving along an arbitrary (B?zier - you can represent a straight line >> segment as one trivially) path, what you actually need is first the length >> of the path (annoyingly not a representable function - iirc) and a parametric >> form of a B?zier curve (which is how they are best expressed). >> >> Then to step along the path at fixed distance at each step you use >> f(n * fixeddist / length) (here f is the parametric form of the B?zier >> - returning a 2d point). You'd need some adjustment (+/- 1 pix) to account >> for rounding error - but I think the idea is sound. > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From iphonelagi at gmail.com Wed Aug 2 18:13:52 2017 From: iphonelagi at gmail.com (Lagi Pittas) Date: Wed, 2 Aug 2017 23:13:52 +0100 Subject: Hackintosh In-Reply-To: <4674c74c-e8a2-6bd6-a632-202d65851338@gmail.com> References: <0ce1f7c2-1ab9-462f-b6fa-f1f626b7d655@gmail.com> <156acf39-5dc5-29c5-2963-402c83df3040@fourthworld.com> <4674c74c-e8a2-6bd6-a632-202d65851338@gmail.com> Message-ID: Frankly I don't agree with "protection" that causes problems to the legitimate user. In all my years of writng bespoke software I ALWAYS placed a copy of the source on the CEO machine and told them (for no extra) . If I got run over by a bus then the company wouldn't be at a loss - there are many Foxpro/Delphi programmers around. The system that I have written with Livecode - A POS if you must know I have put in the simplest of protections. Each copy has the name and address of the company in a few columns in table. I have a separate program to setup the name and address - I save ALL but the name in the clear. The Name is saved with 128/256 bit encryption. When the program starts it reads the fields and decrypts the name, and if it is not a valid name the system can do what it wants. Personally it says Unregistered copy and my Phone number on the Customer display and on receipts and takings. The only reason I put this in was that one of my customers said a cash Register person was asking questions. I have split up the test in to two different areas because I know from experience how you crack programs (it was better than playing games on an Apple ][ - well except for Choplifter, Threshhold and Pacman). You just find the code where the test is and jump over it - except that in this case the name will not be correct so they will have to patch the byte code as well - and that is protected as well. There is another sneaky way if and when I can be bothered. Allow them to enter name and address within the program save it. When the program starts up let them think it's ok - but check every time and count down for a month or 2 - Then tell them they are rumbled not overtly but with a "Program Error " that needs your support. There is a lot of fun using this very simple method that can still take ages to crack. In fact with Livecodes send to command you can split up the checks and make it random as well. Frankly all protections can be removed I gave up one night when after going through 3 levels of protection from the boot sector to other sectors then a routine in memory that said for "$149.95 you can go to sleep tonight" - It was 3 in the morning and I went to bed after having a good laugh - never did any more cracking after that. Oh and that was a protected LISA assembler disk I had purchased so it wasn't about saving money. - I had already made a backup using a bit copier but I wanted a non copyprotected version and some "fun" deprotecting it. The people who copy your stuff are your free advertising. Case in point I was given a Clipper Summer 85 Disk by a programmer friend - I hated DBase it had no validation and was too Basic. I tried Clipper for a Week. I then Purchased Same for ?695.00 in 1985 - when that was lot of money - they got a sale because there was absolutely no protection. Finally to round this off. In the early days Microsoft managed to dethrone lotus by just having a license number instead of a protected disk so all the students and companies could copy word/excel. Once you learn something and go into the workplace you take your skills with you. After a year or two they allowed you to become "legal" for an upgrade price of under ?100 I think it was - when Lotus was still selling 123 for Nearly ?500 and all the upgrade did was check that word/excel/office was installed on your machine - didn't matter if it was legit or not. Then Microsoft slowly increased prices ...... On 2 August 2017 at 22:24, Richmond Mathewson via use-livecode < use-livecode at lists.runrev.com> wrote: > > > On 8/3/17 12:03 am, Richard Gaskin via use-livecode wrote: > >> Richmond Mathewson wrote: >> >> > No, I don't think we have to respect Apple's policy at all. >> >> A similar view might ask whether the DevaWriter license terms need to be >> respected, or LiveCode Ltd.'s, or Stephen King's, or the protections >> afforded any creator of an original work. >> >> > > LOL. > > I have just changed my Devawriter licensing system so that each > instantiation of it that I sell is tied to the MAC address of > an individual computer. Therefore there is nothing to respect, a chain is > a chain, and if someone manages to spoof Mac Addresses > on a large scale to use my program the fact that they would go to that > trouble proves it's a program worth having! > > I have made my "licensing" system as hard as I can: I'm sure it can be > broken: whether it is worth going to that bother remains to be seen; > after all you can have a site licence for 10 machines at $200. > > If I really wanted to make "my fortune" programming computers I wouldn't > be tinkering around in our spare bedroom at 55 anyway . . . > > The reason I have changed it is because I know of someone who purchased my > Devawriter 3 years ago and now has copies all over the place: > my bad, I should have taken a bit more trouble: at least some people are > finally getting their heads around "Sanskrit As it Should Be": > > http://andregarzia.on-rev.com/richmond/home.html > > Apple's policy is "just" Apple trying something on. A EULA is NOT a > legally binding agreement: if you choose to abide by it you > can feel "awfully" moral, much in the same sort of way I haven't fathered > 27 children with 27 mothers simultaneously (which, oddly > enough, is not illegal) makes me fell that I'm slightly more moral in some > respects. > > I bought a 10 year-old Intel iMac about 8 months ago. I had the system > install disks from a Mac laptop of my wife's that went bang about 3 years > ago. > Now I was probably breaking some sort of agreement by using those disks to > get my iMac going - possibly not "meant" to install on another Mac other > than the one they were bought with. Morally, as the one the disks came > with a dead computer I could see nothing wrong with using them to get > another, similar computer running; especially as I could find no way to > purchase Mac OS Lion disks from Apple. > > LiveCode give away the Open Source version of their product. . . > > Stephen King . . . well, if you really have to read his books you can > borrow them from the library . . . I read 3 of them in about 1984. > > Love, Richmond. > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From mark at livecode.com Wed Aug 2 18:21:36 2017 From: mark at livecode.com (Mark Waddingham) Date: Thu, 3 Aug 2017 00:21:36 +0200 Subject: Hackintosh In-Reply-To: <4674c74c-e8a2-6bd6-a632-202d65851338@gmail.com> References: <0ce1f7c2-1ab9-462f-b6fa-f1f626b7d655@gmail.com> <156acf39-5dc5-29c5-2963-402c83df3040@fourthworld.com> <4674c74c-e8a2-6bd6-a632-202d65851338@gmail.com> Message-ID: <841EB626-392E-4BB4-A45D-570AD0AAAFCB@livecode.com> Just to pay reference to the comment about LiveCode - I missed it the first time around... We (LiveCode Ltd.) did not 'give away' LiveCode. We released it under a software license that has strings. The GPL requires (subject to interpretation by lawyers - and a court of law) you to also release your source code of the things you write in LiveCode. There's no such thing as a free lunch - there's always some sort of payment somewhere - even if that payment is 'for the good of all' rather than in any form of 'currently understood currency'. Warmest Regards, Mark. Sent from my iPhone > On 2 Aug 2017, at 23:24, Richmond Mathewson via use-livecode wrote: > > > >> On 8/3/17 12:03 am, Richard Gaskin via use-livecode wrote: >> Richmond Mathewson wrote: >> >> > No, I don't think we have to respect Apple's policy at all. >> >> A similar view might ask whether the DevaWriter license terms need to be respected, or LiveCode Ltd.'s, or Stephen King's, or the protections afforded any creator of an original work. >> > > > LOL. > > I have just changed my Devawriter licensing system so that each instantiation of it that I sell is tied to the MAC address of > an individual computer. Therefore there is nothing to respect, a chain is a chain, and if someone manages to spoof Mac Addresses > on a large scale to use my program the fact that they would go to that trouble proves it's a program worth having! > > I have made my "licensing" system as hard as I can: I'm sure it can be broken: whether it is worth going to that bother remains to be seen; > after all you can have a site licence for 10 machines at $200. > > If I really wanted to make "my fortune" programming computers I wouldn't be tinkering around in our spare bedroom at 55 anyway . . . > > The reason I have changed it is because I know of someone who purchased my Devawriter 3 years ago and now has copies all over the place: > my bad, I should have taken a bit more trouble: at least some people are finally getting their heads around "Sanskrit As it Should Be": > > http://andregarzia.on-rev.com/richmond/home.html > > Apple's policy is "just" Apple trying something on. A EULA is NOT a legally binding agreement: if you choose to abide by it you > can feel "awfully" moral, much in the same sort of way I haven't fathered 27 children with 27 mothers simultaneously (which, oddly > enough, is not illegal) makes me fell that I'm slightly more moral in some respects. > > I bought a 10 year-old Intel iMac about 8 months ago. I had the system install disks from a Mac laptop of my wife's that went bang about 3 years ago. > Now I was probably breaking some sort of agreement by using those disks to get my iMac going - possibly not "meant" to install on another Mac other > than the one they were bought with. Morally, as the one the disks came with a dead computer I could see nothing wrong with using them to get > another, similar computer running; especially as I could find no way to purchase Mac OS Lion disks from Apple. > > LiveCode give away the Open Source version of their product. . . > > Stephen King . . . well, if you really have to read his books you can borrow them from the library . . . I read 3 of them in about 1984. > > Love, Richmond. > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From dochawk at gmail.com Wed Aug 2 18:40:04 2017 From: dochawk at gmail.com (Dr. Hawkins) Date: Wed, 2 Aug 2017 15:40:04 -0700 Subject: Hackintosh In-Reply-To: <4674c74c-e8a2-6bd6-a632-202d65851338@gmail.com> References: <0ce1f7c2-1ab9-462f-b6fa-f1f626b7d655@gmail.com> <156acf39-5dc5-29c5-2963-402c83df3040@fourthworld.com> <4674c74c-e8a2-6bd6-a632-202d65851338@gmail.com> Message-ID: On Wed, Aug 2, 2017 at 2:24 PM, Richmond Mathewson via use-livecode < use-livecode at lists.runrev.com> wrote: > > > I have just changed my Devawriter licensing system so that each > instantiation of it that I sell is tied to the MAC address of > an individual computer. Therefore there is nothing to respect, a chain is > a chain, and if someone manages to spoof Mac Addresses > on a large scale to use my program the fact that they would go to that > trouble proves it's a program worth having! > My licensing system is tied to individual lawyers. The license key I provide is where the name and address come from for the pleadings; it simply isn't possible to actually input these. So a lawyer and his assistant(s) can all actually work on the same file at the same time (and adding iPad won't be too hard; I've been coding to make groups instead of stacks possible for a couple of years), but it won't file under someone else's name. -- Dr. Richard E. Hawkins, Esq. (702) 508-8462 From mark at livecode.com Wed Aug 2 18:41:22 2017 From: mark at livecode.com (Mark Waddingham) Date: Thu, 3 Aug 2017 00:41:22 +0200 Subject: Hackintosh In-Reply-To: <841EB626-392E-4BB4-A45D-570AD0AAAFCB@livecode.com> References: <0ce1f7c2-1ab9-462f-b6fa-f1f626b7d655@gmail.com> <156acf39-5dc5-29c5-2963-402c83df3040@fourthworld.com> <4674c74c-e8a2-6bd6-a632-202d65851338@gmail.com> <841EB626-392E-4BB4-A45D-570AD0AAAFCB@livecode.com> Message-ID: Sorry - release the source-code of things you write in LiveCode you distribute to others. Warmest Regards, Mark. Sent from my iPhone > On 3 Aug 2017, at 00:21, Mark Waddingham via use-livecode wrote: > > Just to pay reference to the comment about LiveCode - I missed it the first time around... > > We (LiveCode Ltd.) did not 'give away' LiveCode. We released it under a software license that has strings. > > The GPL requires (subject to interpretation by lawyers - and a court of law) you to also release your source code of the things you write in LiveCode. > > There's no such thing as a free lunch - there's always some sort of payment somewhere - even if that payment is 'for the good of all' rather than in any form of 'currently understood currency'. > > Warmest Regards, > > Mark. > > Sent from my iPhone > >> On 2 Aug 2017, at 23:24, Richmond Mathewson via use-livecode wrote: >> >> >> >>> On 8/3/17 12:03 am, Richard Gaskin via use-livecode wrote: >>> Richmond Mathewson wrote: >>> >>>> No, I don't think we have to respect Apple's policy at all. >>> >>> A similar view might ask whether the DevaWriter license terms need to be respected, or LiveCode Ltd.'s, or Stephen King's, or the protections afforded any creator of an original work. >>> >> >> >> LOL. >> >> I have just changed my Devawriter licensing system so that each instantiation of it that I sell is tied to the MAC address of >> an individual computer. Therefore there is nothing to respect, a chain is a chain, and if someone manages to spoof Mac Addresses >> on a large scale to use my program the fact that they would go to that trouble proves it's a program worth having! >> >> I have made my "licensing" system as hard as I can: I'm sure it can be broken: whether it is worth going to that bother remains to be seen; >> after all you can have a site licence for 10 machines at $200. >> >> If I really wanted to make "my fortune" programming computers I wouldn't be tinkering around in our spare bedroom at 55 anyway . . . >> >> The reason I have changed it is because I know of someone who purchased my Devawriter 3 years ago and now has copies all over the place: >> my bad, I should have taken a bit more trouble: at least some people are finally getting their heads around "Sanskrit As it Should Be": >> >> http://andregarzia.on-rev.com/richmond/home.html >> >> Apple's policy is "just" Apple trying something on. A EULA is NOT a legally binding agreement: if you choose to abide by it you >> can feel "awfully" moral, much in the same sort of way I haven't fathered 27 children with 27 mothers simultaneously (which, oddly >> enough, is not illegal) makes me fell that I'm slightly more moral in some respects. >> >> I bought a 10 year-old Intel iMac about 8 months ago. I had the system install disks from a Mac laptop of my wife's that went bang about 3 years ago. >> Now I was probably breaking some sort of agreement by using those disks to get my iMac going - possibly not "meant" to install on another Mac other >> than the one they were bought with. Morally, as the one the disks came with a dead computer I could see nothing wrong with using them to get >> another, similar computer running; especially as I could find no way to purchase Mac OS Lion disks from Apple. >> >> LiveCode give away the Open Source version of their product. . . >> >> Stephen King . . . well, if you really have to read his books you can borrow them from the library . . . I read 3 of them in about 1984. >> >> Love, Richmond. >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From capellan2000 at gmail.com Wed Aug 2 18:43:23 2017 From: capellan2000 at gmail.com (Alejandro Tejada) Date: Wed, 2 Aug 2017 18:43:23 -0400 Subject: Made with . . . Message-ID: Hi Richmond, Some years ago, Alex Tweedly recommended this book to learn C. I bought this for US$ 30 on Amazon: https://www.amazon.com/Illustrating-C-Ansi-Iso-Version/dp/0521468213 More recently, another developer recommended this 2015 book: https://www.amazon.com/Programming-Absolute-Beginners-Guide-3rd/dp/0789751984/ Al From dochawk at gmail.com Wed Aug 2 18:54:37 2017 From: dochawk at gmail.com (Dr. Hawkins) Date: Wed, 2 Aug 2017 15:54:37 -0700 Subject: Made with . . . In-Reply-To: References: <922d0470-1d83-e731-8306-08526df3605e@gmail.com> <1EBBACDA-7DDD-41A6-86D0-8F888931EB99@major-k.de> <72FA60EB-5662-44B1-89F6-932A5C6E7AAB@livecode.com> Message-ID: On Wed, Aug 2, 2017 at 2:33 PM, Richmond Mathewson via use-livecode < use-livecode at lists.runrev.com> wrote: > > > I will be forever grateful to the Livecode team that they have saved me > from having to learn C++. > I've lost track of how many languages I've learned and used over the last decades. I've even written major sections in languages that I didn't bother to learn, and edited code in languages I've never learned. They all come back easily--except C and especially C++. I have to relearn these every time (OK, C scope and variable return sticks around. Boy do I want {} scoping in LiveCode, but I digress). Even having written a mail merge feature for LyX that danced circles around what MS Word could do at the time (or, I believe, that it can do now) in C (or was it C++), it rushed back out of my brain as quickly as it could . . . As long as I remember that there is no such construct as "send someMessage to every control on this card", I can come back to hypertalk at full speed after years of not using it . . . (then again, I"m one of those people that remembers the Calculus "chain rule" several years later when I needed it [and got it right!]) -- Dr. Richard E. Hawkins, Esq. (702) 508-8462 From jonathandlynch at gmail.com Wed Aug 2 19:12:08 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Wed, 2 Aug 2017 19:12:08 -0400 Subject: Android device speed Message-ID: <54624F64-898C-47DC-9400-DE321C482663@gmail.com> Hello everyone, I just put my app on a galaxy tab E as a test. It is painfully slow, but not just in the LC portion of the app. The map, delivered through a browser widget, is also slow. So, I used the regular browser (chrome) at the webglearth website. That was slow too, although not as bad. I think the main difference was that the map div at their website is small, so it takes less processing power. I had thought I selected a midlevel Android device that can handle moderate amounts of computation. In y'alls' experience, are android devices just slow? Do they have inferior graphics processors? If you make computationally heavy apps for Android, do you just warn users that the app will only work on some devices? I want this to work on as many devices as possible, but 3D maps require lots of processing. Thanks, J Sent from my iPhone From matthias_livecode_150811 at m-r-d.de Wed Aug 2 19:13:29 2017 From: matthias_livecode_150811 at m-r-d.de (Matthias Rebbe) Date: Thu, 3 Aug 2017 01:13:29 +0200 Subject: Made with . . . In-Reply-To: References: Message-ID: <1EA90F54-9C6E-47B3-A766-F212CF0A98F0@m-r-d.de> Reading the comments on amazon for the 2nd book i read something about a computer science course of Harvard called CS50. A little search gave me this URL which let you take this course for free. http://cs50.tv/2016/fall/ The about section at that page says: Even if you are not a student at Harvard, you are welcome to "take" this course via cs50.tv by following along via the Internet. (The course's own website is at cs50.harvard.edu .) Available at right are videos of lectures, walkthroughs, and seminars along with PDFs of all handouts. Also available at right are the course's problem sets. Maybe this is of interest for one or the other. Matthias Matthias Rebbe +49 5741 310000 ?matthiasrebbe.eu ? > Am 03.08.2017 um 00:43 schrieb Alejandro Tejada via use-livecode >: > > Hi Richmond, > > Some years ago, Alex Tweedly recommended this book > to learn C. I bought this for US$ 30 on Amazon: > https://www.amazon.com/Illustrating-C-Ansi-Iso-Version/dp/0521468213 > > More recently, another developer recommended this 2015 book: > https://www.amazon.com/Programming-Absolute-Beginners-Guide-3rd/dp/0789751984/ > > Al > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From bobsneidar at iotecdigital.com Wed Aug 2 19:30:35 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Wed, 2 Aug 2017 23:30:35 +0000 Subject: Mark in a kilt... In-Reply-To: <77dd6cb6-c6e1-8d60-fd43-9fdab6cd953b@gmail.com> References: <0635f89e-fa2a-b4d5-5e60-a2668b281bef@tweedly.net> <2aaf5a10-93b8-13a7-6eac-46b5ad96b750@gmail.com> <6BA000CC-F2A0-454E-8DBF-2B81AFA184D1@iotecdigital.com> <77dd6cb6-c6e1-8d60-fd43-9fdab6cd953b@gmail.com> Message-ID: It certainly makes it easier to pee. Bob S > On Aug 2, 2017, at 12:29 , Richmond Mathewson via use-livecode wrote: > > Were I Emperor kilts would be compulsory all over. > > Richmond. From bobsneidar at iotecdigital.com Wed Aug 2 19:32:25 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Wed, 2 Aug 2017 23:32:25 +0000 Subject: Mark in a kilt... In-Reply-To: References: <0635f89e-fa2a-b4d5-5e60-a2668b281bef@tweedly.net> <2aaf5a10-93b8-13a7-6eac-46b5ad96b750@gmail.com> <6BA000CC-F2A0-454E-8DBF-2B81AFA184D1@iotecdigital.com> Message-ID: <9694ECF8-FBD7-4A5E-B44B-1FF84BA666BD@iotecdigital.com> One with a real tartan and not just some cloth they got from Woolworths. Bob S > On Aug 2, 2017, at 12:53 , Richmond Mathewson via use-livecode wrote: > > On 8/2/17 5:56 pm, Bob Sneidar via use-livecode wrote: >> >> a real Scottish clan. > > > And what would a "real" Scottish clan be, forbye? From dochawk at gmail.com Wed Aug 2 19:33:08 2017 From: dochawk at gmail.com (Dr. Hawkins) Date: Wed, 2 Aug 2017 16:33:08 -0700 Subject: how to get the value of a custom property if the name of the cProperty is in a variable? In-Reply-To: <4A35F45F-C97E-4AA3-B37A-2D4FB4CF50EB@livecode.com> References: <8F48407D-F2F3-4489-B030-94C259914AF4@major-k.de> <4A35F45F-C97E-4AA3-B37A-2D4FB4CF50EB@livecode.com> Message-ID: On Wed, Aug 2, 2017 at 2:36 PM, Mark Waddingham via use-livecode < use-livecode at lists.runrev.com> wrote: > You can put the name of the property into a local var and use that (unless > I misunderstood the problem). > That's what I do > > > Of course, if you'd like to file a bug report / enhancement about being > able to do 'the "mycustompropname" of ... - then that is probably the > 'future' much better solution : I've given thought to that on and off--but I don't see a way thats both consistent with specifying a text string, and with the usage for other objects. Oh, wait; now I remember: allow the use of quoted text in the property reference. At the moment, the "catness" of control "dog" refers not to the catness property, but to a property whose name begins with a quote. I think that *this* is an inconsistency and a bug. OK, filed as *Bug 20228* - quotes taken as literal rather than as a delimiter when referring to custom properties -- Dr. Richard E. Hawkins, Esq. (702) 508-8462 From mark at livecode.com Wed Aug 2 19:47:21 2017 From: mark at livecode.com (Mark Waddingham) Date: Thu, 3 Aug 2017 01:47:21 +0200 Subject: Made with . . . In-Reply-To: References: Message-ID: I'm not sure the learning of C and its relatively difficulty was the point here. Find me a book on C which teaches you how to create a window, show a button and have that button pop up a modal dialog which says 'hello world' on Android, HTML5, iOS, Linux, Mac and Windows then *that* would be interesting (if only to show how ridiculous using C to write user facing applications is!) Oh, and also, they have to be 'bare OS metal' - ie from scratch - only core libraries on all platforms allowed (so no wxWidgets, QT or whatever!) and also they need to teach enough to be able to get you to understand enough to do a great deal more than that trivial case. Only when you consider it from that point of view does the true power - relative to C - of LiveCode (and very high level languages) become apparent. Ah - and you'll also need to write the (shell) scripts to build your app and run it! Having books which 'teach you' a language is one thing - having books which could teach you to do what LiveCode does for you would actually be a library. LiveCode does a lot of stuff for you so you can actually focus on what you are wanting to achieve. After all there's a huge gap between being able to write English; and being able to write a novel in English which someone would want to buy. Warmest Regards, Mark. P.S. I didn't write the above to dispute your point - merely to use it to hint at a deeper truth... Which Richmond's pupil realised and hence bought chocolates as a result :) Sent from my iPhone > On 3 Aug 2017, at 00:43, Alejandro Tejada via use-livecode wrote: > > Hi Richmond, > > Some years ago, Alex Tweedly recommended this book > to learn C. I bought this for US$ 30 on Amazon: > https://www.amazon.com/Illustrating-C-Ansi-Iso-Version/dp/0521468213 > > More recently, another developer recommended this 2015 book: > https://www.amazon.com/Programming-Absolute-Beginners-Guide-3rd/dp/0789751984/ > > Al > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From ambassador at fourthworld.com Wed Aug 2 22:35:43 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Wed, 2 Aug 2017 19:35:43 -0700 Subject: Hackintosh In-Reply-To: <4674c74c-e8a2-6bd6-a632-202d65851338@gmail.com> References: <4674c74c-e8a2-6bd6-a632-202d65851338@gmail.com> Message-ID: <08663076-27e1-06a4-f47e-ad61ffac5e66@fourthworld.com> Richmond Mathewson wrote: > A EULA is NOT a legally binding agreement.... Your mind seems well made up; I would not try to convince you otherwise. For others here looking to publish and comply with EULAs: I do not claim to be licensed to give legal advice. My opinions are only that, formed from having read a bit of trade press on relevant case law over the years. EULA terms vary so broadly that I've never seen a single judgment attempt to validate or invalidate the lot of them. On the contrary, the practice of IP law seems complex and nuanced; courts have found some clauses invalid while enforcing others. Individual terms may vary, as do details of judgment by jurisdiction. But I've read no case in which EULAs as a whole were dismissed, and many to the contrary. Here's a very small sampling of cases related to EULA judgments: There are many others available on the web. Again, nothing I've written should be construed as legal advice. If you need the services of an attorney you should contact a professional licensed to practice in your area. -- Richard Gaskin LiveCode Community Liaison richard at livecode.org From paul at livecode.org Wed Aug 2 23:02:52 2017 From: paul at livecode.org (Paul Hibbert) Date: Wed, 2 Aug 2017 20:02:52 -0700 Subject: how to get the value of a custom property if the name of the cProperty is in a variable? In-Reply-To: References: Message-ID: <1F54A5CB-85D9-434D-BA37-F09D3C14E614@livecode.org> > > let?s say a card has a custom property name cMyProp. > > The variable tMyVar contains the word ?cMyProp? > > How do i get the value of the custom property using the variable tMyVar? Using the ?do? command, a quick test and this works OK: on mouseUp put "cMyProp" into tMyVar do "put the" && tMyVar && "of this card into fld 1" end mouseUp Paul From monte at appisle.net Wed Aug 2 23:39:08 2017 From: monte at appisle.net (Monte Goulding) Date: Thu, 3 Aug 2017 13:39:08 +1000 Subject: how to get the value of a custom property if the name of the cProperty is in a variable? In-Reply-To: <4A35F45F-C97E-4AA3-B37A-2D4FB4CF50EB@livecode.com> References: <8F48407D-F2F3-4489-B030-94C259914AF4@major-k.de> <4A35F45F-C97E-4AA3-B37A-2D4FB4CF50EB@livecode.com> Message-ID: <83430CBF-F745-486D-A208-28A5432A003A@appisle.net> > On 3 Aug 2017, at 7:36 am, Mark Waddingham via use-livecode wrote: > > Of course, if you'd like to file a bug report / enhancement about being able to do 'the "mycustompropname" of ... - then that is probably the 'future' much better solution :) Er? why if you know the name wouldn?t you type it unquoted? Are you really suggesting to put any expression there? The property/function ambiguity with `the` will make our heads explode! Cheers Monte From brahma at hindu.org Thu Aug 3 01:07:51 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Thu, 3 Aug 2017 05:07:51 +0000 Subject: Points of Graphic Oval In-Reply-To: <5650629A-ED42-49F8-92D1-34990F2A7BE8@livecode.com> References: <3D150F6C-1494-45E2-BA59-77B315CAFB03@hindu.org> <5650629A-ED42-49F8-92D1-34990F2A7BE8@livecode.com> Message-ID: Mark thanks for an adventure into the clean air of abstract thought?. "This can be seen from the fact that to compute cos/sin/tan (which are the mathematical primitives in some sense acting here) require a 'taylor' expansion which is an infinite polynomial sequence (with order tending to infinity) which converges to the required value. " That not exactly what I thought, but what I "saw" hence my wonderment about "sides" "at the level of working out what pixels to render it is a polygon." OK I can sleep now? at a virtually visually non-existent segment flatness of .5 pixels I give it a "B?zier existential" rating of "true arc" as HH said? moving the puzzle tile through 360 points over 2 seconds looks as smooth as a real "ball toss" in actual space (true arc) Peace at last BR On 8/2/17, 9:43 AM, "use-livecode on behalf of Mark Waddingham via use-livecode" wrote: Basically if you set flatness to be 0.5 pixels then the human eye cannot distinguish the difference (when taking into account the visual quantisation that occurs - resolution of the screen and antialiasing more than makes up for it). So, at the level of the graphic object it is a true arc, at the level of instructing the graphics library it is a B?zier approximation but at the level of working out what pixels to render it is a polygon. Whether that means the engine works in true ovals or not, I'll leave to whatever existential proclivities you hold ;) From toolbook at kestner.de Thu Aug 3 02:59:04 2017 From: toolbook at kestner.de (Tiemo Hollmann TB) Date: Thu, 3 Aug 2017 08:59:04 +0200 Subject: Video plays on Win 8.1 only when Windows MediaPlayer is open Message-ID: <002101d30c25$ff539f70$fdfade50$@kestner.de> Hello, LC 8.1.4, Windows 8.1 I am using the Windows standard videoPlayer API DirectShow with h.264 videos. LAV filters for playback of h.264 are installed. On a customer machine something weired happens. After starting the video, the videoscreen stays black, no video is seen. If the user klicks at the title bar of my program window and drags it around the screen, the video is seen. When he stops, the video keeps black. So I thought, this must be a strange issue of how the graphic card handles the screen/video buffer. I also tested with alwaysbufferon true/false without any change of the issue. By chance the user tested to play one of my videos in the standard Microsoft MediaPlayer (which worked fine) and while this MediaPlayer is open, all videos can also be seen in my program. As soon, as the MediaPalyer is closed, the videos again can't be seen in my program. I have no idea, what could be the releated issue between the Microsoft MediaPlayer and the LiveCode VidePlayer, especially, because the MS MediaPlayer uses the Media Foundation API and LC the DirectShow API. The only explanation for me would be, that the MediaPlayer switches a system jumper behind the sceens, which changes anything in handling the video buffer, but as I don't have any more known options in LC as "alwaysBufferOn", I have no idea, if there is anything I could test or check anymore. Any ideas welcome. Tiemo From jacque at hyperactivesw.com Thu Aug 3 03:20:34 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Thu, 03 Aug 2017 02:20:34 -0500 Subject: Android device speed In-Reply-To: <54624F64-898C-47DC-9400-DE321C482663@gmail.com> References: <54624F64-898C-47DC-9400-DE321C482663@gmail.com> Message-ID: <15da6f7a5d0.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Android devices come with a variety of different specifications. The high end models will be more capable than low end ones. Depending on manufacturer and model, the graphics card will vary in capability and available RAM. Screen resolution also makes a difference. I'm using older test devices because I figure if it works there it will work on most others. But my Samsung S4 runs more slowly than my S5 and they were released only a year apart. And my Nexus tablet, which is older than both Samsung phones, runs as well or better than either of those, probably because it has a lower screen resolution. I'm not sure there's a standard you can rely on. I guess in general you could say that Android runs slower, but it's probably because there are so many low cost phones with subsequently less processing power. When you get into the higher range phones they can be quite acceptable. The same app that lagged on my Samsung ran fine on someone else's Pixel. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com On August 2, 2017 6:14:06 PM Jonathan Lynch via use-livecode wrote: > Hello everyone, > > I just put my app on a galaxy tab E as a test. > > It is painfully slow, but not just in the LC portion of the app. The map, > delivered through a browser widget, is also slow. > > So, I used the regular browser (chrome) at the webglearth website. That was > slow too, although not as bad. I think the main difference was that the map > div at their website is small, so it takes less processing power. > > I had thought I selected a midlevel Android device that can handle moderate > amounts of computation. > > In y'alls' experience, are android devices just slow? Do they have inferior > graphics processors? If you make computationally heavy apps for Android, do > you just warn users that the app will only work on some devices? > > I want this to work on as many devices as possible, but 3D maps require > lots of processing. > > Thanks, > > J > > Sent from my iPhone > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From toolbook at kestner.de Thu Aug 3 06:05:05 2017 From: toolbook at kestner.de (Tiemo Hollmann TB) Date: Thu, 3 Aug 2017 12:05:05 +0200 Subject: How do you detect the necessary inclusions? Message-ID: <005301d30c3f$fb249cf0$f16dd6d0$@kestner.de> Hello, I think in former times, when you once have choosen "Search for required inclusions", LiveCode once has checked all necessary inclusion, so that you got an idea for the needed ones, when you afterwords wanted to selected them manually (e.g. the automatic didn't selected all needed inclusions). Today in 8.1.5 LC doesn't mark anymore any needed inclusions, after having let it search for the required ones. At least the browser widget was not checked, though I have an browser widget in my stack. How do you handle this to get the right inclusions? Btw. There are three browser inclusions and I don't know, which one is for what purpose. I assume that the inclusion with the "globe icon" is for the browser widget, because it has the same icon, but there are 3 browser inclusions. What are the inclusions "browser" (jigsaw icon) and "browser (CEF)" for? Tiemo From kaveh at rivervalleytechnologies.com Thu Aug 3 06:10:37 2017 From: kaveh at rivervalleytechnologies.com (Kaveh Bazargan) Date: Thu, 3 Aug 2017 11:10:37 +0100 Subject: MouseDown sent to button in group, but MouseUp sent to card Message-ID: I have buttons in a group. When I click any button, the mousedown message is received by the button correctly but mouseup is received by card. Also I believe mousewithin. How can I get the button to be the target for all? My script is in the stack Thanks. -- Kaveh Bazargan Director River Valley Technologies @kaveh1000 +44 7771 824 111 www.rivervalleytechnologies.com From richmondmathewson at gmail.com Thu Aug 3 06:15:55 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Thu, 3 Aug 2017 13:15:55 +0300 Subject: Hackintosh In-Reply-To: References: <46babc4f-2c3f-732f-790f-ed0b4a36a565@fourthworld.com> <23B6FDE0-6352-4A58-9664-A701D35D3296@livecode.com> <01ea01d30bd1$403a0150$c0ae03f0$@solidit.nl> <315b9bd7-0bb2-778e-68db-495bc4ab24d4@gmail.com> Message-ID: <3cb2b5ff-5f32-71d5-54aa-2a35b43ae91d@gmail.com> I hope your G&T "did the trick". Richmond. On 8/3/17 12:40 am, Mark Waddingham via use-livecode wrote: > Indeed - and (if I remember correctly) - one purpose of devils advocate is to ensure the other side justifies its case 'sufficiently' (for some definition of sufficiently - usually a great deal harder when pedanticism kicks in!). > > I'm off to have another G&T! > > Warmest Regards, > > Mark. > > Sent from my iPhone > >> On 2 Aug 2017, at 23:29, Richmond Mathewson via use-livecode wrote: >> >> There are one or two people around here who probably don't know what a *devil's advocate* is . . . >> >> Off to polish my horns. >> >> Richmond. >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From richmondmathewson at gmail.com Thu Aug 3 06:18:27 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Thu, 3 Aug 2017 13:18:27 +0300 Subject: Hackintosh In-Reply-To: <841EB626-392E-4BB4-A45D-570AD0AAAFCB@livecode.com> References: <0ce1f7c2-1ab9-462f-b6fa-f1f626b7d655@gmail.com> <156acf39-5dc5-29c5-2963-402c83df3040@fourthworld.com> <4674c74c-e8a2-6bd6-a632-202d65851338@gmail.com> <841EB626-392E-4BB4-A45D-570AD0AAAFCB@livecode.com> Message-ID: On 8/3/17 1:21 am, Mark Waddingham via use-livecode wrote: > Just to pay reference to the comment about LiveCode - I missed it the first time around... > > We (LiveCode Ltd.) did not 'give away' LiveCode. We released it under a software license that has strings. Indeed: but rather more flexible strings than a lot of other software. R. > > The GPL requires (subject to interpretation by lawyers - and a court of law) you to also release your source code of the things you write in LiveCode. I always do . . . both release my source code & stir the Sh*t :) > > There's no such thing as a free lunch - there's always some sort of payment somewhere - even if that payment is 'for the good of all' rather than in any form of 'currently understood currency'. Currently having a bad attack of indigestion. > > Warmest Regards, > > Mark. > > Sent from my iPhone > >> On 2 Aug 2017, at 23:24, Richmond Mathewson via use-livecode wrote: >> >> >> >>> On 8/3/17 12:03 am, Richard Gaskin via use-livecode wrote: >>> Richmond Mathewson wrote: >>> >>>> No, I don't think we have to respect Apple's policy at all. >>> A similar view might ask whether the DevaWriter license terms need to be respected, or LiveCode Ltd.'s, or Stephen King's, or the protections afforded any creator of an original work. >>> >> >> >> LOL. >> >> I have just changed my Devawriter licensing system so that each instantiation of it that I sell is tied to the MAC address of >> an individual computer. Therefore there is nothing to respect, a chain is a chain, and if someone manages to spoof Mac Addresses >> on a large scale to use my program the fact that they would go to that trouble proves it's a program worth having! >> >> I have made my "licensing" system as hard as I can: I'm sure it can be broken: whether it is worth going to that bother remains to be seen; >> after all you can have a site licence for 10 machines at $200. >> >> If I really wanted to make "my fortune" programming computers I wouldn't be tinkering around in our spare bedroom at 55 anyway . . . >> >> The reason I have changed it is because I know of someone who purchased my Devawriter 3 years ago and now has copies all over the place: >> my bad, I should have taken a bit more trouble: at least some people are finally getting their heads around "Sanskrit As it Should Be": >> >> http://andregarzia.on-rev.com/richmond/home.html >> >> Apple's policy is "just" Apple trying something on. A EULA is NOT a legally binding agreement: if you choose to abide by it you >> can feel "awfully" moral, much in the same sort of way I haven't fathered 27 children with 27 mothers simultaneously (which, oddly >> enough, is not illegal) makes me fell that I'm slightly more moral in some respects. >> >> I bought a 10 year-old Intel iMac about 8 months ago. I had the system install disks from a Mac laptop of my wife's that went bang about 3 years ago. >> Now I was probably breaking some sort of agreement by using those disks to get my iMac going - possibly not "meant" to install on another Mac other >> than the one they were bought with. Morally, as the one the disks came with a dead computer I could see nothing wrong with using them to get >> another, similar computer running; especially as I could find no way to purchase Mac OS Lion disks from Apple. >> >> LiveCode give away the Open Source version of their product. . . >> >> Stephen King . . . well, if you really have to read his books you can borrow them from the library . . . I read 3 of them in about 1984. >> >> Love, Richmond. >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From thatkeith at mac.com Thu Aug 3 06:18:48 2017 From: thatkeith at mac.com (Keith Martin) Date: Thu, 03 Aug 2017 11:18:48 +0100 Subject: Mark in a kilt... In-Reply-To: <2aaf5a10-93b8-13a7-6eac-46b5ad96b750@gmail.com> References: <0635f89e-fa2a-b4d5-5e60-a2668b281bef@tweedly.net> <2aaf5a10-93b8-13a7-6eac-46b5ad96b750@gmail.com> Message-ID: On 1 Aug 2017, at 7:53, Richmond Mathewson via use-livecode wrote: > I salute Kevin and Mark for their adoption of kilts. It's certainly not new! I remember when Runtime Revolution got its first MacUser award nomination (MANY years ago!), Kevin and a couple of others came to the ceremony in kilts. Memorable and cool. k --- Keith Martin Senior Lecturer, LCC (University of the Arts London) Technical Editor, MacUser magazine (1997-2015) http://PanoramaPhotographer.com http://thatkeith.com +44 (0)7909541365 --- From richmondmathewson at gmail.com Thu Aug 3 06:23:04 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Thu, 3 Aug 2017 13:23:04 +0300 Subject: Mark in a kilt... In-Reply-To: References: <0635f89e-fa2a-b4d5-5e60-a2668b281bef@tweedly.net> <2aaf5a10-93b8-13a7-6eac-46b5ad96b750@gmail.com> Message-ID: Still well worth a second salutation! R. On 8/3/17 1:18 pm, Keith Martin via use-livecode wrote: > On 1 Aug 2017, at 7:53, Richmond Mathewson via use-livecode wrote: > >> I salute Kevin and Mark for their adoption of kilts. > > It's certainly not new! I remember when Runtime Revolution got its > first MacUser award nomination (MANY years ago!), Kevin and a couple > of others came to the ceremony in kilts. Memorable and cool. > > k > > > --- > > Keith Martin > Senior Lecturer, LCC (University of the Arts London) > Technical Editor, MacUser magazine (1997-2015) > http://PanoramaPhotographer.com > http://thatkeith.com > +44 (0)7909541365 > > --- > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From jonathandlynch at gmail.com Thu Aug 3 06:57:30 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Thu, 3 Aug 2017 06:57:30 -0400 Subject: Android device speed In-Reply-To: <15da6f7a5d0.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> References: <54624F64-898C-47DC-9400-DE321C482663@gmail.com> <15da6f7a5d0.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Message-ID: <0D78262F-7765-489D-A96D-F28FB0152071@gmail.com> Thank you, Jacqueline, It sounds like I need to find a way to detect the processing speed of the device. If it is below a certain level, it could adjust the div viewport for the map proportionally to the processing power. It could reduce the size of the div, then reexpand it, using a 2d transform. By cutting the size of the div in half, vertically and horizontally, it would have a quarter of the number of pixels to process in 3D. Reexpanding would return it to the original number of pixels, but that is a 2d transform and would be much less of a burden on the processor. The effect would be lower resolution and zoomed in, but that might be better than painfully slow map movements. Do you have any suggestions on how to detect the device's graphics processing power? Sent from my iPhone > On Aug 3, 2017, at 3:20 AM, J. Landman Gay via use-livecode wrote: > > Android devices come with a variety of different specifications. The high end models will be more capable than low end ones. Depending on manufacturer and model, the graphics card will vary in capability and available RAM. Screen resolution also makes a difference. I'm using older test devices because I figure if it works there it will work on most others. But my Samsung S4 runs more slowly than my S5 and they were released only a year apart. And my Nexus tablet, which is older than both Samsung phones, runs as well or better than either of those, probably because it has a lower screen resolution. I'm not sure there's a standard you can rely on. > > I guess in general you could say that Android runs slower, but it's probably because there are so many low cost phones with subsequently less processing power. When you get into the higher range phones they can be quite acceptable. The same app that lagged on my Samsung ran fine on someone else's Pixel. > > -- > Jacqueline Landman Gay | jacque at hyperactivesw.com > HyperActive Software | http://www.hyperactivesw.com > > > >> On August 2, 2017 6:14:06 PM Jonathan Lynch via use-livecode wrote: >> >> Hello everyone, >> >> I just put my app on a galaxy tab E as a test. >> >> It is painfully slow, but not just in the LC portion of the app. The map, delivered through a browser widget, is also slow. >> >> So, I used the regular browser (chrome) at the webglearth website. That was slow too, although not as bad. I think the main difference was that the map div at their website is small, so it takes less processing power. >> >> I had thought I selected a midlevel Android device that can handle moderate amounts of computation. >> >> In y'alls' experience, are android devices just slow? Do they have inferior graphics processors? If you make computationally heavy apps for Android, do you just warn users that the app will only work on some devices? >> >> I want this to work on as many devices as possible, but 3D maps require lots of processing. >> >> Thanks, >> >> J >> >> Sent from my iPhone >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode > > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From hh at hyperhh.de Thu Aug 3 07:27:22 2017 From: hh at hyperhh.de (hh) Date: Thu, 3 Aug 2017 13:27:22 +0200 Subject: Android device speed Message-ID: <5FFD3D6E-3826-4251-BB4D-CB20E49248B9@hyperhh.de> > Jonathan wrote: > It sounds like I need to find a way to detect the processing speed > of the device. Did you alread try to use webgl? See the source of https://browserleaks.com/webgl From jonathandlynch at gmail.com Thu Aug 3 07:38:44 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Thu, 3 Aug 2017 07:38:44 -0400 Subject: Android device speed In-Reply-To: <5FFD3D6E-3826-4251-BB4D-CB20E49248B9@hyperhh.de> References: <5FFD3D6E-3826-4251-BB4D-CB20E49248B9@hyperhh.de> Message-ID: <7FAEEF98-CBD7-4FD2-8624-4E54E0167E90@gmail.com> Hi Hermann, That page is a great resource! Some of their measurements might be a good proxy for GPU power, like the max viewport size and a couple others. It would be preferable to fully internalize the system check. I will look through the page source to see what JS commands they use to measure system capabilities. Sent from my iPhone On Aug 3, 2017, at 7:27 AM, hh via use-livecode wrote: >> Jonathan wrote: >> It sounds like I need to find a way to detect the processing speed >> of the device. > > Did you alread try to use webgl? See the source of > https://browserleaks.com/webgl > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From iowahengst at mac.com Thu Aug 3 07:55:10 2017 From: iowahengst at mac.com (Randy Hengst) Date: Thu, 03 Aug 2017 06:55:10 -0500 Subject: MouseDown sent to button in group, but MouseUp sent to card In-Reply-To: References: Message-ID: <6BF4813A-17C2-46A0-B001-CD41376DCEE0@mac.com> I?d start by double-checking that there is a mouseUp handler in the button. If there isn?t, then the mouseUp will move to the group? if no mouseUp in the group it will move to the card. be well, randy > On Aug 3, 2017, at 5:10 AM, Kaveh Bazargan via use-livecode wrote: > > I have buttons in a group. When I click any button, the mousedown message > is received by the button correctly but mouseup is received by card. Also I > believe mousewithin. > > How can I get the button to be the target for all? > > My script is in the stack > > Thanks. > > > > -- > Kaveh Bazargan > Director > River Valley Technologies > @kaveh1000 > +44 7771 824 111 > www.rivervalleytechnologies.com > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From roger.e.eller at sealedair.com Thu Aug 3 08:08:52 2017 From: roger.e.eller at sealedair.com (Roger Eller) Date: Thu, 3 Aug 2017 08:08:52 -0400 Subject: Hackintosh In-Reply-To: <841EB626-392E-4BB4-A45D-570AD0AAAFCB@livecode.com> References: <0ce1f7c2-1ab9-462f-b6fa-f1f626b7d655@gmail.com> <156acf39-5dc5-29c5-2963-402c83df3040@fourthworld.com> <4674c74c-e8a2-6bd6-a632-202d65851338@gmail.com> <841EB626-392E-4BB4-A45D-570AD0AAAFCB@livecode.com> Message-ID: On Wed, Aug 2, 2017 at 6:21 PM, Mark Waddingham via use-livecode < use-livecode at lists.runrev.com> wrote: > Just to pay reference to the comment about LiveCode - I missed it the > first time around... > > We (LiveCode Ltd.) did not 'give away' LiveCode. We released it under a > software license that has strings. > > The GPL requires (subject to interpretation by lawyers - and a court of > law) you to also release your source code of the things you write in > LiveCode. > > There's no such thing as a free lunch - there's always some sort of > payment somewhere - even if that payment is 'for the good of all' rather > than in any form of 'currently understood currency'. > This sparked a memory of an old scene in Star Trek , where a cryogenically preserved man of our time awakens to find that everything has changed. A future where your only goal is to improve yourself for the good of all. I wonder if there will be EULAs in 100 years. Hmmm... > > Warmest Regards, > > Mark. > > Sent from my iPhone ~Roger From kaveh at rivervalleytechnologies.com Thu Aug 3 08:17:54 2017 From: kaveh at rivervalleytechnologies.com (Kaveh Bazargan) Date: Thu, 3 Aug 2017 13:17:54 +0100 Subject: MouseDown sent to button in group, but MouseUp sent to card In-Reply-To: <6BF4813A-17C2-46A0-B001-CD41376DCEE0@mac.com> References: <6BF4813A-17C2-46A0-B001-CD41376DCEE0@mac.com> Message-ID: I feel a bit dumb. yes, there was an empty mouseup handler in the buttons. So that is fixed. Now for mousewithin... Having mousewithin in the stack script does not work unless I put: on mousewithin pass mousewithin end mousewithin in the button. What is the explanation for that? On 3 August 2017 at 12:55, Randy Hengst via use-livecode < use-livecode at lists.runrev.com> wrote: > I?d start by double-checking that there is a mouseUp handler in the > button. If there isn?t, then the mouseUp will move to the group? if no > mouseUp in the group it will move to the card. > > be well, > randy > > > On Aug 3, 2017, at 5:10 AM, Kaveh Bazargan via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > > I have buttons in a group. When I click any button, the mousedown message > > is received by the button correctly but mouseup is received by card. > Also I > > believe mousewithin. > > > > How can I get the button to be the target for all? > > > > My script is in the stack > > > > Thanks. > > > > > > > > -- > > Kaveh Bazargan > > Director > > River Valley Technologies > > @kaveh1000 > > +44 7771 824 111 > > www.rivervalleytechnologies.com > > _______________________________________________ > > use-livecode mailing list > > use-livecode at lists.runrev.com > > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > > http://lists.runrev.com/mailman/listinfo/use-livecode > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode -- Kaveh Bazargan Director River Valley Technologies @kaveh1000 +44 7771 824 111 www.rivervalleytechnologies.com From roger.e.eller at sealedair.com Thu Aug 3 08:36:11 2017 From: roger.e.eller at sealedair.com (Roger Eller) Date: Thu, 3 Aug 2017 08:36:11 -0400 Subject: Android device speed In-Reply-To: <15da6f7a5d0.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> References: <54624F64-898C-47DC-9400-DE321C482663@gmail.com> <15da6f7a5d0.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Message-ID: I would be more inclined to not say in general "...that Android runs slower...", but rather "Android runs LiveCode apps slower." There are plenty of Android apps in the Play store that handle large graphics VERY well on Android. It may or may not be just how LiveCode rolls, as an improved experience can be achieved by handling images better in your code. Breaking them up into grid pieces, and only displaying the portion that is within the current view is one way. You can also reduce the size of PNG files using specialized utilities like TinyPNG. ~Roger On Thu, Aug 3, 2017 at 3:20 AM, J. Landman Gay via use-livecode < use-livecode at lists.runrev.com> wrote: > Android devices come with a variety of different specifications. The high > end models will be more capable than low end ones. Depending on > manufacturer and model, the graphics card will vary in capability and > available RAM. Screen resolution also makes a difference. I'm using older > test devices because I figure if it works there it will work on most > others. But my Samsung S4 runs more slowly than my S5 and they were > released only a year apart. And my Nexus tablet, which is older than both > Samsung phones, runs as well or better than either of those, probably > because it has a lower screen resolution. I'm not sure there's a standard > you can rely on. > > I guess in general you could say that Android runs slower, but it's > probably because there are so many low cost phones with subsequently less > processing power. When you get into the higher range phones they can be > quite acceptable. The same app that lagged on my Samsung ran fine on > someone else's Pixel. > > -- > Jacqueline Landman Gay | jacque at hyperactivesw.com > HyperActive Software | http://www.hyperactivesw.com > > > > > On August 2, 2017 6:14:06 PM Jonathan Lynch via use-livecode < > use-livecode at lists.runrev.com> wrote: > > Hello everyone, >> >> I just put my app on a galaxy tab E as a test. >> >> It is painfully slow, but not just in the LC portion of the app. The map, >> delivered through a browser widget, is also slow. >> >> So, I used the regular browser (chrome) at the webglearth website. That >> was slow too, although not as bad. I think the main difference was that the >> map div at their website is small, so it takes less processing power. >> >> I had thought I selected a midlevel Android device that can handle >> moderate amounts of computation. >> >> In y'alls' experience, are android devices just slow? Do they have >> inferior graphics processors? If you make computationally heavy apps for >> Android, do you just warn users that the app will only work on some devices? >> >> I want this to work on as many devices as possible, but 3D maps require >> lots of processing. >> >> Thanks, >> >> J >> >> Sent from my iPhone >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> > > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From dunbarx at aol.com Thu Aug 3 08:54:48 2017 From: dunbarx at aol.com (dunbarx) Date: Thu, 3 Aug 2017 05:54:48 -0700 (PDT) Subject: MouseDown sent to button in group, but MouseUp sent to card In-Reply-To: References: <6BF4813A-17C2-46A0-B001-CD41376DCEE0@mac.com> Message-ID: <1501764888959-4717947.post@n4.nabble.com> Hi. This is an anomalous (in my opinion) behavior of the "mouseWithin" message. >From the dictionary: Note: If there is no mouseWithin handler in the target object's script, no mouseWithin message is sent, even if there is a mouseWithin handler in an object that's further along the message path. Why this should be so is a mystery, but maybe someone from the team will chime in. Craig Newman -- View this message in context: http://runtime-revolution.278305.n4.nabble.com/MouseDown-sent-to-button-in-group-but-MouseUp-sent-to-card-tp4717935p4717947.html Sent from the Revolution - User mailing list archive at Nabble.com. From jonathandlynch at gmail.com Thu Aug 3 09:05:10 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Thu, 3 Aug 2017 09:05:10 -0400 Subject: Android device speed In-Reply-To: References: <54624F64-898C-47DC-9400-DE321C482663@gmail.com> <15da6f7a5d0.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Message-ID: Thanks Roger, In this case, the issue is more with the map presented in a browser widget, which is less about LC and more about the embedded chrome framework. I think that my device is not really a high-end android machine, either. It looks like max-texture-size might be a decent proxy for measuring GPU power. Sent from my iPhone > On Aug 3, 2017, at 8:36 AM, Roger Eller via use-livecode wrote: > > I would be more inclined to not say in general "...that Android runs > slower...", but rather "Android runs LiveCode apps slower." > > There are plenty of Android apps in the Play store that handle large > graphics VERY well on Android. It may or may not be just how LiveCode > rolls, as an improved experience can be achieved by handling images better > in your code. Breaking them up into grid pieces, and only displaying the > portion that is within the current view is one way. You can also reduce > the size of PNG files using specialized utilities like TinyPNG. > > ~Roger > > On Thu, Aug 3, 2017 at 3:20 AM, J. Landman Gay via use-livecode < > use-livecode at lists.runrev.com> wrote: > >> Android devices come with a variety of different specifications. The high >> end models will be more capable than low end ones. Depending on >> manufacturer and model, the graphics card will vary in capability and >> available RAM. Screen resolution also makes a difference. I'm using older >> test devices because I figure if it works there it will work on most >> others. But my Samsung S4 runs more slowly than my S5 and they were >> released only a year apart. And my Nexus tablet, which is older than both >> Samsung phones, runs as well or better than either of those, probably >> because it has a lower screen resolution. I'm not sure there's a standard >> you can rely on. >> >> I guess in general you could say that Android runs slower, but it's >> probably because there are so many low cost phones with subsequently less >> processing power. When you get into the higher range phones they can be >> quite acceptable. The same app that lagged on my Samsung ran fine on >> someone else's Pixel. >> >> -- >> Jacqueline Landman Gay | jacque at hyperactivesw.com >> HyperActive Software | http://www.hyperactivesw.com >> >> >> >> >> On August 2, 2017 6:14:06 PM Jonathan Lynch via use-livecode < >> use-livecode at lists.runrev.com> wrote: >> >> Hello everyone, >>> >>> I just put my app on a galaxy tab E as a test. >>> >>> It is painfully slow, but not just in the LC portion of the app. The map, >>> delivered through a browser widget, is also slow. >>> >>> So, I used the regular browser (chrome) at the webglearth website. That >>> was slow too, although not as bad. I think the main difference was that the >>> map div at their website is small, so it takes less processing power. >>> >>> I had thought I selected a midlevel Android device that can handle >>> moderate amounts of computation. >>> >>> In y'alls' experience, are android devices just slow? Do they have >>> inferior graphics processors? If you make computationally heavy apps for >>> Android, do you just warn users that the app will only work on some devices? >>> >>> I want this to work on as many devices as possible, but 3D maps require >>> lots of processing. >>> >>> Thanks, >>> >>> J >>> >>> Sent from my iPhone >>> _______________________________________________ >>> use-livecode mailing list >>> use-livecode at lists.runrev.com >>> Please visit this url to subscribe, unsubscribe and manage your >>> subscription preferences: >>> http://lists.runrev.com/mailman/listinfo/use-livecode >>> >> >> >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From dunbarx at aol.com Thu Aug 3 09:47:28 2017 From: dunbarx at aol.com (dunbarx) Date: Thu, 3 Aug 2017 06:47:28 -0700 (PDT) Subject: MouseDown sent to button in group, but MouseUp sent to card In-Reply-To: References: <6BF4813A-17C2-46A0-B001-CD41376DCEE0@mac.com> Message-ID: <1501768048363-4717949.post@n4.nabble.com> I feel a bit dumb. yes, there was an empty mouseup handler in the buttons. So that is fixed. Be careful in that a newly created button will, by default, have an uncompiled mouseUp handler pre-installed. It is not "applied" as of yet, but its "text' appears in the script of the button. Such a construct is included as a head start for the most common handler in button scripts. Craig Newman -- View this message in context: http://runtime-revolution.278305.n4.nabble.com/MouseDown-sent-to-button-in-group-but-MouseUp-sent-to-card-tp4717935p4717949.html Sent from the Revolution - User mailing list archive at Nabble.com. From kaveh at rivervalleytechnologies.com Thu Aug 3 10:54:51 2017 From: kaveh at rivervalleytechnologies.com (Kaveh Bazargan) Date: Thu, 3 Aug 2017 15:54:51 +0100 Subject: MouseDown sent to button in group, but MouseUp sent to card In-Reply-To: <1501768048363-4717949.post@n4.nabble.com> References: <6BF4813A-17C2-46A0-B001-CD41376DCEE0@mac.com> <1501768048363-4717949.post@n4.nabble.com> Message-ID: On 3 August 2017 at 14:47, dunbarx via use-livecode < use-livecode at lists.runrev.com> wrote: > I feel a bit dumb. yes, there was an empty mouseup handler in the buttons. > So that is fixed. > > > Be careful in that a newly created button will, by default, have an > uncompiled mouseUp handler pre-installed. It is not "applied" as of yet, > but > its "text' appears in the script of the button. Such a construct is > included > as a head start for the most common handler in button scripts. > > yes, that was the problem craig. So need to remove that manually... > Craig Newman > > > > -- > View this message in context: http://runtime-revolution. > 278305.n4.nabble.com/MouseDown-sent-to-button-in- > group-but-MouseUp-sent-to-card-tp4717935p4717949.html > Sent from the Revolution - User mailing list archive at Nabble.com. > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > -- Kaveh Bazargan Director River Valley Technologies @kaveh1000 +44 7771 824 111 www.rivervalleytechnologies.com From kaveh at rivervalleytechnologies.com Thu Aug 3 10:54:51 2017 From: kaveh at rivervalleytechnologies.com (Kaveh Bazargan) Date: Thu, 3 Aug 2017 15:54:51 +0100 Subject: MouseDown sent to button in group, but MouseUp sent to card In-Reply-To: <1501768048363-4717949.post@n4.nabble.com> References: <6BF4813A-17C2-46A0-B001-CD41376DCEE0@mac.com> <1501768048363-4717949.post@n4.nabble.com> Message-ID: On 3 August 2017 at 14:47, dunbarx via use-livecode < use-livecode at lists.runrev.com> wrote: > I feel a bit dumb. yes, there was an empty mouseup handler in the buttons. > So that is fixed. > > > Be careful in that a newly created button will, by default, have an > uncompiled mouseUp handler pre-installed. It is not "applied" as of yet, > but > its "text' appears in the script of the button. Such a construct is > included > as a head start for the most common handler in button scripts. > > yes, that was the problem craig. So need to remove that manually... > Craig Newman > > > > -- > View this message in context: http://runtime-revolution. > 278305.n4.nabble.com/MouseDown-sent-to-button-in- > group-but-MouseUp-sent-to-card-tp4717935p4717949.html > Sent from the Revolution - User mailing list archive at Nabble.com. > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > -- Kaveh Bazargan Director River Valley Technologies @kaveh1000 +44 7771 824 111 www.rivervalleytechnologies.com From kaveh at rivervalleytechnologies.com Thu Aug 3 10:54:51 2017 From: kaveh at rivervalleytechnologies.com (Kaveh Bazargan) Date: Thu, 3 Aug 2017 15:54:51 +0100 Subject: MouseDown sent to button in group, but MouseUp sent to card In-Reply-To: <1501768048363-4717949.post@n4.nabble.com> References: <6BF4813A-17C2-46A0-B001-CD41376DCEE0@mac.com> <1501768048363-4717949.post@n4.nabble.com> Message-ID: On 3 August 2017 at 14:47, dunbarx via use-livecode < use-livecode at lists.runrev.com> wrote: > I feel a bit dumb. yes, there was an empty mouseup handler in the buttons. > So that is fixed. > > > Be careful in that a newly created button will, by default, have an > uncompiled mouseUp handler pre-installed. It is not "applied" as of yet, > but > its "text' appears in the script of the button. Such a construct is > included > as a head start for the most common handler in button scripts. > > yes, that was the problem craig. So need to remove that manually... > Craig Newman > > > > -- > View this message in context: http://runtime-revolution. > 278305.n4.nabble.com/MouseDown-sent-to-button-in- > group-but-MouseUp-sent-to-card-tp4717935p4717949.html > Sent from the Revolution - User mailing list archive at Nabble.com. > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > -- Kaveh Bazargan Director River Valley Technologies @kaveh1000 +44 7771 824 111 www.rivervalleytechnologies.com From kaveh at rivervalleytechnologies.com Thu Aug 3 10:54:51 2017 From: kaveh at rivervalleytechnologies.com (Kaveh Bazargan) Date: Thu, 3 Aug 2017 15:54:51 +0100 Subject: MouseDown sent to button in group, but MouseUp sent to card In-Reply-To: <1501768048363-4717949.post@n4.nabble.com> References: <6BF4813A-17C2-46A0-B001-CD41376DCEE0@mac.com> <1501768048363-4717949.post@n4.nabble.com> Message-ID: On 3 August 2017 at 14:47, dunbarx via use-livecode < use-livecode at lists.runrev.com> wrote: > I feel a bit dumb. yes, there was an empty mouseup handler in the buttons. > So that is fixed. > > > Be careful in that a newly created button will, by default, have an > uncompiled mouseUp handler pre-installed. It is not "applied" as of yet, > but > its "text' appears in the script of the button. Such a construct is > included > as a head start for the most common handler in button scripts. > > yes, that was the problem craig. So need to remove that manually... > Craig Newman > > > > -- > View this message in context: http://runtime-revolution. > 278305.n4.nabble.com/MouseDown-sent-to-button-in- > group-but-MouseUp-sent-to-card-tp4717935p4717949.html > Sent from the Revolution - User mailing list archive at Nabble.com. > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > -- Kaveh Bazargan Director River Valley Technologies @kaveh1000 +44 7771 824 111 www.rivervalleytechnologies.com From bobsneidar at iotecdigital.com Thu Aug 3 11:00:07 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Thu, 3 Aug 2017 15:00:07 +0000 Subject: Taking quotes on building LC external for RethinkDB In-Reply-To: References: Message-ID: I poked around on their web site. What is the advantage of this db over other SQL db's? Price? Speed? Ease of config? Bob S > On Aug 2, 2017, at 14:12 , Tom Glod via use-livecode wrote: > > Hi folks, my company is currently taking quotes on building an LC external > to act as a driver for RethinkDB. I have already submitted a request with > Monte & Ian over at Livecode, but would like to open it up to everyone that > has the skill to build the external....I don't really even know if there is > anyone else. > > Here are the exact specs. > > https://www.rethinkdb.com/docs/writing-drivers/ > > The more precise the quote the better. > > Thanks, > > Tom From bobsneidar at iotecdigital.com Thu Aug 3 11:11:04 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Thu, 3 Aug 2017 15:11:04 +0000 Subject: Made with . . . In-Reply-To: References: Message-ID: Shouldn't you be getting the chocolates? ;-) Bob S > On Aug 2, 2017, at 16:47 , Mark Waddingham via use-livecode wrote: > > Warmest Regards, > > Mark. > > P.S. I didn't write the above to dispute your point - merely to use it to hint at a deeper truth... Which Richmond's pupil realised and hence bought chocolates as a result :) > > Sent from my iPhone From dochawk at gmail.com Thu Aug 3 11:18:39 2017 From: dochawk at gmail.com (Dr. Hawkins) Date: Thu, 3 Aug 2017 08:18:39 -0700 Subject: how to get the value of a custom property if the name of the cProperty is in a variable? In-Reply-To: <83430CBF-F745-486D-A208-28A5432A003A@appisle.net> References: <8F48407D-F2F3-4489-B030-94C259914AF4@major-k.de> <4A35F45F-C97E-4AA3-B37A-2D4FB4CF50EB@livecode.com> <83430CBF-F745-486D-A208-28A5432A003A@appisle.net> Message-ID: On Wed, Aug 2, 2017 at 8:39 PM, Monte Goulding via use-livecode < use-livecode at lists.runrev.com> wrote: > > Er? why if you know the name wouldn?t you type it unquoted? Are you really > suggesting to put any expression there? The property/function ambiguity > with `the` will make our heads explode! > If I have a variable "propertyZ", then under current code I *cannot* use set the propertyZ of theThing to 7 to affect the custom property named propertyZ. Allowing quotes would solve this. In my case, I hit this in a "metaprocedure" that runs in development to enforce consistency, find variable fields, and whathaveyou, and separately came to the same "natural" name for both a variable and a customproperty, leading to significant debugging until I figured out why it wasn't working. -- Dr. Richard E. Hawkins, Esq. (702) 508-8462 From bobsneidar at iotecdigital.com Thu Aug 3 11:21:34 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Thu, 3 Aug 2017 15:21:34 +0000 Subject: how to get the value of a custom property if the name of the cProperty is in a variable? In-Reply-To: References: Message-ID: <7CA2BB06-A919-4E75-A7CC-1DC65875A9F0@iotecdigital.com> If the handler is in the same script as the constant, why would you? A constant is for representing values that do not change after compile. Variables are for values that change during runtime. I cannot imagine a use case for putting a constant name into a variable, although I have thought about the need to get the constant from another script, until I remembered it's just easier to set a custom property. In fact (I think I've said so before) custom props are a great way to mimic scoped variables, and even constants. For instance all my datagrids have a property tablename containing the name of the table I query to populate it. Bob S > On Aug 2, 2017, at 10:20 , Matthias Rebbe via use-livecode wrote: > > Hi, > > let?s say a card has a custom property name cMyProp. > > The variable tMyVar contains the word ?cMyProp? > > How do i get the value of the custom property using the variable tMyVar? > > Regards, > Matthias > > > > Matthias Rebbe From dochawk at gmail.com Thu Aug 3 11:28:08 2017 From: dochawk at gmail.com (Dr. Hawkins) Date: Thu, 3 Aug 2017 08:28:08 -0700 Subject: MouseDown sent to button in group, but MouseUp sent to card In-Reply-To: <1501764888959-4717947.post@n4.nabble.com> References: <6BF4813A-17C2-46A0-B001-CD41376DCEE0@mac.com> <1501764888959-4717947.post@n4.nabble.com> Message-ID: On Thu, Aug 3, 2017 at 5:54 AM, dunbarx via use-livecode < use-livecode at lists.runrev.com> wrote: > > Note: If there is no mouseWithin handler in the target object's script, no > mouseWithin message is sent, even if there is a mouseWithin handler in an > object that's further along the message path. > > Why this should be so is a mystery, but maybe someone from the team will > chime in. > I've always assumed that that and similar case was due to the performance penalty for checking and sending messages on older machines; I think that mouseWithin dates to hypercard which ran on 8mhz 16 bit processors . . . -- Dr. Richard E. Hawkins, Esq. (702) 508-8462 From dochawk at gmail.com Thu Aug 3 11:28:08 2017 From: dochawk at gmail.com (Dr. Hawkins) Date: Thu, 3 Aug 2017 08:28:08 -0700 Subject: MouseDown sent to button in group, but MouseUp sent to card In-Reply-To: <1501764888959-4717947.post@n4.nabble.com> References: <6BF4813A-17C2-46A0-B001-CD41376DCEE0@mac.com> <1501764888959-4717947.post@n4.nabble.com> Message-ID: On Thu, Aug 3, 2017 at 5:54 AM, dunbarx via use-livecode < use-livecode at lists.runrev.com> wrote: > > Note: If there is no mouseWithin handler in the target object's script, no > mouseWithin message is sent, even if there is a mouseWithin handler in an > object that's further along the message path. > > Why this should be so is a mystery, but maybe someone from the team will > chime in. > I've always assumed that that and similar case was due to the performance penalty for checking and sending messages on older machines; I think that mouseWithin dates to hypercard which ran on 8mhz 16 bit processors . . . -- Dr. Richard E. Hawkins, Esq. (702) 508-8462 From richmondmathewson at gmail.com Thu Aug 3 11:31:17 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Thu, 3 Aug 2017 18:31:17 +0300 Subject: Made with . . . In-Reply-To: References: Message-ID: If Waddingham is getting only chocolates it's time he changed his job. I hope that Kevin is also giving him flowers! Richmond. On 8/3/17 6:11 pm, Bob Sneidar via use-livecode wrote: > Shouldn't you be getting the chocolates? ;-) > > Bob S > > >> On Aug 2, 2017, at 16:47 , Mark Waddingham via use-livecode wrote: >> >> Warmest Regards, >> >> Mark. >> >> P.S. I didn't write the above to dispute your point - merely to use it to hint at a deeper truth... Which Richmond's pupil realised and hence bought chocolates as a result :) >> >> Sent from my iPhone > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From bobsneidar at iotecdigital.com Thu Aug 3 11:33:27 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Thu, 3 Aug 2017 15:33:27 +0000 Subject: Hackintosh In-Reply-To: References: <46babc4f-2c3f-732f-790f-ed0b4a36a565@fourthworld.com> Message-ID: I don't see it that way. Apple has a choice to adhere to China's laws or no. China has a choice to allow the sale of Apple products in their country. The world is full of totalitarian states, and the populations there also have a choice: To live with their present situation, or to revolt. I suppose despots start out wanting to make the world, or at least their world "a better place", but as I always say, the devil is in the details. Bob S > On Aug 2, 2017, at 13:07 , Richmond Mathewson via use-livecode wrote: > > Apple's EULA may not actually be legal or legally enforcable in a large number of territories > where this Use-List is read. > > Just seen Tim Cook "sucking the kneecaps" of China's one-party state's leaders and blethering anent "adhering to the law" re VPNs. > Nothing makes me despise anyone more than trying to justify adherence to laws of a totalitarian state. From bobsneidar at iotecdigital.com Thu Aug 3 11:40:05 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Thu, 3 Aug 2017 15:40:05 +0000 Subject: Hackintosh In-Reply-To: References: <46babc4f-2c3f-732f-790f-ed0b4a36a565@fourthworld.com> <23B6FDE0-6352-4A58-9664-A701D35D3296@livecode.com> <01ea01d30bd1$403a0150$c0ae03f0$@solidit.nl> Message-ID: <7A3C8F34-C3B0-4CD3-AEBC-C923F37CBD6F@iotecdigital.com> Read C. S. Lewis on the matter of "laws" in these two very different senses. Laws of nature are not really laws that we can choose to break them and behave in a manner contrary to them. Laws in this context simply means "how things are". Laws in the second sense means "how we as a whole agree we ought to act and we agree so vehemently that we have consequences put in place for those who disregard them". Bob S > On Aug 2, 2017, at 14:04 , Mark Waddingham via use-livecode wrote: > > Although, I'd point out (because I'm a very pedantic person at times) - that there are always rules we can't change such as the rules of nature From dunbarx at aol.com Thu Aug 3 11:42:40 2017 From: dunbarx at aol.com (dunbarx) Date: Thu, 3 Aug 2017 08:42:40 -0700 (PDT) Subject: MouseDown sent to button in group, but MouseUp sent to card In-Reply-To: References: <6BF4813A-17C2-46A0-B001-CD41376DCEE0@mac.com> <1501768048363-4717949.post@n4.nabble.com> Message-ID: <1501774960906-4717959.post@n4.nabble.com> >yes, that was the problem craig. So need to remove that manually... Well, maybe, if you accidentally compiled that script. But all new buttons contain the uncompiled "head start" handler, so you can ignore them as a rule. I do, but have, now and then accidentally compiled, and had to track down issues like you did. Craig -- View this message in context: http://runtime-revolution.278305.n4.nabble.com/MouseDown-sent-to-button-in-group-but-MouseUp-sent-to-card-tp4717935p4717959.html Sent from the Revolution - User mailing list archive at Nabble.com. From kaveh at rivervalleytechnologies.com Thu Aug 3 12:52:07 2017 From: kaveh at rivervalleytechnologies.com (Kaveh Bazargan) Date: Thu, 3 Aug 2017 17:52:07 +0100 Subject: How to remove from a group Message-ID: Can't find how to remove a button from a group of buttons. Tried this in stack script: on mouseup remove the target from group "presentations" grab the target end if end mouseup but says object is not in group. Checked it is. -- Kaveh Bazargan Director River Valley Technologies @kaveh1000 +44 7771 824 111 www.rivervalleytechnologies.com From jacque at hyperactivesw.com Thu Aug 3 12:53:14 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Thu, 03 Aug 2017 11:53:14 -0500 Subject: MouseDown sent to button in group, but MouseUp sent to card In-Reply-To: <1501774960906-4717959.post@n4.nabble.com> References: <6BF4813A-17C2-46A0-B001-CD41376DCEE0@mac.com> <1501768048363-4717949.post@n4.nabble.com> <1501774960906-4717959.post@n4.nabble.com> Message-ID: <15da903f090.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> This changed in LC 9dp8 and default handlers are no longer inserted, to avoid just this issue. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com On August 3, 2017 10:45:06 AM dunbarx via use-livecode wrote: >>yes, that was the problem craig. So need to remove that manually... > > Well, maybe, if you accidentally compiled that script. But all new buttons > contain the uncompiled "head start" handler, so you can ignore them as a > rule. I do, but have, now and then accidentally compiled, and had to track > down issues like you did. > > Craig > > > > -- > View this message in context: > http://runtime-revolution.278305.n4.nabble.com/MouseDown-sent-to-button-in-group-but-MouseUp-sent-to-card-tp4717935p4717959.html > Sent from the Revolution - User mailing list archive at Nabble.com. > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From richmondmathewson at gmail.com Thu Aug 3 13:05:59 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Thu, 3 Aug 2017 20:05:59 +0300 Subject: Hackintosh In-Reply-To: References: <46babc4f-2c3f-732f-790f-ed0b4a36a565@fourthworld.com> Message-ID: On 8/3/17 6:33 pm, Bob Sneidar via use-livecode wrote: > I don't see it that way. Apple has a choice to adhere to China's laws or no. Well, money almost always talks louder than either morals or anything else. > China has a choice to allow the sale of Apple products in their country. "Vhina" has NO choice at all; the Heads of the Brutal, Repressive Communist Party who do NOT properly represent the population of China have a choice. > > The world is full of totalitarian states, and the populations there also have a choice: To live with their present situation, or to revolt. Well, it's a good thing people didn't feel like that during the Second World War or half of us would be living under Hitler's ghost and the other half of us would be ash. Despotic machines are often so efficient (cf. North Korea) that no one could revolt even if they wanted to. Cf. The Hungarian Uprising, the Prague Spring in Czechoslovakia, and so on. As you have never lived in a totalitarian state you have never had to deal with the reality of that, and stating that people either have to "live with their present situation, or to revolt" betrays a singular lack of understanding re the nature of totalist states. > > I suppose despots start out wanting to make the world, or at least their world "a better place", Very rarely; they just want the raw power and the "choccy-bikkies". > but as I always say, the devil is in the details. > > Bob S Richmond. > > >> On Aug 2, 2017, at 13:07 , Richmond Mathewson via use-livecode wrote: >> >> Apple's EULA may not actually be legal or legally enforcable in a large number of territories >> where this Use-List is read. >> >> Just seen Tim Cook "sucking the kneecaps" of China's one-party state's leaders and blethering anent "adhering to the law" re VPNs. I, at least, am well aware of what constitutes "a law" and what constitutes "ruling by decree"; and everyone should be made aware of that important distinction. >> Nothing makes me despise anyone more than trying to justify adherence to laws of a totalitarian state. > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From richmondmathewson at gmail.com Thu Aug 3 13:07:37 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Thu, 3 Aug 2017 20:07:37 +0300 Subject: Hackintosh In-Reply-To: <7A3C8F34-C3B0-4CD3-AEBC-C923F37CBD6F@iotecdigital.com> References: <46babc4f-2c3f-732f-790f-ed0b4a36a565@fourthworld.com> <23B6FDE0-6352-4A58-9664-A701D35D3296@livecode.com> <01ea01d30bd1$403a0150$c0ae03f0$@solidit.nl> <7A3C8F34-C3B0-4CD3-AEBC-C923F37CBD6F@iotecdigital.com> Message-ID: <92c9df19-20cd-709e-38a8-30c0a7030209@gmail.com> Well, if you are aware of that distinction you should be aware of the difference between a law made by a democratically elected body and a decree called a "law" made by a non-representative body such as an absolute monarch or an oligarchy. R. On 8/3/17 6:40 pm, Bob Sneidar via use-livecode wrote: > Read C. S. Lewis on the matter of "laws" in these two very different senses. Laws of nature are not really laws that we can choose to break them and behave in a manner contrary to them. Laws in this context simply means "how things are". Laws in the second sense means "how we as a whole agree we ought to act and we agree so vehemently that we have consequences put in place for those who disregard them". > > Bob S > > >> On Aug 2, 2017, at 14:04 , Mark Waddingham via use-livecode wrote: >> >> Although, I'd point out (because I'm a very pedantic person at times) - that there are always rules we can't change such as the rules of nature > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From iowahengst at mac.com Thu Aug 3 13:30:47 2017 From: iowahengst at mac.com (Randy Hengst) Date: Thu, 03 Aug 2017 12:30:47 -0500 Subject: How to remove from a group In-Reply-To: References: Message-ID: <02B38FE0-1C25-406A-918F-4C179B34F9FA@mac.com> How about something like this in the button you want to remove from a group? if the first word the owner of me is "Group" then relayer me after the owner of me end if > On Aug 3, 2017, at 11:52 AM, Kaveh Bazargan via use-livecode wrote: > > Can't find how to remove a button from a group of buttons. Tried this in > stack script: > > on mouseup > remove the target from group "presentations" > grab the target > end if > end mouseup > > but says object is not in group. Checked it is. > > -- > Kaveh Bazargan > Director > River Valley Technologies > @kaveh1000 > +44 7771 824 111 > www.rivervalleytechnologies.com > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From kaveh at rivervalleytechnologies.com Thu Aug 3 13:46:33 2017 From: kaveh at rivervalleytechnologies.com (Kaveh Bazargan) Date: Thu, 3 Aug 2017 18:46:33 +0100 Subject: How to remove from a group In-Reply-To: <02B38FE0-1C25-406A-918F-4C179B34F9FA@mac.com> References: <02B38FE0-1C25-406A-918F-4C179B34F9FA@mac.com> Message-ID: Astounding. Works. Thank you. Never had seen relayer!!! On 3 August 2017 at 18:30, Randy Hengst via use-livecode < use-livecode at lists.runrev.com> wrote: > How about something like this in the button you want to remove from a > group? > if the first word the owner of me is "Group" then > > relayer me after the owner of me > > end if > > > > > On Aug 3, 2017, at 11:52 AM, Kaveh Bazargan via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > > Can't find how to remove a button from a group of buttons. Tried this in > > stack script: > > > > on mouseup > > remove the target from group "presentations" > > grab the target > > end if > > end mouseup > > > > but says object is not in group. Checked it is. > > > > -- > > Kaveh Bazargan > > Director > > River Valley Technologies > > @kaveh1000 > > +44 7771 824 111 > > www.rivervalleytechnologies.com > > _______________________________________________ > > use-livecode mailing list > > use-livecode at lists.runrev.com > > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > > http://lists.runrev.com/mailman/listinfo/use-livecode > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode -- Kaveh Bazargan Director River Valley Technologies @kaveh1000 +44 7771 824 111 www.rivervalleytechnologies.com From kaveh at rivervalleytechnologies.com Thu Aug 3 13:57:06 2017 From: kaveh at rivervalleytechnologies.com (Kaveh Bazargan) Date: Thu, 3 Aug 2017 18:57:06 +0100 Subject: How to remove from a group In-Reply-To: References: <02B38FE0-1C25-406A-918F-4C179B34F9FA@mac.com> Message-ID: Sorry Randy. And how do I put an an object into a group? I tried relayer before group "..." but it just sends object to the back, not inside the group. On 3 August 2017 at 18:46, Kaveh Bazargan wrote: > Astounding. Works. Thank you. Never had seen relayer!!! > > On 3 August 2017 at 18:30, Randy Hengst via use-livecode < > use-livecode at lists.runrev.com> wrote: > >> How about something like this in the button you want to remove from a >> group? >> if the first word the owner of me is "Group" then >> >> relayer me after the owner of me >> >> end if >> >> >> >> > On Aug 3, 2017, at 11:52 AM, Kaveh Bazargan via use-livecode < >> use-livecode at lists.runrev.com> wrote: >> > >> > Can't find how to remove a button from a group of buttons. Tried this in >> > stack script: >> > >> > on mouseup >> > remove the target from group "presentations" >> > grab the target >> > end if >> > end mouseup >> > >> > but says object is not in group. Checked it is. >> > >> > -- >> > Kaveh Bazargan >> > Director >> > River Valley Technologies >> > @kaveh1000 >> > +44 7771 824 111 >> > www.rivervalleytechnologies.com >> > _______________________________________________ >> > use-livecode mailing list >> > use-livecode at lists.runrev.com >> > Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> > http://lists.runrev.com/mailman/listinfo/use-livecode >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode > > > > > -- > Kaveh Bazargan > Director > River Valley Technologies > @kaveh1000 > +44 7771 824 111 <07771%20824111> > www.rivervalleytechnologies.com > -- Kaveh Bazargan Director River Valley Technologies @kaveh1000 +44 7771 824 111 www.rivervalleytechnologies.com From dunbarx at aol.com Thu Aug 3 14:33:00 2017 From: dunbarx at aol.com (dunbarx) Date: Thu, 3 Aug 2017 11:33:00 -0700 (PDT) Subject: How to remove from a group In-Reply-To: References: <02B38FE0-1C25-406A-918F-4C179B34F9FA@mac.com> Message-ID: <1501785180506-4717967.post@n4.nabble.com> Hi. You have to relayer after a control actually within the group of interest. Something like: (Pseudo) relayer "btnToInsert" after btn "btnWithinGroup" Craig Newman -- View this message in context: http://runtime-revolution.278305.n4.nabble.com/How-to-remove-from-a-group-tp4717960p4717967.html Sent from the Revolution - User mailing list archive at Nabble.com. From rdimola at evergreeninfo.net Thu Aug 3 15:28:43 2017 From: rdimola at evergreeninfo.net (Ralph DiMola) Date: Thu, 3 Aug 2017 15:28:43 -0400 Subject: [OT-ish] Updating MacBook from El Capitan to Sierra to install Xcode 8.3+ Message-ID: <008101d30c8e$b866a3a0$2933eae0$@net> I'm going to do this Friday night and was looking for any advice/tricks to make this go smooth(as much as possible). I have read about a few disasters online when upgrading from HFS+ to the new APFS file system. I am running a 16gb Early 2011 15" MacBook Pro. I CCC'ed my 1tb drive to a new 2tb drive and then installed the 2tb drive in the MacBook . The new 2tb drive is working just fine and dandy. Any advice would be appreciated. Thanks in advance. Ralph DiMola IT Director Evergreen Information Services rdimola at evergreeninfo.net From colinholgate at gmail.com Thu Aug 3 16:13:05 2017 From: colinholgate at gmail.com (Colin Holgate) Date: Thu, 3 Aug 2017 16:13:05 -0400 Subject: [OT-ish] Updating MacBook from El Capitan to Sierra to install Xcode 8.3+ In-Reply-To: <008101d30c8e$b866a3a0$2933eae0$@net> References: <008101d30c8e$b866a3a0$2933eae0$@net> Message-ID: <2F40F102-FFC7-4ED9-85D7-7703867AE264@gmail.com> It?s High Sierra that has APFS, and I did have major problems in trying that. It may be better by now, but when I had to wipe my drive I went back to regular HFS+. LiveCode seems to be working ok. > On Aug 3, 2017, at 3:28 PM, Ralph DiMola via use-livecode wrote: > > I'm going to do this Friday night and was looking for any advice/tricks to > make this go smooth(as much as possible). I have read about a few disasters > online when upgrading from HFS+ to the new APFS file system. > > > > I am running a 16gb Early 2011 15" MacBook Pro. I CCC'ed my 1tb drive to a > new 2tb drive and then installed the 2tb drive in the MacBook . The new 2tb > drive is working just fine and dandy. > > > > Any advice would be appreciated. > > Thanks in advance. > > > > Ralph DiMola > > IT Director > > Evergreen Information Services > > rdimola at evergreeninfo.net From monte at appisle.net Thu Aug 3 16:16:46 2017 From: monte at appisle.net (Monte Goulding) Date: Fri, 4 Aug 2017 06:16:46 +1000 Subject: MouseDown sent to button in group, but MouseUp sent to card In-Reply-To: <1501764888959-4717947.post@n4.nabble.com> References: <6BF4813A-17C2-46A0-B001-CD41376DCEE0@mac.com> <1501764888959-4717947.post@n4.nabble.com> Message-ID: <4A2880A9-E0BA-4CDF-B63D-CF9AA2F9A049@appisle.net> > On 3 Aug 2017, at 10:54 pm, dunbarx via use-livecode wrote: > > Note: If there is no mouseWithin handler in the target object's script, no > mouseWithin message is sent, even if there is a mouseWithin handler in an > object that's further along the message path. > > Why this should be so is a mystery, but maybe someone from the team will > chime in. This is the case with the idle handler as well. These are very inefficient and would basically bog down the message path if they traversed the it for every object on every cycle. They probably should be deprecated. A better mouseWithin would be something like this: local sMouseWithin = false on mouseEnter put true into sMouseWithin end mouseEnter on mouseLeave put false into sMouseWithin end mouseLeave Or just handle mouseMove instead of mouseWithin. Cheers Monte From dochawk at gmail.com Thu Aug 3 16:22:09 2017 From: dochawk at gmail.com (Dr. Hawkins) Date: Thu, 3 Aug 2017 13:22:09 -0700 Subject: [OT-ish] Updating MacBook from El Capitan to Sierra to install Xcode 8.3+ In-Reply-To: <2F40F102-FFC7-4ED9-85D7-7703867AE264@gmail.com> References: <008101d30c8e$b866a3a0$2933eae0$@net> <2F40F102-FFC7-4ED9-85D7-7703867AE264@gmail.com> Message-ID: On Thu, Aug 3, 2017 at 1:13 PM, Colin Holgate via use-livecode < use-livecode at lists.runrev.com> wrote: > It?s High Sierra that has APFS, and I did have major problems in trying > that. It may be better by now, but when I had to wipe my drive I went back > to regular HFS+. I would expect that when downgrading a file system . . . (or any other change of file system other than one designed as an upgrade-in-place) > LiveCode seems to be working ok. I haven't had any particular quirks with it on this MacBook running high sierra, but I spend most of my time on sierra. (iCloud drive is spectacular at keeping my three main machines synchronized!) -- Dr. Richard E. Hawkins, Esq. (702) 508-8462 From dochawk at gmail.com Thu Aug 3 16:25:15 2017 From: dochawk at gmail.com (Dr. Hawkins) Date: Thu, 3 Aug 2017 13:25:15 -0700 Subject: MouseDown sent to button in group, but MouseUp sent to card In-Reply-To: <4A2880A9-E0BA-4CDF-B63D-CF9AA2F9A049@appisle.net> References: <6BF4813A-17C2-46A0-B001-CD41376DCEE0@mac.com> <1501764888959-4717947.post@n4.nabble.com> <4A2880A9-E0BA-4CDF-B63D-CF9AA2F9A049@appisle.net> Message-ID: On Thu, Aug 3, 2017 at 1:16 PM, Monte Goulding via use-livecode < use-livecode at lists.runrev.com> wrote: > > A better mouseWithin would be something like this: > > local sMouseWithin = false > > on mouseEnter > put true into sMouseWithin > end mouseEnter > that would take some serious work on mouseEnter and mouseLeave, I think. I've been finding them "less than reliable" (particularly, mouseEnter seems to be able to fire in a new group in a way that prevents mouseLeave from hitting the old when the mouse its moving quickly) -- Dr. Richard E. Hawkins, Esq. (702) 508-8462 From monte at appisle.net Thu Aug 3 16:27:29 2017 From: monte at appisle.net (Monte Goulding) Date: Fri, 4 Aug 2017 06:27:29 +1000 Subject: MouseDown sent to button in group, but MouseUp sent to card In-Reply-To: <4A2880A9-E0BA-4CDF-B63D-CF9AA2F9A049@appisle.net> References: <6BF4813A-17C2-46A0-B001-CD41376DCEE0@mac.com> <1501764888959-4717947.post@n4.nabble.com> <4A2880A9-E0BA-4CDF-B63D-CF9AA2F9A049@appisle.net> Message-ID: <681FCB10-DB3F-4298-A2A5-CE8D1784258E@appisle.net> > On 4 Aug 2017, at 6:16 am, Monte Goulding via use-livecode wrote: > > They probably should be deprecated. I have started some internal discussion about this. There?s mouseStillDown as well. I think they shouldn?t be in the handler list as they may not be deprecated but are certainly not recommended. We will see what Mark thinks when he?s back from his G&T drinking holiday ;-) or not as he seems to be responding to lots of things anyway! Cheers Monte From hh at hyperhh.de Thu Aug 3 16:38:18 2017 From: hh at hyperhh.de (hh) Date: Thu, 3 Aug 2017 22:38:18 +0200 Subject: MouseDown sent to button in group, but MouseUp sent to card Message-ID: <51753F91-7CB4-44B3-90E8-79B722168B45@hyperhh.de> > Monte wrote: > ... G&T drinking holiday ;-) Practising Geometry & Trigonometry and drinking?? From monte at appisle.net Thu Aug 3 16:53:24 2017 From: monte at appisle.net (Monte Goulding) Date: Fri, 4 Aug 2017 06:53:24 +1000 Subject: MouseDown sent to button in group, but MouseUp sent to card In-Reply-To: <51753F91-7CB4-44B3-90E8-79B722168B45@hyperhh.de> References: <51753F91-7CB4-44B3-90E8-79B722168B45@hyperhh.de> Message-ID: <15F947DF-B874-4568-AC55-9DAB2DB7326E@appisle.net> > On 4 Aug 2017, at 6:38 am, hh via use-livecode wrote: > >> Monte wrote: >> ... G&T drinking holiday ;-) > > Practising Geometry & Trigonometry and drinking?? Yeah I know? crazy mathematicians! What can you do. Cheers Monte From jonathandlynch at gmail.com Thu Aug 3 17:07:04 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Thu, 3 Aug 2017 17:07:04 -0400 Subject: Android device speed In-Reply-To: References: <54624F64-898C-47DC-9400-DE321C482663@gmail.com> <15da6f7a5d0.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Message-ID: <73CFE8CE-25FA-45DD-B940-4A66C8DF0098@gmail.com> It looks like we need to use a combination of requestAnimationFrame and performance.now in JavaScript to test the GPU. I would rather test the GPU in LC, but I don't know how to do that without having a visible animation on the screen. Sent from my iPhone > On Aug 3, 2017, at 9:05 AM, jonathandlynch at gmail.com wrote: > > Thanks Roger, > > In this case, the issue is more with the map presented in a browser widget, which is less about LC and more about the embedded chrome framework. > > I think that my device is not really a high-end android machine, either. > > It looks like max-texture-size might be a decent proxy for measuring GPU power. > > > Sent from my iPhone > >> On Aug 3, 2017, at 8:36 AM, Roger Eller via use-livecode wrote: >> >> I would be more inclined to not say in general "...that Android runs >> slower...", but rather "Android runs LiveCode apps slower." >> >> There are plenty of Android apps in the Play store that handle large >> graphics VERY well on Android. It may or may not be just how LiveCode >> rolls, as an improved experience can be achieved by handling images better >> in your code. Breaking them up into grid pieces, and only displaying the >> portion that is within the current view is one way. You can also reduce >> the size of PNG files using specialized utilities like TinyPNG. >> >> ~Roger >> >> On Thu, Aug 3, 2017 at 3:20 AM, J. Landman Gay via use-livecode < >> use-livecode at lists.runrev.com> wrote: >> >>> Android devices come with a variety of different specifications. The high >>> end models will be more capable than low end ones. Depending on >>> manufacturer and model, the graphics card will vary in capability and >>> available RAM. Screen resolution also makes a difference. I'm using older >>> test devices because I figure if it works there it will work on most >>> others. But my Samsung S4 runs more slowly than my S5 and they were >>> released only a year apart. And my Nexus tablet, which is older than both >>> Samsung phones, runs as well or better than either of those, probably >>> because it has a lower screen resolution. I'm not sure there's a standard >>> you can rely on. >>> >>> I guess in general you could say that Android runs slower, but it's >>> probably because there are so many low cost phones with subsequently less >>> processing power. When you get into the higher range phones they can be >>> quite acceptable. The same app that lagged on my Samsung ran fine on >>> someone else's Pixel. >>> >>> -- >>> Jacqueline Landman Gay | jacque at hyperactivesw.com >>> HyperActive Software | http://www.hyperactivesw.com >>> >>> >>> >>> >>> On August 2, 2017 6:14:06 PM Jonathan Lynch via use-livecode < >>> use-livecode at lists.runrev.com> wrote: >>> >>> Hello everyone, >>>> >>>> I just put my app on a galaxy tab E as a test. >>>> >>>> It is painfully slow, but not just in the LC portion of the app. The map, >>>> delivered through a browser widget, is also slow. >>>> >>>> So, I used the regular browser (chrome) at the webglearth website. That >>>> was slow too, although not as bad. I think the main difference was that the >>>> map div at their website is small, so it takes less processing power. >>>> >>>> I had thought I selected a midlevel Android device that can handle >>>> moderate amounts of computation. >>>> >>>> In y'alls' experience, are android devices just slow? Do they have >>>> inferior graphics processors? If you make computationally heavy apps for >>>> Android, do you just warn users that the app will only work on some devices? >>>> >>>> I want this to work on as many devices as possible, but 3D maps require >>>> lots of processing. >>>> >>>> Thanks, >>>> >>>> J >>>> >>>> Sent from my iPhone >>>> _______________________________________________ >>>> use-livecode mailing list >>>> use-livecode at lists.runrev.com >>>> Please visit this url to subscribe, unsubscribe and manage your >>>> subscription preferences: >>>> http://lists.runrev.com/mailman/listinfo/use-livecode >>>> >>> >>> >>> >>> _______________________________________________ >>> use-livecode mailing list >>> use-livecode at lists.runrev.com >>> Please visit this url to subscribe, unsubscribe and manage your >>> subscription preferences: >>> http://lists.runrev.com/mailman/listinfo/use-livecode >>> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode From bobsneidar at iotecdigital.com Thu Aug 3 17:23:54 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Thu, 3 Aug 2017 21:23:54 +0000 Subject: MouseDown sent to button in group, but MouseUp sent to card In-Reply-To: <15F947DF-B874-4568-AC55-9DAB2DB7326E@appisle.net> References: <51753F91-7CB4-44B3-90E8-79B722168B45@hyperhh.de> <15F947DF-B874-4568-AC55-9DAB2DB7326E@appisle.net> Message-ID: Now we know how new math came to be. > On Aug 3, 2017, at 13:53 , Monte Goulding via use-livecode wrote: > >> >> On 4 Aug 2017, at 6:38 am, hh via use-livecode wrote: >> >>> Monte wrote: >>> ... G&T drinking holiday ;-) >> >> Practising Geometry & Trigonometry and drinking?? > > Yeah I know? crazy mathematicians! What can you do. > > Cheers > > Monte From bobsneidar at iotecdigital.com Thu Aug 3 17:25:18 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Thu, 3 Aug 2017 21:25:18 +0000 Subject: Hackintosh In-Reply-To: References: <46babc4f-2c3f-732f-790f-ed0b4a36a565@fourthworld.com> <23B6FDE0-6352-4A58-9664-A701D35D3296@livecode.com> <01ea01d30bd1$403a0150$c0ae03f0$@solidit.nl> <315b9bd7-0bb2-778e-68db-495bc4ab24d4@gmail.com> Message-ID: <7758A930-BDCF-4803-B86A-D93235D2D1AA@iotecdigital.com> Wear your kilt. It's easior to pee. Bob S > On Aug 2, 2017, at 14:40 , Mark Waddingham via use-livecode wrote: > > Indeed - and (if I remember correctly) - one purpose of devils advocate is to ensure the other side justifies its case 'sufficiently' (for some definition of sufficiently - usually a great deal harder when pedanticism kicks in!). > > I'm off to have another G&T! > > Warmest Regards, > > Mark. From bobsneidar at iotecdigital.com Thu Aug 3 17:32:08 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Thu, 3 Aug 2017 21:32:08 +0000 Subject: Hackintosh In-Reply-To: References: <0ce1f7c2-1ab9-462f-b6fa-f1f626b7d655@gmail.com> <156acf39-5dc5-29c5-2963-402c83df3040@fourthworld.com> <4674c74c-e8a2-6bd6-a632-202d65851338@gmail.com> <841EB626-392E-4BB4-A45D-570AD0AAAFCB@livecode.com> Message-ID: There have been lawyers for almost as long as there have been prostitutes. Neither is going away anytime soon. Bob S > On Aug 3, 2017, at 05:08 , Roger Eller via use-livecode wrote: > > This sparked a memory of an old scene in Star Trek > , where a cryogenically > preserved man of our time awakens to find that everything has changed. A > future where your only goal is to improve yourself for the good of all. I > wonder if there will be EULAs in 100 years. Hmmm... From bobsneidar at iotecdigital.com Thu Aug 3 17:35:02 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Thu, 3 Aug 2017 21:35:02 +0000 Subject: Hackintosh In-Reply-To: References: <46babc4f-2c3f-732f-790f-ed0b4a36a565@fourthworld.com> Message-ID: The French revolution, the Russian revolution. Point out the longest lived totalitarian state that still exists today. They all fall eventually. Bob S > On Aug 3, 2017, at 10:05 , Richmond Mathewson via use-livecode wrote: > > Despotic machines are often so efficient (cf. North Korea) that no one could revolt even if they wanted to. > > Cf. The Hungarian Uprising, the Prague Spring in Czechoslovakia, and so on. > > As you have never lived in a totalitarian state you have never had to deal with the reality of that, > and stating that people either have to "live with their present situation, or to revolt" betrays a singular > lack of understanding re the nature of totalist states. From bobsneidar at iotecdigital.com Thu Aug 3 17:37:35 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Thu, 3 Aug 2017 21:37:35 +0000 Subject: Hackintosh In-Reply-To: <92c9df19-20cd-709e-38a8-30c0a7030209@gmail.com> References: <46babc4f-2c3f-732f-790f-ed0b4a36a565@fourthworld.com> <23B6FDE0-6352-4A58-9664-A701D35D3296@livecode.com> <01ea01d30bd1$403a0150$c0ae03f0$@solidit.nl> <7A3C8F34-C3B0-4CD3-AEBC-C923F37CBD6F@iotecdigital.com> <92c9df19-20cd-709e-38a8-30c0a7030209@gmail.com> Message-ID: <1D757A1A-3BC2-49BF-813E-B118D3917175@iotecdigital.com> One is a difference in kind, the other in degree. Bob S > On Aug 3, 2017, at 10:07 , Richmond Mathewson via use-livecode wrote: > > Well, if you are aware of that distinction you should be aware of the difference between a law made by a democratically elected body > and a decree called a "law" made by a non-representative body such as an absolute monarch or an oligarchy. > > R. From dochawk at gmail.com Thu Aug 3 17:58:28 2017 From: dochawk at gmail.com (Dr. Hawkins) Date: Thu, 3 Aug 2017 14:58:28 -0700 Subject: MouseDown sent to button in group, but MouseUp sent to card In-Reply-To: <51753F91-7CB4-44B3-90E8-79B722168B45@hyperhh.de> References: <51753F91-7CB4-44B3-90E8-79B722168B45@hyperhh.de> Message-ID: On Thu, Aug 3, 2017 at 1:38 PM, hh via use-livecode < use-livecode at lists.runrev.com> wrote: > > Monte wrote: > > ... G&T drinking holiday ;-) > tsk, tsk. Alcohol and math don't mix: don't drink and derive! [*duck*] -- Dr. Richard E. Hawkins, Esq. (702) 508-8462 From jonathandlynch at gmail.com Thu Aug 3 17:58:42 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Thu, 3 Aug 2017 17:58:42 -0400 Subject: Android device speed In-Reply-To: <73CFE8CE-25FA-45DD-B940-4A66C8DF0098@gmail.com> References: <54624F64-898C-47DC-9400-DE321C482663@gmail.com> <15da6f7a5d0.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <73CFE8CE-25FA-45DD-B940-4A66C8DF0098@gmail.com> Message-ID: <21A3A7F7-F8B5-40FF-AEDF-D639AFF80612@gmail.com> I am overthinking this. A group that is visible but layered under another object would do it. 1. Turn on accelerated rendering 2. Scroll the group programmatically from top to bottom as many times as possible in a quarter second. 3. Adjust the div size based on the number of times it can do the scroll. I would just need to experiment to determine how the repeat rate relates to app performance. Sent from my iPhone > On Aug 3, 2017, at 5:07 PM, jonathandlynch at gmail.com wrote: > > It looks like we need to use a combination of requestAnimationFrame and performance.now in JavaScript to test the GPU. > > I would rather test the GPU in LC, but I don't know how to do that without having a visible animation on the screen. > > Sent from my iPhone > >> On Aug 3, 2017, at 9:05 AM, jonathandlynch at gmail.com wrote: >> >> Thanks Roger, >> >> In this case, the issue is more with the map presented in a browser widget, which is less about LC and more about the embedded chrome framework. >> >> I think that my device is not really a high-end android machine, either. >> >> It looks like max-texture-size might be a decent proxy for measuring GPU power. >> >> >> Sent from my iPhone >> >>> On Aug 3, 2017, at 8:36 AM, Roger Eller via use-livecode wrote: >>> >>> I would be more inclined to not say in general "...that Android runs >>> slower...", but rather "Android runs LiveCode apps slower." >>> >>> There are plenty of Android apps in the Play store that handle large >>> graphics VERY well on Android. It may or may not be just how LiveCode >>> rolls, as an improved experience can be achieved by handling images better >>> in your code. Breaking them up into grid pieces, and only displaying the >>> portion that is within the current view is one way. You can also reduce >>> the size of PNG files using specialized utilities like TinyPNG. >>> >>> ~Roger >>> >>> On Thu, Aug 3, 2017 at 3:20 AM, J. Landman Gay via use-livecode < >>> use-livecode at lists.runrev.com> wrote: >>> >>>> Android devices come with a variety of different specifications. The high >>>> end models will be more capable than low end ones. Depending on >>>> manufacturer and model, the graphics card will vary in capability and >>>> available RAM. Screen resolution also makes a difference. I'm using older >>>> test devices because I figure if it works there it will work on most >>>> others. But my Samsung S4 runs more slowly than my S5 and they were >>>> released only a year apart. And my Nexus tablet, which is older than both >>>> Samsung phones, runs as well or better than either of those, probably >>>> because it has a lower screen resolution. I'm not sure there's a standard >>>> you can rely on. >>>> >>>> I guess in general you could say that Android runs slower, but it's >>>> probably because there are so many low cost phones with subsequently less >>>> processing power. When you get into the higher range phones they can be >>>> quite acceptable. The same app that lagged on my Samsung ran fine on >>>> someone else's Pixel. >>>> >>>> -- >>>> Jacqueline Landman Gay | jacque at hyperactivesw.com >>>> HyperActive Software | http://www.hyperactivesw.com >>>> >>>> >>>> >>>> >>>> On August 2, 2017 6:14:06 PM Jonathan Lynch via use-livecode < >>>> use-livecode at lists.runrev.com> wrote: >>>> >>>> Hello everyone, >>>>> >>>>> I just put my app on a galaxy tab E as a test. >>>>> >>>>> It is painfully slow, but not just in the LC portion of the app. The map, >>>>> delivered through a browser widget, is also slow. >>>>> >>>>> So, I used the regular browser (chrome) at the webglearth website. That >>>>> was slow too, although not as bad. I think the main difference was that the >>>>> map div at their website is small, so it takes less processing power. >>>>> >>>>> I had thought I selected a midlevel Android device that can handle >>>>> moderate amounts of computation. >>>>> >>>>> In y'alls' experience, are android devices just slow? Do they have >>>>> inferior graphics processors? If you make computationally heavy apps for >>>>> Android, do you just warn users that the app will only work on some devices? >>>>> >>>>> I want this to work on as many devices as possible, but 3D maps require >>>>> lots of processing. >>>>> >>>>> Thanks, >>>>> >>>>> J >>>>> >>>>> Sent from my iPhone >>>>> _______________________________________________ >>>>> use-livecode mailing list >>>>> use-livecode at lists.runrev.com >>>>> Please visit this url to subscribe, unsubscribe and manage your >>>>> subscription preferences: >>>>> http://lists.runrev.com/mailman/listinfo/use-livecode >>>>> >>>> >>>> >>>> >>>> _______________________________________________ >>>> use-livecode mailing list >>>> use-livecode at lists.runrev.com >>>> Please visit this url to subscribe, unsubscribe and manage your >>>> subscription preferences: >>>> http://lists.runrev.com/mailman/listinfo/use-livecode >>>> >>> _______________________________________________ >>> use-livecode mailing list >>> use-livecode at lists.runrev.com >>> Please visit this url to subscribe, unsubscribe and manage your subscription preferences: >>> http://lists.runrev.com/mailman/listinfo/use-livecode From dochawk at gmail.com Thu Aug 3 18:00:52 2017 From: dochawk at gmail.com (Dr. Hawkins) Date: Thu, 3 Aug 2017 15:00:52 -0700 Subject: Hackintosh In-Reply-To: References: <46babc4f-2c3f-732f-790f-ed0b4a36a565@fourthworld.com> Message-ID: On Thu, Aug 3, 2017 at 2:35 PM, Bob Sneidar via use-livecode < use-livecode at lists.runrev.com> wrote: > The French revolution, the Russian revolution. Point out the > longest lived totalitarian state that still exists today. They all fall > eventually > Rome, however, took 1,500 years from the beginning of totalitarianism to final failure--to be replaced by a different totalitarian regime, which lasted about another 400 years . . (and was itself not new; that's 400 years past the fall of Constantinople) -- Dr. Richard E. Hawkins, Esq. (702) 508-8462 From mark at livecode.com Thu Aug 3 18:13:32 2017 From: mark at livecode.com (Mark Waddingham) Date: Fri, 4 Aug 2017 00:13:32 +0200 Subject: MouseDown sent to button in group, but MouseUp sent to card In-Reply-To: References: <51753F91-7CB4-44B3-90E8-79B722168B45@hyperhh.de> <15F947DF-B874-4568-AC55-9DAB2DB7326E@appisle.net> Message-ID: Erd?s is considered one of the most prolific mathematicians of the 20th century. His most famous quote is 'a mathematician is a machine for turning coffee into theorems'. He drank a lot of coffee. He also took a lot of amphetamines. Warmest Regards, Mark. Sent from my iPhone > On 3 Aug 2017, at 23:23, Bob Sneidar via use-livecode wrote: > > Now we know how new math came to be. > > >>> On Aug 3, 2017, at 13:53 , Monte Goulding via use-livecode wrote: >>> >>> >>>> On 4 Aug 2017, at 6:38 am, hh via use-livecode wrote: >>>> >>>> Monte wrote: >>>> ... G&T drinking holiday ;-) >>> >>> Practising Geometry & Trigonometry and drinking?? >> >> Yeah I know? crazy mathematicians! What can you do. >> >> Cheers >> >> Monte > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From rdimola at evergreeninfo.net Thu Aug 3 18:17:11 2017 From: rdimola at evergreeninfo.net (Ralph DiMola) Date: Thu, 3 Aug 2017 18:17:11 -0400 Subject: [OT-ish] Updating MacBook from El Capitan to Sierra to install Xcode 8.3+ In-Reply-To: References: <008101d30c8e$b866a3a0$2933eae0$@net> <2F40F102-FFC7-4ED9-85D7-7703867AE264@gmail.com> Message-ID: <00b001d30ca6$413827a0$c3a876e0$@net> Thanks Monte and The Doctor... I should have explored a little deeper on the "High" version. Ralph DiMola IT Director Evergreen Information Services rdimola at evergreeninfo.net From ahsoftware at sonic.net Thu Aug 3 19:29:12 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Thu, 3 Aug 2017 16:29:12 -0700 Subject: MouseDown sent to button in group, but MouseUp sent to card In-Reply-To: References: <51753F91-7CB4-44B3-90E8-79B722168B45@hyperhh.de> Message-ID: On 08/03/2017 02:58 PM, Dr. Hawkins via use-livecode wrote: > tsk, tsk. > > Alcohol and math don't mix: don't drink and derive! They do, but then you end up with fuzzy logic. -- Mark Wieder ahsoftware at gmail.com From beofonemind at gmail.com Thu Aug 3 19:39:52 2017 From: beofonemind at gmail.com (Tom Glod) Date: Thu, 3 Aug 2017 19:39:52 -0400 Subject: Taking quotes on building LC external for RethinkDB In-Reply-To: References: Message-ID: Hi Bob... It's a real time dB with push notifications. .. So your application does not query the dB to be updated... The updates are pushed to the clients when there is a change..... So you subscribe to a query. So it's way more scalable than traditional databases and way easier to distribute. On Aug 3, 2017 11:00 AM, "Bob Sneidar via use-livecode" < use-livecode at lists.runrev.com> wrote: > I poked around on their web site. What is the advantage of this db over > other SQL db's? Price? Speed? Ease of config? > > Bob S > > > > On Aug 2, 2017, at 14:12 , Tom Glod via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > > Hi folks, my company is currently taking quotes on building an LC > external > > to act as a driver for RethinkDB. I have already submitted a request > with > > Monte & Ian over at Livecode, but would like to open it up to everyone > that > > has the skill to build the external....I don't really even know if there > is > > anyone else. > > > > Here are the exact specs. > > > > https://www.rethinkdb.com/docs/writing-drivers/ > > > > The more precise the quote the better. > > > > Thanks, > > > > Tom > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From dochawk at gmail.com Thu Aug 3 20:11:39 2017 From: dochawk at gmail.com (Dr. Hawkins) Date: Thu, 3 Aug 2017 17:11:39 -0700 Subject: MouseDown sent to button in group, but MouseUp sent to card In-Reply-To: References: <51753F91-7CB4-44B3-90E8-79B722168B45@hyperhh.de> Message-ID: On Thu, Aug 3, 2017 at 4:29 PM, Mark Wieder via use-livecode < use-livecode at lists.runrev.com> wrote: > On 08/03/2017 02:58 PM, Dr. Hawkins via use-livecode wrote: > > tsk, tsk. >> >> Alcohol and math don't mix: don't drink and derive! >> > > They do, but then you end up with fuzzy logic. > > Or the swine and coswine functions, which came when a group at a math convention, with some help from Bachus, started playing with trigonometry and the unit square (rather than circle or hyperbola). It turned out that many of the basic relations shared by trig and h-trig functions still applied . . . -- Dr. Richard E. Hawkins, Esq. (702) 508-8462 From jerry at jhjensen.com Thu Aug 3 22:40:58 2017 From: jerry at jhjensen.com (Jerry Jensen) Date: Thu, 3 Aug 2017 19:40:58 -0700 Subject: [OT-ish] Updating MacBook from El Capitan to Sierra to install Xcode 8.3+ In-Reply-To: <008101d30c8e$b866a3a0$2933eae0$@net> References: <008101d30c8e$b866a3a0$2933eae0$@net> Message-ID: <937A9E4E-9C89-4C57-963B-F0498160D20F@jhjensen.com> As others have said, Sierra (10.12.x) is good old (?) HFS+. High Sierra (10.13.x) introduces APFS and is still in developer preview beta. I have upgraded 8 or so macs to Sierra with few problems. My biggest headache was going from 10.12.5 to 10.12.6 on only one machine that got in a fight with an ancient hp printer driver kext. That was a B#$^%^ to find. Other than that its been smooth. You have already CCC?ed to a fresh drive, so you shouldn?t have any rotten bits. CCC is indispensable! .Jerry > On Aug 3, 2017, at 12:28 PM, Ralph DiMola via use-livecode wrote: > > I'm going to do this Friday night and was looking for any advice/tricks to > make this go smooth(as much as possible). I have read about a few disasters > online when upgrading from HFS+ to the new APFS file system. From toolbook at kestner.de Fri Aug 4 05:25:46 2017 From: toolbook at kestner.de (Tiemo Hollmann TB) Date: Fri, 4 Aug 2017 11:25:46 +0200 Subject: set the clipboarddata["image"] not compatible with Adobe Photoshop Message-ID: <002001d30d03$a7de40e0$f79ac2a0$@kestner.de> Hello, LC 8.1.5, Windows 10 export snapshot from grp "ScreenShot" to tScreenshot as JPEG set the clipboarddata["image"] to tScreenshot The following paste command works in most programs, like MS Paint, MS Word, but not with Adobe Photoshop. Here the past menu is greyed out, so that there is nothing to be pasted. Is this known? Can I do anything special for Photoshop or is it just again one more regression bug? (in old versions it has worked with Photoshop) Tiemo From merakosp at gmail.com Fri Aug 4 05:30:59 2017 From: merakosp at gmail.com (panagiotis merakos) Date: Fri, 4 Aug 2017 10:30:59 +0100 Subject: set the clipboarddata["image"] not compatible with Adobe Photoshop In-Reply-To: <002001d30d03$a7de40e0$f79ac2a0$@kestner.de> References: <002001d30d03$a7de40e0$f79ac2a0$@kestner.de> Message-ID: Hi Tiemo, What happens if you do: export snapshot from grp "ScreenShot" to tScreenshot as JPEG lock the clipboard set the fullclipboarddata["image"] to tScreenshot unlock the clipboard Best, Panos -- On Fri, Aug 4, 2017 at 10:25 AM, Tiemo Hollmann TB via use-livecode < use-livecode at lists.runrev.com> wrote: > Hello, > > LC 8.1.5, Windows 10 > > export snapshot from grp "ScreenShot" to tScreenshot as JPEG > > set the clipboarddata["image"] to tScreenshot > > The following paste command works in most programs, like MS Paint, MS Word, > but not with Adobe Photoshop. Here the past menu is greyed out, so that > there is nothing to be pasted. > > Is this known? Can I do anything special for Photoshop or is it just again > one more regression bug? (in old versions it has worked with Photoshop) > > Tiemo > > > > > > > > > > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From th.douez at gmail.com Fri Aug 4 06:02:47 2017 From: th.douez at gmail.com (Thierry Douez) Date: Fri, 4 Aug 2017 12:02:47 +0200 Subject: Taking quotes on building LC external for RethinkDB In-Reply-To: References: Message-ID: 2017-08-03 17:00 GMT+02:00 Bob Sneidar: I poked around on their web site. What is the advantage of this db over other SQL db's? Price? Speed? Ease of > config? > > ?Hi Bob, Here is 1 minute of rethinkDB?... https://www.youtube.com/watch?v=qKPKsBNw604 Regards, Thierry > > On Aug 2, 2017, at 14:12 , Tom Glod via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > > Hi folks, my company is currently taking quotes on building an LC > external > > to act as a driver for RethinkDB. I have already submitted a request > with > > Monte & Ian over at Livecode, but would like to open it up to everyone > that > > has the skill to build the external....I don't really even know if there > is > > anyone else. > > > > Here are the exact specs. > > > > https://www.rethinkdb.com/docs/writing-drivers/ > > > > The more precise the quote the better. > > > > Thanks, > > > > Tom > > -- ------------------------------------------------ Thierry Douez - sunny-tdz.com sunnYrex - sunnYtext2speech - sunnYperl - sunnYmidi - sunnYmage From toolbook at kestner.de Fri Aug 4 06:12:02 2017 From: toolbook at kestner.de (Tiemo Hollmann TB) Date: Fri, 4 Aug 2017 12:12:02 +0200 Subject: AW: set the clipboarddata["image"] not compatible with Adobe Photoshop In-Reply-To: References: <002001d30d03$a7de40e0$f79ac2a0$@kestner.de> Message-ID: <002a01d30d0a$1e28c9e0$5a7a5da0$@kestner.de> Hi Panos, same: Word: Yes, Photoshop: No Thanks Tiemo -----Urspr?ngliche Nachricht----- Von: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] Im Auftrag von panagiotis merakos via use-livecode Gesendet: Freitag, 4. August 2017 11:31 An: How to use LiveCode Cc: panagiotis merakos Betreff: Re: set the clipboarddata["image"] not compatible with Adobe Photoshop Hi Tiemo, What happens if you do: export snapshot from grp "ScreenShot" to tScreenshot as JPEG lock the clipboard set the fullclipboarddata["image"] to tScreenshot unlock the clipboard Best, Panos -- On Fri, Aug 4, 2017 at 10:25 AM, Tiemo Hollmann TB via use-livecode < use-livecode at lists.runrev.com> wrote: > Hello, > > LC 8.1.5, Windows 10 > > export snapshot from grp "ScreenShot" to tScreenshot as JPEG > > set the clipboarddata["image"] to tScreenshot > > The following paste command works in most programs, like MS Paint, MS > Word, but not with Adobe Photoshop. Here the past menu is greyed out, > so that there is nothing to be pasted. > > Is this known? Can I do anything special for Photoshop or is it just > again one more regression bug? (in old versions it has worked with > Photoshop) > > Tiemo > > > > > > > > > > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode From merakosp at gmail.com Fri Aug 4 06:19:09 2017 From: merakosp at gmail.com (panagiotis merakos) Date: Fri, 4 Aug 2017 11:19:09 +0100 Subject: set the clipboarddata["image"] not compatible with Adobe Photoshop In-Reply-To: <002a01d30d0a$1e28c9e0$5a7a5da0$@kestner.de> References: <002001d30d03$a7de40e0$f79ac2a0$@kestner.de> <002a01d30d0a$1e28c9e0$5a7a5da0$@kestner.de> Message-ID: Thanks Tiemo. Could you please double-check if your original code works with pasting to MS Paint? The issue you are having looks like this bug: http://quality.livecode.com/show_bug.cgi?id=19713 but this report mentions inability of pasting into MS Paint Best, Panos -- On Fri, Aug 4, 2017 at 11:12 AM, Tiemo Hollmann TB via use-livecode < use-livecode at lists.runrev.com> wrote: > Hi Panos, > same: Word: Yes, Photoshop: No > Thanks > Tiemo > > > -----Urspr?ngliche Nachricht----- > Von: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] Im > Auftrag > von panagiotis merakos via use-livecode > Gesendet: Freitag, 4. August 2017 11:31 > An: How to use LiveCode > Cc: panagiotis merakos > Betreff: Re: set the clipboarddata["image"] not compatible with Adobe > Photoshop > > Hi Tiemo, > > What happens if you do: > > export snapshot from grp "ScreenShot" to tScreenshot as JPEG lock the > clipboard set the fullclipboarddata["image"] to tScreenshot unlock the > clipboard > > Best, > Panos > -- > > > On Fri, Aug 4, 2017 at 10:25 AM, Tiemo Hollmann TB via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > Hello, > > > > LC 8.1.5, Windows 10 > > > > export snapshot from grp "ScreenShot" to tScreenshot as JPEG > > > > set the clipboarddata["image"] to tScreenshot > > > > The following paste command works in most programs, like MS Paint, MS > > Word, but not with Adobe Photoshop. Here the past menu is greyed out, > > so that there is nothing to be pasted. > > > > Is this known? Can I do anything special for Photoshop or is it just > > again one more regression bug? (in old versions it has worked with > > Photoshop) > > > > Tiemo > > > > > > > > > > > > > > > > > > > > > > > > _______________________________________________ > > use-livecode mailing list > > use-livecode at lists.runrev.com > > Please visit this url to subscribe, unsubscribe and manage your > > subscription preferences: > > http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription > preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From toolbook at kestner.de Fri Aug 4 07:41:17 2017 From: toolbook at kestner.de (Tiemo Hollmann TB) Date: Fri, 4 Aug 2017 13:41:17 +0200 Subject: AW: set the clipboarddata["image"] not compatible with Adobe Photoshop In-Reply-To: References: <002001d30d03$a7de40e0$f79ac2a0$@kestner.de> <002a01d30d0a$1e28c9e0$5a7a5da0$@kestner.de> Message-ID: <003601d30d16$96a03640$c3e0a2c0$@kestner.de> Hi Panos, you are right: MS Paint (old version): No Adobe Photoshop: No Adobe InDesign: No MS Paint 3D (new Windows 10): Yes (this was my first test) MS Word: Yes MS Excel: Yes Have a nice WE Tiemo -----Urspr?ngliche Nachricht----- Von: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] Im Auftrag von panagiotis merakos via use-livecode Gesendet: Freitag, 4. August 2017 12:19 An: How to use LiveCode Cc: panagiotis merakos Betreff: Re: set the clipboarddata["image"] not compatible with Adobe Photoshop Thanks Tiemo. Could you please double-check if your original code works with pasting to MS Paint? The issue you are having looks like this bug: http://quality.livecode.com/show_bug.cgi?id=19713 but this report mentions inability of pasting into MS Paint Best, Panos -- On Fri, Aug 4, 2017 at 11:12 AM, Tiemo Hollmann TB via use-livecode < use-livecode at lists.runrev.com> wrote: > Hi Panos, > same: Word: Yes, Photoshop: No > Thanks > Tiemo > > > -----Urspr?ngliche Nachricht----- > Von: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] Im > Auftrag von panagiotis merakos via use-livecode > Gesendet: Freitag, 4. August 2017 11:31 > An: How to use LiveCode > Cc: panagiotis merakos > Betreff: Re: set the clipboarddata["image"] not compatible with Adobe > Photoshop > > Hi Tiemo, > > What happens if you do: > > export snapshot from grp "ScreenShot" to tScreenshot as JPEG lock the > clipboard set the fullclipboarddata["image"] to tScreenshot unlock the > clipboard > > Best, > Panos > -- > > > On Fri, Aug 4, 2017 at 10:25 AM, Tiemo Hollmann TB via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > Hello, > > > > LC 8.1.5, Windows 10 > > > > export snapshot from grp "ScreenShot" to tScreenshot as JPEG > > > > set the clipboarddata["image"] to tScreenshot > > > > The following paste command works in most programs, like MS Paint, > > MS Word, but not with Adobe Photoshop. Here the past menu is greyed > > out, so that there is nothing to be pasted. > > > > Is this known? Can I do anything special for Photoshop or is it just > > again one more regression bug? (in old versions it has worked with > > Photoshop) > > > > Tiemo > > > > > > > > > > > > > > > > > > > > > > > > _______________________________________________ > > use-livecode mailing list > > use-livecode at lists.runrev.com > > Please visit this url to subscribe, unsubscribe and manage your > > subscription preferences: > > http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription > preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode From merakosp at gmail.com Fri Aug 4 07:44:25 2017 From: merakosp at gmail.com (panagiotis merakos) Date: Fri, 4 Aug 2017 12:44:25 +0100 Subject: set the clipboarddata["image"] not compatible with Adobe Photoshop In-Reply-To: <003601d30d16$96a03640$c3e0a2c0$@kestner.de> References: <002001d30d03$a7de40e0$f79ac2a0$@kestner.de> <002a01d30d0a$1e28c9e0$5a7a5da0$@kestner.de> <003601d30d16$96a03640$c3e0a2c0$@kestner.de> Message-ID: Thanks for the info, Tiemo. Ok, I'll mark your report as a duplicate of Trevor's report, and add a note that the same issue affects pasting to Adobe Photoshop. Have a good weekend, Panos -- On Fri, Aug 4, 2017 at 12:41 PM, Tiemo Hollmann TB via use-livecode < use-livecode at lists.runrev.com> wrote: > Hi Panos, > > you are right: > > MS Paint (old version): No > Adobe Photoshop: No > Adobe InDesign: No > MS Paint 3D (new Windows 10): Yes (this was my first test) > MS Word: Yes > MS Excel: Yes > > Have a nice WE > Tiemo > > > > > -----Urspr?ngliche Nachricht----- > Von: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] Im > Auftrag von panagiotis merakos via use-livecode > Gesendet: Freitag, 4. August 2017 12:19 > An: How to use LiveCode > Cc: panagiotis merakos > Betreff: Re: set the clipboarddata["image"] not compatible with Adobe > Photoshop > > Thanks Tiemo. > > Could you please double-check if your original code works with pasting to > MS Paint? > > The issue you are having looks like this bug: > > http://quality.livecode.com/show_bug.cgi?id=19713 > > but this report mentions inability of pasting into MS Paint > > Best, > Panos > -- > > On Fri, Aug 4, 2017 at 11:12 AM, Tiemo Hollmann TB via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > Hi Panos, > > same: Word: Yes, Photoshop: No > > Thanks > > Tiemo > > > > > > -----Urspr?ngliche Nachricht----- > > Von: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] Im > > Auftrag von panagiotis merakos via use-livecode > > Gesendet: Freitag, 4. August 2017 11:31 > > An: How to use LiveCode > > Cc: panagiotis merakos > > Betreff: Re: set the clipboarddata["image"] not compatible with Adobe > > Photoshop > > > > Hi Tiemo, > > > > What happens if you do: > > > > export snapshot from grp "ScreenShot" to tScreenshot as JPEG lock the > > clipboard set the fullclipboarddata["image"] to tScreenshot unlock the > > clipboard > > > > Best, > > Panos > > -- > > > > > > On Fri, Aug 4, 2017 at 10:25 AM, Tiemo Hollmann TB via use-livecode < > > use-livecode at lists.runrev.com> wrote: > > > > > Hello, > > > > > > LC 8.1.5, Windows 10 > > > > > > export snapshot from grp "ScreenShot" to tScreenshot as JPEG > > > > > > set the clipboarddata["image"] to tScreenshot > > > > > > The following paste command works in most programs, like MS Paint, > > > MS Word, but not with Adobe Photoshop. Here the past menu is greyed > > > out, so that there is nothing to be pasted. > > > > > > Is this known? Can I do anything special for Photoshop or is it just > > > again one more regression bug? (in old versions it has worked with > > > Photoshop) > > > > > > Tiemo > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > _______________________________________________ > > > use-livecode mailing list > > > use-livecode at lists.runrev.com > > > Please visit this url to subscribe, unsubscribe and manage your > > > subscription preferences: > > > http://lists.runrev.com/mailman/listinfo/use-livecode > > > > > _______________________________________________ > > use-livecode mailing list > > use-livecode at lists.runrev.com > > Please visit this url to subscribe, unsubscribe and manage your > > subscription > > preferences: > > http://lists.runrev.com/mailman/listinfo/use-livecode > > > > > > _______________________________________________ > > use-livecode mailing list > > use-livecode at lists.runrev.com > > Please visit this url to subscribe, unsubscribe and manage your > > subscription preferences: > > http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From MikeKerner at roadrunner.com Fri Aug 4 08:29:01 2017 From: MikeKerner at roadrunner.com (Mike Kerner) Date: Fri, 4 Aug 2017 08:29:01 -0400 Subject: Taking quotes on building LC external for RethinkDB In-Reply-To: References: Message-ID: I don't know the first thing about Rethink, but have you thought about using odbc? On Fri, Aug 4, 2017 at 6:02 AM, Thierry Douez via use-livecode < use-livecode at lists.runrev.com> wrote: > 2017-08-03 17:00 GMT+02:00 Bob Sneidar: > > I poked around on their web site. > > What is the advantage of this db over other SQL db's? Price? Speed? Ease of > > config? > > > > > > ?Hi Bob, > > Here is 1 minute of rethinkDB?... > > https://www.youtube.com/watch?v=qKPKsBNw604 > > > Regards, > > Thierry > > > > > > > On Aug 2, 2017, at 14:12 , Tom Glod via use-livecode < > > use-livecode at lists.runrev.com> wrote: > > > > > > Hi folks, my company is currently taking quotes on building an LC > > external > > > to act as a driver for RethinkDB. I have already submitted a request > > with > > > Monte & Ian over at Livecode, but would like to open it up to everyone > > that > > > has the skill to build the external....I don't really even know if > there > > is > > > anyone else. > > > > > > Here are the exact specs. > > > > > > https://www.rethinkdb.com/docs/writing-drivers/ > > > > > > The more precise the quote the better. > > > > > > Thanks, > > > > > > Tom > > > > > -- > ------------------------------------------------ > Thierry Douez - sunny-tdz.com > sunnYrex - sunnYtext2speech - sunnYperl - sunnYmidi - sunnYmage > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > -- On the first day, God created the heavens and the Earth On the second day, God created the oceans. On the third day, God put the animals on hold for a few hours, and did a little diving. And God said, "This is good." From lists at mangomultimedia.com Fri Aug 4 09:32:44 2017 From: lists at mangomultimedia.com (Trevor DeVore) Date: Fri, 04 Aug 2017 13:32:44 +0000 Subject: set the clipboarddata["image"] not compatible with Adobe Photoshop In-Reply-To: <003601d30d16$96a03640$c3e0a2c0$@kestner.de> References: <002001d30d03$a7de40e0$f79ac2a0$@kestner.de> <002a01d30d0a$1e28c9e0$5a7a5da0$@kestner.de> <003601d30d16$96a03640$c3e0a2c0$@kestner.de> Message-ID: On Fri, Aug 4, 2017 at 4:41 AM Tiemo Hollmann TB via use-livecode < use-livecode at lists.runrev.com> wrote: > Hi Panos, > > you are right: > > MS Paint (old version): No > Adobe Photoshop: No > Adobe InDesign: No > MS Paint 3D (new Windows 10): Yes (this was my first test) > MS Word: Yes > MS Excel: Yes > > Have a nice WE I believe this bug has been around ever since the fullclioboarddata/rawclipboarddata were added. I really, really, really wish it would get fixed. -- Trevor DeVore ScreenSteps > From panos.merakos at livecode.com Fri Aug 4 10:45:31 2017 From: panos.merakos at livecode.com (panagiotis merakos) Date: Fri, 4 Aug 2017 15:45:31 +0100 Subject: Help needed with a nasty bug Message-ID: Hi all, At least 3 users have reported a strange bug on Windows with any version of LC 8, which unfortunately we are unable to reproduce (and thus unable to fix, so far). The fact that it affects only 3 users and this happens in *every* LC 8 version, suggests that the problem is caused by a specific combination of LC and something else in the affected users PC's configurations. So the bug is that when LC starts, an error dialog "error while loading stack: revidelibrary.8.livecodescript" is shown. The IDE then starts correctly, but the Dictionary is empty. Essentially the problem is that *something* happens and the dictionary data is not generated. We have tried the usual suspects: 1. Deleting Prefs 2. Deleting Documentation Cache 3. Deleting My LiveCode folder 4. Examining the LiveCodeToolsLog.txt but none of them got us anywhere. So my questions are: 1. Have you ever seen that? 2. Do you still see that? 3. If you saw that in the past but you don't see it now, do you know/guess what change in your configurations could have fixed it 4. If you see that on a Windows VM, are you willing to send us the VM (we are happy to sign an NDA) so as we have a machine where we can reproduce this bug? Thanks, Panos -- PS: For reference, this is the bug report: http://quality.livecode.com/show_bug.cgi?id=19729 which is a duplicate of http://quality.livecode.com/show_bug.cgi?id=17374 From bobsneidar at iotecdigital.com Fri Aug 4 10:52:51 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Fri, 4 Aug 2017 14:52:51 +0000 Subject: [OT-ish] Updating MacBook from El Capitan to Sierra to install Xcode 8.3+ In-Reply-To: <937A9E4E-9C89-4C57-963B-F0498160D20F@jhjensen.com> References: <008101d30c8e$b866a3a0$2933eae0$@net> <937A9E4E-9C89-4C57-963B-F0498160D20F@jhjensen.com> Message-ID: I am using Sierra, but I am noticing that sometimes I will click a button (not in LC I mean in ANY OS doalig) and then have to click it again to complete the click. I know I clicked it the first time because I get visual feedback like the button getting darket after the first click. Bob S > On Aug 3, 2017, at 19:40 , Jerry Jensen via use-livecode wrote: > > As others have said, Sierra (10.12.x) is good old (?) HFS+. High Sierra (10.13.x) introduces APFS and is still in developer preview beta. > > I have upgraded 8 or so macs to Sierra with few problems. My biggest headache was going from 10.12.5 to 10.12.6 on only one machine that got in a fight with an ancient hp printer driver kext. That was a B#$^%^ to find. Other than that its been smooth. You have already CCC?ed to a fresh drive, so you shouldn?t have any rotten bits. CCC is indispensable! > .Jerry From jbv at souslelogo.com Fri Aug 4 14:04:01 2017 From: jbv at souslelogo.com (jbv) Date: Fri, 4 Aug 2017 20:04:01 +0200 Subject: menuHistory & menuPick Message-ID: <717d15902b1891b3f1892bcc01c9c277.squirrel@sage.on-rev.com> Hi According to the doc, when you set the menuHistory property, a menuPick message is sent to the button. I managed to block the menupick message with a boolean variable, but is there an easier/more elegant way to momentary block that message when setting menuhistory ? Thanks in advance. jbv From klaus at major-k.de Fri Aug 4 14:07:34 2017 From: klaus at major-k.de (Klaus major-k) Date: Fri, 4 Aug 2017 20:07:34 +0200 Subject: menuHistory & menuPick In-Reply-To: <717d15902b1891b3f1892bcc01c9c277.squirrel@sage.on-rev.com> References: <717d15902b1891b3f1892bcc01c9c277.squirrel@sage.on-rev.com> Message-ID: <3272FD92-9A16-43E6-9F39-9CECCDC5C749@major-k.de> Hi jbv, > Am 04.08.2017 um 20:04 schrieb jbv via use-livecode : > > Hi > According to the doc, when you set the menuHistory property, a menuPick > message is sent to the button. > I managed to block the menupick message with a boolean variable, but is > there an easier/more elegant way to momentary block that message when > setting menuhistory ? ... lock messages set the menuhistory of btn "a wonderful menu button" to 42 unlock messages ... will do the job. :-) > Thanks in advance. > jbv Best Klaus -- Klaus Major http://www.major-k.de klaus at major-k.de From jbv at souslelogo.com Fri Aug 4 14:35:27 2017 From: jbv at souslelogo.com (jbv) Date: Fri, 4 Aug 2017 20:35:27 +0200 Subject: menuHistory & menuPick In-Reply-To: <3272FD92-9A16-43E6-9F39-9CECCDC5C749@major-k.de> References: <717d15902b1891b3f1892bcc01c9c277.squirrel@sage.on-rev.com> <3272FD92-9A16-43E6-9F39-9CECCDC5C749@major-k.de> Message-ID: <376b14b4837ab7645fd8ec46b096c0ce.squirrel@sage.on-rev.com> Hi Klaus Thanks for the reply. Actually that option crossed my mind, but what if other useful messages need to be sent in the meantime, or if there are any pending messages ? What gets blocked actually ? Thanks jbv On Fri, August 4, 2017 8:07 pm, Klaus major-k via use-livecode wrote: > Hi jbv, > > >> Am 04.08.2017 um 20:04 schrieb jbv via use-livecode >> : >> >> >> Hi >> According to the doc, when you set the menuHistory property, a menuPick >> message is sent to the button. I managed to block the menupick message >> with a boolean variable, but is there an easier/more elegant way to >> momentary block that message when setting menuhistory ? > > ... > lock messages set the menuhistory of btn "a wonderful menu button" to 42 > unlock messages ... > will do the job. :-) > >> Thanks in advance. >> jbv > > Best > > > Klaus > > > -- > Klaus Major > http://www.major-k.de > klaus at major-k.de > > > _______________________________________________ > use-livecode mailing list use-livecode at lists.runrev.com Please visit this > url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > > From klaus at major-k.de Fri Aug 4 14:42:26 2017 From: klaus at major-k.de (Klaus major-k) Date: Fri, 4 Aug 2017 20:42:26 +0200 Subject: menuHistory & menuPick In-Reply-To: <376b14b4837ab7645fd8ec46b096c0ce.squirrel@sage.on-rev.com> References: <717d15902b1891b3f1892bcc01c9c277.squirrel@sage.on-rev.com> <3272FD92-9A16-43E6-9F39-9CECCDC5C749@major-k.de> <376b14b4837ab7645fd8ec46b096c0ce.squirrel@sage.on-rev.com> Message-ID: <43B0C0A0-370C-47C9-B28C-41162512035E@major-k.de> > Am 04.08.2017 um 20:35 schrieb jbv via use-livecode : > > Hi Klaus > Thanks for the reply. > Actually that option crossed my mind, but what if other useful messages > need to be sent in the meantime, or if there are any pending messages ? Then the world, as we know it, will END! :-D > What gets blocked actually ? Sorry, really cannot tell. Why not try it? > Thanks > jbv > > On Fri, August 4, 2017 8:07 pm, Klaus major-k via use-livecode wrote: >> Hi jbv, >> >> >>> Am 04.08.2017 um 20:04 schrieb jbv via use-livecode >>> : >>> >>> >>> Hi >>> According to the doc, when you set the menuHistory property, a menuPick >>> message is sent to the button. I managed to block the menupick message >>> with a boolean variable, but is there an easier/more elegant way to >>> momentary block that message when setting menuhistory ? >> >> ... >> lock messages set the menuhistory of btn "a wonderful menu button" to 42 >> unlock messages ... >> will do the job. :-) Best Klaus -- Klaus Major http://www.major-k.de klaus at major-k.de From MikeKerner at roadrunner.com Fri Aug 4 14:58:02 2017 From: MikeKerner at roadrunner.com (Mike Kerner) Date: Fri, 4 Aug 2017 14:58:02 -0400 Subject: Help needed with a nasty bug In-Reply-To: References: Message-ID: Can we have more info on the configurations of the folks seeing this? Win version Machine config VM - Y/N, brand, version From tom at makeshyft.com Fri Aug 4 16:12:17 2017 From: tom at makeshyft.com (Tom Glod) Date: Fri, 4 Aug 2017 16:12:17 -0400 Subject: Taking quotes on building LC external for RethinkDB In-Reply-To: References: Message-ID: nah....I need the driver for many reasons. I do plan to donate the driver to the open-source community version once its completed. I don't have any reason why not, I really just need the driver, its an investment for my company for many years to come. On Fri, Aug 4, 2017 at 8:29 AM, Mike Kerner via use-livecode < use-livecode at lists.runrev.com> wrote: > I don't know the first thing about Rethink, but have you thought about > using odbc? > > On Fri, Aug 4, 2017 at 6:02 AM, Thierry Douez via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > 2017-08-03 17:00 GMT+02:00 Bob Sneidar: > > > > I poked around on their web site. > > > > What is the advantage of this db over other SQL db's? Price? Speed? Ease > of > > > config? > > > > > > > > > > ?Hi Bob, > > > > Here is 1 minute of rethinkDB?... > > > > https://www.youtube.com/watch?v=qKPKsBNw604 > > > > > > Regards, > > > > Thierry > > > > > > > > > > > > On Aug 2, 2017, at 14:12 , Tom Glod via use-livecode < > > > use-livecode at lists.runrev.com> wrote: > > > > > > > > Hi folks, my company is currently taking quotes on building an LC > > > external > > > > to act as a driver for RethinkDB. I have already submitted a request > > > with > > > > Monte & Ian over at Livecode, but would like to open it up to > everyone > > > that > > > > has the skill to build the external....I don't really even know if > > there > > > is > > > > anyone else. > > > > > > > > Here are the exact specs. > > > > > > > > https://www.rethinkdb.com/docs/writing-drivers/ > > > > > > > > The more precise the quote the better. > > > > > > > > Thanks, > > > > > > > > Tom > > > > > > > > -- > > ------------------------------------------------ > > Thierry Douez - sunny-tdz.com > > sunnYrex - sunnYtext2speech - sunnYperl - sunnYmidi - sunnYmage > > _______________________________________________ > > use-livecode mailing list > > use-livecode at lists.runrev.com > > Please visit this url to subscribe, unsubscribe and manage your > > subscription preferences: > > http://lists.runrev.com/mailman/listinfo/use-livecode > > > > > > -- > On the first day, God created the heavens and the Earth > On the second day, God created the oceans. > On the third day, God put the animals on hold for a few hours, > and did a little diving. > And God said, "This is good." > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From tom at makeshyft.com Fri Aug 4 16:12:54 2017 From: tom at makeshyft.com (Tom Glod) Date: Fri, 4 Aug 2017 16:12:54 -0400 Subject: Taking quotes on building LC external for RethinkDB In-Reply-To: References: Message-ID: Thanks Charles. I did hear back from Livecode and they are preparing a quote for me. I will keep you in mind if anything doesn't work there. On Fri, Aug 4, 2017 at 4:12 PM, Tom Glod wrote: > nah....I need the driver for many reasons. I do plan to donate the > driver to the open-source community version once its completed. I don't > have any reason why not, I really just need the driver, its an investment > for my company for many years to come. > > On Fri, Aug 4, 2017 at 8:29 AM, Mike Kerner via use-livecode < > use-livecode at lists.runrev.com> wrote: > >> I don't know the first thing about Rethink, but have you thought about >> using odbc? >> >> On Fri, Aug 4, 2017 at 6:02 AM, Thierry Douez via use-livecode < >> use-livecode at lists.runrev.com> wrote: >> >> > 2017-08-03 17:00 GMT+02:00 Bob Sneidar: >> > >> > I poked around on their web site. >> > >> > What is the advantage of this db over other SQL db's? Price? Speed? >> Ease of >> > > config? >> > > >> > > >> > >> > ?Hi Bob, >> > >> > Here is 1 minute of rethinkDB?... >> > >> > https://www.youtube.com/watch?v=qKPKsBNw604 >> > >> > >> > Regards, >> > >> > Thierry >> > >> > >> > >> > >> > > > On Aug 2, 2017, at 14:12 , Tom Glod via use-livecode < >> > > use-livecode at lists.runrev.com> wrote: >> > > > >> > > > Hi folks, my company is currently taking quotes on building an LC >> > > external >> > > > to act as a driver for RethinkDB. I have already submitted a >> request >> > > with >> > > > Monte & Ian over at Livecode, but would like to open it up to >> everyone >> > > that >> > > > has the skill to build the external....I don't really even know if >> > there >> > > is >> > > > anyone else. >> > > > >> > > > Here are the exact specs. >> > > > >> > > > https://www.rethinkdb.com/docs/writing-drivers/ >> > > > >> > > > The more precise the quote the better. >> > > > >> > > > Thanks, >> > > > >> > > > Tom >> > > >> > > >> > -- >> > ------------------------------------------------ >> > Thierry Douez - sunny-tdz.com >> > sunnYrex - sunnYtext2speech - sunnYperl - sunnYmidi - sunnYmage >> > _______________________________________________ >> > use-livecode mailing list >> > use-livecode at lists.runrev.com >> > Please visit this url to subscribe, unsubscribe and manage your >> > subscription preferences: >> > http://lists.runrev.com/mailman/listinfo/use-livecode >> > >> >> >> >> -- >> On the first day, God created the heavens and the Earth >> On the second day, God created the oceans. >> On the third day, God put the animals on hold for a few hours, >> and did a little diving. >> And God said, "This is good." >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> > > From bobsneidar at iotecdigital.com Fri Aug 4 17:27:17 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Fri, 4 Aug 2017 21:27:17 +0000 Subject: menuHistory & menuPick In-Reply-To: <717d15902b1891b3f1892bcc01c9c277.squirrel@sage.on-rev.com> References: <717d15902b1891b3f1892bcc01c9c277.squirrel@sage.on-rev.com> Message-ID: <8962E153-7F91-434D-A258-301D5CBFEA21@iotecdigital.com> Hi JB. To set the menu display value without triggering menuPick, set the label of the menu button. In order to trigger the menuPick handler when changing the value, use menuHistory. No need to suspend messages or anything fancy like that. Bob S > On Aug 4, 2017, at 11:04 , jbv via use-livecode wrote: > > Hi > According to the doc, when you set the menuHistory property, a menuPick > message is sent to the button. > I managed to block the menupick message with a boolean variable, but is > there an easier/more elegant way to momentary block that message when > setting menuhistory ? > > Thanks in advance. > jbv > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From alex at tweedly.net Fri Aug 4 20:38:54 2017 From: alex at tweedly.net (Alex Tweedly) Date: Sat, 5 Aug 2017 01:38:54 +0100 Subject: Taking quotes on building LC external for RethinkDB In-Reply-To: References: Message-ID: <25d7280f-949c-eefb-5c86-e022a43b7e9a@tweedly.net> I have to admit that rethinkdb sounds really interesting - I hadn't heard of it until your posting. Might be worth a crowdfunding / donation request to spread the cost; while I don't have a *need* for it, it might be a worthy target for (a small amount) of my optional spending of my 'pocket money' ;-) Alex On 04/08/2017 21:12, Tom Glod via use-livecode wrote: > nah....I need the driver for many reasons. I do plan to donate the driver > to the open-source community version once its completed. I don't have any > reason why not, I really just need the driver, its an investment for my > company for many years to come. > > On Fri, Aug 4, 2017 at 8:29 AM, Mike Kerner via use-livecode < > use-livecode at lists.runrev.com> wrote: > >> I don't know the first thing about Rethink, but have you thought about >> using odbc? >> >> On Fri, Aug 4, 2017 at 6:02 AM, Thierry Douez via use-livecode < >> use-livecode at lists.runrev.com> wrote: >> >>> 2017-08-03 17:00 GMT+02:00 Bob Sneidar: >>> >>> I poked around on their web site. >>> >>> What is the advantage of this db over other SQL db's? Price? Speed? Ease >> of >>>> config? >>>> >>>> >>> ?Hi Bob, >>> >>> Here is 1 minute of rethinkDB?... >>> >>> https://www.youtube.com/watch?v=qKPKsBNw604 >>> >>> >>> Regards, >>> >>> Thierry >>> >>> >>> >>> >>>>> On Aug 2, 2017, at 14:12 , Tom Glod via use-livecode < >>>> use-livecode at lists.runrev.com> wrote: >>>>> Hi folks, my company is currently taking quotes on building an LC >>>> external >>>>> to act as a driver for RethinkDB. I have already submitted a request >>>> with >>>>> Monte & Ian over at Livecode, but would like to open it up to >> everyone >>>> that >>>>> has the skill to build the external....I don't really even know if >>> there >>>> is >>>>> anyone else. >>>>> >>>>> Here are the exact specs. >>>>> >>>>> https://www.rethinkdb.com/docs/writing-drivers/ >>>>> >>>>> The more precise the quote the better. >>>>> >>>>> Thanks, >>>>> >>>>> Tom >>>> >>> -- >>> ------------------------------------------------ >>> Thierry Douez - sunny-tdz.com >>> sunnYrex - sunnYtext2speech - sunnYperl - sunnYmidi - sunnYmage >>> _______________________________________________ >>> use-livecode mailing list >>> use-livecode at lists.runrev.com >>> Please visit this url to subscribe, unsubscribe and manage your >>> subscription preferences: >>> http://lists.runrev.com/mailman/listinfo/use-livecode >>> >> >> >> -- >> On the first day, God created the heavens and the Earth >> On the second day, God created the oceans. >> On the third day, God put the animals on hold for a few hours, >> and did a little diving. >> And God said, "This is good." >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From dunbarx at aol.com Fri Aug 4 23:04:37 2017 From: dunbarx at aol.com (dunbarx at aol.com) Date: Fri, 4 Aug 2017 23:04:37 -0400 Subject: menuHistory & menuPick In-Reply-To: <717d15902b1891b3f1892bcc01c9c277.squirrel@sage.on-rev.com> References: <717d15902b1891b3f1892bcc01c9c277.squirrel@sage.on-rev.com> Message-ID: <15db05a0ba1-6021-1f40@webprd-m59.mail.aol.com> Hi. No LC to play with at the moment, but since setting the menuHistory is setting a property, might fiddling with setProp possibly be a way to subvert the sending of the message? Craig Newman -----Original Message----- From: jbv via use-livecode To: How to use LiveCode Cc: jbv Sent: Fri, Aug 4, 2017 2:04 pm Subject: menuHistory & menuPick Hi According to the doc, when you set the menuHistory property, a menuPick message is sent to the button. I managed to block the menupick message with a boolean variable, but is there an easier/more elegant way to momentary block that message when setting menuhistory ? Thanks in advance. jbv _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode From tom at makeshyft.com Fri Aug 4 23:18:17 2017 From: tom at makeshyft.com (Tom Glod) Date: Fri, 4 Aug 2017 23:18:17 -0400 Subject: Taking quotes on building LC external for RethinkDB In-Reply-To: <25d7280f-949c-eefb-5c86-e022a43b7e9a@tweedly.net> References: <25d7280f-949c-eefb-5c86-e022a43b7e9a@tweedly.net> Message-ID: Thats definately an option. I'm actually kind of clueless about what the price will be .... I literally don't have any idea, but the specs don't look that complicated. So i'm optimistic that its semi straight forward. I've made up my mind on this pretty much. Its getting done, no matter what. I almost started to build it ...but then quickly realized that its impractical for me to try. Lets see what happens. If the number is reasonable, I'm just going to add it to our spreadsheet and hope the angels we are meeting with are ok with it being on our expense sheet and pay for it. Its good to know there is interest. On Fri, Aug 4, 2017 at 8:38 PM, Alex Tweedly via use-livecode < use-livecode at lists.runrev.com> wrote: > I have to admit that rethinkdb sounds really interesting - I hadn't heard > of it until your posting. > > Might be worth a crowdfunding / donation request to spread the cost; while > I don't have a *need* for it, it might be a worthy target for (a small > amount) of my optional spending of my 'pocket money' ;-) > > Alex > > > > On 04/08/2017 21:12, Tom Glod via use-livecode wrote: > >> nah....I need the driver for many reasons. I do plan to donate the >> driver >> to the open-source community version once its completed. I don't have any >> reason why not, I really just need the driver, its an investment for my >> company for many years to come. >> >> On Fri, Aug 4, 2017 at 8:29 AM, Mike Kerner via use-livecode < >> use-livecode at lists.runrev.com> wrote: >> >> I don't know the first thing about Rethink, but have you thought about >>> using odbc? >>> >>> On Fri, Aug 4, 2017 at 6:02 AM, Thierry Douez via use-livecode < >>> use-livecode at lists.runrev.com> wrote: >>> >>> 2017-08-03 17:00 GMT+02:00 Bob Sneidar: >>>> >>>> I poked around on their web site. >>>> >>>> What is the advantage of this db over other SQL db's? Price? Speed? Ease >>>> >>> of >>> >>>> config? >>>>> >>>>> >>>>> ?Hi Bob, >>>> >>>> Here is 1 minute of rethinkDB?... >>>> >>>> https://www.youtube.com/watch?v=qKPKsBNw604 >>>> >>>> >>>> Regards, >>>> >>>> Thierry >>>> >>>> >>>> >>>> >>>> On Aug 2, 2017, at 14:12 , Tom Glod via use-livecode < >>>>>> >>>>> use-livecode at lists.runrev.com> wrote: >>>>> >>>>>> Hi folks, my company is currently taking quotes on building an LC >>>>>> >>>>> external >>>>> >>>>>> to act as a driver for RethinkDB. I have already submitted a request >>>>>> >>>>> with >>>>> >>>>>> Monte & Ian over at Livecode, but would like to open it up to >>>>>> >>>>> everyone >>> >>>> that >>>>> >>>>>> has the skill to build the external....I don't really even know if >>>>>> >>>>> there >>>> >>>>> is >>>>> >>>>>> anyone else. >>>>>> >>>>>> Here are the exact specs. >>>>>> >>>>>> https://www.rethinkdb.com/docs/writing-drivers/ >>>>>> >>>>>> The more precise the quote the better. >>>>>> >>>>>> Thanks, >>>>>> >>>>>> Tom >>>>>> >>>>> >>>>> -- >>>> ------------------------------------------------ >>>> Thierry Douez - sunny-tdz.com >>>> sunnYrex - sunnYtext2speech - sunnYperl - sunnYmidi - sunnYmage >>>> _______________________________________________ >>>> use-livecode mailing list >>>> use-livecode at lists.runrev.com >>>> Please visit this url to subscribe, unsubscribe and manage your >>>> subscription preferences: >>>> http://lists.runrev.com/mailman/listinfo/use-livecode >>>> >>>> >>> >>> -- >>> On the first day, God created the heavens and the Earth >>> On the second day, God created the oceans. >>> On the third day, God put the animals on hold for a few hours, >>> and did a little diving. >>> And God said, "This is good." >>> _______________________________________________ >>> use-livecode mailing list >>> use-livecode at lists.runrev.com >>> Please visit this url to subscribe, unsubscribe and manage your >>> subscription preferences: >>> http://lists.runrev.com/mailman/listinfo/use-livecode >>> >>> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From richmondmathewson at gmail.com Sat Aug 5 05:06:33 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Sat, 5 Aug 2017 12:06:33 +0300 Subject: preOpenStack problem Message-ID: So, in the most recent version of my Devawriter Pro I have a script in the preOpenStack section of the stackScript: on preOpenStack send "mouseUp" to btn "CHECKIT" end preOpenStack btn "CHECKIT" checks the end-user's computer's MAC address against a list of MAC addresses in a scrolling list field. When I quit LiveCode LiveCode "throws a bluey" and opens up the stackScript and puts a "yellow thingy of death" next to send "mouseUp" to btn "CHECKIT" and says "no such object" which is, obviously, rubbish & why on earth is LiveCode trawling through "preOpenStack" when it's closing the thing? ---- this is not "fatal" as I notice it doesn't happen in a standalone. ---- Richmond. From klaus at major-k.de Sat Aug 5 07:10:56 2017 From: klaus at major-k.de (Klaus major-k) Date: Sat, 5 Aug 2017 13:10:56 +0200 Subject: menuHistory & menuPick In-Reply-To: <8962E153-7F91-434D-A258-301D5CBFEA21@iotecdigital.com> References: <717d15902b1891b3f1892bcc01c9c277.squirrel@sage.on-rev.com> <8962E153-7F91-434D-A258-301D5CBFEA21@iotecdigital.com> Message-ID: <90B06D05-ED17-4518-94D1-1F8860D2A8B4@major-k.de> > Am 04.08.2017 um 23:27 schrieb Bob Sneidar via use-livecode : > > Hi JB. > > To set the menu display value without triggering menuPick, set the label of the menu button. In order to trigger the menuPick handler when changing the value, use menuHistory. No need to suspend messages or anything fancy like that. > > Bob S and the winner is: Mr. Bob S.! :-) >> On Aug 4, 2017, at 11:04 , jbv via use-livecode wrote: >> >> Hi >> According to the doc, when you set the menuHistory property, a menuPick >> message is sent to the button. >> I managed to block the menupick message with a boolean variable, but is >> there an easier/more elegant way to momentary block that message when >> setting menuhistory ? >> >> Thanks in advance. >> jbv Best Klaus -- Klaus Major http://www.major-k.de klaus at major-k.de From jbv at souslelogo.com Sat Aug 5 08:15:15 2017 From: jbv at souslelogo.com (jbv) Date: Sat, 5 Aug 2017 14:15:15 +0200 Subject: menuHistory & menuPick In-Reply-To: <90B06D05-ED17-4518-94D1-1F8860D2A8B4@major-k.de> References: <717d15902b1891b3f1892bcc01c9c277.squirrel@sage.on-rev.com> <8962E153-7F91-434D-A258-301D5CBFEA21@iotecdigital.com> <90B06D05-ED17-4518-94D1-1F8860D2A8B4@major-k.de> Message-ID: well, not exactly... here's the thing : I have a hidden option button with several choices : choice1 choice2 choice2 At some point the content of the btn gets updated and it becomes visible with the following script : put "choice4" & return & "choice5" & return & "choice6" into btn 1 set label of btn 1 to line 2 of btn 1 set menuhistory of btn 1 to 2 The purpose of the "menuhistory" line is, when user press the btn, to have all the choices "centered around" the visible one on the label, which is more elegant imho... jbv On Sat, August 5, 2017 1:10 pm, Klaus major-k via use-livecode wrote: > >> Am 04.08.2017 um 23:27 schrieb Bob Sneidar via use-livecode >> : >> >> >> Hi JB. >> >> >> To set the menu display value without triggering menuPick, set the >> label of the menu button. In order to trigger the menuPick handler when >> changing the value, use menuHistory. No need to suspend messages or >> anything fancy like that. >> >> Bob S >> > > and the winner is: Mr. Bob S.! :-) > >>> On Aug 4, 2017, at 11:04 , jbv via use-livecode >>> wrote: >>> >>> >>> Hi >>> According to the doc, when you set the menuHistory property, a >>> menuPick message is sent to the button. I managed to block the menupick >>> message with a boolean variable, but is there an easier/more elegant >>> way to momentary block that message when setting menuhistory ? >>> >>> Thanks in advance. >>> jbv > > Best > > > Klaus > > > -- > Klaus Major > http://www.major-k.de > klaus at major-k.de > > > _______________________________________________ > use-livecode mailing list use-livecode at lists.runrev.com Please visit this > url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > > From klaus at major-k.de Sat Aug 5 08:52:38 2017 From: klaus at major-k.de (Klaus major-k) Date: Sat, 5 Aug 2017 14:52:38 +0200 Subject: menuHistory & menuPick In-Reply-To: References: <717d15902b1891b3f1892bcc01c9c277.squirrel@sage.on-rev.com> <8962E153-7F91-434D-A258-301D5CBFEA21@iotecdigital.com> <90B06D05-ED17-4518-94D1-1F8860D2A8B4@major-k.de> Message-ID: <76A76557-E489-491F-914E-77367D5D0C3F@major-k.de> > Am 05.08.2017 um 14:15 schrieb jbv via use-livecode : > > well, not exactly... But it answered exactly your initial question, Sir! > here's the thing : I have a hidden option button with several choices : > choice1 > choice2 > choice2 > > At some point the content of the btn gets updated and it becomes visible > with the following script : > put "choice4" & return & "choice5" & return & "choice6" into btn 1 > set label of btn 1 to line 2 of btn 1 > set menuhistory of btn 1 to 2 > > The purpose of the "menuhistory" line is, when user press the btn, > to have all the choices "centered around" the visible one on the label, > which is more elegant imho... Well, this is a completely different situation and I am a bit clueless. Now do you want to execute the menupick handler or not? Best Klaus -- Klaus Major http://www.major-k.de klaus at major-k.de From jbv at souslelogo.com Sat Aug 5 09:00:29 2017 From: jbv at souslelogo.com (jbv) Date: Sat, 5 Aug 2017 15:00:29 +0200 Subject: menuHistory & menuPick In-Reply-To: <76A76557-E489-491F-914E-77367D5D0C3F@major-k.de> References: <717d15902b1891b3f1892bcc01c9c277.squirrel@sage.on-rev.com> <8962E153-7F91-434D-A258-301D5CBFEA21@iotecdigital.com> <90B06D05-ED17-4518-94D1-1F8860D2A8B4@major-k.de> <76A76557-E489-491F-914E-77367D5D0C3F@major-k.de> Message-ID: On Sat, August 5, 2017 2:52 pm, Klaus major-k via use-livecode wrote: > >> Am 05.08.2017 um 14:15 schrieb jbv via use-livecode >> : >> >> >> well, not exactly... > > But it answered exactly your initial question, Sir! > > >> here's the thing : I have a hidden option button with several choices : >> choice1 choice2 choice2 >> >> At some point the content of the btn gets updated and it becomes >> visible with the following script : put "choice4" & return & "choice5" & >> return & "choice6" into btn 1 set label of btn 1 to line 2 of btn 1 set >> menuhistory of btn 1 to 2 >> >> The purpose of the "menuhistory" line is, when user press the btn, >> to have all the choices "centered around" the visible one on the label, >> which is more elegant imho... > > Well, this is a completely different situation and I am a bit clueless. > Now do you want to execute the menupick handler or not? > Nope, I want to bypass the menupick message. Your suggestion to block messages would block all messages, not just menupick. As mentioned in my original post, I managed to do it with a boolean variable. I was just wondering about the availability of a more elegant solution, using LC built-in features for instance... Best regards From brahma at hindu.org Sat Aug 5 11:58:50 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Sat, 5 Aug 2017 15:58:50 +0000 Subject: preOpenStack problem In-Reply-To: References: Message-ID: <3C5675A0-5BD9-4F60-B9DD-062B7E4B5AE0@hindu.org> confirmed.. happening here? I've been getting this since 8.1.5, never cause serious problem, and had no recipe, so could not report it.. but yes exactly this debug breaking on preopenstack when closing up stacks. BR On 8/4/17, 11:06 PM, "use-livecode on behalf of Richmond Mathewson via use-livecode" wrote: why on earth is LiveCode trawling through "preOpenStack" when it's closing the thing? From rdimola at evergreeninfo.net Sat Aug 5 12:06:34 2017 From: rdimola at evergreeninfo.net (Ralph DiMola) Date: Sat, 5 Aug 2017 12:06:34 -0400 Subject: [OT-ish] Updating MacBook from El Capitan to Sierra to install Xcode 8.3+ In-Reply-To: <937A9E4E-9C89-4C57-963B-F0498160D20F@jhjensen.com> References: <008101d30c8e$b866a3a0$2933eae0$@net> <937A9E4E-9C89-4C57-963B-F0498160D20F@jhjensen.com> Message-ID: <001601d30e04$d2f49a20$78ddce60$@net> Thanks Jerry et al! I did the upgrade with no problems. I would caution anyone doing this (or any major upgrade/install) is to be patient. The install progress bar froze for an hour or more. It appeared to be cut into stone with no estimated time to completion. This was after the install progress bar logged that there were 20 minutes left for about 1.5 hours. I went to bed and in the am it was finished and I logged in with no problems. Ralph DiMola IT Director Evergreen Information Services rdimola at evergreeninfo.net -----Original Message----- From: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] On Behalf Of Jerry Jensen via use-livecode Sent: Thursday, August 03, 2017 10:41 PM To: How to use LiveCode Cc: Jerry Jensen Subject: Re: [OT-ish] Updating MacBook from El Capitan to Sierra to install Xcode 8.3+ As others have said, Sierra (10.12.x) is good old (?) HFS+. High Sierra (10.13.x) introduces APFS and is still in developer preview beta. I have upgraded 8 or so macs to Sierra with few problems. My biggest headache was going from 10.12.5 to 10.12.6 on only one machine that got in a fight with an ancient hp printer driver kext. That was a B#$^%^ to find. Other than that its been smooth. You have already CCC?ed to a fresh drive, so you shouldn?t have any rotten bits. CCC is indispensable! .Jerry > On Aug 3, 2017, at 12:28 PM, Ralph DiMola via use-livecode wrote: > > I'm going to do this Friday night and was looking for any > advice/tricks to make this go smooth(as much as possible). I have read > about a few disasters online when upgrading from HFS+ to the new APFS file system. _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode From ahsoftware at sonic.net Sat Aug 5 13:39:47 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Sat, 5 Aug 2017 10:39:47 -0700 Subject: Taking quotes on building LC external for RethinkDB In-Reply-To: <25d7280f-949c-eefb-5c86-e022a43b7e9a@tweedly.net> References: <25d7280f-949c-eefb-5c86-e022a43b7e9a@tweedly.net> Message-ID: <68e539d0-3107-2164-1553-80c81ba6f1a4@sonic.net> On 08/04/2017 05:38 PM, Alex Tweedly via use-livecode wrote: > I have to admit that rethinkdb sounds really interesting - I hadn't > heard of it until your posting. > > Might be worth a crowdfunding / donation request to spread the cost; > while I don't have a *need* for it, it might be a worthy target for (a > small amount) of my optional spending of my 'pocket money' ;-) http://quality.livecode.com/show_bug.cgi?id=3662 In 2006 all existing database bugs in bugzilla were rolled into one omnibus 'revDB review' bug report, and the individual report statuses were all changed as 'resolved'. This in favor of 'We will shortly be reviewing revDB' for a major rewrite of the database layer. Had this actually been done anytime in the intervening eleven years, adding new database types would be much easier. At some point I tried to add mongodb to the engine and eventually hit a brick wall because of an incompatibility with the existing library structure (a clash of static and dynamic libraries, IIRC) I realize revamping the database layer is a bigger task than trying to shoehorn more database types into the existing bucket, but I think it's high time to revisit (crowdfund) this. Otherwise we're just digging ourselves deeper into the existing muck. -- Mark Wieder ahsoftware at gmail.com From brian at milby7.com Sat Aug 5 16:12:04 2017 From: brian at milby7.com (Brian Milby) Date: Sat, 5 Aug 2017 15:12:04 -0500 Subject: Understanding LiveCode Source [BOM Issue with livecodescript URLs] Message-ID: Is there anything posted that gives an overview of how the source code to LiveCode works/is organized? I know that the source is all there and I can read it, but that would take a long time :) I'm still learning C++ (been many years, but I learned C while in college), but following the code doesn't seem too bad. I'm specifically looking at the parsing of livecodescript stacks with BOMs. I think I know where the file is ultimately processed (the stream of it anyway), but I can only work backward so far and get stuck. So, I guess a more specific question would be where to start on the handoff between the IDE and the engine. As an example, I can see that when you turn off debug mode, the message box ends up with "send script pScript to pObject". I want to follow the problem statements through to see where they lead and compare what works to what doesn't. I'm using the message box (single line) to test syntax. I get the same results whether debug mode is on or off. The local file includes the UTF8 BOM (verified by getting the first 3 bytes). The actual file I'm using is the Scriptifier (URL from an earlier thread). I get the same results for "binfile:/" and "https://" forms, so I've only included one below. I observe that "url" keyword is required (will need to adjust the documentation syntax, looks to be the same back to at least 7). So far I've observed the following fails silently (no error message returned): go [to] url "binfile:/...livecodescript" --should work The following fail with an error (LC9 gives "message" as hint, LC8 gives the actual script line as a hint "go..."): go [to] [stack] "https:...livecode" --missing url go [to] [stack] "binfile:/...livecodescript" --missing url go [to] stack url "binfile:/...livecodescript" --should work These work: go [to] [stack] url "https:...livecode" go [to] [stack] "/(full path)/Scriptifier.livecodescript" go [to] [stack] byte 4 to -1 of url "binfile:/...livecodescript" --assumes UTF8 BOM The current develop build has the same issues (at least for me). I can see in the code where it looks like the BOM should be accounted for (MCDispatch::doreadfile or MCDispatch::trytoreadscriptonlystackofsize depending on branch). It looks like the URL keyword will correctly parse a binary stack, but fails on livecodescript with a BOM. I put 2 files on a server that I control (with and without the UTF8 BOM), and the livecodescript will load fine from https:// if no BOM is included. Apologize for the long post, but wanting to contribute to the community if I can. Thanks, Brian From mark at livecode.com Sat Aug 5 16:36:44 2017 From: mark at livecode.com (Mark Waddingham) Date: Sat, 5 Aug 2017 22:36:44 +0200 Subject: Taking quotes on building LC external for RethinkDB In-Reply-To: <68e539d0-3107-2164-1553-80c81ba6f1a4@sonic.net> References: <25d7280f-949c-eefb-5c86-e022a43b7e9a@tweedly.net> <68e539d0-3107-2164-1553-80c81ba6f1a4@sonic.net> Message-ID: <02AF5FB2-E0B9-4636-B839-DA1AA7BDEB74@livecode.com> Err - given that revDB is an *SQL* database wrapper and MongoDB is not an SQL database you can imagine that creating an abstraction layer to deal with both might be 'quite' hard - if not impossible. So, given that we've now been open source for over four years and as such that code has been open for others to contribute to for four years please feel free to try and propose an API which works relatively seemlessly for all types of databases that exist today - I'll happily review it and help ensure it is worthwhile. Less 'rants' and more actual intellectual effort please. This isn't down to static and dynamic libraries, that is just the colour of the bikeshed at this level - and trying to claim that anything related to that is the issue here is just misleading people. Warmest Regards, Mark. P.S. My point here is simply that whilst their may be an abstraction which unifies all databases it sits so far up in the abstraction hierarchy that trying to make revDB do it would be entirely pointless. The 'revDB' rewrite you speak of has been subsumed by a number of db libraries which solve the issue of low-level access that revDB provides. Whether that be dblib, sqlyoga, or the way to abstract in a domain specific case as typified in many apps (e.g. The photo app in the createit course) have provided. Indeed, let's not pretend that the issue with supporting all kinds of 'database' here is at the C / API level because it really isn't. P.P.S. Abstractions are what makes things easy - abstracting too far and all you end up doing is proving that 1 = 1 in numerous not particularly interesting ways. What you might call "category theory 101". Sent from my iPhone > On 5 Aug 2017, at 19:39, Mark Wieder via use-livecode wrote: > >> On 08/04/2017 05:38 PM, Alex Tweedly via use-livecode wrote: >> I have to admit that rethinkdb sounds really interesting - I hadn't heard of it until your posting. >> Might be worth a crowdfunding / donation request to spread the cost; while I don't have a *need* for it, it might be a worthy target for (a small amount) of my optional spending of my 'pocket money' ;-) > > > http://quality.livecode.com/show_bug.cgi?id=3662 > > > > In 2006 all existing database bugs in bugzilla were rolled into one omnibus 'revDB review' bug report, and the individual report statuses were all changed as 'resolved'. This in favor of 'We will shortly be reviewing revDB' for a major rewrite of the database layer. > > Had this actually been done anytime in the intervening eleven years, adding new database types would be much easier. At some point I tried to add mongodb to the engine and eventually hit a brick wall because of an incompatibility with the existing library structure (a clash of static and dynamic libraries, IIRC) > > I realize revamping the database layer is a bigger task than trying to shoehorn more database types into the existing bucket, but I think it's high time to revisit (crowdfund) this. Otherwise we're just digging ourselves deeper into the existing muck. > > > -- > Mark Wieder > ahsoftware at gmail.com > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From tom at makeshyft.com Sat Aug 5 19:42:14 2017 From: tom at makeshyft.com (Tom Glod) Date: Sat, 5 Aug 2017 19:42:14 -0400 Subject: Taking quotes on building LC external for RethinkDB In-Reply-To: <02AF5FB2-E0B9-4636-B839-DA1AA7BDEB74@livecode.com> References: <25d7280f-949c-eefb-5c86-e022a43b7e9a@tweedly.net> <68e539d0-3107-2164-1553-80c81ba6f1a4@sonic.net> <02AF5FB2-E0B9-4636-B839-DA1AA7BDEB74@livecode.com> Message-ID: Hi Mark, I don't really know what to make of that thread and I wouldn't pretend to understand everything thats being talked about here or there....so i'm jst thinking out loud. I believe I might have mis-spoken by calling it a driver..... its really a LC external that acts as a driver. If you go to this page ..... the specs say that it all happens through an tcp/ip connection where you make a connection, serialize the query and send it .... the db driver port receives queries, and streams data from the db via the TCP/IP back to "subscribed" client. So it doesn't really need to have anything to do with the current revdatabase functions....which the posts seem to be talking about. I'm not asking for a rewrite of db layer. It would be more perform ant to build this as an external and closer to the engine...as far as I know anyways..... unless thats completely wrong. Here is the link again....... https://www.rethinkdb.com/docs/writing-drivers/ Thanks for making me aware of the past efforts with RethinkDB. On Sat, Aug 5, 2017 at 4:36 PM, Mark Waddingham via use-livecode < use-livecode at lists.runrev.com> wrote: > Err - given that revDB is an *SQL* database wrapper and MongoDB is not an > SQL database you can imagine that creating an abstraction layer to deal > with both might be 'quite' hard - if not impossible. > > So, given that we've now been open source for over four years and as such > that code has been open for others to contribute to for four years please > feel free to try and propose an API which works relatively seemlessly for > all types of databases that exist today - I'll happily review it and help > ensure it is worthwhile. > > Less 'rants' and more actual intellectual effort please. This isn't down > to static and dynamic libraries, that is just the colour of the bikeshed at > this level - and trying to claim that anything related to that is the issue > here is just misleading people. > > Warmest Regards, > > Mark. > > P.S. My point here is simply that whilst their may be an abstraction which > unifies all databases it sits so far up in the abstraction hierarchy that > trying to make revDB do it would be entirely pointless. The 'revDB' rewrite > you speak of has been subsumed by a number of db libraries which solve the > issue of low-level access that revDB provides. Whether that be dblib, > sqlyoga, or the way to abstract in a domain specific case as typified in > many apps (e.g. The photo app in the createit course) have provided. > Indeed, let's not pretend that the issue with supporting all kinds of > 'database' here is at the C / API level because it really isn't. > > P.P.S. Abstractions are what makes things easy - abstracting too far and > all you end up doing is proving that 1 = 1 in numerous not particularly > interesting ways. What you might call "category theory 101". > > Sent from my iPhone > > > On 5 Aug 2017, at 19:39, Mark Wieder via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > >> On 08/04/2017 05:38 PM, Alex Tweedly via use-livecode wrote: > >> I have to admit that rethinkdb sounds really interesting - I hadn't > heard of it until your posting. > >> Might be worth a crowdfunding / donation request to spread the cost; > while I don't have a *need* for it, it might be a worthy target for (a > small amount) of my optional spending of my 'pocket money' ;-) > > > > > > http://quality.livecode.com/show_bug.cgi?id=3662 > > > > > > > > In 2006 all existing database bugs in bugzilla were rolled into one > omnibus 'revDB review' bug report, and the individual report statuses were > all changed as 'resolved'. This in favor of 'We will shortly be reviewing > revDB' for a major rewrite of the database layer. > > > > Had this actually been done anytime in the intervening eleven years, > adding new database types would be much easier. At some point I tried to > add mongodb to the engine and eventually hit a brick wall because of an > incompatibility with the existing library structure (a clash of static and > dynamic libraries, IIRC) > > > > I realize revamping the database layer is a bigger task than trying to > shoehorn more database types into the existing bucket, but I think it's > high time to revisit (crowdfund) this. Otherwise we're just digging > ourselves deeper into the existing muck. > > > > > > -- > > Mark Wieder > > ahsoftware at gmail.com > > > > _______________________________________________ > > use-livecode mailing list > > use-livecode at lists.runrev.com > > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > > http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From mark at livecode.com Sat Aug 5 21:54:17 2017 From: mark at livecode.com (Mark Waddingham) Date: Sun, 6 Aug 2017 03:54:17 +0200 Subject: Understanding LiveCode Source [BOM Issue with livecodescript URLs] In-Reply-To: References: Message-ID: The best way is to ask 'us' (as in the engineers that have worked on the entirety of the LiveCode source base for many years). This isn't any different from any other open source project which has 1.5m lines of code (I don't think at least...). We can certainly provide an insight at where to start looking in terms of working on most issues - although don't be surprised if some result in a littany of 'that would be nice but...' type response. (The engine, in particular, has yaks needing shaving all over - as the years go by they are getting increasingly sweaty and tetchy because of it). It is easy to get disheartened (slightly?) when working on the engine itself - but please don't be. We (as the maintainers) of the source base will offer as much help as we can, but do have to balance that with everything else we do. I'd like to think that we do better than the RTFS responses you see in many other projects - but it really does come down to that in many cases (as we have to do that ourselves!). However, we are are more than happy to dig out the 'lower hanging fruit' to help ease learning - you've already found one of those... I think you've found (one of) the good spot(s) to start - handling BOMs needs to occur at the point the engine reads in the text of the stackfile script as data and then use it with an 'external representation' bool flag to the decode API call in libfoundation (MCStringCreate...). I think that flag is currently unimplemented (so a small yak shave but not in anyway huge). You've already got a handle on the processes we use internally, and do expect every contributor to follow those processes, and sometimes we might sound blunt, but please always understand that in terms of ensuring what is done (in terms of mutation of the source - I use the term 'mutation' specifically as any change to a large existing, and existing entity can only be considered as such) is 'correct' (at least as far as the collective knowledge we hold is understood - and by 'we' I mean all that contribute). In terms of best places to interact on these matters then here (the use-list) is probably not great - gitter is good for direct answers but our quality centre is better as it provides a much better permanent and grokable record (indeed - we try to file an issue for every change to make it traceable globally)... At least until a PR is submitted. Also we *could* invite dedicated external contributors to our private Slack - not something we've done as yet but it's a very tangible possibility. (And this is not a matter of privacy - but of pragmatic information exchange - those that work for LiveCode directly have time constraints on responding to input - that's all). So, anyway, perhaps a much longer response than you expected. However it was not aimed at you (Brian) specifically, but generally. We don't expect contribution from anyone, but are always incredibly happy and as supportive as we can be when it occurs. LiveCode is a wealth of interesting problems, if nothing else, and you can learn a lot from it (as I have done in my 13 year tenure as 'chief engineer'). Warmest Regards, Mark. P.S. I made a comment recently about 'caution being one of the best tools to effect change' and it applies to any long standing entity - of which LiveCode is one. I completely reserve the right (as 'BDFL' which is perhaps my title in that space) to cessate anything which I do not think is right (usually by closing a PR ;)), but I have an open mind - 'trust' is an important factor here on a technical level. I limit myself on what I do to the engine (in particular!) because it is very hard to get it 'right' when taking into the account the breadth of applicability - there are huge constraints which only become articulable when faced with direct reasons for any change. i.e. Start small and work up - anything else will result in a *seemingly* dismissive response. (ie don't expect huge support from us for very broad changes without long running interaction and justification). P.P.S. I've learnt the above from tangible and *very* direct cost. The only reason I make these kinds of statements is because I care so much about what we are trying to be and do. Sent from my iPhone > On 5 Aug 2017, at 22:12, Brian Milby via use-livecode wrote: > > Is there anything posted that gives an overview of how the source code to > LiveCode works/is organized? I know that the source is all there and I can > read it, but that would take a long time :) I'm still learning C++ (been > many years, but I learned C while in college), but following the code > doesn't seem too bad. > > I'm specifically looking at the parsing of livecodescript stacks with > BOMs. I think I know where the file is ultimately processed (the stream of > it anyway), but I can only work backward so far and get stuck. > > So, I guess a more specific question would be where to start on the handoff > between the IDE and the engine. As an example, I can see that when you > turn off debug mode, the message box ends up with "send script pScript to > pObject". I want to follow the problem statements through to see where > they lead and compare what works to what doesn't. > > I'm using the message box (single line) to test syntax. I get the same > results whether debug mode is on or off. The local file includes the UTF8 > BOM (verified by getting the first 3 bytes). The actual file I'm using is > the Scriptifier (URL from an earlier thread). I get the same results for > "binfile:/" and "https://" forms, so I've only included one below. I > observe that "url" keyword is required (will need to adjust the > documentation syntax, looks to be the same back to at least 7). > > So far I've observed the following fails silently (no error message > returned): > go [to] url "binfile:/...livecodescript" --should work > > The following fail with an error (LC9 gives "message" as hint, LC8 gives > the actual script line as a hint "go..."): > go [to] [stack] "https:...livecode" --missing url > go [to] [stack] "binfile:/...livecodescript" --missing url > go [to] stack url "binfile:/...livecodescript" --should work > > These work: > go [to] [stack] url "https:...livecode" > go [to] [stack] "/(full path)/Scriptifier.livecodescript" > go [to] [stack] byte 4 to -1 of url "binfile:/...livecodescript" > --assumes UTF8 BOM > > The current develop build has the same issues (at least for me). I can see > in the code where it looks like the BOM should be accounted for > (MCDispatch::doreadfile or MCDispatch::trytoreadscriptonlystackofsize > depending on branch). > > It looks like the URL keyword will correctly parse a binary stack, but > fails on livecodescript with a BOM. I put 2 files on a server that I > control (with and without the UTF8 BOM), and the livecodescript will load > fine from https:// if no BOM is included. > > Apologize for the long post, but wanting to contribute to the community if > I can. > > Thanks, > Brian > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From mark at livecode.com Sat Aug 5 21:58:31 2017 From: mark at livecode.com (Mark Waddingham) Date: Sun, 6 Aug 2017 03:58:31 +0200 Subject: Taking quotes on building LC external for RethinkDB In-Reply-To: References: <25d7280f-949c-eefb-5c86-e022a43b7e9a@tweedly.net> <68e539d0-3107-2164-1553-80c81ba6f1a4@sonic.net> <02AF5FB2-E0B9-4636-B839-DA1AA7BDEB74@livecode.com> Message-ID: <82DFE5F9-A0FE-47D7-97BE-3E8668F4273F@livecode.com> Hi Tom, Nothing in my previous post was to do with your request - we will get back to you as quickly as we can with a quote for what you asked. Whether that is a driver for revDB or a direct wrapper for the low-level C API raised to a suitable level of abstraction will depend on the analysis we do. The functionality you need is the important thing here and not the manner or means. Warmest Regards, Mark. Sent from my iPhone > On 6 Aug 2017, at 01:42, Tom Glod via use-livecode wrote: > > Hi Mark, > > I don't really know what to make of that thread and I wouldn't pretend to > understand everything thats being talked about here or there....so i'm jst > thinking out loud. > > I believe I might have mis-spoken by calling it a driver..... its really a > LC external that acts as a driver. > > If you go to this page ..... the specs say that it all happens through an > tcp/ip connection where you make a connection, serialize the query and > send it .... the db driver port receives queries, and streams data from > the db via the TCP/IP back to "subscribed" client. > > So it doesn't really need to have anything to do with the current > revdatabase functions....which the posts seem to be talking about. I'm not > asking for a rewrite of db layer. > > It would be more perform ant to build this as an external and closer to the > engine...as far as I know anyways..... unless thats completely wrong. > > Here is the link again....... > > https://www.rethinkdb.com/docs/writing-drivers/ > > Thanks for making me aware of the past efforts with RethinkDB. > > On Sat, Aug 5, 2017 at 4:36 PM, Mark Waddingham via use-livecode < > use-livecode at lists.runrev.com> wrote: > >> Err - given that revDB is an *SQL* database wrapper and MongoDB is not an >> SQL database you can imagine that creating an abstraction layer to deal >> with both might be 'quite' hard - if not impossible. >> >> So, given that we've now been open source for over four years and as such >> that code has been open for others to contribute to for four years please >> feel free to try and propose an API which works relatively seemlessly for >> all types of databases that exist today - I'll happily review it and help >> ensure it is worthwhile. >> >> Less 'rants' and more actual intellectual effort please. This isn't down >> to static and dynamic libraries, that is just the colour of the bikeshed at >> this level - and trying to claim that anything related to that is the issue >> here is just misleading people. >> >> Warmest Regards, >> >> Mark. >> >> P.S. My point here is simply that whilst their may be an abstraction which >> unifies all databases it sits so far up in the abstraction hierarchy that >> trying to make revDB do it would be entirely pointless. The 'revDB' rewrite >> you speak of has been subsumed by a number of db libraries which solve the >> issue of low-level access that revDB provides. Whether that be dblib, >> sqlyoga, or the way to abstract in a domain specific case as typified in >> many apps (e.g. The photo app in the createit course) have provided. >> Indeed, let's not pretend that the issue with supporting all kinds of >> 'database' here is at the C / API level because it really isn't. >> >> P.P.S. Abstractions are what makes things easy - abstracting too far and >> all you end up doing is proving that 1 = 1 in numerous not particularly >> interesting ways. What you might call "category theory 101". >> >> Sent from my iPhone >> >>> On 5 Aug 2017, at 19:39, Mark Wieder via use-livecode < >> use-livecode at lists.runrev.com> wrote: >>> >>>> On 08/04/2017 05:38 PM, Alex Tweedly via use-livecode wrote: >>>> I have to admit that rethinkdb sounds really interesting - I hadn't >> heard of it until your posting. >>>> Might be worth a crowdfunding / donation request to spread the cost; >> while I don't have a *need* for it, it might be a worthy target for (a >> small amount) of my optional spending of my 'pocket money' ;-) >>> >>> >>> http://quality.livecode.com/show_bug.cgi?id=3662 >>> >>> >>> >>> In 2006 all existing database bugs in bugzilla were rolled into one >> omnibus 'revDB review' bug report, and the individual report statuses were >> all changed as 'resolved'. This in favor of 'We will shortly be reviewing >> revDB' for a major rewrite of the database layer. >>> >>> Had this actually been done anytime in the intervening eleven years, >> adding new database types would be much easier. At some point I tried to >> add mongodb to the engine and eventually hit a brick wall because of an >> incompatibility with the existing library structure (a clash of static and >> dynamic libraries, IIRC) >>> >>> I realize revamping the database layer is a bigger task than trying to >> shoehorn more database types into the existing bucket, but I think it's >> high time to revisit (crowdfund) this. Otherwise we're just digging >> ourselves deeper into the existing muck. >>> >>> >>> -- >>> Mark Wieder >>> ahsoftware at gmail.com >>> >>> _______________________________________________ >>> use-livecode mailing list >>> use-livecode at lists.runrev.com >>> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >>> http://lists.runrev.com/mailman/listinfo/use-livecode >> >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From beofonemind at gmail.com Sun Aug 6 01:01:36 2017 From: beofonemind at gmail.com (Tom Glod) Date: Sun, 6 Aug 2017 01:01:36 -0400 Subject: Taking quotes on building LC external for RethinkDB In-Reply-To: References: <25d7280f-949c-eefb-5c86-e022a43b7e9a@tweedly.net> <68e539d0-3107-2164-1553-80c81ba6f1a4@sonic.net> <02AF5FB2-E0B9-4636-B839-DA1AA7BDEB74@livecode.com> <82DFE5F9-A0FE-47D7-97BE-3E8668F4273F@livecode.com> Message-ID: Fantastic..... I look forward to the details of the quote. Thanks On Aug 5, 2017 9:58 PM, "Mark Waddingham via use-livecode" < use-livecode at lists.runrev.com> wrote: Hi Tom, Nothing in my previous post was to do with your request - we will get back to you as quickly as we can with a quote for what you asked. Whether that is a driver for revDB or a direct wrapper for the low-level C API raised to a suitable level of abstraction will depend on the analysis we do. The functionality you need is the important thing here and not the manner or means. Warmest Regards, Mark. Sent from my iPhone > On 6 Aug 2017, at 01:42, Tom Glod via use-livecode < use-livecode at lists.runrev.com> wrote: > > Hi Mark, > > I don't really know what to make of that thread and I wouldn't pretend to > understand everything thats being talked about here or there....so i'm jst > thinking out loud. > > I believe I might have mis-spoken by calling it a driver..... its really a > LC external that acts as a driver. > > If you go to this page ..... the specs say that it all happens through an > tcp/ip connection where you make a connection, serialize the query and > send it .... the db driver port receives queries, and streams data from > the db via the TCP/IP back to "subscribed" client. > > So it doesn't really need to have anything to do with the current > revdatabase functions....which the posts seem to be talking about. I'm not > asking for a rewrite of db layer. > > It would be more perform ant to build this as an external and closer to the > engine...as far as I know anyways..... unless thats completely wrong. > > Here is the link again....... > > https://www.rethinkdb.com/docs/writing-drivers/ > > Thanks for making me aware of the past efforts with RethinkDB. > > On Sat, Aug 5, 2017 at 4:36 PM, Mark Waddingham via use-livecode < > use-livecode at lists.runrev.com> wrote: > >> Err - given that revDB is an *SQL* database wrapper and MongoDB is not an >> SQL database you can imagine that creating an abstraction layer to deal >> with both might be 'quite' hard - if not impossible. >> >> So, given that we've now been open source for over four years and as such >> that code has been open for others to contribute to for four years please >> feel free to try and propose an API which works relatively seemlessly for >> all types of databases that exist today - I'll happily review it and help >> ensure it is worthwhile. >> >> Less 'rants' and more actual intellectual effort please. This isn't down >> to static and dynamic libraries, that is just the colour of the bikeshed at >> this level - and trying to claim that anything related to that is the issue >> here is just misleading people. >> >> Warmest Regards, >> >> Mark. >> >> P.S. My point here is simply that whilst their may be an abstraction which >> unifies all databases it sits so far up in the abstraction hierarchy that >> trying to make revDB do it would be entirely pointless. The 'revDB' rewrite >> you speak of has been subsumed by a number of db libraries which solve the >> issue of low-level access that revDB provides. Whether that be dblib, >> sqlyoga, or the way to abstract in a domain specific case as typified in >> many apps (e.g. The photo app in the createit course) have provided. >> Indeed, let's not pretend that the issue with supporting all kinds of >> 'database' here is at the C / API level because it really isn't. >> >> P.P.S. Abstractions are what makes things easy - abstracting too far and >> all you end up doing is proving that 1 = 1 in numerous not particularly >> interesting ways. What you might call "category theory 101". >> >> Sent from my iPhone >> >>> On 5 Aug 2017, at 19:39, Mark Wieder via use-livecode < >> use-livecode at lists.runrev.com> wrote: >>> >>>> On 08/04/2017 05:38 PM, Alex Tweedly via use-livecode wrote: >>>> I have to admit that rethinkdb sounds really interesting - I hadn't >> heard of it until your posting. >>>> Might be worth a crowdfunding / donation request to spread the cost; >> while I don't have a *need* for it, it might be a worthy target for (a >> small amount) of my optional spending of my 'pocket money' ;-) >>> >>> >>> http://quality.livecode.com/show_bug.cgi?id=3662 >>> >>> >>> >>> In 2006 all existing database bugs in bugzilla were rolled into one >> omnibus 'revDB review' bug report, and the individual report statuses were >> all changed as 'resolved'. This in favor of 'We will shortly be reviewing >> revDB' for a major rewrite of the database layer. >>> >>> Had this actually been done anytime in the intervening eleven years, >> adding new database types would be much easier. At some point I tried to >> add mongodb to the engine and eventually hit a brick wall because of an >> incompatibility with the existing library structure (a clash of static and >> dynamic libraries, IIRC) >>> >>> I realize revamping the database layer is a bigger task than trying to >> shoehorn more database types into the existing bucket, but I think it's >> high time to revisit (crowdfund) this. Otherwise we're just digging >> ourselves deeper into the existing muck. >>> >>> >>> -- >>> Mark Wieder >>> ahsoftware at gmail.com >>> >>> _______________________________________________ >>> use-livecode mailing list >>> use-livecode at lists.runrev.com >>> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >>> http://lists.runrev.com/mailman/listinfo/use-livecode >> >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode From ahsoftware at sonic.net Sun Aug 6 01:15:08 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Sat, 5 Aug 2017 22:15:08 -0700 Subject: Taking quotes on building LC external for RethinkDB In-Reply-To: References: <25d7280f-949c-eefb-5c86-e022a43b7e9a@tweedly.net> <68e539d0-3107-2164-1553-80c81ba6f1a4@sonic.net> <02AF5FB2-E0B9-4636-B839-DA1AA7BDEB74@livecode.com> Message-ID: On 08/05/2017 04:42 PM, Tom Glod via use-livecode wrote: > So it doesn't really need to have anything to do with the current > revdatabase functions....which the posts seem to be talking about. I'm not > asking for a rewrite of db layer. Ah. In that case, I'm a bit confused. What does this have to do with LiveCode if you're not trying to tie into the existing functions? > > It would be more perform ant to build this as an external and closer to the > engine...as far as I know anyways..... unless thats completely wrong. From my brief scanning of the rethinkdb website, I don't think it would make a big difference. All the heavy lifting is being done by the database itself. You'd just be sending data back and forth over a socket connection between LC and the database app. I just spent about a half hour with this and fwiw I'm communicating with the rethinkdb server. > Thanks for making me aware of the past efforts with RethinkDB. No, nothing to do with RethinkDB itself. Sorry if I gave that impression. -- Mark Wieder ahsoftware at gmail.com From ahsoftware at sonic.net Sun Aug 6 01:21:41 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Sat, 5 Aug 2017 22:21:41 -0700 Subject: Taking quotes on building LC external for RethinkDB In-Reply-To: <02AF5FB2-E0B9-4636-B839-DA1AA7BDEB74@livecode.com> References: <25d7280f-949c-eefb-5c86-e022a43b7e9a@tweedly.net> <68e539d0-3107-2164-1553-80c81ba6f1a4@sonic.net> <02AF5FB2-E0B9-4636-B839-DA1AA7BDEB74@livecode.com> Message-ID: <2a1b274f-0a3f-c975-3d12-e91d4402cf68@sonic.net> On 08/05/2017 01:36 PM, Mark Waddingham via use-livecode wrote: > Err - given that revDB is an *SQL* database wrapper and MongoDB is not an SQL database you can imagine that creating an abstraction layer to deal with both might be 'quite' hard - if not impossible. Not so much. What I was attempting was to get some of the existing syntax in place, so that things like revOpenDatabase would work rather than create a whole new syntax. RethinkDB is also a nosql database, so I assume it's also not going to fit into the existing command structure. Other than that, I'm gonna stay out of this and let you all handle it. -- Mark Wieder ahsoftware at gmail.com From bonnmike at gmail.com Sun Aug 6 02:26:32 2017 From: bonnmike at gmail.com (Mike Bonner) Date: Sun, 6 Aug 2017 00:26:32 -0600 Subject: Taking quotes on building LC external for RethinkDB In-Reply-To: <2a1b274f-0a3f-c975-3d12-e91d4402cf68@sonic.net> References: <25d7280f-949c-eefb-5c86-e022a43b7e9a@tweedly.net> <68e539d0-3107-2164-1553-80c81ba6f1a4@sonic.net> <02AF5FB2-E0B9-4636-B839-DA1AA7BDEB74@livecode.com> <2a1b274f-0a3f-c975-3d12-e91d4402cf68@sonic.net> Message-ID: Mark W.. I know it shouldn't be this difficult, but would you mind sending your handshake code? I'm probably overthinking but can't figure out how to get it to work. On Sat, Aug 5, 2017 at 11:21 PM, Mark Wieder via use-livecode < use-livecode at lists.runrev.com> wrote: > On 08/05/2017 01:36 PM, Mark Waddingham via use-livecode wrote: > >> Err - given that revDB is an *SQL* database wrapper and MongoDB is not an >> SQL database you can imagine that creating an abstraction layer to deal >> with both might be 'quite' hard - if not impossible. >> > > Not so much. What I was attempting was to get some of the existing syntax > in place, so that things like revOpenDatabase would work rather than create > a whole new syntax. RethinkDB is also a nosql database, so I assume it's > also not going to fit into the existing command structure. > > Other than that, I'm gonna stay out of this and let you all handle it. > > > -- > Mark Wieder > ahsoftware at gmail.com > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From hh at hyperhh.de Sun Aug 6 10:13:28 2017 From: hh at hyperhh.de (hh) Date: Sun, 6 Aug 2017 16:13:28 +0200 Subject: menuHistory & menuPick Message-ID: <216E19F5-03BD-4290-B3A1-385FFEA8185F@hyperhh.de> The following recipe is for use in LC 7/8/9. In LC 6 setting the label sets also the menuhistory. Delete your "set menuhistory line" and add the following to the script of your button 1: on mouseDown set the menuhistory of me to lineoffset(the label of me, me) end mouseDown > jbv wrote: > I have a hidden option button with several choices : > choice1 > choice2 > choice2 > > At some point the content of the btn gets updated and it becomes > visible with the following script : > put "choice4" & return & "choice5" & return & "choice6" into btn 1 > set label of btn 1 to line 2 of btn 1 > set menuhistory of btn 1 to 2 > > The purpose of the "menuhistory" line is, when user press the btn, > to have all the choices "centered around" the visible one on the > label, which is more elegant imho... From jbv at souslelogo.com Sun Aug 6 14:59:01 2017 From: jbv at souslelogo.com (jbv) Date: Sun, 6 Aug 2017 20:59:01 +0200 Subject: Maximum size of SQLQuery with revDataFromQuery ? Message-ID: <32fa3c7089270abfd21f8105e2b24c4a.squirrel@sage.on-rev.com> Hello Is there a size limit for the SQLQuery parameter when using revDataFromQuery ? I might end up with mySQL queries of at least 75 Kb... I know the best way to know is to try, but any experience would be apreciated... FYI some of there queries have been tested in PHPmyAdmin and run in 0.0054 sec; my concern was rather the buffer size between LC engine and mySQL... Thanks in advance. jbv From ambassador at fourthworld.com Sun Aug 6 19:39:10 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Sun, 6 Aug 2017 16:39:10 -0700 Subject: Taking quotes on building LC external for RethinkDB In-Reply-To: References: Message-ID: Hello Tom - ReThinkDB seems like a good project. I'm assuming this is for client-server over the Internet, yes? If so, do you plan on connecting the DB directly to the open Internet, or use a middleware supplying a REST API for clients? If the latter, you'd only need a means of connecting LC directly to the DB if you were using LC Server. But since LC Server is a CGI, and since one of the benefits of using ReThinkDB is performance, if you used PHP as your middleware you'd be able to use the existing APIs for that language on the server, and your LC-based clients would just call your REST API via GET and POST. If this is not helpful, what other considerations might we take into account to explore options for efficient connections with that DB? -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From alex at tweedly.net Sun Aug 6 20:20:02 2017 From: alex at tweedly.net (Alex Tweedly) Date: Mon, 7 Aug 2017 01:20:02 +0100 Subject: Taking quotes on building LC external for RethinkDB In-Reply-To: References: Message-ID: On 07/08/2017 00:39, Richard Gaskin via use-livecode wrote: > Hello Tom - > > ReThinkDB seems like a good project. I'm assuming this is for > client-server over the Internet, yes? > > If so, do you plan on connecting the DB directly to the open Internet, > or use a middleware supplying a REST API for clients? > i would presume not. The USP of RethinkDB (at least from my very quick skim over the website :-) was the 'push' notification of updates to the clients - which would be lost if you used a 'traditional' REST API from the end-clients to a server. > If the latter, you'd only need a means of connecting LC directly to > the DB if you were using LC Server. But since LC Server is a CGI, > and since one of the benefits of using ReThinkDB is performance, if > you used PHP as your middleware you'd be able to use the existing APIs > for that language on the server, and your LC-based clients would just > call your REST API via GET and POST. > > If this is not helpful, what other considerations might we take into > account to explore options for efficient connections with that DB? > Alex. From dochawk at gmail.com Sun Aug 6 21:03:15 2017 From: dochawk at gmail.com (Dr. Hawkins) Date: Sun, 6 Aug 2017 18:03:15 -0700 Subject: [OT-ish] Updating MacBook from El Capitan to Sierra to install Xcode 8.3+ In-Reply-To: References: <008101d30c8e$b866a3a0$2933eae0$@net> <937A9E4E-9C89-4C57-963B-F0498160D20F@jhjensen.com> Message-ID: On Fri, Aug 4, 2017 at 7:52 AM, Bob Sneidar via use-livecode < use-livecode at lists.runrev.com> wrote: > I am using Sierra, but I am noticing that sometimes I will click a button > (not in LC I mean in ANY OS doalig) and then have to click it again to > complete the click. I know I clicked it the first time because I get visual > feedback like the button getting darket after the first click. > It seems at time to take one more click than it should sometimes to get livecode and/or windows into focus. There also seems to be a frequent issue where the only way to get one of the windows into focus is to click into another application, and then into that livecode window. -- Dr. Richard E. Hawkins, Esq. (702) 508-8462 From ahsoftware at sonic.net Mon Aug 7 00:05:28 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Sun, 6 Aug 2017 21:05:28 -0700 Subject: Taking quotes on building LC external for RethinkDB In-Reply-To: References: <25d7280f-949c-eefb-5c86-e022a43b7e9a@tweedly.net> <68e539d0-3107-2164-1553-80c81ba6f1a4@sonic.net> <02AF5FB2-E0B9-4636-B839-DA1AA7BDEB74@livecode.com> <2a1b274f-0a3f-c975-3d12-e91d4402cf68@sonic.net> Message-ID: <93b8b1c3-a0bc-fe7b-c458-ca66070edbc6@sonic.net> On 08/05/2017 11:26 PM, Mike Bonner via use-livecode wrote: > Mark W.. I know it shouldn't be this difficult, but would you mind sending > your handshake code? I'm probably overthinking but can't figure out how to > get it to work. email sent -- Mark Wieder ahsoftware at gmail.com From ahsoftware at sonic.net Mon Aug 7 00:10:12 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Sun, 6 Aug 2017 21:10:12 -0700 Subject: Taking quotes on building LC external for RethinkDB In-Reply-To: References: Message-ID: <1cc6ec18-6633-8d48-5966-7069c0098859@sonic.net> On 08/06/2017 05:20 PM, Alex Tweedly via use-livecode wrote: >> If so, do you plan on connecting the DB directly to the open Internet, >> or use a middleware supplying a REST API for clients? >> > i would presume not. The USP of RethinkDB (at least from my very quick > skim over the website :-) was the 'push' notification of updates to the > clients - which would be lost if you used a 'traditional' REST API from > the end-clients to a server. Interesting. My take on that is that since it requires an open connection to the database in order for the notifications to happen, it's more like a pubsub sort of approach. Which is still a nice touch, but it seems like it requires either a direct connection to the db or a callback mechanism. And that is also from a very quick skim of that section of the docs. -- Mark Wieder ahsoftware at gmail.com From danoldboy at gmail.com Mon Aug 7 01:31:22 2017 From: danoldboy at gmail.com (Dan Brown) Date: Mon, 7 Aug 2017 06:31:22 +0100 Subject: Taking quotes on building LC external for RethinkDB In-Reply-To: <1cc6ec18-6633-8d48-5966-7069c0098859@sonic.net> References: <1cc6ec18-6633-8d48-5966-7069c0098859@sonic.net> Message-ID: Rethinkdb doesn't have authentication baked in so you have to lock down the ports and use an ssh tunnel to access it on a remote server. Firebase and Parse server (open source) do pub sub and have auth from the get go On 7 Aug 2017 5:10 am, "Mark Wieder via use-livecode" < use-livecode at lists.runrev.com> wrote: > On 08/06/2017 05:20 PM, Alex Tweedly via use-livecode wrote: > > If so, do you plan on connecting the DB directly to the open Internet, or >>> use a middleware supplying a REST API for clients? >>> >>> i would presume not. The USP of RethinkDB (at least from my very quick >> skim over the website :-) was the 'push' notification of updates to the >> clients - which would be lost if you used a 'traditional' REST API from the >> end-clients to a server. >> > > Interesting. My take on that is that since it requires an open connection > to the database in order for the notifications to happen, it's more like a > pubsub sort of approach. Which is still a nice touch, but it seems like it > requires either a direct connection to the db or a callback mechanism. And > that is also from a very quick skim of that section of the docs. > > -- > Mark Wieder > ahsoftware at gmail.com > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From toolbook at kestner.de Mon Aug 7 06:38:04 2017 From: toolbook at kestner.de (Tiemo Hollmann TB) Date: Mon, 7 Aug 2017 12:38:04 +0200 Subject: How do I specify the papersize name for printing? Message-ID: <012e01d30f69$414dd940$c3e98bc0$@kestner.de> Hello, how do I specify the paper name / the standard drawer of the printer? Right now I set the printpapersize to "595,842", which is "A4", but the printer stops with asking for a "user defined" paper. How can I tell the printer, that my print job is not a user defined paper, but just the standard, so that the printer doesn't stops asking the user? I didn't found the right option in the docs. Thanks Tiemo From merakosp at gmail.com Mon Aug 7 06:51:11 2017 From: merakosp at gmail.com (panagiotis merakos) Date: Mon, 7 Aug 2017 11:51:11 +0100 Subject: How do you detect the necessary inclusions? In-Reply-To: <005301d30c3f$fb249cf0$f16dd6d0$@kestner.de> References: <005301d30c3f$fb249cf0$f16dd6d0$@kestner.de> Message-ID: Hi Tiemo, - When you "Search for Inclusions", the standalone builder looks for keywords in the scripts of your objects, to detect a specific inclusion. For example if it finds it will automatically add SQLite in the Inclusions, - I think in LC 8 the first time you switch to "Select Inclusions", only the "Ask Dialog" and "Answer Dialog" inclusions are chosen. >>>>I assume that the inclusion with the "globe icon" is for the browser widget Yes, this is correct. >>>> What are the inclusions "browser" (jigsaw icon) and "browser (CEF)" for? Those are for the old revBrowser external. So if you use the "revBrowserOpen" command, you have to include "browser", and if you use the revBrowserOpenCEF" command you have to include "browser(CEF)" Best regards, Panos -- On Thu, Aug 3, 2017 at 11:05 AM, Tiemo Hollmann TB via use-livecode < use-livecode at lists.runrev.com> wrote: > Hello, > > > > I think in former times, when you once have choosen "Search for required > inclusions", LiveCode once has checked all necessary inclusion, so that you > got an idea for the needed ones, when you afterwords wanted to selected > them > manually (e.g. the automatic didn't selected all needed inclusions). > > Today in 8.1.5 LC doesn't mark anymore any needed inclusions, after having > let it search for the required ones. At least the browser widget was not > checked, though I have an browser widget in my stack. How do you handle > this > to get the right inclusions? > > Btw. There are three browser inclusions and I don't know, which one is for > what purpose. I assume that the inclusion with the "globe icon" is for the > browser widget, because it has the same icon, but there are 3 browser > inclusions. What are the inclusions "browser" (jigsaw icon) and "browser > (CEF)" for? > > > > Tiemo > > > > > > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From panos.merakos at livecode.com Mon Aug 7 07:20:12 2017 From: panos.merakos at livecode.com (panagiotis merakos) Date: Mon, 7 Aug 2017 12:20:12 +0100 Subject: [ANN] This Week in LiveCode 94 Message-ID: Hi all, Read about new developments in LiveCode open source and the open source community in today's edition of the "This Week in LiveCode" newsletter! Read issue #94 here: https://goo.gl/kEhwYs This is a weekly newsletter about LiveCode, focussing on what's been going on in and around the open source project. New issues will be released weekly on Mondays. We have a dedicated mailing list that will deliver each issue directly to you e-mail, so you don't miss any! If you have anything you'd like mentioned (a project, a discussion somewhere, an upcoming event) then please get in touch. -- Panagiotis Merakos LiveCode Software Developer Everyone Can Create Apps From toolbook at kestner.de Mon Aug 7 07:53:45 2017 From: toolbook at kestner.de (Tiemo Hollmann TB) Date: Mon, 7 Aug 2017 13:53:45 +0200 Subject: AW: How do you detect the necessary inclusions? In-Reply-To: References: <005301d30c3f$fb249cf0$f16dd6d0$@kestner.de> Message-ID: <013501d30f73$d370d840$7a5288c0$@kestner.de> Thank you for clearifying! Tiemo -----Urspr?ngliche Nachricht----- Von: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] Im Auftrag von panagiotis merakos via use-livecode Gesendet: Montag, 7. August 2017 12:51 An: How to use LiveCode Cc: panagiotis merakos Betreff: Re: How do you detect the necessary inclusions? Hi Tiemo, - When you "Search for Inclusions", the standalone builder looks for keywords in the scripts of your objects, to detect a specific inclusion. For example if it finds it will automatically add SQLite in the Inclusions, - I think in LC 8 the first time you switch to "Select Inclusions", only the "Ask Dialog" and "Answer Dialog" inclusions are chosen. >>>>I assume that the inclusion with the "globe icon" is for the browser widget Yes, this is correct. >>>> What are the inclusions "browser" (jigsaw icon) and "browser (CEF)" for? Those are for the old revBrowser external. So if you use the "revBrowserOpen" command, you have to include "browser", and if you use the revBrowserOpenCEF" command you have to include "browser(CEF)" Best regards, Panos -- On Thu, Aug 3, 2017 at 11:05 AM, Tiemo Hollmann TB via use-livecode < use-livecode at lists.runrev.com> wrote: > Hello, > > > > I think in former times, when you once have choosen "Search for > required inclusions", LiveCode once has checked all necessary > inclusion, so that you got an idea for the needed ones, when you > afterwords wanted to selected them manually (e.g. the automatic didn't > selected all needed inclusions). > > Today in 8.1.5 LC doesn't mark anymore any needed inclusions, after > having let it search for the required ones. At least the browser > widget was not checked, though I have an browser widget in my stack. > How do you handle this to get the right inclusions? > > Btw. There are three browser inclusions and I don't know, which one is > for what purpose. I assume that the inclusion with the "globe icon" is > for the browser widget, because it has the same icon, but there are 3 > browser inclusions. What are the inclusions "browser" (jigsaw icon) > and "browser (CEF)" for? > > > > Tiemo > > > > > > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode From toolbook at kestner.de Mon Aug 7 08:27:24 2017 From: toolbook at kestner.de (Tiemo Hollmann TB) Date: Mon, 7 Aug 2017 14:27:24 +0200 Subject: AW: How do I specify the papersize name for printing? In-Reply-To: <012e01d30f69$414dd940$c3e98bc0$@kestner.de> References: <012e01d30f69$414dd940$c3e98bc0$@kestner.de> Message-ID: <013601d30f78$87f09720$97d1c560$@kestner.de> One part of my question is answered. If I want to print on the standard paper, I may not specify the printpapersize, then the printer won't ask for a user specific paper. But if I am not sure, which paper is standard on the users printer, I have to define the size in case I need specific dimensions, but would like to get the standard paper, if it is "A4" and available. And what about other paper names? Tiemo -----Urspr?ngliche Nachricht----- Von: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] Im Auftrag von Tiemo Hollmann TB via use-livecode Gesendet: Montag, 7. August 2017 12:38 An: LiveCode User Liste senden Cc: Tiemo Hollmann TB Betreff: How do I specify the papersize name for printing? Hello, how do I specify the paper name / the standard drawer of the printer? Right now I set the printpapersize to "595,842", which is "A4", but the printer stops with asking for a "user defined" paper. How can I tell the printer, that my print job is not a user defined paper, but just the standard, so that the printer doesn't stops asking the user? I didn't found the right option in the docs. Thanks Tiemo _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode From richmondmathewson at gmail.com Mon Aug 7 09:38:10 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Mon, 7 Aug 2017 16:38:10 +0300 Subject: Find & Replace Message-ID: <005fddd2-68a7-b531-eb30-8ddfb2fc487f@gmail.com> This is ludicrous! A tiny, wee window that does not even have room in the menu buttons for the text that, having searched does NOT replace. BUG 20244 Because this does not function this costs me about 60 minutes everytime I convert a DEMO into a fully-functional version, Richmond. From richmondmathewson at gmail.com Mon Aug 7 09:52:42 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Mon, 7 Aug 2017 16:52:42 +0300 Subject: Find & Replace In-Reply-To: <005fddd2-68a7-b531-eb30-8ddfb2fc487f@gmail.com> References: <005fddd2-68a7-b531-eb30-8ddfb2fc487f@gmail.com> Message-ID: <6c18dc3e-689e-f521-01c6-43723726d765@gmail.com> Aha: even more ludicrous: 2 competing Find & Replace stacks. For F's sake get rid of the wonky one and make sure that ALL menus get to the one that works! R. On 8/7/17 4:38 pm, Richmond Mathewson wrote: > This is ludicrous! > > A tiny, wee window that does not even have room in the menu buttons > for the text > that, having searched does NOT replace. > > BUG 20244 > > Because this does not function this costs me about 60 minutes > everytime I convert a DEMO > into a fully-functional version, > > Richmond. From bobsneidar at iotecdigital.com Mon Aug 7 10:53:29 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Mon, 7 Aug 2017 14:53:29 +0000 Subject: Taking quotes on building LC external for RethinkDB In-Reply-To: References: <25d7280f-949c-eefb-5c86-e022a43b7e9a@tweedly.net> <68e539d0-3107-2164-1553-80c81ba6f1a4@sonic.net> <02AF5FB2-E0B9-4636-B839-DA1AA7BDEB74@livecode.com> Message-ID: I was thinking the same thing. This isn't a database function per se, it's more like a sockets function. Bob S > On Aug 5, 2017, at 16:42 , Tom Glod via use-livecode wrote: > > If you go to this page ..... the specs say that it all happens through an > tcp/ip connection where you make a connection, serialize the query and > send it .... the db driver port receives queries, and streams data from > the db via the TCP/IP back to "subscribed" client. > > So it doesn't really need to have anything to do with the current > revdatabase functions....which the posts seem to be talking about. I'm not > asking for a rewrite of db layer. From bobsneidar at iotecdigital.com Mon Aug 7 11:00:23 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Mon, 7 Aug 2017 15:00:23 +0000 Subject: How do I specify the papersize name for printing? In-Reply-To: <013601d30f78$87f09720$97d1c560$@kestner.de> References: <012e01d30f69$414dd940$c3e98bc0$@kestner.de> <013601d30f78$87f09720$97d1c560$@kestner.de> Message-ID: <40181E62-74FA-4B91-BDE4-9EE5571A159B@iotecdigital.com> That is an interesting question. Working with copiers, I know that the paper "name" (= size) have to match a built-in "name" in order for the printer to auto-print, otherwise the print job gets redirected to the bypass (manual feed) tray and held until a user hits the Go button. Sone drivers are smart enough to match size with name and send the correct name in the metadata. Some other things that have to match are thickness, coating (glossy, matte, plain etc.) and paper color, all depending on what the device supports. Bob S > On Aug 7, 2017, at 05:27 , Tiemo Hollmann TB via use-livecode wrote: > > One part of my question is answered. If I want to print on the standard > paper, I may not specify the printpapersize, then the printer won't ask for > a user specific paper. > But if I am not sure, which paper is standard on the users printer, I have > to define the size in case I need specific dimensions, but would like to get > the standard paper, if it is "A4" and available. > And what about other paper names? > Tiemo From tom at makeshyft.com Mon Aug 7 11:51:36 2017 From: tom at makeshyft.com (Tom Glod) Date: Mon, 7 Aug 2017 11:51:36 -0400 Subject: Taking quotes on building LC external for RethinkDB In-Reply-To: References: <25d7280f-949c-eefb-5c86-e022a43b7e9a@tweedly.net> <68e539d0-3107-2164-1553-80c81ba6f1a4@sonic.net> <02AF5FB2-E0B9-4636-B839-DA1AA7BDEB74@livecode.com> Message-ID: Hi Richard ..... like Alex said, there is no Rest api for RethinkDB. The folks at RethinkDB didn't want to expose the whole query language using a rest api, (if i recall correctly they said it is too powerful to do so)...so the driver only accepts queries via driver port and streams resulting json and updates back to client. My desktop client will connect to a local database which (will or can be part) of a distributed cluster. On Mon, Aug 7, 2017 at 10:53 AM, Bob Sneidar via use-livecode < use-livecode at lists.runrev.com> wrote: > I was thinking the same thing. This isn't a database function per se, it's > more like a sockets function. > > Bob S > > > > On Aug 5, 2017, at 16:42 , Tom Glod via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > > If you go to this page ..... the specs say that it all happens through an > > tcp/ip connection where you make a connection, serialize the query and > > send it .... the db driver port receives queries, and streams data from > > the db via the TCP/IP back to "subscribed" client. > > > > So it doesn't really need to have anything to do with the current > > revdatabase functions....which the posts seem to be talking about. I'm > not > > asking for a rewrite of db layer. > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From tom at makeshyft.com Mon Aug 7 11:52:54 2017 From: tom at makeshyft.com (Tom Glod) Date: Mon, 7 Aug 2017 11:52:54 -0400 Subject: Taking quotes on building LC external for RethinkDB In-Reply-To: References: <25d7280f-949c-eefb-5c86-e022a43b7e9a@tweedly.net> <68e539d0-3107-2164-1553-80c81ba6f1a4@sonic.net> <02AF5FB2-E0B9-4636-B839-DA1AA7BDEB74@livecode.com> Message-ID: to answer your question, the database cluster will be accepting connections and queries from clients directly. On Mon, Aug 7, 2017 at 11:51 AM, Tom Glod wrote: > Hi Richard ..... like Alex said, there is no Rest api for RethinkDB. The > folks at RethinkDB didn't want to expose the whole query language using a > rest api, (if i recall correctly they said it is too powerful to do > so)...so the driver only accepts queries via driver port and streams > resulting json and updates back to client. > > My desktop client will connect to a local database which (will or can be > part) of a distributed cluster. > > > > > > > > On Mon, Aug 7, 2017 at 10:53 AM, Bob Sneidar via use-livecode < > use-livecode at lists.runrev.com> wrote: > >> I was thinking the same thing. This isn't a database function per se, >> it's more like a sockets function. >> >> Bob S >> >> >> > On Aug 5, 2017, at 16:42 , Tom Glod via use-livecode < >> use-livecode at lists.runrev.com> wrote: >> > >> > If you go to this page ..... the specs say that it all happens through >> an >> > tcp/ip connection where you make a connection, serialize the query and >> > send it .... the db driver port receives queries, and streams data from >> > the db via the TCP/IP back to "subscribed" client. >> > >> > So it doesn't really need to have anything to do with the current >> > revdatabase functions....which the posts seem to be talking about. I'm >> not >> > asking for a rewrite of db layer. >> >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> > > From colinholgate at gmail.com Mon Aug 7 12:13:07 2017 From: colinholgate at gmail.com (Colin Holgate) Date: Mon, 7 Aug 2017 12:13:07 -0400 Subject: [OT] pretty folders Message-ID: <1DEC3C53-D470-4099-A0DB-A32A1E2A6B4F@gmail.com> A marketing email just came in, about a custom folder icon maker. I don?t know what the normal price is, but $3 seems like a good deal, so I bought it. https://itunes.apple.com/us/app/folder-designer/id964860276 From MikeKerner at roadrunner.com Mon Aug 7 12:50:05 2017 From: MikeKerner at roadrunner.com (Mike Kerner) Date: Mon, 7 Aug 2017 12:50:05 -0400 Subject: How do you detect the necessary inclusions? In-Reply-To: <013501d30f73$d370d840$7a5288c0$@kestner.de> References: <005301d30c3f$fb249cf0$f16dd6d0$@kestner.de> <013501d30f73$d370d840$7a5288c0$@kestner.de> Message-ID: So in 8.1.6, if I have search selected, and then I do a build, and then I select manual, the auto-found ones are no longer selected? On Mon, Aug 7, 2017 at 7:53 AM, Tiemo Hollmann TB via use-livecode < use-livecode at lists.runrev.com> wrote: > Thank you for clearifying! > Tiemo > > -----Urspr?ngliche Nachricht----- > Von: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] Im > Auftrag > von panagiotis merakos via use-livecode > Gesendet: Montag, 7. August 2017 12:51 > An: How to use LiveCode > Cc: panagiotis merakos > Betreff: Re: How do you detect the necessary inclusions? > > Hi Tiemo, > > - When you "Search for Inclusions", the standalone builder looks for > keywords in the scripts of your objects, to detect a specific inclusion. > For example if it finds it will > automatically add SQLite in the Inclusions, > > - I think in LC 8 the first time you switch to "Select Inclusions", only > the > "Ask Dialog" and "Answer Dialog" inclusions are chosen. > > >>>>I assume that the inclusion with the "globe icon" is for the > browser widget > Yes, this is correct. > > > >>>> What are the inclusions "browser" (jigsaw icon) and "browser > (CEF)" for? > Those are for the old revBrowser external. So if you use the > "revBrowserOpen" command, you have to include "browser", and if you use the > revBrowserOpenCEF" command you have to include "browser(CEF)" > > Best regards, > Panos > -- > > On Thu, Aug 3, 2017 at 11:05 AM, Tiemo Hollmann TB via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > Hello, > > > > > > > > I think in former times, when you once have choosen "Search for > > required inclusions", LiveCode once has checked all necessary > > inclusion, so that you got an idea for the needed ones, when you > > afterwords wanted to selected them manually (e.g. the automatic didn't > > selected all needed inclusions). > > > > Today in 8.1.5 LC doesn't mark anymore any needed inclusions, after > > having let it search for the required ones. At least the browser > > widget was not checked, though I have an browser widget in my stack. > > How do you handle this to get the right inclusions? > > > > Btw. There are three browser inclusions and I don't know, which one is > > for what purpose. I assume that the inclusion with the "globe icon" is > > for the browser widget, because it has the same icon, but there are 3 > > browser inclusions. What are the inclusions "browser" (jigsaw icon) > > and "browser (CEF)" for? > > > > > > > > Tiemo > > > > > > > > > > > > > > > > _______________________________________________ > > use-livecode mailing list > > use-livecode at lists.runrev.com > > Please visit this url to subscribe, unsubscribe and manage your > > subscription preferences: > > http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription > preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > -- On the first day, God created the heavens and the Earth On the second day, God created the oceans. On the third day, God put the animals on hold for a few hours, and did a little diving. And God said, "This is good." From brahma at hindu.org Mon Aug 7 13:23:36 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Mon, 7 Aug 2017 17:23:36 +0000 Subject: Script Editor Enhancment Variable name columns Message-ID: In de-bug mode, SW variable tab/window/pane at the bottom? I am "forever" having to resize the left column, which typically has relatively short variable name strings it pURL tDF tFolder tPathtem etc. but the algorithm behind the column sizing appear to spit the window. it | someValue pURL | https://www.himalayanacademy.com/media/audio/inspired-talks/?. etc. So the useful info on the right column, the variable values are off screen Would it be good if the left column measure the max sting length of the vars and then "shrank" accordingly it | someValue pURL | https://www.himalayanacademy.com/media/audio/inspired-talks/?. etc. I would prefer that long vars be truncated?. if we step into a handler that has var strings wider than the column. Typically we know what our vars are? what we are watching are the values. Thoughts? BR From richmondmathewson at gmail.com Mon Aug 7 13:42:35 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Mon, 7 Aug 2017 20:42:35 +0300 Subject: Sorting out the sheep from the goats Message-ID: <888b54a2-0e1a-bfd5-0740-1b69d08f5f83@gmail.com> Yes, here's "Mr Sanskrit" asking what is probably a very goofy question indeed: I have a series of long strings of characters such as: LarrygubAndCheesemakemyfeetstink and I would like a happy little routine that could trot along each string and, for each character (and this is ONLY confined to the Latin alphabet, at the moment) tell me (or, more importantly, other scripts) whether it is a VOWEL or a CONSONANT. Of course, having learnt from Mark Waddingham about the effective nature of G & T s, I may end up answering my own e-mail . . . Thanks Mark, I knew you had more to tell me than "just" computer programming :-) Richmond. From warren at warrensweb.us Mon Aug 7 13:46:20 2017 From: warren at warrensweb.us (Warren Samples) Date: Mon, 7 Aug 2017 12:46:20 -0500 Subject: How do you detect the necessary inclusions? In-Reply-To: References: <005301d30c3f$fb249cf0$f16dd6d0$@kestner.de> <013501d30f73$d370d840$7a5288c0$@kestner.de> Message-ID: <8eb100d1-c43b-06e4-5ef4-9e362b1bd5d5@warrensweb.us> On 08/07/2017 11:50 AM, Mike Kerner via use-livecode wrote: > So in 8.1.6, if I have search selected, and then I do a build, and then I > select manual, the auto-found ones are no longer selected? It doesn't seem to work that way, in my experience, if I understand what you're implying. They are selected for inclusion but the boxes are not selected in the dialog. What happens is that you have no visual clue because the two boxes mentioned are selected while the others are not. I complained about this a few days ago and didn't elicit a response. I find this ambiguous and unhelpful and also logically wrong. I could be mistaken to a certain degree, because I was switching back to auto-search. But, you'll notice if you do this that your manual selections are saved and included when they weren't before. Baffling behavior. Warren From tom at makeshyft.com Mon Aug 7 13:48:24 2017 From: tom at makeshyft.com (Tom Glod) Date: Mon, 7 Aug 2017 13:48:24 -0400 Subject: Maximum size of SQLQuery with revDataFromQuery ? In-Reply-To: <32fa3c7089270abfd21f8105e2b24c4a.squirrel@sage.on-rev.com> References: <32fa3c7089270abfd21f8105e2b24c4a.squirrel@sage.on-rev.com> Message-ID: i can't say for sure....but wouldn't the limit be the "size" of a variable in lc? ...and i think you can cram as much into your variable as you want as long as you have the available ram....or you don't hit some OS limit....like the one i love so much in windows. i've done some pretty large select all queries..... and i've never had a problem. On Sun, Aug 6, 2017 at 2:59 PM, jbv via use-livecode < use-livecode at lists.runrev.com> wrote: > Hello > Is there a size limit for the SQLQuery parameter when using > revDataFromQuery ? > I might end up with mySQL queries of at least 75 Kb... > I know the best way to know is to try, but any experience would be > apreciated... > > FYI some of there queries have been tested in PHPmyAdmin and run in 0.0054 > sec; > my concern was rather the buffer size between LC engine and mySQL... > > Thanks in advance. > jbv > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From tore.nilsen at me.com Mon Aug 7 13:51:02 2017 From: tore.nilsen at me.com (Tore Nilsen) Date: Mon, 07 Aug 2017 19:51:02 +0200 Subject: Sorting out the sheep from the goats In-Reply-To: <888b54a2-0e1a-bfd5-0740-1b69d08f5f83@gmail.com> References: <888b54a2-0e1a-bfd5-0740-1b69d08f5f83@gmail.com> Message-ID: <450288F1-1CCE-42B8-BDC6-82B4ABEEFAEE@me.com> I do not think that vowels are automatically detected, so you need to put the chars representing vowel sounds into a variabel tVowels . Run a repeat for each char tChar of the string and check if tChar is in tVowels, like this (using Norwegian vowels as an example) put ?aeioy???? into tVowels repeat for each char tChar in tString if tChar is in tVowels then add 1 to tNumberOfVowels end if answer tNumberOfVowels end repeat Regards Tore > 7. aug. 2017 kl. 19:42 skrev Richmond Mathewson via use-livecode : > > Yes, here's "Mr Sanskrit" asking what is probably a very goofy question indeed: > > I have a series of long strings of characters such as: > > LarrygubAndCheesemakemyfeetstink > > and I would like a happy little routine that could trot along each string and, for each character (and this is ONLY confined > to the Latin alphabet, at the moment) tell me (or, more importantly, other scripts) whether it is a VOWEL or a CONSONANT. > > Of course, having learnt from Mark Waddingham about the effective nature of G & T s, I may end up answering my own e-mail . . . > > Thanks Mark, I knew you had more to tell me than "just" computer programming :-) > > Richmond. > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From bonnmike at gmail.com Mon Aug 7 13:52:14 2017 From: bonnmike at gmail.com (Mike Bonner) Date: Mon, 7 Aug 2017 11:52:14 -0600 Subject: Sorting out the sheep from the goats In-Reply-To: <888b54a2-0e1a-bfd5-0740-1b69d08f5f83@gmail.com> References: <888b54a2-0e1a-bfd5-0740-1b69d08f5f83@gmail.com> Message-ID: Repeat for each char tchar intVar if tChar is among the items of "a,e,i,o,u" then -- its a vowel else -- its not a vowel. end if end repeat On Mon, Aug 7, 2017 at 11:42 AM, Richmond Mathewson via use-livecode < use-livecode at lists.runrev.com> wrote: > Yes, here's "Mr Sanskrit" asking what is probably a very goofy question > indeed: > > I have a series of long strings of characters such as: > > LarrygubAndCheesemakemyfeetstink > > and I would like a happy little routine that could trot along each string > and, for each character (and this is ONLY confined > to the Latin alphabet, at the moment) tell me (or, more importantly, other > scripts) whether it is a VOWEL or a CONSONANT. > > Of course, having learnt from Mark Waddingham about the effective nature > of G & T s, I may end up answering my own e-mail . . . > > Thanks Mark, I knew you had more to tell me than "just" computer > programming :-) > > Richmond. > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From bonnmike at gmail.com Mon Aug 7 13:52:44 2017 From: bonnmike at gmail.com (Mike Bonner) Date: Mon, 7 Aug 2017 11:52:44 -0600 Subject: Sorting out the sheep from the goats In-Reply-To: References: <888b54a2-0e1a-bfd5-0740-1b69d08f5f83@gmail.com> Message-ID: typo, first line should be repeat for each char tChar in tVar -- where tvar has your string On Mon, Aug 7, 2017 at 11:52 AM, Mike Bonner wrote: > Repeat for each char tchar intVar > if tChar is among the items of "a,e,i,o,u" then > -- its a vowel > else > -- its not a vowel. > end if > > end repeat > > On Mon, Aug 7, 2017 at 11:42 AM, Richmond Mathewson via use-livecode < > use-livecode at lists.runrev.com> wrote: > >> Yes, here's "Mr Sanskrit" asking what is probably a very goofy question >> indeed: >> >> I have a series of long strings of characters such as: >> >> LarrygubAndCheesemakemyfeetstink >> >> and I would like a happy little routine that could trot along each string >> and, for each character (and this is ONLY confined >> to the Latin alphabet, at the moment) tell me (or, more importantly, >> other scripts) whether it is a VOWEL or a CONSONANT. >> >> Of course, having learnt from Mark Waddingham about the effective nature >> of G & T s, I may end up answering my own e-mail . . . >> >> Thanks Mark, I knew you had more to tell me than "just" computer >> programming :-) >> >> Richmond. >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> > > From richmondmathewson at gmail.com Mon Aug 7 13:56:50 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Mon, 7 Aug 2017 20:56:50 +0300 Subject: Sorting out the sheep from the goats In-Reply-To: References: <888b54a2-0e1a-bfd5-0740-1b69d08f5f83@gmail.com> Message-ID: <637faa17-1c0e-9e07-7634-53afcb565df9@gmail.com> Thanks Tore and Mike. Richmond. On 8/7/17 8:52 pm, Mike Bonner via use-livecode wrote: > typo, first line should be > repeat for each char tChar in tVar -- where tvar has your string > > On Mon, Aug 7, 2017 at 11:52 AM, Mike Bonner wrote: > >> Repeat for each char tchar intVar >> if tChar is among the items of "a,e,i,o,u" then >> -- its a vowel >> else >> -- its not a vowel. >> end if >> >> end repeat >> >> On Mon, Aug 7, 2017 at 11:42 AM, Richmond Mathewson via use-livecode < >> use-livecode at lists.runrev.com> wrote: >> >>> Yes, here's "Mr Sanskrit" asking what is probably a very goofy question >>> indeed: >>> >>> I have a series of long strings of characters such as: >>> >>> LarrygubAndCheesemakemyfeetstink >>> >>> and I would like a happy little routine that could trot along each string >>> and, for each character (and this is ONLY confined >>> to the Latin alphabet, at the moment) tell me (or, more importantly, >>> other scripts) whether it is a VOWEL or a CONSONANT. >>> >>> Of course, having learnt from Mark Waddingham about the effective nature >>> of G & T s, I may end up answering my own e-mail . . . >>> >>> Thanks Mark, I knew you had more to tell me than "just" computer >>> programming :-) >>> >>> Richmond. >>> _______________________________________________ >>> use-livecode mailing list >>> use-livecode at lists.runrev.com >>> Please visit this url to subscribe, unsubscribe and manage your >>> subscription preferences: >>> http://lists.runrev.com/mailman/listinfo/use-livecode >>> >> > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From brahma at hindu.org Mon Aug 7 13:57:04 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Mon, 7 Aug 2017 17:57:04 +0000 Subject: Recursive folder creation Message-ID: <8C837867-3054-45FA-BEB7-E1D3E6B11958@hindu.org> Attempts to create a subfolder below a folder that does not exists fail. Where folder "nature" exists but folder "2017" does not, attempt to create folder "birds" below 2017 fail. put specialFolderPath["Documents"] into tDF # "/media/audio/nature" #these folders exist # /2017/birds" # does not, yet. put tDF & "/media/audio/nature/2017/birds" into tFolder create folder tFolder put the result "can't create that directory" OK so? if I remove the "/2017" from my test path string and run it? we get the folder created as expected, where the new folder is a subfolder of an already existing folder. Ok so this all makes perfect sense, but before I go looping thru the path to check for existence of each folder in the hierarchy and creating it if I does not exist. I was wondering 1) am I missing something or is this just expected behavior and 2) Does it make sense to ask for an enhancement request for the engine to recursively create folders for a path where itemdel "/" and items -1,-2,-3 (sub folders) do not exist? on unix cp --parents 'a/b/c' 'audio/nature' # will do this job? and you get audio/nature/a/b/c on disk so I suppose one could resort to shell but this is not available on mobile. Hence the engine enhancement request. meanwhile back to writing a repeat loop to check on sub folder and create on the fly. From all I'm seeing the CPUs of all phones of all grades hardly have an issue, bencemark wise with this kind of processing? all the "trouble" is at the rendering layer. From beta test reports where some rather snakey code is executed equally fast on all phones, but not anything having to do with pixels?e.g. fetch, process and assemble data to push to 100 sub-groups of a big scrolling group? wink of an eye? actually build and layout the sub-groups in the UI and display: slow as molasses on android. BR From richmondmathewson at gmail.com Mon Aug 7 14:01:07 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Mon, 7 Aug 2017 21:01:07 +0300 Subject: Recursive folder creation In-Reply-To: <8C837867-3054-45FA-BEB7-E1D3E6B11958@hindu.org> References: <8C837867-3054-45FA-BEB7-E1D3E6B11958@hindu.org> Message-ID: <0b50abe5-3985-d2a2-a786-9cacd4d8d3e3@gmail.com> Well, lazy types like me would just create the folder "2017" followed by the folder "birds". Richmond. On 8/7/17 8:57 pm, Sannyasin Brahmanathaswami via use-livecode wrote: > Attempts to create a subfolder below a folder that does not exists fail. > > Where folder "nature" exists but folder "2017" does not, attempt to create folder "birds" below 2017 fail. > > put specialFolderPath["Documents"] into tDF > > # "/media/audio/nature" #these folders exist > # /2017/birds" # does not, yet. > > put tDF & "/media/audio/nature/2017/birds" into tFolder > > create folder tFolder > put the result > > "can't create that directory" > > OK so? if I remove the "/2017" from my test path string and run it? we get the folder created as expected, where the new folder is a subfolder of an already existing folder. > > Ok so this all makes perfect sense, but before I go looping thru the path to check for existence of each folder in the hierarchy and creating it if I does not exist. I was wondering > > 1) am I missing something or is this just expected behavior > > and > > 2) Does it make sense to ask for an enhancement request for the engine to recursively create folders for a path where itemdel "/" and items -1,-2,-3 (sub folders) do not exist? > > on unix > > cp --parents 'a/b/c' 'audio/nature' > > # will do this job? and you get > > audio/nature/a/b/c > > on disk > > so I suppose one could resort to shell but this is not available on mobile. Hence the engine enhancement request. > > meanwhile back to writing a repeat loop to check on sub folder and create on the fly. From all I'm seeing the CPUs of all phones of all grades hardly have an issue, bencemark wise with this kind of processing? all the "trouble" is at the rendering layer. From beta test reports where some rather snakey code is executed equally fast on all phones, but not anything having to do with pixels?e.g. fetch, process and assemble data to push to 100 sub-groups of a big scrolling group? wink of an eye? actually build and layout the sub-groups in the UI and display: slow as molasses on android. > > BR > > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From tore.nilsen at me.com Mon Aug 7 14:04:54 2017 From: tore.nilsen at me.com (Tore Nilsen) Date: Mon, 07 Aug 2017 20:04:54 +0200 Subject: Recursive folder creation In-Reply-To: <8C837867-3054-45FA-BEB7-E1D3E6B11958@hindu.org> References: <8C837867-3054-45FA-BEB7-E1D3E6B11958@hindu.org> Message-ID: <5925DD67-D29A-4D4A-AE10-0BAB46426754@me.com> You can only create one folder at a time. You can not create nested folders in one go. So you need to do like this put tDF & "/media/audio/nature/2017/" into tFolder create folder tFolder put ?birds? after tFolder create folder tFolder Regards Tore > > 7. aug. 2017 kl. 19:57 skrev Sannyasin Brahmanathaswami via use-livecode : > > Attempts to create a subfolder below a folder that does not exists fail. > > Where folder "nature" exists but folder "2017" does not, attempt to create folder "birds" below 2017 fail. > > put specialFolderPath["Documents"] into tDF > > # "/media/audio/nature" #these folders exist > # /2017/birds" # does not, yet. > > put tDF & "/media/audio/nature/2017/birds" into tFolder > > create folder tFolder > put the result > > "can't create that directory" > > OK so? if I remove the "/2017" from my test path string and run it? we get the folder created as expected, where the new folder is a subfolder of an already existing folder. > > Ok so this all makes perfect sense, but before I go looping thru the path to check for existence of each folder in the hierarchy and creating it if I does not exist. I was wondering > > 1) am I missing something or is this just expected behavior > > and > > 2) Does it make sense to ask for an enhancement request for the engine to recursively create folders for a path where itemdel "/" and items -1,-2,-3 (sub folders) do not exist? > > on unix > > cp --parents 'a/b/c' 'audio/nature' > > # will do this job? and you get > > audio/nature/a/b/c > > on disk > > so I suppose one could resort to shell but this is not available on mobile. Hence the engine enhancement request. > > meanwhile back to writing a repeat loop to check on sub folder and create on the fly. From all I'm seeing the CPUs of all phones of all grades hardly have an issue, bencemark wise with this kind of processing? all the "trouble" is at the rendering layer. From beta test reports where some rather snakey code is executed equally fast on all phones, but not anything having to do with pixels?e.g. fetch, process and assemble data to push to 100 sub-groups of a big scrolling group? wink of an eye? actually build and layout the sub-groups in the UI and display: slow as molasses on android. > > BR > > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From tore.nilsen at me.com Mon Aug 7 14:14:42 2017 From: tore.nilsen at me.com (Tore Nilsen) Date: Mon, 07 Aug 2017 20:14:42 +0200 Subject: Recursive folder creation In-Reply-To: <8C837867-3054-45FA-BEB7-E1D3E6B11958@hindu.org> References: <8C837867-3054-45FA-BEB7-E1D3E6B11958@hindu.org> Message-ID: <2A181021-EAD1-42AB-8406-789A180134B6@me.com> +1 Tore > 7. aug. 2017 kl. 19:57 skrev Sannyasin Brahmanathaswami via use-livecode >: > > 2) Does it make sense to ask for an enhancement request for the engine to recursively create folders for a path where itemdel "/" and items -1,-2,-3 (sub folders) do not exist? From brian at milby7.com Mon Aug 7 14:18:03 2017 From: brian at milby7.com (Brian Milby) Date: Mon, 7 Aug 2017 13:18:03 -0500 Subject: Recursive folder creation Message-ID: Check out _revSBEnsureFolder in revSBLibrary for example code that does this. > > On Aug 7, 2017 at 12:57 PM, wrote: > > > > Attempts to create a subfolder below a folder that does not exists fail. Where folder "nature" exists but folder "2017" does not, attempt to create folder "birds" below 2017 fail. put specialFolderPath["Documents"] into tDF # "/media/audio/nature" #these folders exist # /2017/birds" # does not, yet. put tDF & "/media/audio/nature/2017/birds" into tFolder create folder tFolder put the result "can't create that directory" OK so? if I remove the "/2017" from my test path string and run it? we get the folder created as expected, where the new folder is a subfolder of an already existing folder. Ok so this all makes perfect sense, but before I go looping thru the path to check for existence of each folder in the hierarchy and creating it if I does not exist. I was wondering 1) am I missing something or is this just expected behavior and 2) Does it make sense to ask for an enhancement request for the engine to recursively create folders for a path where itemdel "/" and items -1,-2,-3 (sub folders) do not exist? on unix cp --parents 'a/b/c' 'audio/nature' # will do this job? and you get audio/nature/a/b/c on disk so I suppose one could resort to shell but this is not available on mobile. Hence the engine enhancement request. meanwhile back to writing a repeat loop to check on sub folder and create on the fly. From all I'm seeing the CPUs of all phones of all grades hardly have an issue, bencemark wise with this kind of processing? all the "trouble" is at the rendering layer. From beta test reports where some rather snakey code is executed equally fast on all phones, but not anything having to do with pixels?e.g. fetch, process and assemble data to push to 100 sub-groups of a big scrolling group? wink of an eye? actually build and layout the sub-groups in the UI and display: slow as molasses on android. BR _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode > > From tore.nilsen at me.com Mon Aug 7 14:40:32 2017 From: tore.nilsen at me.com (Tore Nilsen) Date: Mon, 07 Aug 2017 20:40:32 +0200 Subject: Recursive folder creation In-Reply-To: <8C837867-3054-45FA-BEB7-E1D3E6B11958@hindu.org> References: <8C837867-3054-45FA-BEB7-E1D3E6B11958@hindu.org> Message-ID: <6EDA94F7-FA9A-4501-A422-4896A113669F@me.com> Since we do not need to check whether a folder exists or not before creating it as LiveCode will not create duplicate folders, here is a script that will create nested folders: on mouseUp put specialFolderPath("desktop")& "/testFolder/testOne/test/result" into tFolder set the itemDel to "/" repeat with i = 1 to the number of items of tFolder put item 1 to i of tFolder into tFolderToCreate create folder tFolderToCreate end repeat end mouseUp Regards Tore > 7. aug. 2017 kl. 19:57 skrev Sannyasin Brahmanathaswami via use-livecode : > > 2) Does it make sense to ask for an enhancement request for the engine to recursively create folders for a path where itemdel "/" and items -1,-2,-3 (sub folders) do not exist? From bobsneidar at iotecdigital.com Mon Aug 7 14:45:30 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Mon, 7 Aug 2017 18:45:30 +0000 Subject: Maximum size of SQLQuery with revDataFromQuery ? In-Reply-To: References: <32fa3c7089270abfd21f8105e2b24c4a.squirrel@sage.on-rev.com> Message-ID: <3DEC0979-2C43-4835-A3F7-EAF5BBCDC3D5@iotecdigital.com> Query return data is more of a performance issue. The whole point to SQL is efficient data access, and a great deal of time is spend when teaching SQL on designing databases around that concept. It's one thing if you have columns with large blobs, but if you are talking about returning large datasets with lots of records, it may be a design issue. You may want to consider creating some SQL functions that process the data on the server itself instead of having LC do the processing. That being said, it is possible to "page" through the SQL data by using OFFSET and LIMIT. Just keep track of the offset, set the limit to something like 1000, and page your data in and store it as you see fit. Bob S > On Aug 7, 2017, at 10:48 , Tom Glod via use-livecode wrote: > > i can't say for sure....but wouldn't the limit be the "size" of a variable > in lc? ...and i think you can cram as much into your variable as you want > as long as you have the available ram....or you don't hit some OS > limit....like the one i love so much in windows. > > i've done some pretty large select all queries..... and i've never had a > problem. > > On Sun, Aug 6, 2017 at 2:59 PM, jbv via use-livecode < > use-livecode at lists.runrev.com> wrote: > >> Hello >> Is there a size limit for the SQLQuery parameter when using >> revDataFromQuery ? >> I might end up with mySQL queries of at least 75 Kb... >> I know the best way to know is to try, but any experience would be >> apreciated... >> >> FYI some of there queries have been tested in PHPmyAdmin and run in 0.0054 >> sec; >> my concern was rather the buffer size between LC engine and mySQL... >> >> Thanks in advance. >> jbv From hh at hyperhh.de Mon Aug 7 15:12:22 2017 From: hh at hyperhh.de (hh) Date: Mon, 7 Aug 2017 21:12:22 +0200 Subject: Recursive folder creation Message-ID: <797AFAB0-C8E4-4D52-B73A-4909C253B287@hyperhh.de> > Brian wrote: > Check out _revSBEnsureFolder in revSBLibrary for example code that does this. Brian, WOW! This is great insight! on mouseUp put "/Users/admin/Documents/brian3/showed/us/the/trick/of/marcus/" into ff call "revSBEnsureFolder ff" of stack "revSBLibrary" launch document ff end mouseUp > Tore wrote: > on mouseUp > put specialFolderPath("desktop")& "/testFolder/testOne/test/result" into tFolder > set the itemDel to "/" > repeat with i = 1 to the number of items of tFolder > put item 1 to i of tFolder into tFolderToCreate > create folder tFolderToCreate > end repeat > end mouseUp Clever, Tore. From MikeKerner at roadrunner.com Mon Aug 7 15:28:25 2017 From: MikeKerner at roadrunner.com (Mike Kerner) Date: Mon, 7 Aug 2017 15:28:25 -0400 Subject: Sorting out the sheep from the goats In-Reply-To: <637faa17-1c0e-9e07-7634-53afcb565df9@gmail.com> References: <888b54a2-0e1a-bfd5-0740-1b69d08f5f83@gmail.com> <637faa17-1c0e-9e07-7634-53afcb565df9@gmail.com> Message-ID: I think you have an error in your code samples. Your vowel set should be "aeiouandsometimesy" On Mon, Aug 7, 2017 at 1:56 PM, Richmond Mathewson via use-livecode < use-livecode at lists.runrev.com> wrote: > Thanks Tore and Mike. > > Richmond. > > > On 8/7/17 8:52 pm, Mike Bonner via use-livecode wrote: > >> typo, first line should be >> repeat for each char tChar in tVar -- where tvar has your string >> >> On Mon, Aug 7, 2017 at 11:52 AM, Mike Bonner wrote: >> >> Repeat for each char tchar intVar >>> if tChar is among the items of "a,e,i,o,u" then >>> -- its a vowel >>> else >>> -- its not a vowel. >>> end if >>> >>> end repeat >>> >>> On Mon, Aug 7, 2017 at 11:42 AM, Richmond Mathewson via use-livecode < >>> use-livecode at lists.runrev.com> wrote: >>> >>> Yes, here's "Mr Sanskrit" asking what is probably a very goofy question >>>> indeed: >>>> >>>> I have a series of long strings of characters such as: >>>> >>>> LarrygubAndCheesemakemyfeetstink >>>> >>>> and I would like a happy little routine that could trot along each >>>> string >>>> and, for each character (and this is ONLY confined >>>> to the Latin alphabet, at the moment) tell me (or, more importantly, >>>> other scripts) whether it is a VOWEL or a CONSONANT. >>>> >>>> Of course, having learnt from Mark Waddingham about the effective nature >>>> of G & T s, I may end up answering my own e-mail . . . >>>> >>>> Thanks Mark, I knew you had more to tell me than "just" computer >>>> programming :-) >>>> >>>> Richmond. >>>> _______________________________________________ >>>> use-livecode mailing list >>>> use-livecode at lists.runrev.com >>>> Please visit this url to subscribe, unsubscribe and manage your >>>> subscription preferences: >>>> http://lists.runrev.com/mailman/listinfo/use-livecode >>>> >>>> >>> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > -- On the first day, God created the heavens and the Earth On the second day, God created the oceans. On the third day, God put the animals on hold for a few hours, and did a little diving. And God said, "This is good." From brahma at hindu.org Mon Aug 7 15:57:37 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Mon, 7 Aug 2017 19:57:37 +0000 Subject: Recursive folder creation In-Reply-To: <6EDA94F7-FA9A-4501-A422-4896A113669F@me.com> References: <8C837867-3054-45FA-BEB7-E1D3E6B11958@hindu.org> <6EDA94F7-FA9A-4501-A422-4896A113669F@me.com> Message-ID: <3EF276A4-B394-4301-985D-FE8E8E0CB171@hindu.org> I just came to this myself before coming back here put item -1 of pURL into tFile put item 1 to -2 of pURL into tFolder put tDF &"/" & tFolder into tCompletePath # loop to create sub folders # Of course we know tDF exists, # but we don't know about any folder after that repeat for each item x in tFolder put "/" & x after tNextFolder put tDF & tNextFolder into tSubFolder if there is not a folder tSubFolder then create folder tSubFolder put the result end if end repeat return tCompletePath &"/" & tFile but your function is better BR On 8/7/17, 8:41 AM, "use-livecode on behalf of Tore Nilsen via use-livecode" wrote: Since we do not need to check whether a folder exists or not before creating it as LiveCode will not create duplicate folders, here is a script that will create nested folders: on mouseUp put specialFolderPath("desktop")& "/testFolder/testOne/test/result" into tFolder set the itemDel to "/" repeat with i = 1 to the number of items of tFolder put item 1 to i of tFolder into tFolderToCreate create folder tFolderToCreate end repeat end mouseUp Regards Tore From jonathandlynch at gmail.com Mon Aug 7 16:08:30 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Mon, 7 Aug 2017 16:08:30 -0400 Subject: Sorting out the sheep from the goats In-Reply-To: References: <888b54a2-0e1a-bfd5-0740-1b69d08f5f83@gmail.com> <637faa17-1c0e-9e07-7634-53afcb565df9@gmail.com> Message-ID: <12250FBC-8461-4CDC-9674-5EF989CEB686@gmail.com> And the obscure word "cwm" uses w as a vowel. Sent from my iPhone > On Aug 7, 2017, at 3:28 PM, Mike Kerner via use-livecode wrote: > > I think you have an error in your code samples. Your vowel set should be > "aeiouandsometimesy" > > On Mon, Aug 7, 2017 at 1:56 PM, Richmond Mathewson via use-livecode < > use-livecode at lists.runrev.com> wrote: > >> Thanks Tore and Mike. >> >> Richmond. >> >> >>> On 8/7/17 8:52 pm, Mike Bonner via use-livecode wrote: >>> >>> typo, first line should be >>> repeat for each char tChar in tVar -- where tvar has your string >>> >>> On Mon, Aug 7, 2017 at 11:52 AM, Mike Bonner wrote: >>> >>> Repeat for each char tchar intVar >>>> if tChar is among the items of "a,e,i,o,u" then >>>> -- its a vowel >>>> else >>>> -- its not a vowel. >>>> end if >>>> >>>> end repeat >>>> >>>> On Mon, Aug 7, 2017 at 11:42 AM, Richmond Mathewson via use-livecode < >>>> use-livecode at lists.runrev.com> wrote: >>>> >>>> Yes, here's "Mr Sanskrit" asking what is probably a very goofy question >>>>> indeed: >>>>> >>>>> I have a series of long strings of characters such as: >>>>> >>>>> LarrygubAndCheesemakemyfeetstink >>>>> >>>>> and I would like a happy little routine that could trot along each >>>>> string >>>>> and, for each character (and this is ONLY confined >>>>> to the Latin alphabet, at the moment) tell me (or, more importantly, >>>>> other scripts) whether it is a VOWEL or a CONSONANT. >>>>> >>>>> Of course, having learnt from Mark Waddingham about the effective nature >>>>> of G & T s, I may end up answering my own e-mail . . . >>>>> >>>>> Thanks Mark, I knew you had more to tell me than "just" computer >>>>> programming :-) >>>>> >>>>> Richmond. >>>>> _______________________________________________ >>>>> use-livecode mailing list >>>>> use-livecode at lists.runrev.com >>>>> Please visit this url to subscribe, unsubscribe and manage your >>>>> subscription preferences: >>>>> http://lists.runrev.com/mailman/listinfo/use-livecode >>>>> >>>>> >>>> _______________________________________________ >>> use-livecode mailing list >>> use-livecode at lists.runrev.com >>> Please visit this url to subscribe, unsubscribe and manage your >>> subscription preferences: >>> http://lists.runrev.com/mailman/listinfo/use-livecode >>> >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> > > > > -- > On the first day, God created the heavens and the Earth > On the second day, God created the oceans. > On the third day, God put the animals on hold for a few hours, > and did a little diving. > And God said, "This is good." > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From bobsneidar at iotecdigital.com Mon Aug 7 16:10:54 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Mon, 7 Aug 2017 20:10:54 +0000 Subject: Recursive folder creation In-Reply-To: <797AFAB0-C8E4-4D52-B73A-4909C253B287@hyperhh.de> References: <797AFAB0-C8E4-4D52-B73A-4909C253B287@hyperhh.de> Message-ID: <9A93BA12-A65E-436E-97E2-1CF0F1215F28@iotecdigital.com> Wha??? I didn't know this existed. I have a need for that too! I use a repeat loop to do this. I suppose that is what this function does as well. Bob S > On Aug 7, 2017, at 12:12 , hh via use-livecode wrote: > >> Brian wrote: >> Check out _revSBEnsureFolder in revSBLibrary for example code that does this. > > Brian, WOW! This is great insight! > > on mouseUp > put "/Users/admin/Documents/brian3/showed/us/the/trick/of/marcus/" into ff > call "revSBEnsureFolder ff" of stack "revSBLibrary" > launch document ff > end mouseUp From rdimola at evergreeninfo.net Mon Aug 7 16:11:21 2017 From: rdimola at evergreeninfo.net (Ralph DiMola) Date: Mon, 7 Aug 2017 16:11:21 -0400 Subject: Sorting out the sheep from the goats In-Reply-To: <12250FBC-8461-4CDC-9674-5EF989CEB686@gmail.com> References: <888b54a2-0e1a-bfd5-0740-1b69d08f5f83@gmail.com> <637faa17-1c0e-9e07-7634-53afcb565df9@gmail.com> <12250FBC-8461-4CDC-9674-5EF989CEB686@gmail.com> Message-ID: <007d01d30fb9$564d4fb0$02e7ef10$@net> Jonathan, I can't wait to use that one in scrabble against Margaret! Thanks... Ralph DiMola IT Director Evergreen Information Services rdimola at evergreeninfo.net -----Original Message----- From: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] On Behalf Of Jonathan Lynch via use-livecode Sent: Monday, August 07, 2017 4:09 PM To: How to use LiveCode Cc: jonathandlynch at gmail.com Subject: Re: Sorting out the sheep from the goats And the obscure word "cwm" uses w as a vowel. Sent from my iPhone > On Aug 7, 2017, at 3:28 PM, Mike Kerner via use-livecode wrote: > > I think you have an error in your code samples. Your vowel set should > be "aeiouandsometimesy" > > On Mon, Aug 7, 2017 at 1:56 PM, Richmond Mathewson via use-livecode < > use-livecode at lists.runrev.com> wrote: > >> Thanks Tore and Mike. >> >> Richmond. >> >> >>> On 8/7/17 8:52 pm, Mike Bonner via use-livecode wrote: >>> >>> typo, first line should be >>> repeat for each char tChar in tVar -- where tvar has your string >>> >>> On Mon, Aug 7, 2017 at 11:52 AM, Mike Bonner wrote: >>> >>> Repeat for each char tchar intVar >>>> if tChar is among the items of "a,e,i,o,u" then >>>> -- its a vowel >>>> else >>>> -- its not a vowel. >>>> end if >>>> >>>> end repeat >>>> >>>> On Mon, Aug 7, 2017 at 11:42 AM, Richmond Mathewson via >>>> use-livecode < use-livecode at lists.runrev.com> wrote: >>>> >>>> Yes, here's "Mr Sanskrit" asking what is probably a very goofy >>>> question >>>>> indeed: >>>>> >>>>> I have a series of long strings of characters such as: >>>>> >>>>> LarrygubAndCheesemakemyfeetstink >>>>> >>>>> and I would like a happy little routine that could trot along each >>>>> string and, for each character (and this is ONLY confined to the >>>>> Latin alphabet, at the moment) tell me (or, more importantly, >>>>> other scripts) whether it is a VOWEL or a CONSONANT. >>>>> >>>>> Of course, having learnt from Mark Waddingham about the effective >>>>> nature of G & T s, I may end up answering my own e-mail . . . >>>>> >>>>> Thanks Mark, I knew you had more to tell me than "just" computer >>>>> programming :-) >>>>> >>>>> Richmond. >>>>> _______________________________________________ >>>>> use-livecode mailing list >>>>> use-livecode at lists.runrev.com >>>>> Please visit this url to subscribe, unsubscribe and manage your >>>>> subscription preferences: >>>>> http://lists.runrev.com/mailman/listinfo/use-livecode >>>>> >>>>> >>>> _______________________________________________ >>> use-livecode mailing list >>> use-livecode at lists.runrev.com >>> Please visit this url to subscribe, unsubscribe and manage your >>> subscription preferences: >>> http://lists.runrev.com/mailman/listinfo/use-livecode >>> >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> > > > > -- > On the first day, God created the heavens and the Earth On the second > day, God created the oceans. > On the third day, God put the animals on hold for a few hours, > and did a little diving. > And God said, "This is good." > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode From richmondmathewson at gmail.com Mon Aug 7 16:14:58 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Mon, 7 Aug 2017 23:14:58 +0300 Subject: Sorting out the sheep from the goats In-Reply-To: <12250FBC-8461-4CDC-9674-5EF989CEB686@gmail.com> References: <888b54a2-0e1a-bfd5-0740-1b69d08f5f83@gmail.com> <637faa17-1c0e-9e07-7634-53afcb565df9@gmail.com> <12250FBC-8461-4CDC-9674-5EF989CEB686@gmail.com> Message-ID: Cwm is Welsh; in English it is spelt "combe". On Aug 7, 2017 11:08 PM, "Jonathan Lynch via use-livecode" < use-livecode at lists.runrev.com> wrote: > And the obscure word "cwm" uses w as a vowel. > > Sent from my iPhone > > > On Aug 7, 2017, at 3:28 PM, Mike Kerner via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > > I think you have an error in your code samples. Your vowel set should be > > "aeiouandsometimesy" > > > > On Mon, Aug 7, 2017 at 1:56 PM, Richmond Mathewson via use-livecode < > > use-livecode at lists.runrev.com> wrote: > > > >> Thanks Tore and Mike. > >> > >> Richmond. > >> > >> > >>> On 8/7/17 8:52 pm, Mike Bonner via use-livecode wrote: > >>> > >>> typo, first line should be > >>> repeat for each char tChar in tVar -- where tvar has your string > >>> > >>> On Mon, Aug 7, 2017 at 11:52 AM, Mike Bonner > wrote: > >>> > >>> Repeat for each char tchar intVar > >>>> if tChar is among the items of "a,e,i,o,u" then > >>>> -- its a vowel > >>>> else > >>>> -- its not a vowel. > >>>> end if > >>>> > >>>> end repeat > >>>> > >>>> On Mon, Aug 7, 2017 at 11:42 AM, Richmond Mathewson via use-livecode < > >>>> use-livecode at lists.runrev.com> wrote: > >>>> > >>>> Yes, here's "Mr Sanskrit" asking what is probably a very goofy > question > >>>>> indeed: > >>>>> > >>>>> I have a series of long strings of characters such as: > >>>>> > >>>>> LarrygubAndCheesemakemyfeetstink > >>>>> > >>>>> and I would like a happy little routine that could trot along each > >>>>> string > >>>>> and, for each character (and this is ONLY confined > >>>>> to the Latin alphabet, at the moment) tell me (or, more importantly, > >>>>> other scripts) whether it is a VOWEL or a CONSONANT. > >>>>> > >>>>> Of course, having learnt from Mark Waddingham about the effective > nature > >>>>> of G & T s, I may end up answering my own e-mail . . . > >>>>> > >>>>> Thanks Mark, I knew you had more to tell me than "just" computer > >>>>> programming :-) > >>>>> > >>>>> Richmond. > >>>>> _______________________________________________ > >>>>> use-livecode mailing list > >>>>> use-livecode at lists.runrev.com > >>>>> Please visit this url to subscribe, unsubscribe and manage your > >>>>> subscription preferences: > >>>>> http://lists.runrev.com/mailman/listinfo/use-livecode > >>>>> > >>>>> > >>>> _______________________________________________ > >>> use-livecode mailing list > >>> use-livecode at lists.runrev.com > >>> Please visit this url to subscribe, unsubscribe and manage your > >>> subscription preferences: > >>> http://lists.runrev.com/mailman/listinfo/use-livecode > >>> > >> > >> _______________________________________________ > >> use-livecode mailing list > >> use-livecode at lists.runrev.com > >> Please visit this url to subscribe, unsubscribe and manage your > >> subscription preferences: > >> http://lists.runrev.com/mailman/listinfo/use-livecode > >> > > > > > > > > -- > > On the first day, God created the heavens and the Earth > > On the second day, God created the oceans. > > On the third day, God put the animals on hold for a few hours, > > and did a little diving. > > And God said, "This is good." > > _______________________________________________ > > use-livecode mailing list > > use-livecode at lists.runrev.com > > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > > http://lists.runrev.com/mailman/listinfo/use-livecode > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From jerry at jhjensen.com Mon Aug 7 16:24:52 2017 From: jerry at jhjensen.com (Jerry Jensen) Date: Mon, 7 Aug 2017 13:24:52 -0700 Subject: Sorting out the sheep from the goats In-Reply-To: <12250FBC-8461-4CDC-9674-5EF989CEB686@gmail.com> References: <888b54a2-0e1a-bfd5-0740-1b69d08f5f83@gmail.com> <637faa17-1c0e-9e07-7634-53afcb565df9@gmail.com> <12250FBC-8461-4CDC-9674-5EF989CEB686@gmail.com> Message-ID: <0034F1AD-FC0F-4FDD-AFBA-6EB77736613F@jhjensen.com> And the musical instrument the crwth. > On Aug 7, 2017, at 1:08 PM, Jonathan Lynch via use-livecode wrote: > > And the obscure word "cwm" uses w as a vowel. > > Sent from my iPhone > >> On Aug 7, 2017, at 3:28 PM, Mike Kerner via use-livecode wrote: >> >> I think you have an error in your code samples. Your vowel set should be >> ?aeiouandsometimesy" From mark at livecode.com Mon Aug 7 16:26:46 2017 From: mark at livecode.com (Mark Waddingham) Date: Mon, 7 Aug 2017 21:26:46 +0100 Subject: Maximum size of SQLQuery with revDataFromQuery ? In-Reply-To: <3DEC0979-2C43-4835-A3F7-EAF5BBCDC3D5@iotecdigital.com> References: <32fa3c7089270abfd21f8105e2b24c4a.squirrel@sage.on-rev.com> <3DEC0979-2C43-4835-A3F7-EAF5BBCDC3D5@iotecdigital.com> Message-ID: Also using the query functions which allow iteration over the result set will minimise data transfer at any one point in time (assuming it's a decent client driver). Warmest Regards, Mark. Sent from my iPhone > On 7 Aug 2017, at 19:45, Bob Sneidar via use-livecode wrote: > > Query return data is more of a performance issue. The whole point to SQL is efficient data access, and a great deal of time is spend when teaching SQL on designing databases around that concept. > > It's one thing if you have columns with large blobs, but if you are talking about returning large datasets with lots of records, it may be a design issue. You may want to consider creating some SQL functions that process the data on the server itself instead of having LC do the processing. > > That being said, it is possible to "page" through the SQL data by using OFFSET and LIMIT. Just keep track of the offset, set the limit to something like 1000, and page your data in and store it as you see fit. > > Bob S > > >> On Aug 7, 2017, at 10:48 , Tom Glod via use-livecode wrote: >> >> i can't say for sure....but wouldn't the limit be the "size" of a variable >> in lc? ...and i think you can cram as much into your variable as you want >> as long as you have the available ram....or you don't hit some OS >> limit....like the one i love so much in windows. >> >> i've done some pretty large select all queries..... and i've never had a >> problem. >> >> On Sun, Aug 6, 2017 at 2:59 PM, jbv via use-livecode < >> use-livecode at lists.runrev.com> wrote: >> >>> Hello >>> Is there a size limit for the SQLQuery parameter when using >>> revDataFromQuery ? >>> I might end up with mySQL queries of at least 75 Kb... >>> I know the best way to know is to try, but any experience would be >>> apreciated... >>> >>> FYI some of there queries have been tested in PHPmyAdmin and run in 0.0054 >>> sec; >>> my concern was rather the buffer size between LC engine and mySQL... >>> >>> Thanks in advance. >>> jbv > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From hh at hyperhh.de Mon Aug 7 16:32:27 2017 From: hh at hyperhh.de (hh) Date: Mon, 7 Aug 2017 22:32:27 +0200 Subject: Recursive folder creation Message-ID: <19DB3433-1FDA-4B97-95D5-D97D30990412@hyperhh.de> > Bob wrote: > Wha??? I didn't know this existed. I have a need for that too! I use > a repeat loop to do this. I suppose that is what this function does as well. Here is it, for a "direct" call, in case revSBLibrary is not available. It does the same as Tore's (and probably your) script but is recursive. # Creates a folder and all parents as required. By Marcus van Houdt. on revSBEnsureFolder pFolder set the itemDel to "/" if there is no folder pFolder and pFolder is not empty then revSBEnsureFolder item 1 to -2 of pFolder if the result is not empty then return the result create folder pFolder return the result end if end revSBEnsureFolder From richmondmathewson at gmail.com Mon Aug 7 18:17:47 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Tue, 8 Aug 2017 01:17:47 +0300 Subject: Sorting out the sheep from the goats In-Reply-To: <0034F1AD-FC0F-4FDD-AFBA-6EB77736613F@jhjensen.com> References: <888b54a2-0e1a-bfd5-0740-1b69d08f5f83@gmail.com> <637faa17-1c0e-9e07-7634-53afcb565df9@gmail.com> <12250FBC-8461-4CDC-9674-5EF989CEB686@gmail.com> <0034F1AD-FC0F-4FDD-AFBA-6EB77736613F@jhjensen.com> Message-ID: <91b0450a-1b84-4d0b-c949-e9230a940a12@gmail.com> Also a Welsh word, NOT an English one. Richmond. On 8/7/17 11:24 pm, Jerry Jensen via use-livecode wrote: > And the musical instrument the crwth. > >> On Aug 7, 2017, at 1:08 PM, Jonathan Lynch via use-livecode wrote: >> >> And the obscure word "cwm" uses w as a vowel. >> >> Sent from my iPhone >> >>> On Aug 7, 2017, at 3:28 PM, Mike Kerner via use-livecode wrote: >>> >>> I think you have an error in your code samples. Your vowel set should be >>> ?aeiouandsometimesy" > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From jerry at jhjensen.com Mon Aug 7 18:22:11 2017 From: jerry at jhjensen.com (Jerry Jensen) Date: Mon, 7 Aug 2017 15:22:11 -0700 Subject: Sorting out the sheep from the goats In-Reply-To: <91b0450a-1b84-4d0b-c949-e9230a940a12@gmail.com> References: <888b54a2-0e1a-bfd5-0740-1b69d08f5f83@gmail.com> <637faa17-1c0e-9e07-7634-53afcb565df9@gmail.com> <12250FBC-8461-4CDC-9674-5EF989CEB686@gmail.com> <0034F1AD-FC0F-4FDD-AFBA-6EB77736613F@jhjensen.com> <91b0450a-1b84-4d0b-c949-e9230a940a12@gmail.com> Message-ID: Ahem, neither is LarrygubAndCheesemakemyfeetstink. > On Aug 7, 2017, at 3:17 PM, Richmond Mathewson via use-livecode wrote: > > Also a Welsh word, NOT an English one. > > Richmond. > > On 8/7/17 11:24 pm, Jerry Jensen via use-livecode wrote: >> And the musical instrument the crwth. >> >>> On Aug 7, 2017, at 1:08 PM, Jonathan Lynch via use-livecode wrote: >>> >>> And the obscure word "cwm" uses w as a vowel. >>> >>> Sent from my iPhone >>> >>>> On Aug 7, 2017, at 3:28 PM, Mike Kerner via use-livecode wrote: >>>> >>>> I think you have an error in your code samples. Your vowel set should be >>>> ?aeiouandsometimesy" >> >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From jonathandlynch at gmail.com Mon Aug 7 18:23:26 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Mon, 7 Aug 2017 18:23:26 -0400 Subject: Sorting out the sheep from the goats In-Reply-To: <91b0450a-1b84-4d0b-c949-e9230a940a12@gmail.com> References: <888b54a2-0e1a-bfd5-0740-1b69d08f5f83@gmail.com> <637faa17-1c0e-9e07-7634-53afcb565df9@gmail.com> <12250FBC-8461-4CDC-9674-5EF989CEB686@gmail.com> <0034F1AD-FC0F-4FDD-AFBA-6EB77736613F@jhjensen.com> <91b0450a-1b84-4d0b-c949-e9230a940a12@gmail.com> Message-ID: Scrabble disagrees. Both words are in mainstream dictionaries as well. They are imported words. I think they are the only two words where W is a vowel. Of course, Scrabble considers zloty, qadi, and qwerty to be words. Sent from my iPhone > On Aug 7, 2017, at 6:17 PM, Richmond Mathewson via use-livecode wrote: > > Also a Welsh word, NOT an English one. > > Richmond. > >> On 8/7/17 11:24 pm, Jerry Jensen via use-livecode wrote: >> And the musical instrument the crwth. >> >>> On Aug 7, 2017, at 1:08 PM, Jonathan Lynch via use-livecode wrote: >>> >>> And the obscure word "cwm" uses w as a vowel. >>> >>> Sent from my iPhone >>> >>>> On Aug 7, 2017, at 3:28 PM, Mike Kerner via use-livecode wrote: >>>> >>>> I think you have an error in your code samples. Your vowel set should be >>>> ?aeiouandsometimesy" >> >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From richmondmathewson at gmail.com Mon Aug 7 18:23:28 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Tue, 8 Aug 2017 01:23:28 +0300 Subject: SORT by length Message-ID: <14e5288f-f9f7-ae63-0135-d61053d0b925@gmail.com> I have a listField containing a number of words which I want to order so the longest comes first . . . doing this: sort lines of fld "myGuff" by length(each) sorts the words, but the shortest one comes first... Richmond. From richmondmathewson at gmail.com Mon Aug 7 18:26:59 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Tue, 8 Aug 2017 01:26:59 +0300 Subject: Sorting out the sheep from the goats In-Reply-To: References: <888b54a2-0e1a-bfd5-0740-1b69d08f5f83@gmail.com> <637faa17-1c0e-9e07-7634-53afcb565df9@gmail.com> <12250FBC-8461-4CDC-9674-5EF989CEB686@gmail.com> <0034F1AD-FC0F-4FDD-AFBA-6EB77736613F@jhjensen.com> <91b0450a-1b84-4d0b-c949-e9230a940a12@gmail.com> Message-ID: <0add22bd-7fec-f7b5-3475-ecdff427a0f3@gmail.com> Wh, Cwme wn that's ridiculwus; everywne knwws that the English fwr "Cwm" is "cwmbe". This is Hwpeless! Richmwnd. On 8/8/17 1:23 am, Jonathan Lynch via use-livecode wrote: > Scrabble disagrees. > > Both words are in mainstream dictionaries as well. They are imported words. I think they are the only two words where W is a vowel. > > Of course, Scrabble considers zloty, qadi, and qwerty to be words. > > Sent from my iPhone > >> On Aug 7, 2017, at 6:17 PM, Richmond Mathewson via use-livecode wrote: >> >> Also a Welsh word, NOT an English one. >> >> Richmond. >> >>> On 8/7/17 11:24 pm, Jerry Jensen via use-livecode wrote: >>> And the musical instrument the crwth. >>> >>>> On Aug 7, 2017, at 1:08 PM, Jonathan Lynch via use-livecode wrote: >>>> >>>> And the obscure word "cwm" uses w as a vowel. >>>> >>>> Sent from my iPhone >>>> >>>>> On Aug 7, 2017, at 3:28 PM, Mike Kerner via use-livecode wrote: >>>>> >>>>> I think you have an error in your code samples. Your vowel set should be >>>>> ?aeiouandsometimesy" >>> >>> _______________________________________________ >>> use-livecode mailing list >>> use-livecode at lists.runrev.com >>> Please visit this url to subscribe, unsubscribe and manage your subscription preferences: >>> http://lists.runrev.com/mailman/listinfo/use-livecode >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From jerry at jhjensen.com Mon Aug 7 18:29:59 2017 From: jerry at jhjensen.com (Jerry Jensen) Date: Mon, 7 Aug 2017 15:29:59 -0700 Subject: SORT by length In-Reply-To: <14e5288f-f9f7-ae63-0135-d61053d0b925@gmail.com> References: <14e5288f-f9f7-ae63-0135-d61053d0b925@gmail.com> Message-ID: <97E969C7-D319-49C6-A58C-18D2FA199557@jhjensen.com> From the dictionary entry for ?sort?: If you don't specify a direction, the sort is ascending. One of the following items: ? ascending -sorts in ascending order ? descending -sorts in descending order > On Aug 7, 2017, at 3:23 PM, Richmond Mathewson via use-livecode wrote: > > I have a listField containing a number of words which I want to order so the longest comes > first . . . > > doing this: > > sort lines of fld "myGuff" by length(each) > > sorts the words, but the shortest one comes first? From richmondmathewson at gmail.com Mon Aug 7 18:36:25 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Tue, 8 Aug 2017 01:36:25 +0300 Subject: SORT by length In-Reply-To: <97E969C7-D319-49C6-A58C-18D2FA199557@jhjensen.com> References: <14e5288f-f9f7-ae63-0135-d61053d0b925@gmail.com> <97E969C7-D319-49C6-A58C-18D2FA199557@jhjensen.com> Message-ID: <00864d0b-b6fd-ec56-3f05-fdd3de72b244@gmail.com> Thanks: that looks remarkably simple. I suppose the "trick" is knowing which word to look up in the Dictionary ;-) Richmond. On 8/8/17 1:29 am, Jerry Jensen via use-livecode wrote: > From the dictionary entry for ?sort?: > If you don't specify a direction, the sort is ascending. > One of the following items: > ? ascending -sorts in ascending order > ? descending -sorts in descending order > >> On Aug 7, 2017, at 3:23 PM, Richmond Mathewson via use-livecode wrote: >> >> I have a listField containing a number of words which I want to order so the longest comes >> first . . . >> >> doing this: >> >> sort lines of fld "myGuff" by length(each) >> >> sorts the words, but the shortest one comes first? > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From richmondmathewson at gmail.com Mon Aug 7 18:42:36 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Tue, 8 Aug 2017 01:42:36 +0300 Subject: SORT by length In-Reply-To: <97E969C7-D319-49C6-A58C-18D2FA199557@jhjensen.com> References: <14e5288f-f9f7-ae63-0135-d61053d0b925@gmail.com> <97E969C7-D319-49C6-A58C-18D2FA199557@jhjensen.com> Message-ID: <7cf4df44-86b4-c70a-37d0-55c4ddc46d60@gmail.com> That scr*wed up badly. I found this: http://forums.livecode.com/viewtopic.php?f=9&t=10505#p48529 and modified it: *on**mouseUp* ** ***put**empty **into**rSortByLength* ** ***put**fld "CL" **into**tText* ** ***repeat****for**each word tLine in tText* ** ***put**tLine&"," &**the****length****of**tLine&**return****after**rSortByLength* ** ***end****repeat* ** ***delete**char -1 **of**rSortByLength* ** ***sort**lines **of**rSortByLength descending numeric by item 2 **of**each* ** ***put**empty **into**fld "CL"* ** ***put**rSortByLength **into**fld "CL"* ** ***--* ** ***put**1 **into**KOUNT* ** ***repeat**until line KOUNT **of**fld "CL" is empty* ** ***delete****the**last char **of**line KOUNT **of**fld "CL"* ** ***delete****the**last char **of**line KOUNT **of**fld "CL"* ** ***add**1 **to**KOUNT* ** ***end****repeat* ** *end**mouseUp* Richmond. On 8/8/17 1:29 am, Jerry Jensen via use-livecode wrote: > From the dictionary entry for ?sort?: If you don't specify a > direction, the sort is ascending. One of the following items: ? > ascending -sorts in ascending order ? descending -sorts in descending > order >> On Aug 7, 2017, at 3:23 PM, Richmond Mathewson via use-livecode >> wrote: I have a listField containing >> a number of words which I want to order so the longest comes first . >> . . doing this: sort lines of fld "myGuff" by length(each) sorts the >> words, but the shortest one comes first? > _______________________________________________ use-livecode mailing > list use-livecode at lists.runrev.com Please visit this url to subscribe, > unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From jerry at jhjensen.com Mon Aug 7 18:51:10 2017 From: jerry at jhjensen.com (Jerry Jensen) Date: Mon, 7 Aug 2017 15:51:10 -0700 Subject: SORT by length In-Reply-To: <7cf4df44-86b4-c70a-37d0-55c4ddc46d60@gmail.com> References: <14e5288f-f9f7-ae63-0135-d61053d0b925@gmail.com> <97E969C7-D319-49C6-A58C-18D2FA199557@jhjensen.com> <7cf4df44-86b4-c70a-37d0-55c4ddc46d60@gmail.com> Message-ID: <73573CEF-D7EF-4213-ABC2-D475E25B112A@jhjensen.com> So what did it do? With all those asterisks I can?t run it without retyping the whole thing. > On Aug 7, 2017, at 3:42 PM, Richmond Mathewson via use-livecode wrote: > > That scr*wed up badly. > > I found this: http://forums.livecode.com/viewtopic.php?f=9&t=10505#p48529 > > and modified it: > > *on**mouseUp* > > ** > > ***put**empty **into**rSortByLength* > > ** > > ***put**fld "CL" **into**tText* > > ** > > ***repeat****for**each word tLine in tText* > > ** > > ***put**tLine&"," &**the****length****of**tLine&**return****after**rSortByLength* > > ** > > ***end****repeat* > > ** > > ***delete**char -1 **of**rSortByLength* > > ** > > ***sort**lines **of**rSortByLength descending numeric by item 2 **of**each* > > ** > > ***put**empty **into**fld "CL"* > > ** > > ***put**rSortByLength **into**fld "CL"* > > ** > > ***--* > > ** > > ***put**1 **into**KOUNT* > > ** > > ***repeat**until line KOUNT **of**fld "CL" is empty* > > ** > > ***delete****the**last char **of**line KOUNT **of**fld "CL"* > > ** > > ***delete****the**last char **of**line KOUNT **of**fld "CL"* > > ** > > ***add**1 **to**KOUNT* > > ** > > ***end****repeat* > > ** > > *end**mouseUp* > > > Richmond. > > > On 8/8/17 1:29 am, Jerry Jensen via use-livecode wrote: >> From the dictionary entry for ?sort?: If you don't specify a direction, the sort is ascending. One of the following items: ? ascending -sorts in ascending order ? descending -sorts in descending order >>> On Aug 7, 2017, at 3:23 PM, Richmond Mathewson via use-livecode wrote: I have a listField containing a number of words which I want to order so the longest comes first . . . doing this: sort lines of fld "myGuff" by length(each) sorts the words, but the shortest one comes first? >> _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From terry.judd at unimelb.edu.au Mon Aug 7 19:02:52 2017 From: terry.judd at unimelb.edu.au (Terry Judd) Date: Mon, 7 Aug 2017 23:02:52 +0000 Subject: SORT by length In-Reply-To: <14e5288f-f9f7-ae63-0135-d61053d0b925@gmail.com> References: <14e5288f-f9f7-ae63-0135-d61053d0b925@gmail.com> Message-ID: <10743CE8-FB9A-465F-8D33-6AB53CD7F726@unimelb.edu.au> sort lines of fld ?myGuff? descending numeric by length(each) ? should do it. Terry... On 8/08/2017 8:23 am, "use-livecode on behalf of Richmond Mathewson via use-livecode" wrote: I have a listField containing a number of words which I want to order so the longest comes first . . . doing this: sort lines of fld "myGuff" by length(each) sorts the words, but the shortest one comes first... Richmond. _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode From iphonelagi at gmail.com Mon Aug 7 19:13:06 2017 From: iphonelagi at gmail.com (Lagi Pittas) Date: Tue, 8 Aug 2017 00:13:06 +0100 Subject: Sorting out the sheep from the goats In-Reply-To: <0add22bd-7fec-f7b5-3475-ecdff427a0f3@gmail.com> References: <888b54a2-0e1a-bfd5-0740-1b69d08f5f83@gmail.com> <637faa17-1c0e-9e07-7634-53afcb565df9@gmail.com> <12250FBC-8461-4CDC-9674-5EF989CEB686@gmail.com> <0034F1AD-FC0F-4FDD-AFBA-6EB77736613F@jhjensen.com> <91b0450a-1b84-4d0b-c949-e9230a940a12@gmail.com> <0add22bd-7fec-f7b5-3475-ecdff427a0f3@gmail.com> Message-ID: I Tawt I Taw a Puddy Tat Lagi On 7 August 2017 at 23:26, Richmond Mathewson via use-livecode < use-livecode at lists.runrev.com> wrote: > Wh, Cwme wn that's ridiculwus; everywne knwws that the English fwr "Cwm" > is "cwmbe". > > This is Hwpeless! > > Richmwnd. > > > On 8/8/17 1:23 am, Jonathan Lynch via use-livecode wrote: > >> Scrabble disagrees. >> >> Both words are in mainstream dictionaries as well. They are imported >> words. I think they are the only two words where W is a vowel. >> >> Of course, Scrabble considers zloty, qadi, and qwerty to be words. >> >> Sent from my iPhone >> >> On Aug 7, 2017, at 6:17 PM, Richmond Mathewson via use-livecode < >>> use-livecode at lists.runrev.com> wrote: >>> >>> Also a Welsh word, NOT an English one. >>> >>> Richmond. >>> >>> On 8/7/17 11:24 pm, Jerry Jensen via use-livecode wrote: >>>> And the musical instrument the crwth. >>>> >>>> On Aug 7, 2017, at 1:08 PM, Jonathan Lynch via use-livecode < >>>>> use-livecode at lists.runrev.com> wrote: >>>>> >>>>> And the obscure word "cwm" uses w as a vowel. >>>>> >>>>> Sent from my iPhone >>>>> >>>>> On Aug 7, 2017, at 3:28 PM, Mike Kerner via use-livecode < >>>>>> use-livecode at lists.runrev.com> wrote: >>>>>> >>>>>> I think you have an error in your code samples. Your vowel set >>>>>> should be >>>>>> ?aeiouandsometimesy" >>>>>> >>>>> >>>> _______________________________________________ >>>> use-livecode mailing list >>>> use-livecode at lists.runrev.com >>>> Please visit this url to subscribe, unsubscribe and manage your >>>> subscription preferences: >>>> http://lists.runrev.com/mailman/listinfo/use-livecode >>>> >>> _______________________________________________ >>> use-livecode mailing list >>> use-livecode at lists.runrev.com >>> Please visit this url to subscribe, unsubscribe and manage your >>> subscription preferences: >>> http://lists.runrev.com/mailman/listinfo/use-livecode >>> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From ambassador at fourthworld.com Mon Aug 7 22:41:41 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Mon, 7 Aug 2017 19:41:41 -0700 Subject: Taking quotes on building LC external for RethinkDB In-Reply-To: References: Message-ID: <009a7e07-f223-8d6e-ce3c-12a572511678@fourthworld.com> Yeah, I started to skim the security notes at , but when I got to this: The best way to secure a RethinkDB cluster is to run it on a protected network that doesn?t allow access from the outside world. However, this may not always be feasible. For example, cloud deployments often require access from wide area networks. There are two main methods RethinkDB provides for securing the cluster: TLS encryption for connections, and binding the ports the server uses to specific IP addresses to limit outside connections. ...at that point I had to remind myself of other things demanding my attention. :) So tempting as it is, setting up a secure cluster is not something I'll be exploring soon. Keep us posted. Interesting system.... -- Richard Gaskin Fourth World Systems Tom Glod wrote: > to answer your question, the database cluster will be accepting connections > and queries from clients directly. > > On Mon, Aug 7, 2017 at 11:51 AM, Tom Glod wrote: > >> Hi Richard ..... like Alex said, there is no Rest api for RethinkDB. The >> folks at RethinkDB didn't want to expose the whole query language using a >> rest api, (if i recall correctly they said it is too powerful to do >> so)...so the driver only accepts queries via driver port and streams >> resulting json and updates back to client. >> >> My desktop client will connect to a local database which (will or can be >> part) of a distributed cluster. >> >> >> >> >> >> >> >> On Mon, Aug 7, 2017 at 10:53 AM, Bob Sneidar via use-livecode < >> use-livecode at lists.runrev.com> wrote: >> >>> I was thinking the same thing. This isn't a database function per se, >>> it's more like a sockets function. >>> >>> Bob S >>> >>> >>> > On Aug 5, 2017, at 16:42 , Tom Glod via use-livecode < >>> use-livecode at lists.runrev.com> wrote: >>> > >>> > If you go to this page ..... the specs say that it all happens through >>> an >>> > tcp/ip connection where you make a connection, serialize the query and >>> > send it .... the db driver port receives queries, and streams data from >>> > the db via the TCP/IP back to "subscribed" client. >>> > >>> > So it doesn't really need to have anything to do with the current >>> > revdatabase functions....which the posts seem to be talking about. I'm >>> not >>> > asking for a rewrite of db layer. From brian at milby7.com Tue Aug 8 00:17:11 2017 From: brian at milby7.com (Brian Milby) Date: Mon, 7 Aug 2017 23:17:11 -0500 Subject: Understanding LiveCode Source [BOM Issue with livecodescript URLs] In-Reply-To: References: Message-ID: Thanks for the reply Mark. Since I don't have my own project in mind yet for LC, I'm taking the opportunity to spend some time on the IDE and source just to try to understand things. Since this was an error that I could easily reproduce and is something that is pretty easily understandable (since the BOM is only 3 or 4 bytes at the start of a file), I decided to give it a shot. I'll move over to the bug report and get set up for gitter. I'll keep digging on this one. Thanks, Brian On Sat, Aug 5, 2017 at 8:54 PM, Mark Waddingham via use-livecode < use-livecode at lists.runrev.com> wrote: > The best way is to ask 'us' (as in the engineers that have worked on the > entirety of the LiveCode source base for many years). This isn't any > different from any other open source project which has 1.5m lines of code > (I don't think at least...). > > We can certainly provide an insight at where to start looking in terms of > working on most issues - although don't be surprised if some result in a > littany of 'that would be nice but...' type response. (The engine, in > particular, has yaks needing shaving all over - as the years go by they are > getting increasingly sweaty and tetchy because of it). > > It is easy to get disheartened (slightly?) when working on the engine > itself - but please don't be. We (as the maintainers) of the source base > will offer as much help as we can, but do have to balance that with > everything else we do. > > I'd like to think that we do better than the RTFS responses you see in > many other projects - but it really does come down to that in many cases > (as we have to do that ourselves!). However, we are are more than happy to > dig out the 'lower hanging fruit' to help ease learning - you've already > found one of those... > > I think you've found (one of) the good spot(s) to start - handling BOMs > needs to occur at the point the engine reads in the text of the stackfile > script as data and then use it with an 'external representation' bool flag > to the decode API call in libfoundation (MCStringCreate...). I think that > flag is currently unimplemented (so a small yak shave but not in anyway > huge). > > You've already got a handle on the processes we use internally, and do > expect every contributor to follow those processes, and sometimes we might > sound blunt, but please always understand that in terms of ensuring what is > done (in terms of mutation of the source - I use the term 'mutation' > specifically as any change to a large existing, and existing entity can > only be considered as such) is 'correct' (at least as far as the collective > knowledge we hold is understood - and by 'we' I mean all that contribute). > > In terms of best places to interact on these matters then here (the > use-list) is probably not great - gitter is good for direct answers but our > quality centre is better as it provides a much better permanent and > grokable record (indeed - we try to file an issue for every change to make > it traceable globally)... At least until a PR is submitted. > > Also we *could* invite dedicated external contributors to our private > Slack - not something we've done as yet but it's a very tangible > possibility. (And this is not a matter of privacy - but of pragmatic > information exchange - those that work for LiveCode directly have time > constraints on responding to input - that's all). > > So, anyway, perhaps a much longer response than you expected. However it > was not aimed at you (Brian) specifically, but generally. We don't expect > contribution from anyone, but are always incredibly happy and as supportive > as we can be when it occurs. > > LiveCode is a wealth of interesting problems, if nothing else, and you can > learn a lot from it (as I have done in my 13 year tenure as 'chief > engineer'). > > Warmest Regards, > > Mark. > > P.S. I made a comment recently about 'caution being one of the best tools > to effect change' and it applies to any long standing entity - of which > LiveCode is one. I completely reserve the right (as 'BDFL' which is perhaps > my title in that space) to cessate anything which I do not think is right > (usually by closing a PR ;)), but I have an open mind - 'trust' is an > important factor here on a technical level. I limit myself on what I do to > the engine (in particular!) because it is very hard to get it 'right' when > taking into the account the breadth of applicability - there are huge > constraints which only become articulable when faced with direct reasons > for any change. i.e. Start small and work up - anything else will result in > a *seemingly* dismissive response. (ie don't expect huge support from us > for very broad changes without long running interaction and justification). > > P.P.S. I've learnt the above from tangible and *very* direct cost. The > only reason I make these kinds of statements is because I care so much > about what we are trying to be and do. > > Sent from my iPhone > > > On 5 Aug 2017, at 22:12, Brian Milby via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > > Is there anything posted that gives an overview of how the source code to > > LiveCode works/is organized? I know that the source is all there and I > can > > read it, but that would take a long time :) I'm still learning C++ (been > > many years, but I learned C while in college), but following the code > > doesn't seem too bad. > > > > I'm specifically looking at the parsing of livecodescript stacks with > > BOMs. I think I know where the file is ultimately processed (the stream > of > > it anyway), but I can only work backward so far and get stuck. > > > > So, I guess a more specific question would be where to start on the > handoff > > between the IDE and the engine. As an example, I can see that when you > > turn off debug mode, the message box ends up with "send script pScript to > > pObject". I want to follow the problem statements through to see where > > they lead and compare what works to what doesn't. > > > > I'm using the message box (single line) to test syntax. I get the same > > results whether debug mode is on or off. The local file includes the > UTF8 > > BOM (verified by getting the first 3 bytes). The actual file I'm using > is > > the Scriptifier (URL from an earlier thread). I get the same results for > > "binfile:/" and "https://" forms, so I've only included one below. I > > observe that "url" keyword is required (will need to adjust the > > documentation syntax, looks to be the same back to at least 7). > > > > So far I've observed the following fails silently (no error message > > returned): > > go [to] url "binfile:/...livecodescript" --should work > > > > The following fail with an error (LC9 gives "message" as hint, LC8 gives > > the actual script line as a hint "go..."): > > go [to] [stack] "https:...livecode" --missing url > > go [to] [stack] "binfile:/...livecodescript" --missing url > > go [to] stack url "binfile:/...livecodescript" --should work > > > > These work: > > go [to] [stack] url "https:...livecode" > > go [to] [stack] "/(full path)/Scriptifier.livecodescript" > > go [to] [stack] byte 4 to -1 of url "binfile:/...livecodescript" > > --assumes UTF8 BOM > > > > The current develop build has the same issues (at least for me). I can > see > > in the code where it looks like the BOM should be accounted for > > (MCDispatch::doreadfile or MCDispatch::trytoreadscriptonlystackofsize > > depending on branch). > > > > It looks like the URL keyword will correctly parse a binary stack, but > > fails on livecodescript with a BOM. I put 2 files on a server that I > > control (with and without the UTF8 BOM), and the livecodescript will load > > fine from https:// if no BOM is included. > > > > Apologize for the long post, but wanting to contribute to the community > if > > I can. > > > > Thanks, > > Brian > > _______________________________________________ > > use-livecode mailing list > > use-livecode at lists.runrev.com > > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > > http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From mark at livecode.com Tue Aug 8 02:57:21 2017 From: mark at livecode.com (Mark Waddingham) Date: Tue, 08 Aug 2017 08:57:21 +0200 Subject: how to get the value of a custom property if the name of the cProperty is in a =?UTF-8?Q?variable=3F?= In-Reply-To: <83430CBF-F745-486D-A208-28A5432A003A@appisle.net> References: <8F48407D-F2F3-4489-B030-94C259914AF4@major-k.de> <4A35F45F-C97E-4AA3-B37A-2D4FB4CF50EB@livecode.com> <83430CBF-F745-486D-A208-28A5432A003A@appisle.net> Message-ID: <6305ae0107f05a0bd14f32b502cc9c29@livecode.com> On 2017-08-03 05:39, Monte Goulding via use-livecode wrote: > Er? why if you know the name wouldn?t you type it unquoted? Are you > really suggesting to put any expression there? The property/function > ambiguity with `the` will make our heads explode! For the reason Dr Hawkins originally asked about ;) There is no ambiguity if we have: 1. 'the' IDENTIFIER 'of' ... 2. 'the' STRING 'of' ... 3. 'the' '(' EXPRESSION ')' 'of' ... The key thing about making property syntax more flexible (e.g. multiple words - unquoted) is to enforce 'the' and 'of' - indeed, if you use a custom (non engine keyword) name of any kind then both are required so that's good :) In any case, I got around to looking at it this morning and case (2) almost works already. Doing: set the "catness" of this stack to "very" put the customKeys of this stack put the "catness" of this stack Results in a catness (no quotes) key in the stack's custom properties, but an execution error (source is not a container) when evaluating it. Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From richmondmathewson at gmail.com Tue Aug 8 04:46:38 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Tue, 8 Aug 2017 11:46:38 +0300 Subject: SORT by length In-Reply-To: <73573CEF-D7EF-4213-ABC2-D475E25B112A@jhjensen.com> References: <14e5288f-f9f7-ae63-0135-d61053d0b925@gmail.com> <97E969C7-D319-49C6-A58C-18D2FA199557@jhjensen.com> <7cf4df44-86b4-c70a-37d0-55c4ddc46d60@gmail.com> <73573CEF-D7EF-4213-ABC2-D475E25B112A@jhjensen.com> Message-ID: Sorry about the asterisks . . . That is what happens when one copy-pastes directly from the LiveCode scriptEditor into Thunderbird. on mouseUp put empty into rSortByLength put fld "CL" into tText repeat for each word tLine in tText put tLine&"," &the length of tLine&return after rSortByLength end repeat delete char -1 of rSortByLength sort lines of rSortByLength descending numeric by item 2 of each put empty into fld "CL" put rSortByLength into fld "CL" -- put 1 into KOUNT repeat until line KOUNT of fld "CL" is empty delete the last char of line KOUNT of fld "CL" delete the last char of line KOUNT of fld "CL" add 1 to KOUNT end repeat end mouseUp Richmond. From hh at hyperhh.de Tue Aug 8 06:20:27 2017 From: hh at hyperhh.de (hh) Date: Tue, 8 Aug 2017 12:20:27 +0200 Subject: SORT by length Message-ID: <29884A71-F7EB-44D9-97A4-14BB8B089FDE@hyperhh.de> > Richmond wrote: > Sorry about the asterisks . . . > That is what happens when one copy-pastes directly from the LiveCode > scriptEditor into Thunderbird. Specify the default character encodings for sending and receiving messages Menu location: Thunderbird > Preferences > Display > Formatting - Advanced button @Sort by length As several others said: sort str [ascending|descending] numeric by length(each) works perfectly. But the first part of your script sorts correctly numeric by length if and only if there is NO COMMA in the string to sort ... You sort by item 2, of course you could sort by item -1. Nevertheless the one-liner above will be *much* faster. > Richmond wrote: > on mouseUp > put empty into rSortByLength > put fld "CL" into tText > repeat for each word tLine in tText > put tLine&"," &the length of tLine&return after rSortByLength > end repeat > delete char -1 of rSortByLength > sort lines of rSortByLength descending numeric by item 2 of each > put empty into fld "CL" > put rSortByLength into fld "CL" > -- > put 1 into KOUNT > repeat until line KOUNT of fld "CL" is empty > delete the last char of line KOUNT of fld "CL" > delete the last char of line KOUNT of fld "CL" > add 1 to KOUNT > end repeat > end mouseUp From hh at hyperhh.de Tue Aug 8 06:43:55 2017 From: hh at hyperhh.de (hh) Date: Tue, 8 Aug 2017 12:43:55 +0200 Subject: how to get the value of a custom property if the name of the cProperty is in a variable? Message-ID: Two examples for testing ambiguity. [a] set "8.1" of me to "I dreamt to be quoted" set 8.1 of me to "I dreamt to be 8.2" put the customProperties of me into cp put cp["8.1"] &" : "& cp[8.1] &" : "& cp[8+1/10] Test and then interchange the first two lines and test again. [b] set "G&T" of me to "I dreamt to be geometry and trigonometry" put the customProperties of me into cp put cp["G&T"] From richmondmathewson at gmail.com Tue Aug 8 06:53:25 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Tue, 8 Aug 2017 13:53:25 +0300 Subject: Script Editor Window being bl**dy-minded Message-ID: <8eb57f8e-94d4-a3e4-58f2-5abc9f828bb4@gmail.com> Somehow I did something and my scriptEditor window got stuck with its grab-bar off the top of my monitor window so there is no way I can either move it or resize it. Richmond. From iphonelagi at gmail.com Tue Aug 8 06:57:09 2017 From: iphonelagi at gmail.com (Lagi Pittas) Date: Tue, 8 Aug 2017 11:57:09 +0100 Subject: Script Editor Window being bl**dy-minded In-Reply-To: <8eb57f8e-94d4-a3e4-58f2-5abc9f828bb4@gmail.com> References: <8eb57f8e-94d4-a3e4-58f2-5abc9f828bb4@gmail.com> Message-ID: Happens to the best of us ... set the loc of stack ?revNewScriptEditor 1? to the screenloc Lagi On 8 August 2017 at 11:53, Richmond Mathewson via use-livecode < use-livecode at lists.runrev.com> wrote: > Somehow I did something and my scriptEditor window > got stuck with its grab-bar off the top of my monitor window > so there is no way I can either move it or resize it. > > Richmond. > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From merakosp at gmail.com Tue Aug 8 06:57:31 2017 From: merakosp at gmail.com (panagiotis merakos) Date: Tue, 8 Aug 2017 11:57:31 +0100 Subject: Script Editor Window being bl**dy-minded In-Reply-To: <8eb57f8e-94d4-a3e4-58f2-5abc9f828bb4@gmail.com> References: <8eb57f8e-94d4-a3e4-58f2-5abc9f828bb4@gmail.com> Message-ID: Hi Richmond, Type in the msg box: "set the loc of the mousestack to the screenloc" -- BUT DO NOT PRESS ENTER Then place your mouse over the script editor window, and now press Enter Hope this helps, Panos -- On Tue, Aug 8, 2017 at 11:53 AM, Richmond Mathewson via use-livecode < use-livecode at lists.runrev.com> wrote: > Somehow I did something and my scriptEditor window > got stuck with its grab-bar off the top of my monitor window > so there is no way I can either move it or resize it. > > Richmond. > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From richmondmathewson at gmail.com Tue Aug 8 06:58:31 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Tue, 8 Aug 2017 13:58:31 +0300 Subject: Script Editor Window being bl**dy-minded In-Reply-To: References: <8eb57f8e-94d4-a3e4-58f2-5abc9f828bb4@gmail.com> Message-ID: <38290cc2-b030-891f-ff05-1e30602a62a7@gmail.com> TThank you very much. Richmond. On 8/8/17 1:57 pm, panagiotis merakos via use-livecode wrote: > Hi Richmond, > > Type in the msg box: > > "set the loc of the mousestack to the screenloc" -- BUT DO NOT PRESS ENTER > > Then place your mouse over the script editor window, and now press Enter > > Hope this helps, > Panos > -- > > On Tue, Aug 8, 2017 at 11:53 AM, Richmond Mathewson via use-livecode < > use-livecode at lists.runrev.com> wrote: > >> Somehow I did something and my scriptEditor window >> got stuck with its grab-bar off the top of my monitor window >> so there is no way I can either move it or resize it. >> >> Richmond. >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From mark at livecode.com Tue Aug 8 07:03:25 2017 From: mark at livecode.com (Mark Waddingham) Date: Tue, 08 Aug 2017 13:03:25 +0200 Subject: how to get the value of a custom property if the name of the cProperty is in a =?UTF-8?Q?variable=3F?= In-Reply-To: References: Message-ID: On 2017-08-08 12:43, hh via use-livecode wrote: > Two examples for testing ambiguity. > > [a] > set "8.1" of me to "I dreamt to be quoted" > set 8.1 of me to "I dreamt to be 8.2" > put the customProperties of me into cp > put cp["8.1"] &" : "& cp[8.1] &" : "& cp[8+1/10] > Test and then interchange the first two lines and test again. > > [b] > set "G&T" of me to "I dreamt to be geometry and trigonometry" > put the customProperties of me into cp > put cp["G&T"] So this does work as 'expected' currently. i.e. You can use a quoted or unquoted literal for a custom property name, and it will use the literal appropriately. What doesn't work at the moment is if you have a var name which is quoted: local catness put "minimal" into catness set the "catness" of me to "very much" get the customProperties of me put the keys of it Will result in a key 'minimal' and *not* 'catness' - which is perhaps not what would be expected. Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From iphonelagi at gmail.com Tue Aug 8 07:10:15 2017 From: iphonelagi at gmail.com (Lagi Pittas) Date: Tue, 8 Aug 2017 12:10:15 +0100 Subject: Script Editor Window being bl**dy-minded In-Reply-To: References: <8eb57f8e-94d4-a3e4-58f2-5abc9f828bb4@gmail.com> Message-ID: THanks Panos, Even better than what I use - I think thanks to a Dave Kilroy post many eons ago. Because you don't first have to remember or find the name of the window. But I've only ever had this happen to a stack of mine which I know the name of anyway. I use Dave's trick when the window is in the twilight zone and can't be accessed at all. set the loc of stack "Message Box" to the screenLoc Thanks Lagi On 8 August 2017 at 11:57, panagiotis merakos via use-livecode < use-livecode at lists.runrev.com> wrote: > Hi Richmond, > > Type in the msg box: > > "set the loc of the mousestack to the screenloc" -- BUT DO NOT PRESS ENTER > > Then place your mouse over the script editor window, and now press Enter > > Hope this helps, > Panos > -- > > On Tue, Aug 8, 2017 at 11:53 AM, Richmond Mathewson via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > Somehow I did something and my scriptEditor window > > got stuck with its grab-bar off the top of my monitor window > > so there is no way I can either move it or resize it. > > > > Richmond. > > _______________________________________________ > > use-livecode mailing list > > use-livecode at lists.runrev.com > > Please visit this url to subscribe, unsubscribe and manage your > > subscription preferences: > > http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From merakosp at gmail.com Tue Aug 8 08:32:12 2017 From: merakosp at gmail.com (panagiotis merakos) Date: Tue, 8 Aug 2017 13:32:12 +0100 Subject: Script Editor Window being bl**dy-minded In-Reply-To: References: <8eb57f8e-94d4-a3e4-58f2-5abc9f828bb4@gmail.com> Message-ID: Hi Lagi, Yes, "the mousestack" is very useful in those cases where you don't know/remember the name of the stack. Similarly, you can use "the mousecontrol" for controls. Best regards, Panos -- On Tue, Aug 8, 2017 at 12:10 PM, Lagi Pittas via use-livecode < use-livecode at lists.runrev.com> wrote: > THanks Panos, > > Even better than what I use - I think thanks to a Dave Kilroy post many > eons ago. > > > Because you don't first have to remember or find the name of the window. > > But I've only ever had this happen to a stack of mine which I know the name > of anyway. > > I use Dave's trick when the window is in the twilight zone and can't be > accessed at all. > > set the loc of stack "Message Box" to the screenLoc > > Thanks > > Lagi > > On 8 August 2017 at 11:57, panagiotis merakos via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > Hi Richmond, > > > > Type in the msg box: > > > > "set the loc of the mousestack to the screenloc" -- BUT DO NOT PRESS > ENTER > > > > Then place your mouse over the script editor window, and now press Enter > > > > Hope this helps, > > Panos > > -- > > > > On Tue, Aug 8, 2017 at 11:53 AM, Richmond Mathewson via use-livecode < > > use-livecode at lists.runrev.com> wrote: > > > > > Somehow I did something and my scriptEditor window > > > got stuck with its grab-bar off the top of my monitor window > > > so there is no way I can either move it or resize it. > > > > > > Richmond. > > > _______________________________________________ > > > use-livecode mailing list > > > use-livecode at lists.runrev.com > > > Please visit this url to subscribe, unsubscribe and manage your > > > subscription preferences: > > > http://lists.runrev.com/mailman/listinfo/use-livecode > > > > > _______________________________________________ > > use-livecode mailing list > > use-livecode at lists.runrev.com > > Please visit this url to subscribe, unsubscribe and manage your > > subscription preferences: > > http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From roger.e.eller at sealedair.com Tue Aug 8 08:45:05 2017 From: roger.e.eller at sealedair.com (Roger Eller) Date: Tue, 8 Aug 2017 08:45:05 -0400 Subject: Script Editor Window being bl**dy-minded In-Reply-To: References: <8eb57f8e-94d4-a3e4-58f2-5abc9f828bb4@gmail.com> Message-ID: Is there an option for when you don't know its name and the stack is completely off-screen? ~Roger On Tue, Aug 8, 2017 at 8:32 AM, panagiotis merakos via use-livecode < use-livecode at lists.runrev.com> wrote: > Hi Lagi, > > Yes, "the mousestack" is very useful in those cases where you don't > know/remember the name of the stack. > > Similarly, you can use "the mousecontrol" for controls. > > Best regards, > Panos > -- > > On Tue, Aug 8, 2017 at 12:10 PM, Lagi Pittas via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > THanks Panos, > > > > Even better than what I use - I think thanks to a Dave Kilroy post many > > eons ago. > > > > > > Because you don't first have to remember or find the name of the window. > > > > But I've only ever had this happen to a stack of mine which I know the > name > > of anyway. > > > > I use Dave's trick when the window is in the twilight zone and can't be > > accessed at all. > > > > set the loc of stack "Message Box" to the screenLoc > > > > Thanks > > > > Lagi > > > > On 8 August 2017 at 11:57, panagiotis merakos via use-livecode < > > use-livecode at lists.runrev.com> wrote: > > > > > Hi Richmond, > > > > > > Type in the msg box: > > > > > > "set the loc of the mousestack to the screenloc" -- BUT DO NOT PRESS > > ENTER > > > > > > Then place your mouse over the script editor window, and now press > Enter > > > > > > Hope this helps, > > > Panos > > > -- > > > > > > On Tue, Aug 8, 2017 at 11:53 AM, Richmond Mathewson via use-livecode < > > > use-livecode at lists.runrev.com> wrote: > > > > > > > Somehow I did something and my scriptEditor window > > > > got stuck with its grab-bar off the top of my monitor window > > > > so there is no way I can either move it or resize it. > > > > > > > > Richmond. > > > > _______________________________________________ > > > > use-livecode mailing list > > > > use-livecode at lists.runrev.com > > > > Please visit this url to subscribe, unsubscribe and manage your > > > > subscription preferences: > > > > http://lists.runrev.com/mailman/listinfo/use-livecode > > > > > > > _______________________________________________ > > > use-livecode mailing list > > > use-livecode at lists.runrev.com > > > Please visit this url to subscribe, unsubscribe and manage your > > > subscription preferences: > > > http://lists.runrev.com/mailman/listinfo/use-livecode > > > > > _______________________________________________ > > use-livecode mailing list > > use-livecode at lists.runrev.com > > Please visit this url to subscribe, unsubscribe and manage your > > subscription preferences: > > http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From MikeKerner at roadrunner.com Tue Aug 8 08:56:10 2017 From: MikeKerner at roadrunner.com (Mike Kerner) Date: Tue, 8 Aug 2017 08:56:10 -0400 Subject: Script Editor Window being bl**dy-minded In-Reply-To: References: <8eb57f8e-94d4-a3e4-58f2-5abc9f828bb4@gmail.com> Message-ID: blandy-minded? On Tue, Aug 8, 2017 at 8:45 AM, Roger Eller via use-livecode < use-livecode at lists.runrev.com> wrote: > Is there an option for when you don't know its name and the stack is > completely off-screen? > > ~Roger > > On Tue, Aug 8, 2017 at 8:32 AM, panagiotis merakos via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > Hi Lagi, > > > > Yes, "the mousestack" is very useful in those cases where you don't > > know/remember the name of the stack. > > > > Similarly, you can use "the mousecontrol" for controls. > > > > Best regards, > > Panos > > -- > > > > On Tue, Aug 8, 2017 at 12:10 PM, Lagi Pittas via use-livecode < > > use-livecode at lists.runrev.com> wrote: > > > > > THanks Panos, > > > > > > Even better than what I use - I think thanks to a Dave Kilroy post many > > > eons ago. > > > > > > > > > Because you don't first have to remember or find the name of the > window. > > > > > > But I've only ever had this happen to a stack of mine which I know the > > name > > > of anyway. > > > > > > I use Dave's trick when the window is in the twilight zone and can't > be > > > accessed at all. > > > > > > set the loc of stack "Message Box" to the screenLoc > > > > > > Thanks > > > > > > Lagi > > > > > > On 8 August 2017 at 11:57, panagiotis merakos via use-livecode < > > > use-livecode at lists.runrev.com> wrote: > > > > > > > Hi Richmond, > > > > > > > > Type in the msg box: > > > > > > > > "set the loc of the mousestack to the screenloc" -- BUT DO NOT PRESS > > > ENTER > > > > > > > > Then place your mouse over the script editor window, and now press > > Enter > > > > > > > > Hope this helps, > > > > Panos > > > > -- > > > > > > > > On Tue, Aug 8, 2017 at 11:53 AM, Richmond Mathewson via use-livecode > < > > > > use-livecode at lists.runrev.com> wrote: > > > > > > > > > Somehow I did something and my scriptEditor window > > > > > got stuck with its grab-bar off the top of my monitor window > > > > > so there is no way I can either move it or resize it. > > > > > > > > > > Richmond. > > > > > _______________________________________________ > > > > > use-livecode mailing list > > > > > use-livecode at lists.runrev.com > > > > > Please visit this url to subscribe, unsubscribe and manage your > > > > > subscription preferences: > > > > > http://lists.runrev.com/mailman/listinfo/use-livecode > > > > > > > > > _______________________________________________ > > > > use-livecode mailing list > > > > use-livecode at lists.runrev.com > > > > Please visit this url to subscribe, unsubscribe and manage your > > > > subscription preferences: > > > > http://lists.runrev.com/mailman/listinfo/use-livecode > > > > > > > _______________________________________________ > > > use-livecode mailing list > > > use-livecode at lists.runrev.com > > > Please visit this url to subscribe, unsubscribe and manage your > > > subscription preferences: > > > http://lists.runrev.com/mailman/listinfo/use-livecode > > > > > _______________________________________________ > > use-livecode mailing list > > use-livecode at lists.runrev.com > > Please visit this url to subscribe, unsubscribe and manage your > > subscription preferences: > > http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > -- On the first day, God created the heavens and the Earth On the second day, God created the oceans. On the third day, God put the animals on hold for a few hours, and did a little diving. And God said, "This is good." From merakosp at gmail.com Tue Aug 8 08:58:30 2017 From: merakosp at gmail.com (panagiotis merakos) Date: Tue, 8 Aug 2017 13:58:30 +0100 Subject: Script Editor Window being bl**dy-minded In-Reply-To: References: <8eb57f8e-94d4-a3e4-58f2-5abc9f828bb4@gmail.com> Message-ID: Hmm, I think the easiest way is to use "the openstacks" for finding the name. On 8 Aug 2017 13:45, "Roger Eller via use-livecode" < use-livecode at lists.runrev.com> wrote: > Is there an option for when you don't know its name and the stack is > completely off-screen? > > ~Roger > > On Tue, Aug 8, 2017 at 8:32 AM, panagiotis merakos via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > Hi Lagi, > > > > Yes, "the mousestack" is very useful in those cases where you don't > > know/remember the name of the stack. > > > > Similarly, you can use "the mousecontrol" for controls. > > > > Best regards, > > Panos > > -- > > > > On Tue, Aug 8, 2017 at 12:10 PM, Lagi Pittas via use-livecode < > > use-livecode at lists.runrev.com> wrote: > > > > > THanks Panos, > > > > > > Even better than what I use - I think thanks to a Dave Kilroy post many > > > eons ago. > > > > > > > > > Because you don't first have to remember or find the name of the > window. > > > > > > But I've only ever had this happen to a stack of mine which I know the > > name > > > of anyway. > > > > > > I use Dave's trick when the window is in the twilight zone and can't > be > > > accessed at all. > > > > > > set the loc of stack "Message Box" to the screenLoc > > > > > > Thanks > > > > > > Lagi > > > > > > On 8 August 2017 at 11:57, panagiotis merakos via use-livecode < > > > use-livecode at lists.runrev.com> wrote: > > > > > > > Hi Richmond, > > > > > > > > Type in the msg box: > > > > > > > > "set the loc of the mousestack to the screenloc" -- BUT DO NOT PRESS > > > ENTER > > > > > > > > Then place your mouse over the script editor window, and now press > > Enter > > > > > > > > Hope this helps, > > > > Panos > > > > -- > > > > > > > > On Tue, Aug 8, 2017 at 11:53 AM, Richmond Mathewson via use-livecode > < > > > > use-livecode at lists.runrev.com> wrote: > > > > > > > > > Somehow I did something and my scriptEditor window > > > > > got stuck with its grab-bar off the top of my monitor window > > > > > so there is no way I can either move it or resize it. > > > > > > > > > > Richmond. > > > > > _______________________________________________ > > > > > use-livecode mailing list > > > > > use-livecode at lists.runrev.com > > > > > Please visit this url to subscribe, unsubscribe and manage your > > > > > subscription preferences: > > > > > http://lists.runrev.com/mailman/listinfo/use-livecode > > > > > > > > > _______________________________________________ > > > > use-livecode mailing list > > > > use-livecode at lists.runrev.com > > > > Please visit this url to subscribe, unsubscribe and manage your > > > > subscription preferences: > > > > http://lists.runrev.com/mailman/listinfo/use-livecode > > > > > > > _______________________________________________ > > > use-livecode mailing list > > > use-livecode at lists.runrev.com > > > Please visit this url to subscribe, unsubscribe and manage your > > > subscription preferences: > > > http://lists.runrev.com/mailman/listinfo/use-livecode > > > > > _______________________________________________ > > use-livecode mailing list > > use-livecode at lists.runrev.com > > Please visit this url to subscribe, unsubscribe and manage your > > subscription preferences: > > http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From michael-kristensen at dsa-net.dk Tue Aug 8 09:45:44 2017 From: michael-kristensen at dsa-net.dk (Michael Kristensen) Date: Tue, 8 Aug 2017 15:45:44 +0200 Subject: FOR YOU: OSX-style push reorder of objects Message-ID: <4C06030D-44AD-4E85-A37C-B0D8EE96E2F0@dsa-net.dk> Hi there This is a stack that reorder objects like in the osx app bar. You drag an object and it pushes the other objects away. This might also be interesting for Windows users. I dont know how they do it. Please upload if you have improvements. Enjoy Michael Kristensen Here it is: http://forums.livecode.com/viewtopic.php?f=8&t=29593 From tore.nilsen at me.com Tue Aug 8 10:01:22 2017 From: tore.nilsen at me.com (Tore Nilsen) Date: Tue, 08 Aug 2017 16:01:22 +0200 Subject: FOR YOU: OSX-style push reorder of objects In-Reply-To: <4C06030D-44AD-4E85-A37C-B0D8EE96E2F0@dsa-net.dk> References: <4C06030D-44AD-4E85-A37C-B0D8EE96E2F0@dsa-net.dk> Message-ID: To make this even simpler, since you already have a button containing the script, button ?masterscript?, you can just set the behavior of the other controls to the button ?masterscript?. You do not need to copy the script to each button or control. You can do this in the advanced pane of the inspector for each button or change your ?Apply masterscript? kode to the following: on mouseUp repeat with i = 1 to 14 set behavior of btn ("Billede" && i) to button id 1069 of stack "OSX push style reorder" end repeat end mouseUp This way you can adjust your script in button ?masterscript? and it will automatically apply to all the other button, without the need to reapply the masterscript. Regards Tore Nilsen > 8. aug. 2017 kl. 15:45 skrev Michael Kristensen via use-livecode : > > Hi there > This is a stack that reorder objects like in the osx app bar. > You drag an object and it pushes the other objects away. > > This might also be interesting for Windows users. I dont know how they do it. > > Please upload if you have improvements. > > Enjoy > Michael Kristensen > > > Here it is: > http://forums.livecode.com/viewtopic.php?f=8&t=29593 > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From bobsneidar at iotecdigital.com Tue Aug 8 10:34:26 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Tue, 8 Aug 2017 14:34:26 +0000 Subject: Sorting out the sheep from the goats In-Reply-To: <91b0450a-1b84-4d0b-c949-e9230a940a12@gmail.com> References: <888b54a2-0e1a-bfd5-0740-1b69d08f5f83@gmail.com> <637faa17-1c0e-9e07-7634-53afcb565df9@gmail.com> <12250FBC-8461-4CDC-9674-5EF989CEB686@gmail.com> <0034F1AD-FC0F-4FDD-AFBA-6EB77736613F@jhjensen.com> <91b0450a-1b84-4d0b-c949-e9230a940a12@gmail.com> Message-ID: <7C151393-0CC2-48A5-AC6D-D7AA6F6534BD@iotecdigital.com> If the Welsh are so averse to vowels, they ought to call themselves the Wlsh. Bob S > On Aug 7, 2017, at 15:17 , Richmond Mathewson via use-livecode wrote: > > Also a Welsh word, NOT an English one. > > Richmond. From richmondmathewson at gmail.com Tue Aug 8 10:35:54 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Tue, 8 Aug 2017 17:35:54 +0300 Subject: Script Editor Window being bl**dy-minded In-Reply-To: References: <8eb57f8e-94d4-a3e4-58f2-5abc9f828bb4@gmail.com> Message-ID: <9d63bf96-cbb2-ffcf-f670-c06854f26f1e@gmail.com> Oh, very witty, very witty indeed, but, my pretty, my pretty . . . you'd fail the expletive-deleted exam! Richmond. On 8/8/17 3:56 pm, Mike Kerner via use-livecode wrote: > blandy-minded? > > On Tue, Aug 8, 2017 at 8:45 AM, Roger Eller via use-livecode < > use-livecode at lists.runrev.com> wrote: > >> Is there an option for when you don't know its name and the stack is >> completely off-screen? >> >> ~Roger >> >> On Tue, Aug 8, 2017 at 8:32 AM, panagiotis merakos via use-livecode < >> use-livecode at lists.runrev.com> wrote: >> >>> Hi Lagi, >>> >>> Yes, "the mousestack" is very useful in those cases where you don't >>> know/remember the name of the stack. >>> >>> Similarly, you can use "the mousecontrol" for controls. >>> >>> Best regards, >>> Panos >>> -- >>> >>> On Tue, Aug 8, 2017 at 12:10 PM, Lagi Pittas via use-livecode < >>> use-livecode at lists.runrev.com> wrote: >>> >>>> THanks Panos, >>>> >>>> Even better than what I use - I think thanks to a Dave Kilroy post many >>>> eons ago. >>>> >>>> >>>> Because you don't first have to remember or find the name of the >> window. >>>> But I've only ever had this happen to a stack of mine which I know the >>> name >>>> of anyway. >>>> >>>> I use Dave's trick when the window is in the twilight zone and can't >> be >>>> accessed at all. >>>> >>>> set the loc of stack "Message Box" to the screenLoc >>>> >>>> Thanks >>>> >>>> Lagi >>>> >>>> On 8 August 2017 at 11:57, panagiotis merakos via use-livecode < >>>> use-livecode at lists.runrev.com> wrote: >>>> >>>>> Hi Richmond, >>>>> >>>>> Type in the msg box: >>>>> >>>>> "set the loc of the mousestack to the screenloc" -- BUT DO NOT PRESS >>>> ENTER >>>>> Then place your mouse over the script editor window, and now press >>> Enter >>>>> Hope this helps, >>>>> Panos >>>>> -- >>>>> >>>>> On Tue, Aug 8, 2017 at 11:53 AM, Richmond Mathewson via use-livecode >> < >>>>> use-livecode at lists.runrev.com> wrote: >>>>> >>>>>> Somehow I did something and my scriptEditor window >>>>>> got stuck with its grab-bar off the top of my monitor window >>>>>> so there is no way I can either move it or resize it. >>>>>> >>>>>> Richmond. >>>>>> _______________________________________________ >>>>>> use-livecode mailing list >>>>>> use-livecode at lists.runrev.com >>>>>> Please visit this url to subscribe, unsubscribe and manage your >>>>>> subscription preferences: >>>>>> http://lists.runrev.com/mailman/listinfo/use-livecode >>>>>> >>>>> _______________________________________________ >>>>> use-livecode mailing list >>>>> use-livecode at lists.runrev.com >>>>> Please visit this url to subscribe, unsubscribe and manage your >>>>> subscription preferences: >>>>> http://lists.runrev.com/mailman/listinfo/use-livecode >>>>> >>>> _______________________________________________ >>>> use-livecode mailing list >>>> use-livecode at lists.runrev.com >>>> Please visit this url to subscribe, unsubscribe and manage your >>>> subscription preferences: >>>> http://lists.runrev.com/mailman/listinfo/use-livecode >>>> >>> _______________________________________________ >>> use-livecode mailing list >>> use-livecode at lists.runrev.com >>> Please visit this url to subscribe, unsubscribe and manage your >>> subscription preferences: >>> http://lists.runrev.com/mailman/listinfo/use-livecode >>> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> > > From richmondmathewson at gmail.com Tue Aug 8 10:38:12 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Tue, 8 Aug 2017 17:38:12 +0300 Subject: Sorting out the sheep from the goats In-Reply-To: <7C151393-0CC2-48A5-AC6D-D7AA6F6534BD@iotecdigital.com> References: <888b54a2-0e1a-bfd5-0740-1b69d08f5f83@gmail.com> <637faa17-1c0e-9e07-7634-53afcb565df9@gmail.com> <12250FBC-8461-4CDC-9674-5EF989CEB686@gmail.com> <0034F1AD-FC0F-4FDD-AFBA-6EB77736613F@jhjensen.com> <91b0450a-1b84-4d0b-c949-e9230a940a12@gmail.com> <7C151393-0CC2-48A5-AC6D-D7AA6F6534BD@iotecdigital.com> Message-ID: When once walking in Wales I observed a Welshman having a vowel-movement behind a bush . . . The noises he was uttering during this procedure were 100% vowels. Richmond. On 8/8/17 5:34 pm, Bob Sneidar via use-livecode wrote: > If the Welsh are so averse to vowels, they ought to call themselves the Wlsh. > > Bob S > > >> On Aug 7, 2017, at 15:17 , Richmond Mathewson via use-livecode wrote: >> >> Also a Welsh word, NOT an English one. >> >> Richmond. > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From bobsneidar at iotecdigital.com Tue Aug 8 10:39:59 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Tue, 8 Aug 2017 14:39:59 +0000 Subject: SORT by length In-Reply-To: References: <14e5288f-f9f7-ae63-0135-d61053d0b925@gmail.com> <97E969C7-D319-49C6-A58C-18D2FA199557@jhjensen.com> <7cf4df44-86b4-c70a-37d0-55c4ddc46d60@gmail.com> <73573CEF-D7EF-4213-ABC2-D475E25B112A@jhjensen.com> Message-ID: Paste it into a text only text editor first and you won't get the double line breaks either. Bob S > On Aug 8, 2017, at 01:46 , Richmond Mathewson via use-livecode wrote: > > Sorry about the asterisks . . . > > That is what happens when one copy-pastes directly from the LiveCode scriptEditor into > Thunderbird. > > on mouseUp > > put empty into rSortByLength From jonathandlynch at gmail.com Tue Aug 8 10:51:50 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Tue, 8 Aug 2017 10:51:50 -0400 Subject: Sorting out the sheep from the goats In-Reply-To: References: <888b54a2-0e1a-bfd5-0740-1b69d08f5f83@gmail.com> <637faa17-1c0e-9e07-7634-53afcb565df9@gmail.com> <12250FBC-8461-4CDC-9674-5EF989CEB686@gmail.com> <0034F1AD-FC0F-4FDD-AFBA-6EB77736613F@jhjensen.com> <91b0450a-1b84-4d0b-c949-e9230a940a12@gmail.com> <7C151393-0CC2-48A5-AC6D-D7AA6F6534BD@iotecdigital.com> Message-ID: <83A5F15F-1250-4BCF-9D47-8F23F2C1685B@gmail.com> Thank you for lifting my mood this morning :) Sent from my iPhone > On Aug 8, 2017, at 10:38 AM, Richmond Mathewson via use-livecode wrote: > > When once walking in Wales I observed a Welshman having a vowel-movement behind a bush . . . > > The noises he was uttering during this procedure were 100% vowels. > > Richmond. > >> On 8/8/17 5:34 pm, Bob Sneidar via use-livecode wrote: >> If the Welsh are so averse to vowels, they ought to call themselves the Wlsh. >> >> Bob S >> >> >>> On Aug 7, 2017, at 15:17 , Richmond Mathewson via use-livecode wrote: >>> >>> Also a Welsh word, NOT an English one. >>> >>> Richmond. >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From jacque at hyperactivesw.com Tue Aug 8 11:09:50 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Tue, 08 Aug 2017 10:09:50 -0500 Subject: how to get the value of a custom property if the name of the cProperty is in a variable? In-Reply-To: References: Message-ID: <15dc2651230.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> In what circumstance would it be necessary to quote the property name? On August 8, 2017 6:05:21 AM Mark Waddingham via use-livecode wrote: > What doesn't work at the moment is if you have a var name which is > quoted: > > local catness > put "minimal" into catness > set the "catness" of me to "very much" > get the customProperties of me > put the keys of it > > Will result in a key 'minimal' and *not* 'catness' - which is perhaps > not what would be expected. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com From mark at livecode.com Tue Aug 8 11:15:40 2017 From: mark at livecode.com (Mark Waddingham) Date: Tue, 08 Aug 2017 17:15:40 +0200 Subject: how to get the value of a custom property if the name of the cProperty is in a =?UTF-8?Q?variable=3F?= In-Reply-To: <15dc2651230.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> References: <15dc2651230.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Message-ID: On 2017-08-08 17:09, J. Landman Gay via use-livecode wrote: > In what circumstance would it be necessary to quote the property name? The original case Dr Hawkins encountered was something along the lines of: local someVar put 100 into someVar put the someVar of me Here, this will fetch the custom property '100'. Ideally you'd be able to do put the "someVar" of me Instead - the quoting indicating you want to use that *literal* value for the property name, instead of the variables context. Another case is wanting to fetch custom property names which contain chars you can't have in an unquoted literal: put the "my property name with lots of words (and parantheses) too" of me Currently, using quoted literals in this case works for setting, but doesn't work for getting; and even a quoted literal will still resolve to a variable if one has been defined. I think the latter is probably something which is unlikely to hurt anyone if tweaked though... Warmest Regards, Mark. > > On August 8, 2017 6:05:21 AM Mark Waddingham via use-livecode > wrote: > >> What doesn't work at the moment is if you have a var name which is >> quoted: >> >> local catness >> put "minimal" into catness >> set the "catness" of me to "very much" >> get the customProperties of me >> put the keys of it >> >> Will result in a key 'minimal' and *not* 'catness' - which is perhaps >> not what would be expected. > > -- > Jacqueline Landman Gay | jacque at hyperactivesw.com > HyperActive Software | http://www.hyperactivesw.com > > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From jacque at hyperactivesw.com Tue Aug 8 11:25:48 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Tue, 08 Aug 2017 10:25:48 -0500 Subject: how to get the value of a custom property if the name of the cProperty is in a variable? In-Reply-To: References: <15dc2651230.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Message-ID: <15dc273b060.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> The answer to the first case is "don't do that". Use a different variable name for the local. The second case is interesting. I wouldn't mind having multiple-word property names. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com On August 8, 2017 10:17:29 AM Mark Waddingham via use-livecode wrote: > On 2017-08-08 17:09, J. Landman Gay via use-livecode wrote: >> In what circumstance would it be necessary to quote the property name? > > The original case Dr Hawkins encountered was something along the lines > of: > > local someVar > put 100 into someVar > put the someVar of me > > Here, this will fetch the custom property '100'. Ideally you'd be able > to do > > put the "someVar" of me > > Instead - the quoting indicating you want to use that *literal* value > for the > property name, instead of the variables context. > > Another case is wanting to fetch custom property names which contain > chars you > can't have in an unquoted literal: > > put the "my property name with lots of words (and parantheses) too" of > me > > Currently, using quoted literals in this case works for setting, but > doesn't > work for getting; and even a quoted literal will still resolve to a > variable > if one has been defined. > > I think the latter is probably something which is unlikely to hurt > anyone if > tweaked though... > > Warmest Regards, > > Mark. > >> >> On August 8, 2017 6:05:21 AM Mark Waddingham via use-livecode >> wrote: >> >>> What doesn't work at the moment is if you have a var name which is >>> quoted: >>> >>> local catness >>> put "minimal" into catness >>> set the "catness" of me to "very much" >>> get the customProperties of me >>> put the keys of it >>> >>> Will result in a key 'minimal' and *not* 'catness' - which is perhaps >>> not what would be expected. >> >> -- >> Jacqueline Landman Gay | jacque at hyperactivesw.com >> HyperActive Software | http://www.hyperactivesw.com >> >> >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode > > -- > Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ > LiveCode: Everyone can create apps > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From mark at livecode.com Tue Aug 8 11:33:35 2017 From: mark at livecode.com (Mark Waddingham) Date: Tue, 08 Aug 2017 17:33:35 +0200 Subject: how to get the value of a custom property if the name of the cProperty is in a =?UTF-8?Q?variable=3F?= In-Reply-To: <15dc273b060.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> References: <15dc2651230.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <15dc273b060.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Message-ID: <53b0d115015206856c7a67e582e58f9c@livecode.com> On 2017-08-08 17:25, J. Landman Gay via use-livecode wrote: > The answer to the first case is "don't do that". Use a different > variable name for the local. Well, yes, that is certainly one way to look at it! However, *usually* quotes are used to ensure something is treated as the literal value so my general feeling (since quoted property names only work in some situations) is that this is actually an error, and was never intended. Indeed, it comes down to *not* checking whether something is an IDENTIFIER or a STRING in the parsing code before looking up a variable. (Of course, I'm now going to go off and see if you can use quoted variables in other places - I bet that's going to a 50/50 chance in every place!) > The second case is interesting. I wouldn't mind having multiple-word > property names. Its not just that - it allows you to not have to use variable indirection if your property names aren't identifiers too. Of course, if were all good pandas we'd probably try and avoid using anything other than (single) identifiers and were never the same as any local, script local or global variable name... Warmest Regards, Mark. > -- > Jacqueline Landman Gay | jacque at hyperactivesw.com > HyperActive Software | http://www.hyperactivesw.com > > > > On August 8, 2017 10:17:29 AM Mark Waddingham via use-livecode > wrote: > >> On 2017-08-08 17:09, J. Landman Gay via use-livecode wrote: >>> In what circumstance would it be necessary to quote the property >>> name? >> >> The original case Dr Hawkins encountered was something along the lines >> of: >> >> local someVar >> put 100 into someVar >> put the someVar of me >> >> Here, this will fetch the custom property '100'. Ideally you'd be able >> to do >> >> put the "someVar" of me >> >> Instead - the quoting indicating you want to use that *literal* value >> for the >> property name, instead of the variables context. >> >> Another case is wanting to fetch custom property names which contain >> chars you >> can't have in an unquoted literal: >> >> put the "my property name with lots of words (and parantheses) too" >> of >> me >> >> Currently, using quoted literals in this case works for setting, but >> doesn't >> work for getting; and even a quoted literal will still resolve to a >> variable >> if one has been defined. >> >> I think the latter is probably something which is unlikely to hurt >> anyone if >> tweaked though... >> >> Warmest Regards, >> >> Mark. >> >>> >>> On August 8, 2017 6:05:21 AM Mark Waddingham via use-livecode >>> wrote: >>> >>>> What doesn't work at the moment is if you have a var name which is >>>> quoted: >>>> >>>> local catness >>>> put "minimal" into catness >>>> set the "catness" of me to "very much" >>>> get the customProperties of me >>>> put the keys of it >>>> >>>> Will result in a key 'minimal' and *not* 'catness' - which is >>>> perhaps >>>> not what would be expected. >>> >>> -- >>> Jacqueline Landman Gay | jacque at hyperactivesw.com >>> HyperActive Software | http://www.hyperactivesw.com >>> >>> >>> >>> _______________________________________________ >>> use-livecode mailing list >>> use-livecode at lists.runrev.com >>> Please visit this url to subscribe, unsubscribe and manage your >>> subscription preferences: >>> http://lists.runrev.com/mailman/listinfo/use-livecode >> >> -- >> Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ >> LiveCode: Everyone can create apps >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode > > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From richmondmathewson at gmail.com Tue Aug 8 11:41:51 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Tue, 8 Aug 2017 18:41:51 +0300 Subject: Leslie Nielsen Message-ID: <804551c9-036b-da72-644a-2e127a8fa7b6@gmail.com> I can send a command to a button like this: send "mouseUp" to btn "BASH" BUT I want to fake having the altKey pressed as well: pseudocode send "mouseUp" with altkey(down) to btn "BASH" can it be done? and if so, how? Richmond. From mark at livecode.com Tue Aug 8 11:42:53 2017 From: mark at livecode.com (Mark Waddingham) Date: Tue, 08 Aug 2017 17:42:53 +0200 Subject: how to get the value of a custom property if the name of the cProperty is in a =?UTF-8?Q?variable=3F?= In-Reply-To: <53b0d115015206856c7a67e582e58f9c@livecode.com> References: <15dc2651230.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <15dc273b060.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <53b0d115015206856c7a67e582e58f9c@livecode.com> Message-ID: On 2017-08-08 17:33, Mark Waddingham via use-livecode wrote: > (Of course, I'm now going to go off and see if you can use quoted > variables in other places - I bet that's going to a 50/50 chance in > every > place!) Okay - so: the of ... Is the *only* place where a check to make sure something is an unquoted literal before looking up a var *is not* done... So I think this was probably *not* intended and is a mistake. i.e. the "foobar" of ... Should actually throw an error at the moment! Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From mark at livecode.com Tue Aug 8 11:44:24 2017 From: mark at livecode.com (Mark Waddingham) Date: Tue, 08 Aug 2017 17:44:24 +0200 Subject: Leslie Nielsen In-Reply-To: <804551c9-036b-da72-644a-2e127a8fa7b6@gmail.com> References: <804551c9-036b-da72-644a-2e127a8fa7b6@gmail.com> Message-ID: <3c27044dceb16093bd745dac441889b8@livecode.com> On 2017-08-08 17:41, Richmond Mathewson via use-livecode wrote: > I can send a command to a button like this: > > send "mouseUp" to btn "BASH" > > BUT I want to fake having the altKey pressed as well: > > pseudocode > > send "mouseUp" with altkey(down) to btn "BASH" > > can it be done? Yes. > and if so, how? Look up the 'click' command in the dictionary :) Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From bobsneidar at iotecdigital.com Tue Aug 8 11:46:30 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Tue, 8 Aug 2017 15:46:30 +0000 Subject: how to get the value of a custom property if the name of the cProperty is in a variable? In-Reply-To: References: <15dc2651230.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Message-ID: famous last words. :-) Bob S > On Aug 8, 2017, at 08:15 , Mark Waddingham via use-livecode wrote: > > I think the latter is probably something which is unlikely to hurt anyone if > tweaked though... > > Warmest Regards, > > Mark. > From ahsoftware at sonic.net Tue Aug 8 11:46:39 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Tue, 8 Aug 2017 08:46:39 -0700 Subject: SORT by length In-Reply-To: References: <14e5288f-f9f7-ae63-0135-d61053d0b925@gmail.com> <97E969C7-D319-49C6-A58C-18D2FA199557@jhjensen.com> <7cf4df44-86b4-c70a-37d0-55c4ddc46d60@gmail.com> <73573CEF-D7EF-4213-ABC2-D475E25B112A@jhjensen.com> Message-ID: <0c9f7d62-fc95-ec8c-5f39-90fe81d3fa9f@sonic.net> On 08/08/2017 07:39 AM, Bob Sneidar via use-livecode wrote: > Paste it into a text only text editor first and you won't get the double line breaks either. I paste from LC directly into Thunderbird regularly. Look in the Preferences | Composition pane There's an option at the bottom for "Configure text format behavior" with a button for "Send Options..." You'll find a checkbox for "Send messages as plain text if possible" as well as a box where you can whitelist the listserv domain for plain text. -- Mark Wieder ahsoftware at gmail.com From tom at makeshyft.com Tue Aug 8 11:47:08 2017 From: tom at makeshyft.com (Tom Glod) Date: Tue, 8 Aug 2017 11:47:08 -0400 Subject: Taking quotes on building LC external for RethinkDB In-Reply-To: <009a7e07-f223-8d6e-ce3c-12a572511678@fourthworld.com> References: <009a7e07-f223-8d6e-ce3c-12a572511678@fourthworld.com> Message-ID: Hi Richard.... the software we build is all self-hosted, so our customers are going to be running the db servers on their own LAN. Definately when we build cloud services for them they will be communicating via an extra layer or two between the db and the world. Thanks for weighing in....I'll post back here once I get the quote from LC. On Mon, Aug 7, 2017 at 10:41 PM, Richard Gaskin via use-livecode < use-livecode at lists.runrev.com> wrote: > Yeah, I started to skim the security notes at > , but when I got to this: > > The best way to secure a RethinkDB cluster is to run it > on a protected network that doesn?t allow access from the > outside world. However, this may not always be feasible. > For example, cloud deployments often require access from > wide area networks. > > There are two main methods RethinkDB provides for securing > the cluster: TLS encryption for connections, and binding > the ports the server uses to specific IP addresses to limit > outside connections. > > ...at that point I had to remind myself of other things demanding my > attention. :) So tempting as it is, setting up a secure cluster is not > something I'll be exploring soon. > > Keep us posted. Interesting system.... > > -- > Richard Gaskin > Fourth World Systems > > > Tom Glod wrote: > > to answer your question, the database cluster will be accepting connections >> and queries from clients directly. >> >> On Mon, Aug 7, 2017 at 11:51 AM, Tom Glod wrote: >> >> Hi Richard ..... like Alex said, there is no Rest api for RethinkDB. The >>> folks at RethinkDB didn't want to expose the whole query language using a >>> rest api, (if i recall correctly they said it is too powerful to do >>> so)...so the driver only accepts queries via driver port and streams >>> resulting json and updates back to client. >>> >>> My desktop client will connect to a local database which (will or can be >>> part) of a distributed cluster. >>> >>> >>> >>> >>> >>> >>> >>> On Mon, Aug 7, 2017 at 10:53 AM, Bob Sneidar via use-livecode < >>> use-livecode at lists.runrev.com> wrote: >>> >>> I was thinking the same thing. This isn't a database function per se, >>>> it's more like a sockets function. >>>> >>>> Bob S >>>> >>>> >>>> > On Aug 5, 2017, at 16:42 , Tom Glod via use-livecode < >>>> use-livecode at lists.runrev.com> wrote: >>>> > >>>> > If you go to this page ..... the specs say that it all happens through >>>> an >>>> > tcp/ip connection where you make a connection, serialize the query >>>> and >>>> > send it .... the db driver port receives queries, and streams data >>>> from >>>> > the db via the TCP/IP back to "subscribed" client. >>>> > >>>> > So it doesn't really need to have anything to do with the current >>>> > revdatabase functions....which the posts seem to be talking about. >>>> I'm >>>> not >>>> > asking for a rewrite of db layer. >>>> >>> > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From hh at hyperhh.de Tue Aug 8 11:49:24 2017 From: hh at hyperhh.de (hh) Date: Tue, 8 Aug 2017 17:49:24 +0200 Subject: how to get the value of a custom property if the name of the cProperty is in a variable? Message-ID: <5D7242DF-44AC-4844-84CB-FFFDCCF96615@hyperhh.de> > JLG wrote: > In what circumstance would it be necessary to quote the property name? Use "&" in a key, for example the "G&T" of me > Mark wrote: > What doesn't work at the moment is if you have a var name which is > quoted: > > local catness > put "minimal" into catness > set the "catness" of me to "very much" > get the customProperties of me > put the keys of it > > Will result in a key 'minimal' and *not* 'catness' - which is perhaps > not what would be expected. From a viewpoint of the "get property /set property" syntax "unexpected results" sounds convincing here, but, TMHO, it is exactly what I would expect from a **viewpoint of array syntax**. on mouseUp local catness put "minimal" into catness --> Then the next two lines set the minimal of me to "very much" --(1) set the "minimal" of me to "very much" --(2) --> are equivalent and create the same key "minimal". --> As catness is "minimal" and is NOT empty, this is also equivalent to set the catness of me to "very much" --(3) --> what is, as usual when quoting, equivalent to set the "catness" of me to "very much" --(4) --> Four equivalent commands (1)-(4) result in the same key "minimal". --> And it["catness"] is empty, correctly. get the customProperties of me put it["catness"] &"/"& it[catness] &"/"& it["minimal"] &"/"& it[minimal] put cr & the keys of it after msg end mouseUp From mark at livecode.com Tue Aug 8 11:49:28 2017 From: mark at livecode.com (Mark Waddingham) Date: Tue, 08 Aug 2017 17:49:28 +0200 Subject: how to get the value of a custom property if the name of the cProperty is in a =?UTF-8?Q?variable=3F?= In-Reply-To: References: <15dc2651230.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Message-ID: <40e3f87b2da6752d049004629f3d50e8@livecode.com> On 2017-08-08 17:46, Bob Sneidar via use-livecode wrote: > famous last words. :-) Indeed - perhaps a slight case of over-optimism on my part... :'( Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From bobsneidar at iotecdigital.com Tue Aug 8 11:52:16 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Tue, 8 Aug 2017 15:52:16 +0000 Subject: SORT by length In-Reply-To: <0c9f7d62-fc95-ec8c-5f39-90fe81d3fa9f@sonic.net> References: <14e5288f-f9f7-ae63-0135-d61053d0b925@gmail.com> <97E969C7-D319-49C6-A58C-18D2FA199557@jhjensen.com> <7cf4df44-86b4-c70a-37d0-55c4ddc46d60@gmail.com> <73573CEF-D7EF-4213-ABC2-D475E25B112A@jhjensen.com> <0c9f7d62-fc95-ec8c-5f39-90fe81d3fa9f@sonic.net> Message-ID: <8A6B5BDA-545C-4F30-A25A-D0ABB8839CC7@iotecdigital.com> On my Mac I get double line breaks when I paste into Apple Mail. The prefs are already set to plain text, so I am not sure why I am still getting the double line breaks. In TextEdit I get single line breaks. Obviously the text editor understands that I didn't really mean cr/lf (or whatever is actually being copied). Apple Mail is not making any assumptions. Seems to me that this is different behavior from V6 and earlier. This started with the unicode updates. Bob S > On Aug 8, 2017, at 08:46 , Mark Wieder via use-livecode wrote: > > On 08/08/2017 07:39 AM, Bob Sneidar via use-livecode wrote: >> Paste it into a text only text editor first and you won't get the double line breaks either. > > I paste from LC directly into Thunderbird regularly. > Look in the Preferences | Composition pane > There's an option at the bottom for "Configure text format behavior" with a button for "Send Options..." > > You'll find a checkbox for "Send messages as plain text if possible" as well as a box where you can whitelist the listserv domain for plain text. > > -- > Mark Wieder > ahsoftware at gmail.com From richmondmathewson at gmail.com Tue Aug 8 11:54:02 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Tue, 8 Aug 2017 18:54:02 +0300 Subject: Leslie Nielsen In-Reply-To: <3c27044dceb16093bd745dac441889b8@livecode.com> References: <804551c9-036b-da72-644a-2e127a8fa7b6@gmail.com> <3c27044dceb16093bd745dac441889b8@livecode.com> Message-ID: That's marvellous . . . as far as it goes: click at the loc of btn "BASH" with altKey The only "snag" is that that calls BOTH of the scripts in btn "BASH" ( mouseDown & mouseUp ) and I really only want to 'get' mouseUp Richmond. On 8/8/17 6:44 pm, Mark Waddingham via use-livecode wrote: > On 2017-08-08 17:41, Richmond Mathewson via use-livecode wrote: >> I can send a command to a button like this: >> >> send "mouseUp" to btn "BASH" >> >> BUT I want to fake having the altKey pressed as well: >> >> pseudocode >> >> send "mouseUp" with altkey(down) to btn "BASH" >> >> can it be done? > > Yes. > >> and if so, how? > > Look up the 'click' command in the dictionary :) > > Warmest Regards, > > Mark. > From bobsneidar at iotecdigital.com Tue Aug 8 11:56:39 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Tue, 8 Aug 2017 15:56:39 +0000 Subject: how to get the value of a custom property if the name of the cProperty is in a variable? In-Reply-To: <5D7242DF-44AC-4844-84CB-FFFDCCF96615@hyperhh.de> References: <5D7242DF-44AC-4844-84CB-FFFDCCF96615@hyperhh.de> Message-ID: Again, don't do that. Years ago I knew a woman who wanted to use special characters on her mac for file names which were perfectly legal with HFS, but NOT legal for NTFS. When we moved her files to a Windows share, some of her files, though visible, were inaccessible. (Why Windows even allowed the files to be written without some kind of warning is another mystery). So I tried to tell her to only use letters, numbers, spaces (if she had to), dashes and underscores. She would not listen. She insisted on naming files her own special way and would not change, but still wanted me to "make it work". Bob S > On Aug 8, 2017, at 08:49 , hh via use-livecode wrote: > >> JLG wrote: >> In what circumstance would it be necessary to quote the property name? > > Use "&" in a key, for example the "G&T" of me From bobsneidar at iotecdigital.com Tue Aug 8 11:58:34 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Tue, 8 Aug 2017 15:58:34 +0000 Subject: Leslie Nielsen In-Reply-To: References: <804551c9-036b-da72-644a-2e127a8fa7b6@gmail.com> <3c27044dceb16093bd745dac441889b8@livecode.com> Message-ID: Are ye daft man?? ;-) Put the code that would run if the alt key were down in another handler, and just call that handler! Bob S > On Aug 8, 2017, at 08:54 , Richmond Mathewson via use-livecode wrote: > > That's marvellous . . . > > as far as it goes: > > click at the loc of btn "BASH" with altKey > > The only "snag" is that that calls BOTH of the scripts in btn "BASH" ( mouseDown & mouseUp ) > > and I really only want to 'get' mouseUp > > Richmond. From ahsoftware at sonic.net Tue Aug 8 11:59:04 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Tue, 8 Aug 2017 08:59:04 -0700 Subject: how to get the value of a custom property if the name of the cProperty is in a variable? In-Reply-To: <5D7242DF-44AC-4844-84CB-FFFDCCF96615@hyperhh.de> References: <5D7242DF-44AC-4844-84CB-FFFDCCF96615@hyperhh.de> Message-ID: On 08/08/2017 08:49 AM, hh via use-livecode wrote: >> JLG wrote: >> In what circumstance would it be necessary to quote the property name? > > Use "&" in a key, for example the "G&T" of me Is there any use case where punctuation in a property name is a good idea? -- Mark Wieder ahsoftware at gmail.com From mark at livecode.com Tue Aug 8 12:00:44 2017 From: mark at livecode.com (Mark Waddingham) Date: Tue, 08 Aug 2017 18:00:44 +0200 Subject: how to get the value of a custom property if the name of the cProperty is in a =?UTF-8?Q?variable=3F?= In-Reply-To: <5D7242DF-44AC-4844-84CB-FFFDCCF96615@hyperhh.de> References: <5D7242DF-44AC-4844-84CB-FFFDCCF96615@hyperhh.de> Message-ID: <71b6e2bf512abb589e31f4a18535fce2@livecode.com> On 2017-08-08 17:49, hh via use-livecode wrote: > From a viewpoint of the "get property /set property" syntax > "unexpected results" sounds convincing here, but, TMHO, it is > exactly what I would expect from a **viewpoint of array syntax**. > > on mouseUp > local catness > put "minimal" into catness > --> Then the next two lines > set the minimal of me to "very much" --(1) > set the "minimal" of me to "very much" --(2) > --> are equivalent and create the same key "minimal". > --> As catness is "minimal" and is NOT empty, this is also equivalent > to > set the catness of me to "very much" --(3) > --> what is, as usual when quoting, equivalent to > set the "catness" of me to "very much" --(4) > --> Four equivalent commands (1)-(4) result in the same key > "minimal". > --> And it["catness"] is empty, correctly. > get the customProperties of me > put it["catness"] &"/"& it[catness] &"/"& it["minimal"] &"/"& > it[minimal] > put cr & the keys of it after msg > end mouseUp Perhaps I'm misunderstanding your point here, but I think array syntax actually helps justify why the current behavior is wrong. Compare: put 100 into redvalue put 0 into myArray[redvalue] put 255 into myArray["redvalue"] To: put 100 into redvalue set the redvalue of me to 0 set the "redvalue" of me to 255 In the first case you get an array { 100: 0, redvalue: 255 }. In the second case the customprops array is { 100: 255 }. Basically everywhere else quoted literals evaluate to the quoted value - unquoted literals might evaluate to the contents of a variable if that variable has been created. In this case (in 'the ... of ...'), though, the quoted literal gets treated as if it doesn't have quotes all the time. Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From ambassador at fourthworld.com Tue Aug 8 12:02:17 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Tue, 8 Aug 2017 09:02:17 -0700 Subject: Script Editor Window being bl**dy-minded In-Reply-To: References: Message-ID: <3819ec75-3b29-d88f-29f9-bf55975b1b87@fourthworld.com> FWIW there's a right-click menu in devolution's DeskView tool, "Center Offscreen Windows". But ideally none of these should be needed. Isn't there some way we can prevent this from happening? I thought the OS was supposed to prevent this, no? What do we tell end-users who do this with windows in our apps? -- Richard Gaskin Fourth World Systems panagiotis merakos wrote: > Hi Richmond, > > Type in the msg box: > > "set the loc of the mousestack to the screenloc" -- BUT DO NOT PRESS ENTER > > Then place your mouse over the script editor window, and now press Enter > > Hope this helps, > Panos > -- > > On Tue, Aug 8, 2017 at 11:53 AM, Richmond Mathewson via use-livecode < > use-livecode at lists.runrev.com> wrote: > >> Somehow I did something and my scriptEditor window >> got stuck with its grab-bar off the top of my monitor window >> so there is no way I can either move it or resize it. >> >> Richmond. From tore.nilsen at me.com Tue Aug 8 12:02:55 2017 From: tore.nilsen at me.com (Tore Nilsen) Date: Tue, 08 Aug 2017 18:02:55 +0200 Subject: Leslie Nielsen In-Reply-To: References: <804551c9-036b-da72-644a-2e127a8fa7b6@gmail.com> <3c27044dceb16093bd745dac441889b8@livecode.com> Message-ID: <35E48192-C6D6-4F3A-98A6-FD3BFF4F2588@me.com> Try this: dispatch mouseUp to button "BASH" with true Regards Tore > 8. aug. 2017 kl. 17:54 skrev Richmond Mathewson via use-livecode : > > That's marvellous . . . > > as far as it goes: > > click at the loc of btn "BASH" with altKey > > The only "snag" is that that calls BOTH of the scripts in btn "BASH" ( mouseDown & mouseUp ) > > and I really only want to 'get' mouseUp > > Richmond. > > On 8/8/17 6:44 pm, Mark Waddingham via use-livecode wrote: >> On 2017-08-08 17:41, Richmond Mathewson via use-livecode wrote: >>> I can send a command to a button like this: >>> >>> send "mouseUp" to btn "BASH" >>> >>> BUT I want to fake having the altKey pressed as well: >>> >>> pseudocode >>> >>> send "mouseUp" with altkey(down) to btn "BASH" >>> >>> can it be done? >> >> Yes. >> >>> and if so, how? >> >> Look up the 'click' command in the dictionary :) >> >> Warmest Regards, >> >> Mark. >> > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From bobsneidar at iotecdigital.com Tue Aug 8 12:04:49 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Tue, 8 Aug 2017 16:04:49 +0000 Subject: how to get the value of a custom property if the name of the cProperty is in a variable? In-Reply-To: <71b6e2bf512abb589e31f4a18535fce2@livecode.com> References: <5D7242DF-44AC-4844-84CB-FFFDCCF96615@hyperhh.de> <71b6e2bf512abb589e31f4a18535fce2@livecode.com> Message-ID: <0F7FD95D-82F2-4D5A-8780-5BE95BF372B0@iotecdigital.com> I agree here with Mark that this is an oversight, an aberration. It should't work the way it presently does, and I would not count on it being this way forever. Some other issue may arise in the future requiring someone to "fix this" and your code will break. Swim away from the other fish if you like, but beware of the sharks lurking about. Bob S > On Aug 8, 2017, at 09:00 , Mark Waddingham via use-livecode wrote: > > Perhaps I'm misunderstanding your point here, but I think array syntax actually helps justify why the current behavior is wrong. Compare: > > put 100 into redvalue > put 0 into myArray[redvalue] > put 255 into myArray["redvalue"] > > To: > > put 100 into redvalue > set the redvalue of me to 0 > set the "redvalue" of me to 255 > > In the first case you get an array { 100: 0, redvalue: 255 }. > > In the second case the customprops array is { 100: 255 }. > > Basically everywhere else quoted literals evaluate to the quoted value - unquoted literals might evaluate to the contents of a variable if that variable has been created. In this case (in 'the ... of ...'), though, the quoted literal gets treated as if it doesn't have quotes all the time. > > Warmest Regards, > > Mark. > > -- > Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ > LiveCode: Everyone can create apps From tore.nilsen at me.com Tue Aug 8 12:05:00 2017 From: tore.nilsen at me.com (Tore Nilsen) Date: Tue, 08 Aug 2017 18:05:00 +0200 Subject: Leslie Nielsen In-Reply-To: References: <804551c9-036b-da72-644a-2e127a8fa7b6@gmail.com> <3c27044dceb16093bd745dac441889b8@livecode.com> Message-ID: <2043801F-60E0-4C83-A8E4-39218E93E133@me.com> And change the script in the BASH button to something like this: on mouseUp pAltKey if pAltKey then answer "Alt key was down" else answer "Alt key was up" end if end mouseUp > 8. aug. 2017 kl. 17:54 skrev Richmond Mathewson via use-livecode : > > That's marvellous . . . > > as far as it goes: > > click at the loc of btn "BASH" with altKey > > The only "snag" is that that calls BOTH of the scripts in btn "BASH" ( mouseDown & mouseUp ) > > and I really only want to 'get' mouseUp > > Richmond. > > On 8/8/17 6:44 pm, Mark Waddingham via use-livecode wrote: >> On 2017-08-08 17:41, Richmond Mathewson via use-livecode wrote: >>> I can send a command to a button like this: >>> >>> send "mouseUp" to btn "BASH" >>> >>> BUT I want to fake having the altKey pressed as well: >>> >>> pseudocode >>> >>> send "mouseUp" with altkey(down) to btn "BASH" >>> >>> can it be done? >> >> Yes. >> >>> and if so, how? >> >> Look up the 'click' command in the dictionary :) >> >> Warmest Regards, >> >> Mark. >> > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From mark at livecode.com Tue Aug 8 12:05:37 2017 From: mark at livecode.com (Mark Waddingham) Date: Tue, 08 Aug 2017 18:05:37 +0200 Subject: how to get the value of a custom property if the name of the cProperty is in a =?UTF-8?Q?variable=3F?= In-Reply-To: References: <5D7242DF-44AC-4844-84CB-FFFDCCF96615@hyperhh.de> Message-ID: On 2017-08-08 17:59, Mark Wieder via use-livecode wrote: > On 08/08/2017 08:49 AM, hh via use-livecode wrote: >>> JLG wrote: >>> In what circumstance would it be necessary to quote the property >>> name? >> >> Use "&" in a key, for example the "G&T" of me > > Is there any use case where punctuation in a property name is a good > idea? Is there any use case where punctuation in a variable name is a good idea? ;) As a custom property set is an unconstrained array; you can actually have custom properties which have any string as key (set via the customProperties property) - so it is entirely possible to create such things. Whether you should or not is another matter, but that's true of lots of things in LiveCode (and many programming languages in general). The main issue here (I think) is the inconsistency in evaluation of quoted literals - it means that you can't say "A quoted literal always evaluates to the quoted value" Instead you have to say: "In all but the case of using the indirect form of setting a custom property, a quoted literal will evaluate to the quoted value" Having simple rules which are applicable in all cases both makes things easier to learn, and harder to make mistakes (because you don't trip yourself up on unique inconsistencies which you may have never known, or have forgotten). Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From ambassador at fourthworld.com Tue Aug 8 12:05:46 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Tue, 8 Aug 2017 09:05:46 -0700 Subject: Taking quotes on building LC external for RethinkDB In-Reply-To: References: Message-ID: <70a07851-7db3-ad1a-9dae-919ab5acf720@fourthworld.com> Tom Glod wrote: > Hi Richard.... the software we build is all self-hosted, so our customers > are going to be running the db servers on their own LAN. Much simpler indeed. Will you be providing the box as well? Or automating the installation/setup? -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From ahsoftware at sonic.net Tue Aug 8 12:11:02 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Tue, 8 Aug 2017 09:11:02 -0700 Subject: how to get the value of a custom property if the name of the cProperty is in a variable? In-Reply-To: References: <5D7242DF-44AC-4844-84CB-FFFDCCF96615@hyperhh.de> Message-ID: On 08/08/2017 08:56 AM, Bob Sneidar via use-livecode wrote: > Again, don't do that. > > Years ago I knew a woman who wanted to use special characters on her mac for file names which were perfectly legal with HFS, but NOT legal for NTFS. When we moved her files to a Windows share, some of her files, though visible, were inaccessible. (Why Windows even allowed the files to be written without some kind of warning is another mystery). Heh. Once on a Windows machine I ended up with a filename that had a trailing space. Nothing would get rid of it. Nothing. Every disk utility I tried found the file with no problem, but deleting the file failed because the trailing space wasn't recognized by the OS. The File-That-Wouldn't-Die lived on until the disk was reformatted. -- Mark Wieder ahsoftware at gmail.com From dochawk at gmail.com Tue Aug 8 12:52:58 2017 From: dochawk at gmail.com (Dr. Hawkins) Date: Tue, 8 Aug 2017 09:52:58 -0700 Subject: how to get the value of a custom property if the name of the cProperty is in a variable? In-Reply-To: <53b0d115015206856c7a67e582e58f9c@livecode.com> References: <15dc2651230.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <15dc273b060.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <53b0d115015206856c7a67e582e58f9c@livecode.com> Message-ID: On Tue, Aug 8, 2017 at 8:33 AM, Mark Waddingham via use-livecode < use-livecode at lists.runrev.com> wrote: > On 2017-08-08 17:25, J. Landman Gay via use-livecode wrote: > >> The answer to the first case is "don't do that". Use a different >> variable name for the local. >> > > Well, yes, that is certainly one way to look at it! > The catch is that this isn't something that I stumbled across while initially developing. It took a couple of years for things coming from two different directions, each consistent in their own right, to collide like this. I see it as more of a maintenance issue than a development issue (but, then that's where I was bit). I'm also bothered by *not* being able to use a text literal in quotes; I'm generally vary careful about declared variables, etc. (I'd really like an option to enforce case in variable names!) -- Dr. Richard E. Hawkins, Esq. (702) 508-8462 From dochawk at gmail.com Tue Aug 8 12:58:04 2017 From: dochawk at gmail.com (Dr. Hawkins) Date: Tue, 8 Aug 2017 09:58:04 -0700 Subject: how to get the value of a custom property if the name of the cProperty is in a variable? In-Reply-To: References: <5D7242DF-44AC-4844-84CB-FFFDCCF96615@hyperhh.de> Message-ID: On Tue, Aug 8, 2017 at 8:56 AM, Bob Sneidar via use-livecode < use-livecode at lists.runrev.com> wrote: > > Years ago I knew a woman who wanted to use special characters on her mac > for file names which were perfectly legal with HFS, but NOT legal for NTFS. > When we moved her files to a Windows share, some of her files, though > visible, were inaccessible. (Why Windows even allowed the files to be > written without some kind of warning is another mystery). > There is a long and tragic history of OSs allowing applications and calls to create illegal file names . . . My first (but not last) was discovering that CP/M would let MBASIC create a file with a lower case name, even though CP/M was uppercase. I want to say that it displayed as uppercase in CP/M, too. I think I ended up with two files with the same name . . . The *ONLY* punctuation I allow in file names are dot and underbar, and this is enforced upon staff. There aren't many others, if any, that have meaning in *some* OS or another . . . -- Dr. Richard E. Hawkins, Esq. (702) 508-8462 From tom at makeshyft.com Tue Aug 8 13:09:15 2017 From: tom at makeshyft.com (Tom Glod) Date: Tue, 8 Aug 2017 13:09:15 -0400 Subject: Taking quotes on building LC external for RethinkDB In-Reply-To: <70a07851-7db3-ad1a-9dae-919ab5acf720@fourthworld.com> References: <70a07851-7db3-ad1a-9dae-919ab5acf720@fourthworld.com> Message-ID: The plan so far is to work with the IT dept (guy or gal) and help them to set up safely and securely based on their particular requirements. Never considered providing our own boxes..... but i might think about it now. There'd be an increased cost, but decreased costs elsewhere. Decisions Decisions..... thanks for suggestion. On Tue, Aug 8, 2017 at 12:05 PM, Richard Gaskin via use-livecode < use-livecode at lists.runrev.com> wrote: > Tom Glod wrote: > > Hi Richard.... the software we build is all self-hosted, so our customers >> are going to be running the db servers on their own LAN. >> > > Much simpler indeed. Will you be providing the box as well? Or > automating the installation/setup? > > -- > Richard Gaskin > Fourth World Systems > Software Design and Development for the Desktop, Mobile, and the Web > ____________________________________________________________________ > Ambassador at FourthWorld.com http://www.FourthWorld.com > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From ambassador at fourthworld.com Tue Aug 8 13:31:39 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Tue, 8 Aug 2017 10:31:39 -0700 Subject: Taking quotes on building LC external for RethinkDB In-Reply-To: References: Message-ID: <0f99b2fd-8d16-531c-43e8-bac1600b1905@fourthworld.com> Tom Glod wrote: > The plan so far is to work with the IT dept (guy or gal) and help them > to set up safely and securely based on their particular requirements. No disrespect to IT staff keeping businesses running safely, but FWUW the main reason we ported one of our apps from native to web-only was to bypass IT departments. Many of my friends work in IT so I appreciate what they're up against, but man oh man the lengthy conversation we'd have with IT managers. We worked really hard to make the app as self-contained and firewall-friendly as possible, and our setup was so simple the one-page Installation Guide really only needed to be one sentence ("Copy this folder to a shared drive"). But no IT person would believe how easy it was so we padded it with extra verbage and a diagram. And even then we got countless requests for meetings and conference calls, questions about DLL requirements we didn't have, firewall settings we don't need, and more. Ultimately we found we were spending more time on the phone with IT than we were with customers. Moving the product to the web bypassed that conversation entirely, allowing much simpler conversations about features with prospects and about value with managers. Never had another IT conference call again. Not all products lend themselves to the web, of course. In our case the product was primarily content, with minimal interactivity, so it was a good fit. Good enough to eventually lead to acquisition of that company. I'm familiar with your app so I don't expect the web will be as easy an option, if practical at all. Just budget time for pre-sales support, and time spent on an Installation Guide for IT is probably time well spent (at least much better than not having a thorough one). Be willing to revise it regularly as you learn new concerns IT departments share. > Never considered providing our own boxes..... but i might think about > it now. > There'd be an increased cost, but decreased costs elsewhere. Decisions > Decisions..... > > thanks for suggestion. Appliances are probably a lot less attractive for businesses large enough to have dedicated IT staff. But for many SMBs they may be quite useful. The hardware needed for servers is usually much more modest than a client desktop needs, so hard cost is low (small form factor barebones can provide great value, not just in hardware cost but also in low energy consumption - lean green machines). The bigger expense is setup and testing, but if you set up a custom ISO with everything you need pre-installed you can cut that time tremendously. With remote admin you can keep it current and perform troubleshooting as needed, covered with a support subscription as a supplemental revenue stream. And of course a "virtual appliance" may be even better: AWS or Google Cloud instance set up and ready to go with no on-prem requirements (read, "No chance the customer's intern will accidentally pull the plug, but with the tradeoffs inherent in relying on public cloud services"). -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From merakosp at gmail.com Tue Aug 8 13:35:53 2017 From: merakosp at gmail.com (panagiotis merakos) Date: Tue, 8 Aug 2017 18:35:53 +0100 Subject: SORT by length In-Reply-To: <8A6B5BDA-545C-4F30-A25A-D0ABB8839CC7@iotecdigital.com> References: <14e5288f-f9f7-ae63-0135-d61053d0b925@gmail.com> <97E969C7-D319-49C6-A58C-18D2FA199557@jhjensen.com> <7cf4df44-86b4-c70a-37d0-55c4ddc46d60@gmail.com> <73573CEF-D7EF-4213-ABC2-D475E25B112A@jhjensen.com> <0c9f7d62-fc95-ec8c-5f39-90fe81d3fa9f@sonic.net> <8A6B5BDA-545C-4F30-A25A-D0ABB8839CC7@iotecdigital.com> Message-ID: @Bob this is a bug, introduced in LC 8: http://quality.livecode.com/show_bug.cgi?id=18699 On Tue, Aug 8, 2017 at 4:52 PM, Bob Sneidar via use-livecode < use-livecode at lists.runrev.com> wrote: > On my Mac I get double line breaks when I paste into Apple Mail. The prefs > are already set to plain text, so I am not sure why I am still getting the > double line breaks. In TextEdit I get single line breaks. Obviously the > text editor understands that I didn't really mean cr/lf (or whatever is > actually being copied). Apple Mail is not making any assumptions. > > Seems to me that this is different behavior from V6 and earlier. This > started with the unicode updates. > > Bob S > > > > On Aug 8, 2017, at 08:46 , Mark Wieder via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > > On 08/08/2017 07:39 AM, Bob Sneidar via use-livecode wrote: > >> Paste it into a text only text editor first and you won't get the > double line breaks either. > > > > I paste from LC directly into Thunderbird regularly. > > Look in the Preferences | Composition pane > > There's an option at the bottom for "Configure text format behavior" > with a button for "Send Options..." > > > > You'll find a checkbox for "Send messages as plain text if possible" as > well as a box where you can whitelist the listserv domain for plain text. > > > > -- > > Mark Wieder > > ahsoftware at gmail.com > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From hh at hyperhh.de Tue Aug 8 13:59:11 2017 From: hh at hyperhh.de (hh) Date: Tue, 8 Aug 2017 19:59:11 +0200 Subject: Leslie Nielsen Message-ID: <28956A0B-9919-442C-8F94-AF5BC60F7D38@hyperhh.de> > Tore wrote: > And change the script in the BASH button to something like this: > on mouseUp pAltKey > if pAltKey then > answer "Alt key was down" > else > answer "Alt key was up" > end if > end mouseUp Tore, we have to use a second param, e.g. on mouseUp pButton, pAltkey The first param is *always* the button number, so your script above will not work if pAltkey is the first param. From jacque at hyperactivesw.com Tue Aug 8 14:23:37 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Tue, 8 Aug 2017 13:23:37 -0500 Subject: Leslie Nielsen In-Reply-To: <2043801F-60E0-4C83-A8E4-39218E93E133@me.com> References: <804551c9-036b-da72-644a-2e127a8fa7b6@gmail.com> <3c27044dceb16093bd745dac441889b8@livecode.com> <2043801F-60E0-4C83-A8E4-39218E93E133@me.com> Message-ID: On 8/8/17 11:05 AM, Tore Nilsen via use-livecode wrote: > And change the script in the BASH button to something like this: > > on mouseUp pAltKey > if pAltKey then > answer "Alt key was down" > else > answer "Alt key was up" > end if > end mouseUp This will error. The parameter is always an integer representing the mouse button that was pressed. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com From tore.nilsen at me.com Tue Aug 8 15:05:03 2017 From: tore.nilsen at me.com (Tore Nilsen) Date: Tue, 08 Aug 2017 21:05:03 +0200 Subject: Leslie Nielsen In-Reply-To: References: <804551c9-036b-da72-644a-2e127a8fa7b6@gmail.com> <3c27044dceb16093bd745dac441889b8@livecode.com> <2043801F-60E0-4C83-A8E4-39218E93E133@me.com> Message-ID: <9B72F658-4280-4560-A423-2EE4F470A5EE@me.com> You are right! I have lived to long in the Mac world and did not think of a mouse with more than one button. This script will work though: In the button sending the mouseUp: on mouseUp dispatch mouseUp to button "BASH" with 1,true end mouseUp In the button receiving the mouseUp call: on mouseUp pButton pAltKey if pAltKey then answer "Alt key was down" else answer "Alt key was up" end if end mouseUp Regards Tore > 8. aug. 2017 kl. 20:23 skrev J. Landman Gay via use-livecode : > > On 8/8/17 11:05 AM, Tore Nilsen via use-livecode wrote: >> And change the script in the BASH button to something like this: >> on mouseUp pAltKey >> if pAltKey then >> answer "Alt key was down" >> else >> answer "Alt key was up" >> end if >> end mouseUp > > This will error. The parameter is always an integer representing the mouse button that was pressed. > > -- > Jacqueline Landman Gay | jacque at hyperactivesw.com > HyperActive Software | http://www.hyperactivesw.com > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From bobsneidar at iotecdigital.com Tue Aug 8 15:42:13 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Tue, 8 Aug 2017 19:42:13 +0000 Subject: datagrid scrolling on second monitor Message-ID: <9D64A936-7294-4F66-8FFD-119DECB83130@iotecdigital.com> Here's an odd one: Scrolling a datagrid down on an alternate monitor goes slowly with 8.1.6. Scrolling up goes even slower. Move the window to primary stack all seems normal again. Bob S From hh at hyperhh.de Tue Aug 8 15:59:14 2017 From: hh at hyperhh.de (hh) Date: Tue, 8 Aug 2017 21:59:14 +0200 Subject: how to get the value of a custom property if the name of the cProperty is in a variable? Message-ID: > Richard H. wrote: > I'm also bothered by *not* being able to use a text literal in quotes; > I'm generally vary careful about declared variables, etc. (I'd really > like an option to enforce case in variable names!) on mouseUp put "hello" into p1 put quote&"hello""e into p2 set the p1 of me to "new1" set the p2 of me to "new2" put the p1 of me && the p2 of me end mouseUp This works here as it should. The keys become "hello" (incl.quotes) and hello (without quotes). What do I not understand in your statement above? What do you mean by "use a text literal in quotes"? From jonathandlynch at gmail.com Tue Aug 8 18:25:04 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Tue, 8 Aug 2017 18:25:04 -0400 Subject: Android Browser Widget JS problem Message-ID: On any other platform, javascript has had no trouble detecting clientX,screenX,and pageX following touch events and mouse events. These are how JS detects where the user's finger is, on the screen. On the browser widget in android (6.0.1) it is just returning undefined or 0. Can anyone suggest ways to get finger positions on this platform? Thanks! Sent from my iPhone From hh at hyperhh.de Tue Aug 8 18:35:00 2017 From: hh at hyperhh.de (hh) Date: Wed, 9 Aug 2017 00:35:00 +0200 Subject: Android Browser Widget JS problem Message-ID: Did you already read https://www.html5rocks.com/en/mobile/touch/ to that? From jonathandlynch at gmail.com Tue Aug 8 19:46:50 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Tue, 8 Aug 2017 19:46:50 -0400 Subject: Android Browser Widget JS problem In-Reply-To: References: Message-ID: <24A01F1C-76D2-4E75-BA53-5EA360CFF8FE@gmail.com> Thanks Hermann, Weirdly, it is not generating touch events, just mouse events. Even so, mouse move should generate e.screenX. Actually, clientX, screenX, and pageX are all in the available properties from the event object, but they do not have usable content. Sent from my iPhone > On Aug 8, 2017, at 6:35 PM, hh via use-livecode wrote: > > Did you already read > https://www.html5rocks.com/en/mobile/touch/ > to that? > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From ahsoftware at sonic.net Tue Aug 8 21:38:52 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Tue, 8 Aug 2017 18:38:52 -0700 Subject: math, bigly Message-ID: <3b70a3d6-b4b6-5325-ce55-1b019803504f@sonic.net> Phooey... put baseconvert("100000001",16,10) ...and yes, I understand what's going on under the hood, but I'm annoyed that the IDE doesn't give me an overflow warning if I try to perform an operation on a number that's bigger than 0xFFFFFFFF. Instead, it just happily trims it down to an unsigned integer and proceeds to give me a wrong result. I came across this yesterday handing two large numbers to the bitXor operand which threw no errors and went on with the rest of the calculation. I had to backtrack to figure out what was going on, and finally ended up writing my own bitwise operators to deal with this. -- Mark Wieder ahsoftware at gmail.com From brahma at hindu.org Tue Aug 8 23:39:29 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Wed, 9 Aug 2017 03:39:29 +0000 Subject: Parent of Target Message-ID: <9FA2E439-5F28-4EC1-B087-142D3E2D24FF@hindu.org> The more we separate our code/libraries/behaviors from the binary UI, the more I find myself trying to dispatch call backs or other messages back to the group/card/stack that has a behavior and not the individual control: widget/button/field on the card itself, whose job was simply to intercept a mouse event and server as the target in higher switch. So you need to get the long ID widget id 1104 of card id 1002 of stack "/Users/Brahmanathaswami/Documents/_Siva-Siva-App/modules/listen/listen.livecode" # widget is "downloadSelection" so it seems a bit "hacky" but all I can think of to send a callback to the behavior attached to the card and not the widget itself is: put the long ID of the target into pRequestedBy delete word 1 to 4 of pRequestedBy dispatch "someCommand" to "someOtherStack with param1, param 2, sRequestedBy # intent is, once load URL is done to close the download view dispatch update commands aback to the UI that initiated the Download: the stack "listen" maybe hacky, but simple enough and well, this *is* supposed to be "English like coding" but sometimes my code seems like "baby xTalk" is there a better way? OTOH Baby xTalk is more fun than C++! BR From monte at appisle.net Tue Aug 8 23:43:42 2017 From: monte at appisle.net (Monte Goulding) Date: Wed, 9 Aug 2017 13:43:42 +1000 Subject: Parent of Target In-Reply-To: <9FA2E439-5F28-4EC1-B087-142D3E2D24FF@hindu.org> References: <9FA2E439-5F28-4EC1-B087-142D3E2D24FF@hindu.org> Message-ID: <9EECE76E-8AEF-497C-802B-D637C13304CB@appisle.net> > On 9 Aug 2017, at 1:39 pm, Sannyasin Brahmanathaswami via use-livecode wrote: > > is there a better way? Perhaps you want this? the long owner of the target or the long owner of me Of course things get a bit more complicated if you want the card of or the stack of the object? we really should put some read only properties in for those... Cheers Monte From jacque at hyperactivesw.com Wed Aug 9 02:38:10 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Wed, 09 Aug 2017 01:38:10 -0500 Subject: Parent of Target In-Reply-To: <9FA2E439-5F28-4EC1-B087-142D3E2D24FF@hindu.org> References: <9FA2E439-5F28-4EC1-B087-142D3E2D24FF@hindu.org> Message-ID: <15dc5b6fc50.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> I'm not sure I follow all your explanation but you can refer to the object that holds the behavior script as "this me". I still get a kick out of that but it's quite appropriate. On August 8, 2017 10:41:46 PM Sannyasin Brahmanathaswami via use-livecode wrote: > The more we separate our code/libraries/behaviors from the binary UI, the > more I find myself trying to dispatch call backs or other messages back to > the group/card/stack that has a behavior and not the individual control: > widget/button/field on the card itself, whose job was simply to intercept a > mouse event and server as the target in higher switch. So you need to get > the long ID -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com From hh at hyperhh.de Wed Aug 9 05:21:56 2017 From: hh at hyperhh.de (hh) Date: Wed, 9 Aug 2017 11:21:56 +0200 Subject: Android Browser Widget JS problem Message-ID: <91CFBFB3-08C0-4784-BA2E-CFC4AC46388C@hyperhh.de> Have you already seen the answer from here: https://stackoverflow.com/questions/9585487/cant-get-coordinates-of-touchevents-in-javascript-on-android-devices ?? From hh at hyperhh.de Wed Aug 9 05:36:30 2017 From: hh at hyperhh.de (hh) Date: Wed, 9 Aug 2017 11:36:30 +0200 Subject: math, bigly Message-ID: > Mark wrote: > but I'm annoyed that the IDE doesn't give me an overflow warning if I try > to perform an operation on a number that's bigger than 0xFFFFFFFF. > Instead, it just happily trims it down to an unsigned integer and proceeds > to give me a wrong result. Hey Mark. Don't complain because *you* are easily able to work around your "not-reading-the-dictionary" ;-)) From the baseconvert entry of the dictionary: baseConvert(number, originalBase, destinationBase) The number must be an integer between zero and 4,294,967,295 (2^32 - 1). From jonathandlynch at gmail.com Wed Aug 9 05:46:58 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Wed, 9 Aug 2017 05:46:58 -0400 Subject: Android Browser Widget JS problem In-Reply-To: <91CFBFB3-08C0-4784-BA2E-CFC4AC46388C@hyperhh.de> References: <91CFBFB3-08C0-4784-BA2E-CFC4AC46388C@hyperhh.de> Message-ID: <66B021C4-630C-4788-8071-F2D4AA9B335D@gmail.com> Thanks Hermann, I have that page, but the event object does not have touches in it, which apparently is some times an issue with android webviews. It does have e.latitude and e.longitude, which tells me that the webglearth library is modifying the event object but is not keeping e.pageX and similar on this particular device, even though it works on iOS just fine. I have something kind of working using e.latitude, but it is quirky because the map shifts underneath with these swipes, which changes the references for swiping. Sent from my iPhone > On Aug 9, 2017, at 5:21 AM, hh via use-livecode wrote: > > Have you already seen the answer from here: > https://stackoverflow.com/questions/9585487/cant-get-coordinates-of-touchevents-in-javascript-on-android-devices ?? > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From mark at livecode.com Wed Aug 9 05:58:14 2017 From: mark at livecode.com (Mark Waddingham) Date: Wed, 09 Aug 2017 11:58:14 +0200 Subject: math, bigly In-Reply-To: References: Message-ID: <344430ddee8edf72e10bb88f1b91f5c7@livecode.com> On 2017-08-09 11:36, hh via use-livecode wrote: >> Mark wrote: >> but I'm annoyed that the IDE doesn't give me an overflow warning if I >> try >> to perform an operation on a number that's bigger than 0xFFFFFFFF. >> Instead, it just happily trims it down to an unsigned integer and >> proceeds >> to give me a wrong result. > > Hey Mark. > Don't complain because *you* are easily able to work around your > "not-reading-the-dictionary" ;-)) > > From the baseconvert entry of the dictionary: > baseConvert(number, originalBase, destinationBase) > The number must be an integer between zero and 4,294,967,295 (2^32 - > 1). The engine hasn't ever done range checks on integers - mainly because numbers are doubles so (in most ases) you just lose accuracy / precision as the numbers get larger. In this case it *could* because it is actually using integers. Although, perhaps, baseConvert should be a purely string->string operation - I think that can be done relatively easily without ever having to convert to an integer. This would mean you would be able to base-convert any sized number, although you wouldn't necessarily be able to perform non-precision losing arithmetic operations on the result. Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From paul at researchware.com Wed Aug 9 12:08:09 2017 From: paul at researchware.com (Paul Dupuis) Date: Wed, 9 Aug 2017 12:08:09 -0400 Subject: the defaultStack changes on resume Message-ID: Has any one run into the following situation in LiveCode standalones? In a multiple window application, the user has either a standard window or a modal dialog open (the topWindow which is also the defaultStack). They navigate to a 3rd party application and by some means back to the LC standalone and click a control in the topWindow (again either a standard window or dialog) and that window is NO LONGER the defaultStack so an execution error occurs on the first control referenced that is not fully qualified. Obviously, I can fix this by fully qualifying all my object references (i.e. instead of using fld "x", using fld "X" of stack "Y") but I am curious is anyone else has seen anything like this? From brahma at hindu.org Wed Aug 9 12:12:33 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Wed, 9 Aug 2017 16:12:33 +0000 Subject: Track Mobile Player Props from Back Script Message-ID: <0525724E-1686-4417-AB0D-775E78B0F4CF@hindu.org> If we set up a "lib_MobileControls" and start using on init, effectlvely adding this lib to the backscript. how does this: on playerPropertyAvailable theProperty if theProperty is "duration" then answer "You can now query the length of the movie" end if end playerPropertyAvailable know what player we are talking about? e.g. I don?t think, in a script I have: on playerPropertyAvailable theProperty -- msg sent when enough has content is loaded if theProperty is "duration" then showBusyIndicator false -- Remove the "Loading..." indicator and start playing mobileControlDo pPlayerName, "play" end if end playerPropertyAvailable that pPlayerName is passed from anywhere it is not a local in this lib, but it could be. BR From ahsoftware at sonic.net Wed Aug 9 12:14:20 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Wed, 9 Aug 2017 09:14:20 -0700 Subject: math, bigly In-Reply-To: References: Message-ID: <6a340c40-378e-bbf5-51eb-0d00901347ca@sonic.net> On 08/09/2017 02:36 AM, hh via use-livecode wrote: >> Mark wrote: >> but I'm annoyed that the IDE doesn't give me an overflow warning if I try >> to perform an operation on a number that's bigger than 0xFFFFFFFF. >> Instead, it just happily trims it down to an unsigned integer and proceeds >> to give me a wrong result. > > Hey Mark. > Don't complain because *you* are easily able to work around your > "not-reading-the-dictionary" ;-)) > >>From the baseconvert entry of the dictionary: > baseConvert(number, originalBase, destinationBase) > The number must be an integer between zero and 4,294,967,295 (2^32 - 1). Oops. OK - point sheepishly taken. Is that the definition of integer in the dictionary? The "integer" entry just says "if the value contains digits (and an optional minus sign) and no other characters, it is an integer", which is as simplisitic a definition as the entry for "hex". But what annoys me isn't the fact that baseconvert, etc (bitXor is the one that bit me) only work on integers less than 2^32. It's more the fact that the input data was crunched down to something the functions could handle, and then give me the wrong result with no warning. -- Mark Wieder ahsoftware at gmail.com From bobsneidar at iotecdigital.com Wed Aug 9 12:25:21 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Wed, 9 Aug 2017 16:25:21 +0000 Subject: Parent of Target In-Reply-To: <9EECE76E-8AEF-497C-802B-D637C13304CB@appisle.net> References: <9FA2E439-5F28-4EC1-B087-142D3E2D24FF@hindu.org> <9EECE76E-8AEF-497C-802B-D637C13304CB@appisle.net> Message-ID: I have a function that returns the stack of an object by passing the long id of the object. getParentStack(the long id of me). All it does is parses the long id by using wordOffset to find the word "stack" then returns word tWord to -1 of the long id. Pretty basic. That method can be used for anything, from the owner to the card to the first group etc. I don't think we need more properties per se. Bob S > On Aug 8, 2017, at 20:43 , Monte Goulding via use-livecode wrote: > > >> On 9 Aug 2017, at 1:39 pm, Sannyasin Brahmanathaswami via use-livecode wrote: >> >> is there a better way? > > Perhaps you want this? > > the long owner of the target > > or > > the long owner of me > > Of course things get a bit more complicated if you want the card of or the stack of the object? we really should put some read only properties in for those... > > Cheers > > Monte > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From bobsneidar at iotecdigital.com Wed Aug 9 12:28:18 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Wed, 9 Aug 2017 16:28:18 +0000 Subject: math, bigly In-Reply-To: <6a340c40-378e-bbf5-51eb-0d00901347ca@sonic.net> References: <6a340c40-378e-bbf5-51eb-0d00901347ca@sonic.net> Message-ID: <5C03C821-D175-47CF-B77F-40BCD5BF2B15@iotecdigital.com> I agree. At least the result should contain something about an overflow. Bob S > On Aug 9, 2017, at 09:14 , Mark Wieder via use-livecode wrote: > > But what annoys me isn't the fact that baseconvert, etc (bitXor is the one that bit me) only work on integers less than 2^32. It's more the fact that the input data was crunched down to something the functions could handle, and then give me the wrong result with no warning. > > -- > Mark Wieder > ahsoftware at gmail.com From ahsoftware at sonic.net Wed Aug 9 12:29:17 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Wed, 9 Aug 2017 09:29:17 -0700 Subject: math, bigly In-Reply-To: <344430ddee8edf72e10bb88f1b91f5c7@livecode.com> References: <344430ddee8edf72e10bb88f1b91f5c7@livecode.com> Message-ID: <9620811a-b791-3949-f6d3-678992642966@sonic.net> On 08/09/2017 02:58 AM, Mark Waddingham via use-livecode wrote: > The engine hasn't ever done range checks on integers - mainly because > numbers are doubles so (in most ases) you just lose accuracy / precision > as the numbers get larger. In this case it *could* because it is > actually using integers. I just used baseconvert as an example to show the problem. The one that caused the problem for me was bitXor. It wasn't a big deal to write a string-oriented version that could handle any inputs, but the problem for me is more the way the engine parses the data. Looking into the engine code, by the time you get to the actual bitXor code, the input arguments are already unsigned integers. Since I was passing 20-hex-digit values to bitXor, I would have expected some kind of runtime warning or error or something. It's not just a loss of precision here, it's a totally wrong answer with no indication that anything has gone astray. Writing a string-oriented function to handle this wasn't a problem - realizing that something had gone wrong was. -- Mark Wieder ahsoftware at gmail.com From mark at livecode.com Wed Aug 9 12:29:40 2017 From: mark at livecode.com (Mark Waddingham) Date: Wed, 09 Aug 2017 18:29:40 +0200 Subject: math, bigly In-Reply-To: <6a340c40-378e-bbf5-51eb-0d00901347ca@sonic.net> References: <6a340c40-378e-bbf5-51eb-0d00901347ca@sonic.net> Message-ID: On 2017-08-09 18:14, Mark Wieder via use-livecode wrote: > Oops. OK - point sheepishly taken. Is that the definition of integer > in the dictionary? The "integer" entry just says "if the value > contains digits (and an optional minus sign) and no other characters, > it is an integer", which is as simplisitic a definition as the entry > for "hex". Technically an integer is a number which has no fractional part... So that definition is mostly correct (10e100 is also an integer - just a very large one). The 'problem' in LC is that numbers are internally represented as doubles. Technically doubles can hold integer values up to 2^53-1 faithfully - any larger than that (like 10e100) then they cease to be exact (as the magnitude increases, so do the number of values which are represented the same way). > But what annoys me isn't the fact that baseconvert, etc (bitXor is the > one that bit me) only work on integers less than 2^32. It's more the > fact that the input data was crunched down to something the functions > could handle, and then give me the wrong result with no warning. We certainly could make all operations which only work *exclusively* on integers (bit*) throw an error when out of bounds (and extend them to 2^53-1 max), but the engine never has so this comes with a backwards-compatibility risk - perhaps one we should consider though. The arithmetic operations are not possible to bounds-check in this way as you get a 'graceful' degradation of precision when using them. I'm pretty sure BaseConvert could be made to be an entirely string->string operation as I said previously - not having any bounds limit at all... Although you'd still not be able to do something like base2 -> base10, bit operations, base10 -> base2 if your bit sequence > 52 bits long. So how worth-while that is, I'm not sure. Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From mark at livecode.com Wed Aug 9 12:32:53 2017 From: mark at livecode.com (Mark Waddingham) Date: Wed, 09 Aug 2017 18:32:53 +0200 Subject: math, bigly In-Reply-To: <9620811a-b791-3949-f6d3-678992642966@sonic.net> References: <344430ddee8edf72e10bb88f1b91f5c7@livecode.com> <9620811a-b791-3949-f6d3-678992642966@sonic.net> Message-ID: On 2017-08-09 18:29, Mark Wieder via use-livecode wrote: > Looking into the engine code, by the time you get to the actual bitXor > code, the input arguments are already unsigned integers. Since I was > passing 20-hex-digit values to bitXor, I would have expected some kind > of runtime warning or error or something. It's not just a loss of > precision here, it's a totally wrong answer with no indication that > anything has gone astray. Writing a string-oriented function to handle > this wasn't a problem - realizing that something had gone wrong was. Indeed, I don't disagree - but its how things have ALWAYS been, which means that throwing an error will likely break someone's app somewhere which has come to rely on the behavior the way it is... Please do file a bug about it - it is, at the very least, an anomaly. Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From bobsneidar at iotecdigital.com Wed Aug 9 12:33:24 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Wed, 9 Aug 2017 16:33:24 +0000 Subject: math, bigly In-Reply-To: <3b70a3d6-b4b6-5325-ce55-1b019803504f@sonic.net> References: <3b70a3d6-b4b6-5325-ce55-1b019803504f@sonic.net> Message-ID: <6CDAC41C-B95D-4F35-A5A2-869D756E2B7D@iotecdigital.com> Hi Mark. I remember an old trick to determine if a math function was overflowing. Run the equasion backwards and see if that result equals the initial value. This will reveal rounding errors too. Bob S > On Aug 8, 2017, at 18:38 , Mark Wieder via use-livecode wrote: > > Phooey... > > put baseconvert("100000001",16,10) > > ...and yes, I understand what's going on under the hood, but I'm annoyed that the IDE doesn't give me an overflow warning if I try to perform an operation on a number that's bigger than 0xFFFFFFFF. Instead, it just happily trims it down to an unsigned integer and proceeds to give me a wrong result. I came across this yesterday handing two large numbers to the bitXor operand which threw no errors and went on with the rest of the calculation. I had to backtrack to figure out what was going on, and finally ended up writing my own bitwise operators to deal with this. > > -- > Mark Wieder > ahsoftware at gmail.com From bobsneidar at iotecdigital.com Wed Aug 9 12:41:26 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Wed, 9 Aug 2017 16:41:26 +0000 Subject: the defaultStack changes on resume In-Reply-To: References: Message-ID: BTW I worked around this by using my getParentStack() function. Here it is: function getParentCard pObjectID put offset("card id", pObjectID) into tStartChar put char tStartChar to -1 of pObjectID into tCardID return tCardID end getParentCard function getParentStack pObjectID put wordOffset("stack", pObjectID) into tFirstWord put word tFirstWord to tFirstWord +1 of pObjectID into tParentStack return tParentStack end getParentStack NOTE: I only use single word stack names. This function will have to be reworked to account for multi-word stack names. Honestly though, if people would follow basic conventions about naming things, everything gets much simpler. Bob S > On Aug 9, 2017, at 09:08 , Paul Dupuis via use-livecode wrote: > > Has any one run into the following situation in LiveCode standalones? > > In a multiple window application, the user has either a standard window > or a modal dialog open (the topWindow which is also the defaultStack). > They navigate to a 3rd party application and by some means back to the > LC standalone and click a control in the topWindow (again either a > standard window or dialog) and that window is NO LONGER the defaultStack > so an execution error occurs on the first control referenced that is not > fully qualified. > > Obviously, I can fix this by fully qualifying all my object references > (i.e. instead of using fld "x", using fld "X" of stack "Y") but I am > curious is anyone else has seen anything like this? From mark at livecode.com Wed Aug 9 12:42:09 2017 From: mark at livecode.com (Mark Waddingham) Date: Wed, 09 Aug 2017 18:42:09 +0200 Subject: math, bigly In-Reply-To: <9620811a-b791-3949-f6d3-678992642966@sonic.net> References: <344430ddee8edf72e10bb88f1b91f5c7@livecode.com> <9620811a-b791-3949-f6d3-678992642966@sonic.net> Message-ID: On 2017-08-09 18:29, Mark Wieder via use-livecode wrote: > Looking into the engine code, by the time you get to the actual bitXor > code, the input arguments are already unsigned integers. Since I was > passing 20-hex-digit values to bitXor, I would have expected some kind > of runtime warning or error or something. It's not just a loss of > precision here, it's a totally wrong answer with no indication that > anything has gone astray. Writing a string-oriented function to handle > this wasn't a problem - realizing that something had gone wrong was. Btw, I should mention that the way numbers work in LiveCode has become one of my biggest 'pet peeves' over the last year or so. The current way things work is too simplistic really - it hides the very important distinction between 'exact' and 'inexact' numeric representations, for example. Unfortunately, there's a fair amount of work involved to fix the situation to my satisfaction level - although I think I have a handle on how to do so without hugely adversely affecting general numeric performance. *sigh* Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From bobsneidar at iotecdigital.com Wed Aug 9 12:48:04 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Wed, 9 Aug 2017 16:48:04 +0000 Subject: the defaultStack changes on resume In-Reply-To: References: Message-ID: <5EBC91BC-D574-46C0-A351-48AEEEC72551@iotecdigital.com> Here is an updated version that should work with any stack name: function getParentStack pObjectID put offset("stack ", pObjectID) into tStartChar put char tStartChar to -1 of pObjectID into tParentStack -- the long name of the parent stack return tParentStack end getParentStack Bob S > On Aug 9, 2017, at 09:41 , Bob Sneidar via use-livecode wrote: > > BTW I worked around this by using my getParentStack() function. Here it is: > > function getParentCard pObjectID > put offset("card id", pObjectID) into tStartChar > put char tStartChar to -1 of pObjectID into tCardID > return tCardID > end getParentCard > > function getParentStack pObjectID > put wordOffset("stack", pObjectID) into tFirstWord > put word tFirstWord to tFirstWord +1 of pObjectID into tParentStack > return tParentStack > end getParentStack > > NOTE: I only use single word stack names. This function will have to be reworked to account for multi-word stack names. Honestly though, if people would follow basic conventions about naming things, everything gets much simpler. > > Bob S > > > >> On Aug 9, 2017, at 09:08 , Paul Dupuis via use-livecode wrote: >> >> Has any one run into the following situation in LiveCode standalones? >> >> In a multiple window application, the user has either a standard window >> or a modal dialog open (the topWindow which is also the defaultStack). >> They navigate to a 3rd party application and by some means back to the >> LC standalone and click a control in the topWindow (again either a >> standard window or dialog) and that window is NO LONGER the defaultStack >> so an execution error occurs on the first control referenced that is not >> fully qualified. >> >> Obviously, I can fix this by fully qualifying all my object references >> (i.e. instead of using fld "x", using fld "X" of stack "Y") but I am >> curious is anyone else has seen anything like this? > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From paul at researchware.com Wed Aug 9 12:53:25 2017 From: paul at researchware.com (Paul Dupuis) Date: Wed, 9 Aug 2017 12:53:25 -0400 Subject: the defaultStack changes on resume In-Reply-To: References: Message-ID: <7256f325-3b44-77da-1c75-fdd2a9c333f6@researchware.com> I have handlers like these also. I have multiple work-arounds. You can use suspend and resume to preserve the defaultStack and restore it. Lots of way to work-around. I am curious if others have seen this and whether anyone ever found a reproducible recipe. So you have seen this behavior? In what versions of LC? Did you ever find a consistent recipe to reproduce it? On 8/9/2017 12:41 PM, Bob Sneidar via use-livecode wrote: > BTW I worked around this by using my getParentStack() function. Here it is: > > function getParentCard pObjectID > put offset("card id", pObjectID) into tStartChar > put char tStartChar to -1 of pObjectID into tCardID > return tCardID > end getParentCard > > function getParentStack pObjectID > put wordOffset("stack", pObjectID) into tFirstWord > put word tFirstWord to tFirstWord +1 of pObjectID into tParentStack > return tParentStack > end getParentStack > > NOTE: I only use single word stack names. This function will have to be reworked to account for multi-word stack names. Honestly though, if people would follow basic conventions about naming things, everything gets much simpler. > > Bob S > > > >> On Aug 9, 2017, at 09:08 , Paul Dupuis via use-livecode wrote: >> >> Has any one run into the following situation in LiveCode standalones? >> >> In a multiple window application, the user has either a standard window >> or a modal dialog open (the topWindow which is also the defaultStack). >> They navigate to a 3rd party application and by some means back to the >> LC standalone and click a control in the topWindow (again either a >> standard window or dialog) and that window is NO LONGER the defaultStack >> so an execution error occurs on the first control referenced that is not >> fully qualified. >> >> Obviously, I can fix this by fully qualifying all my object references >> (i.e. instead of using fld "x", using fld "X" of stack "Y") but I am >> curious is anyone else has seen anything like this? > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From bobsneidar at iotecdigital.com Wed Aug 9 12:56:43 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Wed, 9 Aug 2017 16:56:43 +0000 Subject: math, bigly In-Reply-To: References: <344430ddee8edf72e10bb88f1b91f5c7@livecode.com> <9620811a-b791-3949-f6d3-678992642966@sonic.net> Message-ID: I wonder how much leveraging SQLite can help. SQLite has only basic math functions, and you cannot use stored functions, but you CAN map functions to a C API. And if you can do THAT, then someone has written a math API, and maybe that is a good place to start looking. Bob S https://stackoverflow.com/questions/2108870/how-to-create-custom-functions-in-sqlite https://sqlite.org/c3ref/create_function.html > On Aug 9, 2017, at 09:42 , Mark Waddingham via use-livecode wrote: > > Btw, I should mention that the way numbers work in LiveCode has become one of my biggest 'pet peeves' over the last year or so. The current way things work is too simplistic really - it hides the very important distinction between 'exact' and 'inexact' numeric representations, for example. > > Unfortunately, there's a fair amount of work involved to fix the situation to my satisfaction level - although I think I have a handle on how to do so without hugely adversely affecting general numeric performance. *sigh* > > Warmest Regards, > > Mark. > > -- > Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ > LiveCode: Everyone can create apps From bobsneidar at iotecdigital.com Wed Aug 9 13:00:20 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Wed, 9 Aug 2017 17:00:20 +0000 Subject: the defaultStack changes on resume In-Reply-To: <7256f325-3b44-77da-1c75-fdd2a9c333f6@researchware.com> References: <7256f325-3b44-77da-1c75-fdd2a9c333f6@researchware.com> Message-ID: <6A1A2FC2-85B3-4D8C-BB10-DF2221451626@iotecdigital.com> Yes I have had situations where what the built in functions were returning were not expected, and it screwed somethign up, which is why I do not rely on them. It seems a bit ambiguous to me that "this stack" might return different things depending on where the handler resides. By moving a script from a stack handler to a front or backscript, this can cause problems. Therefore I never use those built in calls, having a drop dead accurate way to get what I want anyway. Bob S > On Aug 9, 2017, at 09:53 , Paul Dupuis via use-livecode wrote: > > I have handlers like these also. I have multiple work-arounds. You can > use suspend and resume to preserve the defaultStack and restore it. Lots > of way to work-around. I am curious if others have seen this and whether > anyone ever found a reproducible recipe. > > So you have seen this behavior? In what versions of LC? Did you ever > find a consistent recipe to reproduce it? From bobsneidar at iotecdigital.com Wed Aug 9 13:01:59 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Wed, 9 Aug 2017 17:01:59 +0000 Subject: the defaultStack changes on resume In-Reply-To: References: Message-ID: <547F76E3-B5F0-45C8-8C93-C76C38922CEE@iotecdigital.com> When I suspend a stack is save the current focused object and the current selection. Then on resume stack I restore it. That seems to work really well for me. The topStack should still be the topStack no matter what. Not sure why you need to reference the defaultStack. Bob S > On Aug 9, 2017, at 09:08 , Paul Dupuis via use-livecode wrote: > > Has any one run into the following situation in LiveCode standalones? > > In a multiple window application, the user has either a standard window > or a modal dialog open (the topWindow which is also the defaultStack). > They navigate to a 3rd party application and by some means back to the > LC standalone and click a control in the topWindow (again either a > standard window or dialog) and that window is NO LONGER the defaultStack > so an execution error occurs on the first control referenced that is not > fully qualified. > > Obviously, I can fix this by fully qualifying all my object references > (i.e. instead of using fld "x", using fld "X" of stack "Y") but I am > curious is anyone else has seen anything like this? > > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From ahsoftware at sonic.net Wed Aug 9 13:11:32 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Wed, 9 Aug 2017 10:11:32 -0700 Subject: math, bigly In-Reply-To: References: <344430ddee8edf72e10bb88f1b91f5c7@livecode.com> <9620811a-b791-3949-f6d3-678992642966@sonic.net> Message-ID: <96edd107-023c-71db-1119-2241594f2464@sonic.net> On 08/09/2017 09:56 AM, Bob Sneidar via use-livecode wrote: > I wonder how much leveraging SQLite can help. SQLite has only basic math functions, and you cannot use stored functions, but you CAN map functions to a C API. And if you can do THAT, then someone has written a math API, and maybe that is a good place to start looking. The problem isn't with the math libraries. There's nothing wrong with the way the engine deals with math at that level, and I wouldn't expect SQLite to use anything other than the standard math libraries. The problem I've run into is more at a higher level, dealing with number parsing and runtime overflow detection before truncating input parameters down to unsigned integers and calling the math library. -- Mark Wieder ahsoftware at gmail.com From mark at livecode.com Wed Aug 9 13:15:39 2017 From: mark at livecode.com (Mark Waddingham) Date: Wed, 09 Aug 2017 19:15:39 +0200 Subject: math, bigly In-Reply-To: References: <344430ddee8edf72e10bb88f1b91f5c7@livecode.com> <9620811a-b791-3949-f6d3-678992642966@sonic.net> Message-ID: On 2017-08-09 18:56, Bob Sneidar via use-livecode wrote: >> Btw, I should mention that the way numbers work in LiveCode has become >> one of my biggest 'pet peeves' over the last year or so. The current >> way things work is too simplistic really - it hides the very important >> distinction between 'exact' and 'inexact' numeric representations, for >> example. >> >> Unfortunately, there's a fair amount of work involved to fix the >> situation to my satisfaction level - although I think I have a handle >> on how to do so without hugely adversely affecting general numeric >> performance. *sigh* It isn't doing the math that is hard - there are plenty of libraries which do general precision arithmetic. Even standard 'high-school' algorithms work well for reasonable magnitudes and you only really need to get out the big guns - e.g. the Strassen algorithm - for very large numbers, although that scale is relatively common in 'high-end' cryptography settings (factoring large numbers for the purposes of generating keys and such). The main issue is working out how to do it so that the ability to handle large numeric precision does not impact the performance of the normal sized numeric precision operations. There's also the exact <-> inexact boundary issue too (going from integer/rational -> irrational) - realistically modern processors are only really good at (64-bit) integers, or (64-bit) IEEE floating point values. What you really want is to use machine sized integers for all computations which don't require anything greater than that (i.e < 64-bits these days) *without* penalty; but still allow code to be written which can handle large integers too. I think I've figured out a reasonable way to do that - but it requires type / range analysis. The exact / inexact thing is still troublesome though - in other languages 10 means something different from 10.0. Maybe that's actually reasonable, but part of me feels it is a little subtle. Certainly infinite precision integers would be exceptionally handy - as you also get arbitrary length bitsets like that too (there's an equivalence between dense bitsets and integers, unsurprisingly, you can use the two interchangeably). In any case, the first step before doing anything in this regard is to do a little bit more work on our 'Number' representation internally - and make the engine abstract through its API for various operations rather than just using +/- etc. directly in the implementation of syntax - then we would be able to more easily experiment with internal representations. Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From bobsneidar at iotecdigital.com Wed Aug 9 13:15:35 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Wed, 9 Aug 2017 17:15:35 +0000 Subject: math, bigly In-Reply-To: <96edd107-023c-71db-1119-2241594f2464@sonic.net> References: <344430ddee8edf72e10bb88f1b91f5c7@livecode.com> <9620811a-b791-3949-f6d3-678992642966@sonic.net> <96edd107-023c-71db-1119-2241594f2464@sonic.net> Message-ID: <2087A4CE-8E1A-4F58-A6C7-5C8F71BEBC32@iotecdigital.com> OIC. I was under the impression that the C math libraries deal with numbers of high precision better than Livecode does, perhaps themselves generating errors on overflow. Maybe that is not the case. Bob S > On Aug 9, 2017, at 10:11 , Mark Wieder via use-livecode wrote: > > On 08/09/2017 09:56 AM, Bob Sneidar via use-livecode wrote: >> I wonder how much leveraging SQLite can help. SQLite has only basic math functions, and you cannot use stored functions, but you CAN map functions to a C API. And if you can do THAT, then someone has written a math API, and maybe that is a good place to start looking. > > The problem isn't with the math libraries. There's nothing wrong with the way the engine deals with math at that level, and I wouldn't expect SQLite to use anything other than the standard math libraries. > > The problem I've run into is more at a higher level, dealing with number parsing and runtime overflow detection before truncating input parameters down to unsigned integers and calling the math library. > > -- > Mark Wieder > ahsoftware at gmail.com From ahsoftware at sonic.net Wed Aug 9 13:16:48 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Wed, 9 Aug 2017 10:16:48 -0700 Subject: math, bigly In-Reply-To: References: <344430ddee8edf72e10bb88f1b91f5c7@livecode.com> <9620811a-b791-3949-f6d3-678992642966@sonic.net> Message-ID: On 08/09/2017 09:32 AM, Mark Waddingham via use-livecode wrote: > Please do file a bug about it - it is, at the very least, an anomaly. Done. http://quality.livecode.com/show_bug.cgi?id=20254 -- Mark Wieder ahsoftware at gmail.com From mark at livecode.com Wed Aug 9 13:20:03 2017 From: mark at livecode.com (Mark Waddingham) Date: Wed, 09 Aug 2017 19:20:03 +0200 Subject: math, bigly In-Reply-To: <96edd107-023c-71db-1119-2241594f2464@sonic.net> References: <344430ddee8edf72e10bb88f1b91f5c7@livecode.com> <9620811a-b791-3949-f6d3-678992642966@sonic.net> <96edd107-023c-71db-1119-2241594f2464@sonic.net> Message-ID: <7f5f53753ce1321e6678e469ec6dbd10@livecode.com> On 2017-08-09 19:11, Mark Wieder via use-livecode wrote: > The problem I've run into is more at a higher level, dealing with > number parsing and runtime overflow detection before truncating input > parameters down to unsigned integers and calling the math library. Well there's two things here... 1) An 'easy' language should tell you when you are doing something wrong 2) An 'easy' language shouldn't force you to have to write reasonable things yourself Of course, in the absence of (2), (1) is much more important ;) Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From prothero at earthlearningsolutions.org Wed Aug 9 13:26:56 2017 From: prothero at earthlearningsolutions.org (ELS prothero) Date: Wed, 9 Aug 2017 10:26:56 -0700 Subject: SMS message in LC? Message-ID: <2B240B23-12E0-4142-863F-8FCF5FFDBF84@earthlearningsolutions.org> Folks: Has anybody done sms and voice messaging in livecode apps? I?m looking into whether it would be feasible to create an app for emergency alerts. I am in a neighborhood where there is a high wildfire danger and various existing emergency alert systems are either very expensive or more optimized for marketing. Any thoughts? Best, Bill P. William Prothero, PhD Professor Emeritus University of California, Santa Barbara http://earthlearningsolutions.org From mark at livecode.com Wed Aug 9 13:29:30 2017 From: mark at livecode.com (Mark Waddingham) Date: Wed, 09 Aug 2017 19:29:30 +0200 Subject: math, bigly In-Reply-To: <2087A4CE-8E1A-4F58-A6C7-5C8F71BEBC32@iotecdigital.com> References: <344430ddee8edf72e10bb88f1b91f5c7@livecode.com> <9620811a-b791-3949-f6d3-678992642966@sonic.net> <96edd107-023c-71db-1119-2241594f2464@sonic.net> <2087A4CE-8E1A-4F58-A6C7-5C8F71BEBC32@iotecdigital.com> Message-ID: <790056b567b7d03c576eb47a0c1d5efe@livecode.com> On 2017-08-09 19:15, Bob Sneidar via use-livecode wrote: > OIC. I was under the impression that the C math libraries deal with > numbers of high precision better than Livecode does, perhaps > themselves generating errors on overflow. Maybe that is not the case. C itself does no error checking/bounds checking at all. It is only relatively recently that compiler intrinsics have been available on all platforms we support which would allow an overflow check to be done efficiently (access to the carry flag). Now, that would be fine if we used integers - which we don't - we use IEEE doubles. Of course, the IEEE standard has long had in it the 'exceptions' model for detecting overflow/inexactness and such - however using *that* to efficiently do anything is nigh-on impossible universally. Performance of using the FP exceptions (even non-signalling) is highly variable across processor models and OS combinations. Ideally LiveCode would use decimal arithmetic everywhere from the outside at least (with a fixed controllable precision - number of digits after the decimal point - for anything 'inexact'), and internally use infinite precision integers when there is nothing after the decimal point. That's more an engineering problem in terms of ensuring that in moving to such a model, performance of numeric operations (in general) does not decrease too much (there would be an overhead, its just trying to minimise it which causes all the hard work). Generally C math libraries are infinite precision or nothing - although IBM has some nifty IEEE Decimal emulation code out in the wild blending that with other numeric representations is still not an easy task. Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From bobsneidar at iotecdigital.com Wed Aug 9 13:46:52 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Wed, 9 Aug 2017 17:46:52 +0000 Subject: LC stack version changes between 8 and 9 Message-ID: Is there a stack version change from 8 to 9? If so, I would be averse to developing much in 9 except to play around a bit just to help out. If not, and I was reasonably assured no stack corruption was going to take place (obviously there are no guarantees, and I do make versioning backups) then I thin I would like to start using V9 for my daily developing. Or should I wait until the first RC? Bob S From matthias_livecode_150811 at m-r-d.de Wed Aug 9 13:48:15 2017 From: matthias_livecode_150811 at m-r-d.de (Matthias Rebbe) Date: Wed, 9 Aug 2017 19:48:15 +0200 Subject: SMS message in LC? In-Reply-To: <2B240B23-12E0-4142-863F-8FCF5FFDBF84@earthlearningsolutions.org> References: <2B240B23-12E0-4142-863F-8FCF5FFDBF84@earthlearningsolutions.org> Message-ID: Hi Bill, about 1 or 2 years ago i needed to send automated sms messages. I used Clickatell (http://www.clickatell.com ) for it. They have a very easy API. https://www.clickatell.com/developers/platform/api-documentation/ Regards, Matthias Matthias Rebbe +49 5741 310000 ?matthiasrebbe.eu ? > Am 09.08.2017 um 19:26 schrieb ELS prothero via use-livecode >: > > Folks: > Has anybody done sms and voice messaging in livecode apps? I?m looking into whether it would be feasible to create an app for emergency alerts. I am in a neighborhood where there is a high wildfire danger and various existing emergency alert systems are either very expensive or more optimized for marketing. > > Any thoughts? > Best, > Bill P. > > William Prothero, PhD > Professor Emeritus > University of California, Santa Barbara > http://earthlearningsolutions.org > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From ambassador at fourthworld.com Wed Aug 9 13:50:04 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Wed, 9 Aug 2017 10:50:04 -0700 Subject: math, bigly In-Reply-To: <6a340c40-378e-bbf5-51eb-0d00901347ca@sonic.net> References: <6a340c40-378e-bbf5-51eb-0d00901347ca@sonic.net> Message-ID: <349c5b97-7f11-2350-f256-30ab979c0ec4@fourthworld.com> Mark Wieder wrote: > But what annoys me isn't the fact that baseconvert, etc (bitXor is the > one that bit me) only work on integers less than 2^32. It's more the > fact that the input data was crunched down to something the functions > could handle, and then give me the wrong result with no warning. I got bit by that once myself. Sure, we can read all notes for all Dict entries for each token we use, but most of the time the engine does a good job of informing us when we're using invalid inputs, so it seems reasonable that it would do the same here. Would adding a size check and error handling impair performance much? Also, yes, it would be nice to see it handle larger values. But regardless of size, being a scripting engine, and one with generally good error reporting in most other contexts, it would be nice if invalid inputs were reported with baseConvert. Imagine the frustration of passing an invalid object reference to something like the delete command, and rather than reporting that it couldn't do what it asked you it just arbitrarily deleted some other object instead without notification. ;) -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From mark at livecode.com Wed Aug 9 14:05:30 2017 From: mark at livecode.com (Mark Waddingham) Date: Wed, 09 Aug 2017 19:05:30 +0100 Subject: math, bigly In-Reply-To: <349c5b97-7f11-2350-f256-30ab979c0ec4@fourthworld.com> References: <6a340c40-378e-bbf5-51eb-0d00901347ca@sonic.net> <349c5b97-7f11-2350-f256-30ab979c0ec4@fourthworld.com> Message-ID: On 2017-08-09 18:50, Richard Gaskin via use-livecode wrote: > Imagine the frustration of passing an invalid object reference to > something like the delete command, and rather than reporting that it > couldn't do what it asked you it just arbitrarily deleted some other > object instead without notification. ;) Indeed - that would be frustrating... However, everyone writes code which relies on 'undefined behavior' (which not throwing errors generally results in) at some point - so there is a real issue with adding errors for things after the fact... Particularly as this has been unchecked for the entire history of the engine so a purely stick approach generally just causes user frustration (and the occasional rant) [ this is not to say that bounds-checking in this case would not be better in all ways one could potential imagine ]. Fortunately, there is a potential carrot to go with the stick - we can expand the range of the bit operations (and baseConvert) to 52-bits without too much difficulty I think; and add error checking at the same time. Which would potentially make code which is currently broken 'at the edges' (i.e. rarely touched) not ever encounter an error. Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From hh at hyperhh.de Wed Aug 9 14:47:23 2017 From: hh at hyperhh.de (hh) Date: Wed, 9 Aug 2017 20:47:23 +0200 Subject: math, bigly Message-ID: Is it a good idea to implement a bignum library in LC Builder? From lists at mangomultimedia.com Wed Aug 9 14:48:08 2017 From: lists at mangomultimedia.com (Trevor DeVore) Date: Wed, 9 Aug 2017 13:48:08 -0500 Subject: the defaultStack changes on resume In-Reply-To: References: Message-ID: On Wed, Aug 9, 2017 at 11:08 AM, Paul Dupuis via use-livecode < use-livecode at lists.runrev.com> wrote: > Has any one run into the following situation in LiveCode standalones? > > In a multiple window application, the user has either a standard window > or a modal dialog open (the topWindow which is also the defaultStack). > They navigate to a 3rd party application and by some means back to the > LC standalone and click a control in the topWindow (again either a > standard window or dialog) and that window is NO LONGER the defaultStack > so an execution error occurs on the first control referenced that is not > fully qualified. > > Obviously, I can fix this by fully qualifying all my object references > (i.e. instead of using fld "x", using fld "X" of stack "Y") but I am > curious is anyone else has seen anything like this? > I think this bug report has a recipe for the issue you are seeing: http://quality.livecode.com/show_bug.cgi?id=18030 This has been around for a long time. I don?t know of a workaround other than fully qualifying all object references. -- Trevor DeVore ScreenSteps www.screensteps.com From ambassador at fourthworld.com Wed Aug 9 15:19:06 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Wed, 9 Aug 2017 12:19:06 -0700 Subject: LC stack version changes between 8 and 9 In-Reply-To: References: Message-ID: Bob Sneidar wrote: > Is there a stack version change from 8 to 9? If so, I would be averse > to developing much in 9 except to play around a bit just to help out. IIRC the last format change was between 8.0 and 8.1; 8.1 and 9.0 use the same format. Better, if you do a Save As and choose a specific older format, subsequent use of Save will save in that format. But I've only used that for a really old project made with 6.x. If the choice is between the 8.0 and 8.1 formats, go with 8.1 since it's a much better build anyway. > If not, and I was reasonably assured no stack corruption was going > to take place (obviously there are no guarantees, and I do make > versioning backups) then I thin I would like to start using V9 for > my daily developing. Stack file corruption in very rare in LC, much rarer than in HyperCard or even the last several versions of FileMaker I used (it was so common there they included an item in the File menu to attempt to resurrect corrupted files). That said, corruption is possible with all data in all programs at any time for a wide range of reasons (unexpected power outage, etc.). There's good value in taking full advantage of automated periodic incremental backup systems like Time Machine (Mac) or DejaDup (Ubuntu). Even better, Nextcloud triggers backup to your own self-managed cloud on save, maintaining a definable number of versions while also providing flexible sync for all your computers (I sync my LC Plugins folder and client work folders with it so I'm always working on local copies of the latest stuff no matter which machine I switch to). And of course, there's always just manually making a copy at the beginning of a work session, or when you're about to so something really hairy. :) > Or should I wait until the first RC? Too late. If you find something specific to your project in an RC, it may not be addressable until the next version. In general, with few exceptions RCs are limited in scope to fixing only regressions that occur since the last DP. If you find anything outside of that mandate, there's a chance you just missed the whole version cycle and will have to wait or the next one. As a general rule, developing with the most recent build of any designation, and shipping with the most recent Stable build, will provide the best mix of stability for your customers while maximizing opportunities to address any issues discovered during development. -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From waprothero at gmail.com Wed Aug 9 15:22:51 2017 From: waprothero at gmail.com (William Prothero) Date: Wed, 9 Aug 2017 12:22:51 -0700 Subject: SMS message in LC? In-Reply-To: References: <2B240B23-12E0-4142-863F-8FCF5FFDBF84@earthlearningsolutions.org> Message-ID: <060DA7DB-E252-41C2-9D33-1BD784C135D5@gmail.com> Matthias: Thanks for the link. What I?m hoping for is a way to send both voice and sms alerts to a group. I checked out twilio and they have a very capable api, but it seems more oriented toward marketing and ongoing communication and notifications. For my needs, there might be one or two notifications for an emergency that needs quick response. Anyway, I?m just exploring this. Best, Bill P > On Aug 9, 2017, at 10:48 AM, Matthias Rebbe via use-livecode wrote: > > Hi Bill, > about 1 or 2 years ago i needed to send automated sms messages. I used Clickatell (http://www.clickatell.com ) for it. > They have a very easy API. > https://www.clickatell.com/developers/platform/api-documentation/ > > Regards, > Matthias > > Matthias Rebbe > +49 5741 310000 > ?matthiasrebbe.eu ? > >> Am 09.08.2017 um 19:26 schrieb ELS prothero via use-livecode >: >> >> Folks: >> Has anybody done sms and voice messaging in livecode apps? I?m looking into whether it would be feasible to create an app for emergency alerts. I am in a neighborhood where there is a high wildfire danger and various existing emergency alert systems are either very expensive or more optimized for marketing. >> >> Any thoughts? >> Best, >> Bill P. >> >> William Prothero, PhD >> Professor Emeritus >> University of California, Santa Barbara >> http://earthlearningsolutions.org >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From merakosp at gmail.com Wed Aug 9 15:35:36 2017 From: merakosp at gmail.com (panagiotis merakos) Date: Wed, 9 Aug 2017 20:35:36 +0100 Subject: LC stack version changes between 8 and 9 In-Reply-To: References: Message-ID: Yes, as Richard said, the stack file format is the same between 8.1.x and 9.0. Just note that the widget module format is different, so if you have built a custom widget in LC 8.x you'll need to recompile it in LC 9.0 (and vice versa) Best, Panos -- On Wed, Aug 9, 2017 at 8:19 PM, Richard Gaskin via use-livecode < use-livecode at lists.runrev.com> wrote: > Bob Sneidar wrote: > > > Is there a stack version change from 8 to 9? If so, I would be averse > > to developing much in 9 except to play around a bit just to help out. > > IIRC the last format change was between 8.0 and 8.1; 8.1 and 9.0 use the > same format. > > Better, if you do a Save As and choose a specific older format, subsequent > use of Save will save in that format. > > But I've only used that for a really old project made with 6.x. If the > choice is between the 8.0 and 8.1 formats, go with 8.1 since it's a much > better build anyway. > > > > If not, and I was reasonably assured no stack corruption was going > > to take place (obviously there are no guarantees, and I do make > > versioning backups) then I thin I would like to start using V9 for > > my daily developing. > > Stack file corruption in very rare in LC, much rarer than in HyperCard or > even the last several versions of FileMaker I used (it was so common there > they included an item in the File menu to attempt to resurrect corrupted > files). > > That said, corruption is possible with all data in all programs at any > time for a wide range of reasons (unexpected power outage, etc.). > > There's good value in taking full advantage of automated periodic > incremental backup systems like Time Machine (Mac) or DejaDup (Ubuntu). > > Even better, Nextcloud triggers backup to your own self-managed cloud on > save, maintaining a definable number of versions while also providing > flexible sync for all your computers (I sync my LC Plugins folder and > client work folders with it so I'm always working on local copies of the > latest stuff no matter which machine I switch to). > > And of course, there's always just manually making a copy at the beginning > of a work session, or when you're about to so something really hairy. :) > > > > Or should I wait until the first RC? > > Too late. If you find something specific to your project in an RC, it may > not be addressable until the next version. In general, with few exceptions > RCs are limited in scope to fixing only regressions that occur since the > last DP. If you find anything outside of that mandate, there's a chance > you just missed the whole version cycle and will have to wait or the next > one. > > As a general rule, developing with the most recent build of any > designation, and shipping with the most recent Stable build, will provide > the best mix of stability for your customers while maximizing opportunities > to address any issues discovered during development. > > -- > Richard Gaskin > Fourth World Systems > Software Design and Development for the Desktop, Mobile, and the Web > ____________________________________________________________________ > Ambassador at FourthWorld.com http://www.FourthWorld.com > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From bobsneidar at iotecdigital.com Wed Aug 9 16:08:04 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Wed, 9 Aug 2017 20:08:04 +0000 Subject: BUG the target returns the wrong control in a scrolled datagrid Message-ID: Hi all. Remember if you will someone pointed out to me that I can get the target in a mouseEnter handler in a datagrid to determine the name of the control I was pointing at? Works great... so long as the datagrid has not scrolled! If you scroll you get a control for a completely different row! Unless someone comes up with an explaination why it *should* work that way, I will submit a bug report. Bob S From dochawk at gmail.com Wed Aug 9 16:39:24 2017 From: dochawk at gmail.com (Dr. Hawkins) Date: Wed, 9 Aug 2017 13:39:24 -0700 Subject: Bug 20255 - Simple Loop Labeling Message-ID: Eureka! I don't know why I didn't think of this earlier, but . . . A simple way to get *some* level of control structure labeling . . . So when finding the structure typed in the id of switch -- myLoop instead of simply adding an end switch, the comment could be copied end switch -- myLoop Better yet, perhaps, would be to insert "end " before the first word of the comment. -- Dr. Richard E. Hawkins, Esq. (702) 508-8462 From monte at appisle.net Wed Aug 9 16:48:55 2017 From: monte at appisle.net (Monte Goulding) Date: Thu, 10 Aug 2017 06:48:55 +1000 Subject: Parent of Target In-Reply-To: References: <9FA2E439-5F28-4EC1-B087-142D3E2D24FF@hindu.org> <9EECE76E-8AEF-497C-802B-D637C13304CB@appisle.net> Message-ID: > On 10 Aug 2017, at 2:25 am, Bob Sneidar via use-livecode wrote: > > I have a function that returns the stack of an object by passing the long id of the object. getParentStack(the long id of me). All it does is parses the long id by using wordOffset to find the word "stack" then returns word tWord to -1 of the long id. Pretty basic. > > That method can be used for anything, from the owner to the card to the first group etc. I don't think we need more properties per se. Yes we have these kinds of functions in the ide too. I just think we shouldn?t need something that depends on the format of a long ID to do something so common as to get a reference to the card of a control or stack of anything. One day I dream of an object reference that we can get and use that is not a string that needs to be resolved every time it?s used but a direct reference to the object. Perhaps if someone tries to do a string operation on it then it would be turned into a long id string just like when someone tries to do ?1? + 1 it?s turned into a number. But if it?s just passed around or stored in a custom property then it remains a resolved handle to the object and can cope with things like the ID or name or filename being changed in the session. If we had that we would want things like `is a {stack | card | button ?}` and `{stack | card | mainstack} of`. I have actually thought about whether it would be reasonable for `the long id` to return such an object reference as it would stringify automagically if necessary. However, deleting the object would mean the string form couldn?t be created so that probably wouldn?t work... I think complex objects that handle many object references and the IDE would have a significant bump in speed if we did such a thing. Cheers Monte From dunbarx at aol.com Wed Aug 9 16:56:04 2017 From: dunbarx at aol.com (dunbarx at aol.com) Date: Wed, 9 Aug 2017 16:56:04 -0400 Subject: BUG the target returns the wrong control in a scrolled datagrid In-Reply-To: References: Message-ID: <15dc8c86729-1ac5-c0f0@webprd-m36.mail.aol.com> Confirmed here. If you populate a DG with several lines, something like: on mouseEnter put the target end mouseEnter will give scatterbrained results. I had thought at first that, if the scroll was in the middle of its range, say, and I moved the cursor into the third visible line, I might see field "Col 1 0003". But, no rhyme or reason. Craig -----Original Message----- From: Bob Sneidar via use-livecode To: How to use LiveCode Cc: Bob Sneidar Sent: Wed, Aug 9, 2017 4:09 pm Subject: BUG the target returns the wrong control in a scrolled datagrid Hi all. Remember if you will someone pointed out to me that I can get the target in a mouseEnter handler in a datagrid to determine the name of the control I was pointing at? Works great... so long as the datagrid has not scrolled! If you scroll you get a control for a completely different row! Unless someone comes up with an explaination why it *should* work that way, I will submit a bug report. Bob S _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode From bobsneidar at iotecdigital.com Wed Aug 9 16:57:30 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Wed, 9 Aug 2017 20:57:30 +0000 Subject: LC stack version changes between 8 and 9 In-Reply-To: References: Message-ID: <5E2220F9-DF64-442F-B2F4-AF26477199E3@iotecdigital.com> Hah! I use NextCloud Box! $130 bucks or so and I have a local cloud backup. Be forewarned though, once you sync a folder from your computer, NextCloud considers ITSELF the master, and unchecking a subfolder in that folder structure will DELETE THAT SUBFOLDER FROM YOUR DESKTOP!!!!! Suck! Much discussion has been had and there is a very long thread about having an option to NOT auto-delete unchecked items. The devs seem a little defensive about it. They seem to think this is how all cloud based mirroring works or ought to work anyway. Still, it makes a decent unattended versioning local backup. Bob S > On Aug 9, 2017, at 12:19 , Richard Gaskin via use-livecode wrote: > > There's good value in taking full advantage of automated periodic incremental backup systems like Time Machine (Mac) or DejaDup (Ubuntu). > > Even better, Nextcloud triggers backup to your own self-managed cloud on save, maintaining a definable number of versions while also providing flexible sync for all your computers (I sync my LC Plugins folder and client work folders with it so I'm always working on local copies of the latest stuff no matter which machine I switch to). From ambassador at fourthworld.com Wed Aug 9 17:03:01 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Wed, 9 Aug 2017 14:03:01 -0700 Subject: Parent of Target In-Reply-To: References: Message-ID: <6b997b8a-f250-d445-ab69-384580fb8da3@fourthworld.com> Monte Goulding wrote: > I have actually thought about whether it would be reasonable for `the > long id` to return such an object reference as it would stringify > automagically if necessary....I think complex objects that handle many > object references and the IDE would have a significant bump in speed > if we did such a thing. Oh yes please! Jacque recently showed me the speed difference between explicitly writing out the element of an object reference: get the width of btn 1 of cd 2 of stack "MyStack" ...vs other forms like long IDs: put the long is of btn 1 of cd 2 of stack "MyStack" into t5Obj get teh width of tObj The latter is much slower, yet long IDs are so good to work with. Anything that can be done to speed up object references would be great. I'd never before seen the impact until last week's testing, but once I did I'm now tempted to write tediously long code for those cases where a lot of objects need to be addressed. Your proposal makes all that go away, and fast that any form we have now. -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From ambassador at fourthworld.com Wed Aug 9 17:09:41 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Wed, 9 Aug 2017 14:09:41 -0700 Subject: LC stack version changes between 8 and 9 In-Reply-To: <5E2220F9-DF64-442F-B2F4-AF26477199E3@iotecdigital.com> References: <5E2220F9-DF64-442F-B2F4-AF26477199E3@iotecdigital.com> Message-ID: Bob Sneidar wrote: > Hah! I use NextCloud Box! $130 bucks or so and I have a local cloud > backup. ...and so much more. When I need to trade files with clients and vendors I create accounts for them and they use it as easy as Dropbox, but without the limitations. > Be forewarned though, once you sync a folder from your computer, > NextCloud considers ITSELF the master, and unchecking a subfolder > in that folder structure will DELETE THAT SUBFOLDER FROM YOUR > DESKTOP!!!!! Suck! Good to know. I tend to synx whole folders, so I haven't had occasion to do that. Kinda makes sense though: if the subfolder is not copied to the cloud master, if it wasn't removed in sync the result wouldn't match. In my case, if I want something no synced within a synced folder I just move it some place else. But maybe my expectations are low. After years of being limited to the narrow requirements of what Dropbox or Google Drive will allow you to sync I'm just happy that I can choose my own individual sync folders at all. -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From ahsoftware at sonic.net Wed Aug 9 17:17:27 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Wed, 9 Aug 2017 14:17:27 -0700 Subject: Parent of Target In-Reply-To: References: <9FA2E439-5F28-4EC1-B087-142D3E2D24FF@hindu.org> <9EECE76E-8AEF-497C-802B-D637C13304CB@appisle.net> Message-ID: <4a57f830-ef2c-5393-d389-5e176af2f064@sonic.net> On 08/09/2017 01:48 PM, Monte Goulding via use-livecode wrote: > One day I dream of an object reference that we can get and use that is not a string that needs to be resolved every time it?s used but a direct reference to the object. Perhaps if someone tries to do a string operation on it then it would be turned into a long id string just like when someone tries to do ?1? + 1 it?s turned into a number. But if it?s just passed around or stored in a custom property then it remains a resolved handle to the object and can cope with things like the ID or name or filename being changed in the session. If we had that we would want things like `is a {stack | card | button ?}` and `{stack | card | mainstack} of`. ...and then... we could name them 'pointers' and 'handles' and I'd be very happy. -- Mark Wieder ahsoftware at gmail.com From monte at appisle.net Wed Aug 9 18:05:39 2017 From: monte at appisle.net (Monte Goulding) Date: Thu, 10 Aug 2017 08:05:39 +1000 Subject: Parent of Target In-Reply-To: <4a57f830-ef2c-5393-d389-5e176af2f064@sonic.net> References: <9FA2E439-5F28-4EC1-B087-142D3E2D24FF@hindu.org> <9EECE76E-8AEF-497C-802B-D637C13304CB@appisle.net> <4a57f830-ef2c-5393-d389-5e176af2f064@sonic.net> Message-ID: > On 10 Aug 2017, at 7:17 am, Mark Wieder via use-livecode wrote: > > ...and then... > we could name them 'pointers' and 'handles' and I'd be very happy. > Ha? one of the reasons I thought about overloading long ID is because pointer and handle aren?t very LiveCode? Maybe reference: get the reference of Using such a reference to a deleted object would need to throw an error I think. People would need to understand that you couldn?t use such references in delimited lists. So if you wanted a list of object references you would need to use an array. FWIW the ScriptObject in LCB is basically what I?m talking about but as a regular script value type. Cheers Monte From brian at milby7.com Wed Aug 9 18:25:11 2017 From: brian at milby7.com (Brian Milby) Date: Wed, 9 Aug 2017 17:25:11 -0500 Subject: Parent of Target Message-ID: Pretty funny... reading the conversation and I immediately thought "pointer". > > On Aug 9, 2017 at 4:17 PM, wrote: > > > > On 08/09/2017 01:48 PM, Monte Goulding via use-livecode wrote: > One day I dream of an object reference that we can get and use that is not a string that needs to be resolved every time it?s used but a direct reference to the object. Perhaps if someone tries to do a string operation on it then it would be turned into a long id string just like when someone tries to do ?1? + 1 it?s turned into a number. But if it?s just passed around or stored in a custom property then it remains a resolved handle to the object and can cope with things like the ID or name or filename being changed in the session. If we had that we would want things like `is a {stack | card | button ?}` and `{stack | card | mainstack} of`. ...and then... we could name them 'pointers' and 'handles' and I'd be very happy. -- Mark Wieder ahsoftware at gmail.com _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode > > From brahma at hindu.org Wed Aug 9 18:56:40 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Wed, 9 Aug 2017 22:56:40 +0000 Subject: Using Find with Shell on Mac Message-ID: I'm pretty much fed up with Spotlight. On Linux apps I use Locate, which is really efficient. but setting up and keep the locate dbase on mac is also frought with issues. it will not index $Home which is weird. FIND is slower of course, but perfectly effective. this: find ~/ -iname *.livecode from terminal get me *every* with .livecode in my user folder. in my UI's for locate I just get all the results into a var, then filter that var with strings and update the results field? works great, very fast. But this, inside the msg box: put "find ~/ -iname *.livecode" into tShell put shell(tShell) is only returning a single line: /Users/Brahmanathaswami//OneDrive/_RevData/Books in Rev/HAP_Trilogy Reader Source/source/HAP_Trilogy-Reader1-1.livecode Why don't we get all the results we do in terminal? BR From bobsneidar at iotecdigital.com Wed Aug 9 19:14:45 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Wed, 9 Aug 2017 23:14:45 +0000 Subject: Using Find with Shell on Mac In-Reply-To: References: Message-ID: Not sure what $Home is. I didn't know you could refer to your home folder that way. But keep in mind that you can change what Spotlight does and does not index. you home folder typically is not a place you would create new folders and files for. What would be the point to indexing it? Bob S > On Aug 9, 2017, at 15:56 , Sannyasin Brahmanathaswami via use-livecode wrote: > > but setting up and keep the locate dbase on mac is also frought with issues. it will not index $Home From monte at appisle.net Wed Aug 9 19:47:08 2017 From: monte at appisle.net (Monte Goulding) Date: Thu, 10 Aug 2017 09:47:08 +1000 Subject: Parent of Target In-Reply-To: References: <9FA2E439-5F28-4EC1-B087-142D3E2D24FF@hindu.org> <9EECE76E-8AEF-497C-802B-D637C13304CB@appisle.net> Message-ID: <7BF8174D-442F-4610-A20B-E63B76869D6C@appisle.net> > On 10 Aug 2017, at 6:48 am, Monte Goulding via use-livecode wrote: > > I have actually thought about whether it would be reasonable for `the long id` to return such an object reference as it would stringify automagically if necessary. However, deleting the object would mean the string form couldn?t be created so that probably wouldn?t work... I think complex objects that handle many object references and the IDE would have a significant bump in speed if we did such a thing. Thinking about this some more I wonder if a stringified representation and string representation type could be paired with the object reference so that if you got say the abbreviated id then that would be the stringified representation and if the object is deleted then the stringified representation is used from then on until it is re-resolved (say the stack is reloaded). Then if it is re-stringified then the new representation stored. The only issue here would be any code that relied on the string not changing when you rename etc an object etc but I?m not sure how common that would be. That and there could be quirks like if you get the reference, rename it and then delete it the string representation would probably still be the original name. The general idea though is it would be something like a string is now in the engine. We don?t need to know if under the hood it is currently an 8 bit native string or a 16 bit unicode string. If we could work out all the little niggles in the idea then it could be that we wouldn?t need to change our code at all (other than to remove all the code which tries to handle name and id changes) which would be nice. Also things like `the target` and `the owner` could seamlessly upgrade to being references. Cheers Monte From alex at tweedly.net Wed Aug 9 20:10:13 2017 From: alex at tweedly.net (Alex Tweedly) Date: Thu, 10 Aug 2017 01:10:13 +0100 Subject: Using Find with Shell on Mac In-Reply-To: References: Message-ID: You should put quotes around the "*.livecode", because find ~/ -iname "*.livecode" -print will do what I think you want to do. Whereas if you do, find ~/ -iname *.livecode -print the *.livecode is seen by, and interpreted by, shell - and so expands to the livecode files in your home directory. You need to put quotes around it so that it is passed as a string to the find command, which can then use it to match names. (I'm not 100% sure why you didn't have the same problem in terminal as well as in msg box - but I'd change this and expect it will help). -- Alex. On 09/08/2017 23:56, Sannyasin Brahmanathaswami via use-livecode wrote: > I'm pretty much fed up with Spotlight. > > On Linux apps I use Locate, which is really efficient. > > but setting up and keep the locate dbase on mac is also frought with issues. it will not index $Home > > which is weird. > > FIND is slower of course, but perfectly effective. > > this: > > find ~/ -iname *.livecode > > from terminal get me *every* with .livecode in my user folder. in my UI's for locate I just get all the results into a var, then filter that var with strings and update the results field? works great, very fast. > > But this, inside the msg box: > > put "find ~/ -iname *.livecode" into tShell > put shell(tShell) > > > is only returning a single line: > > /Users/Brahmanathaswami//OneDrive/_RevData/Books in Rev/HAP_Trilogy Reader Source/source/HAP_Trilogy-Reader1-1.livecode > > > Why don't we get all the results we do in terminal? > > > BR > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From alex at tweedly.net Wed Aug 9 20:26:46 2017 From: alex at tweedly.net (Alex Tweedly) Date: Thu, 10 Aug 2017 01:26:46 +0100 Subject: Using Find with Shell on Mac In-Reply-To: References: Message-ID: <41301c9b-ebf2-572c-cc0c-70c971febfa8@tweedly.net> On 10/08/2017 01:10, Alex Tweedly via use-livecode wrote: > You should put quotes around the "*.livecode", because > > find ~/ -iname "*.livecode" -print > > will do what I think you want to do. > > Whereas if you do, > > find ~/ -iname *.livecode -print > > the *.livecode is seen by, and interpreted by, shell - and so > expands to the livecode files in your home directory. You need to put > quotes around it so that it is passed as a string to the find command, > which can then use it to match names. > That's not quite right - it will be the files in your *current* directory, not your home directory. In the case of the msg box, that will be your home directory - but doing it from terminal, it will be whatever directory you happen to be in at the time - so that's why it would give different results. Alex. > > (I'm not 100% sure why you didn't have the same problem in terminal as > well as in msg box - but I'd change this and expect it will help). > > -- Alex. > > > On 09/08/2017 23:56, Sannyasin Brahmanathaswami via use-livecode wrote: >> I'm pretty much fed up with Spotlight. >> >> On Linux apps I use Locate, which is really efficient. >> >> but setting up and keep the locate dbase on mac is also frought with >> issues. it will not index $Home >> >> which is weird. >> >> FIND is slower of course, but perfectly effective. >> >> this: >> >> find ~/ -iname *.livecode >> >> from terminal get me *every* with .livecode in my user folder. in my >> UI's for locate I just get all the results into a var, then filter >> that var with strings and update the results field? works great, very >> fast. >> >> But this, inside the msg box: >> >> put "find ~/ -iname *.livecode" into tShell >> put shell(tShell) >> >> >> is only returning a single line: >> >> /Users/Brahmanathaswami//OneDrive/_RevData/Books in Rev/HAP_Trilogy >> Reader Source/source/HAP_Trilogy-Reader1-1.livecode >> >> >> Why don't we get all the results we do in terminal? >> >> >> BR >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From brahma at hindu.org Wed Aug 9 21:24:15 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Thu, 10 Aug 2017 01:24:15 +0000 Subject: Parent of Target In-Reply-To: References: <9FA2E439-5F28-4EC1-B087-142D3E2D24FF@hindu.org> <9EECE76E-8AEF-497C-802B-D637C13304CB@appisle.net> Message-ID: <8BB9BBF1-548C-4562-8408-0D91C5C53998@hindu.org> @ Jacque the behavior is attached to a stack that is not the same stack as the target (a download button) so "this me" won't work @ Bob " getParentStack(the long id of me). All it does is parses the long id by using wordOffset to find the word "stack" then returns word tWord to -1 of the long id. Pretty basic." Awesome: this has been added to the main backscript utilities section? Nandri! (thank you) @ Monte & Richard " Monte Goulding wrote: > I have actually thought about whether it would be reasonable for `the > long id` to return such an object reference as it would stringify > automagically if necessary....I think complex objects that handle many > object references and the IDE would have a significant bump in speed > if we did such a thing. Oh yes please! +1! Addendum on Scoping This new "modular" world, of behaviors, libs that have been put into msg path with "start Using" or "insert into back".. text files, multiple binary.livecode stacks -- not substacks as such, but separate.livecode files. The app is now a complete "environment/framework". With Andre constant warnings along with my experience using globals in this environment gets very dangerous very fast, typically want to use an array to starts holding all kind of things we think we need to reference across many different stacks/libs. Seems OK on the surface, but then as Andre says, if someGlobalArray["fruit"] = "apple" when you thought for sure it should now be "orange" then then debugging "hell" door opens. So instead we start sending and dispatching commands, setting up locals in scripts with lots of small local sCurrentFlavorA function returnCurrentFlavor put sCurrentFlavorA["fruit"] end returnCurrentFlavor So now, with debug on you can trace easily where things are happening. so some way to track, not only "where did this come from" (which is what debug stepping is really doing) but to look "up" "Who is asking?" would be interesting. Somehow I think this relates to another Idea I keep having: which is place group [custom control] "downloading" of stack "customControlsLibrary onto this card Where: a) group "downloading" has progressField, progressTitle, progressBar (ala the lesson on line for load URL which I just copied to the SivaSiva app and modified yesterday) i.e. a customcontrol b) that group has a behavior c) that it can be made to magically appear and disappear "anywhere at any time" d) such that one update updates all future instances. OK well now we can do that by copying the group dynamically and since after the standalone is built, that group is never saved.. "kinda" works, but in dev I keep getting multiple copies of this group in different stacks? i.e we already have this with icons for buttons? you can have a single image + ID for a button that appears on multiple stacks.. change the image and all buttons change. So why not a phantom group whose "real" presence is a single instance in another stack. Perhaps this has nothing to do with the parent of target; but seems all vaguely related. [/end of babbling about what I do not really understand very well] On 8/9/17, 6:25 AM, "use-livecode on behalf of Bob Sneidar via use-livecode" wrote: getParentStack(the long id of me). All it does is parses the long id by using wordOffset to find the word "stack" then returns word tWord to -1 of the long id. Pretty basic. From ahsoftware at sonic.net Wed Aug 9 21:25:36 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Wed, 9 Aug 2017 18:25:36 -0700 Subject: math, bigly In-Reply-To: References: <344430ddee8edf72e10bb88f1b91f5c7@livecode.com> <9620811a-b791-3949-f6d3-678992642966@sonic.net> Message-ID: On 08/09/2017 10:15 AM, Mark Waddingham via use-livecode wrote: > ...although that scale is relatively common in 'high-end' > cryptography settings (factoring large numbers for the purposes of > generating keys and such). Heh. And that, of course, is exactly what I was working on, and what got me into trouble. In the future if you're going to continue reading my mind, could you please stop me *before* I go down these rabbit holes? -- Mark Wieder ahsoftware at gmail.com From jonathandlynch at gmail.com Wed Aug 9 21:27:15 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Wed, 9 Aug 2017 21:27:15 -0400 Subject: Weird thing I noticed with a graphics speed test Message-ID: <771F86B9-C043-4EA0-8374-9E6301004C72@gmail.com> I created a group with ten buttons. I have a function that scrolls this group as many times as it can in a second. With acceleratedrendering on, it can scroll 30 times on my Mac. My very slow android device also scrolls it 30 times. With accelerated rendering off, it can scroll the group 87 times on the Mac and 35 times on the android. Why would the scrolling be faster with accelerated rendering off? Why do both devices have the same speed with accelerated rendering on? I thought accelerated rendering used the graphics card? Shouldn't this graphically slow android be slower? Sent from my iPhone From ahsoftware at sonic.net Wed Aug 9 21:27:46 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Wed, 9 Aug 2017 18:27:46 -0700 Subject: math, bigly In-Reply-To: References: <6a340c40-378e-bbf5-51eb-0d00901347ca@sonic.net> <349c5b97-7f11-2350-f256-30ab979c0ec4@fourthworld.com> Message-ID: On 08/09/2017 11:05 AM, Mark Waddingham via use-livecode wrote: > Fortunately, there is a potential carrot to go with the stick - we can > expand the range of the bit operations (and baseConvert) to 52-bits > without too much difficulty I think; and add error checking at the same > time. Which would potentially make code which is currently broken 'at > the edges' (i.e. rarely touched) not ever encounter an error. As always, I'm awed by the brilliance of your proposed solution. I can't see any downside to this other than the time it would take to implement and test. -- Mark Wieder ahsoftware at gmail.com From jonathandlynch at gmail.com Wed Aug 9 21:38:21 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Wed, 9 Aug 2017 21:38:21 -0400 Subject: Weird thing I noticed with a graphics speed test In-Reply-To: <771F86B9-C043-4EA0-8374-9E6301004C72@gmail.com> References: <771F86B9-C043-4EA0-8374-9E6301004C72@gmail.com> Message-ID: <7F15AE57-993C-416C-ACCC-F3F4D5C85F41@gmail.com> Actually, I had forgotten to set the layermode of the group. Now the number of passes on my Mac is 47 and on the android it is 31. This still seems rather close. I expected the slow android device to be like a quarter as fast. Sent from my iPhone > On Aug 9, 2017, at 9:27 PM, jonathandlynch at gmail.com wrote: > > I created a group with ten buttons. I have a function that scrolls this group as many times as it can in a second. > > With acceleratedrendering on, it can scroll 30 times on my Mac. My very slow android device also scrolls it 30 times. > > With accelerated rendering off, it can scroll the group 87 times on the Mac and 35 times on the android. > > Why would the scrolling be faster with accelerated rendering off? > > Why do both devices have the same speed with accelerated rendering on? > > I thought accelerated rendering used the graphics card? Shouldn't this graphically slow android be slower? > > Sent from my iPhone From ahsoftware at sonic.net Wed Aug 9 21:42:01 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Wed, 9 Aug 2017 18:42:01 -0700 Subject: Parent of Target In-Reply-To: <8BB9BBF1-548C-4562-8408-0D91C5C53998@hindu.org> References: <9FA2E439-5F28-4EC1-B087-142D3E2D24FF@hindu.org> <9EECE76E-8AEF-497C-802B-D637C13304CB@appisle.net> <8BB9BBF1-548C-4562-8408-0D91C5C53998@hindu.org> Message-ID: On 08/09/2017 06:24 PM, Sannyasin Brahmanathaswami via use-livecode wrote: > local sCurrentFlavorA > > function returnCurrentFlavor > put sCurrentFlavorA["fruit"] > end returnCurrentFlavor > > So now, with debug on you can trace easily where things are happening. so some way to track, not only "where did this come from" (which is what debug stepping is really doing) but to look "up" "Who is asking?" > would be interesting. I do use getter and setter routines regularly. I think your function is useful, but won't by itself get at the question of "who changed that?", and for that question there are at least two possible methods: method 1: local sCurrentFlavorA command setCurrentFruitFlavorTo pFlavor put pFlavor into sCurrentFlavor["fruit"] end setCurrentFruitFlavorTo setCurrentFruitFlavorTo "orange" method 2: setProp CurrentFruitFlavor pFlavor put pFlavor into sCurrentFlavor["fruit"] end CurrentFruitFlavor getProp CurrentFruitFlavor return sCurrentFlavor["fruit"] end CurrentFruitFlavor set the CurrentFruitFlavor of me to "orange" get the CurrentFruitFlavor of me By placing breakpoints into either of these methods you can track what sets the values in the debugger, or by placing logging statements into either you can display the stack traces as they fly by: put pFlavor into sCurrentFlavor["fruit"] put the executionContexts & cr after msg -- Mark Wieder ahsoftware at gmail.com From brahma at hindu.org Wed Aug 9 21:51:23 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Thu, 10 Aug 2017 01:51:23 +0000 Subject: Using Find with Shell on Mac In-Reply-To: References: Message-ID: <29CE0AEE-5BBA-460F-A538-9F15871AECFA@hindu.org> @ bob try it in msg put $HOME see the dictionary for $ but this is one more of those "Alice in wonderland features" of LC that you will only discover after you fall into the hole (hehe) like the long owner of the target "why index" to locate and find return the long paths to the files discovered. this has very high utility for "fuzzy" logic filtering based on simple LC string line filtering. I once had a CGI on our XServer that could read the entire box in milliseconds and a search engine interface that could return details lists for a over a million files on that box in milliseconds and the filters were awesome? by volume + extension or path string etc? then Apple killed off xServe we switch to Synology storage and lost a lot of services (and also a lot of admin pain too) So I want to adapt this to run on any local machine. We have FoxTrot Pro? which will actually index the contents, but again, some app designers don't know when to stop? but typically 98% of the search if a path/filename query if you have 300,000 image on your hard drive locally and you are building (app|keynote| movie |newsletter) then spotlight doesn't cut it? I also have an javasript that will drive collections of found files to Adobe's Bridge which then serves as a kind of slave for a visible catalogs of search results. @ Alex: Yes! thanks this works adding quotes plus -print put format ("find ~/ -iname \"*.livecode\" -print") into tShell put shell(tShell) A tad slow.. but good enough. Why Apple will not allow locate to index the user's home directory is mysterious? probalby is a way.. because the located dbase is so much faster and changes are rare enough that running updates on a bi-weekly cron would be good enough. And this in fact goes to documentation for LC? e.g. if we had an LC concordance then if you a search for "target" would turn up the long owner of the target.. Hmm interesting I search in spotlight for dictionary and the typed Concordance (wasn't yet in dictionaryh and hit on SSBookConcordance.rev something that Hugh created. On 8/9/17, 1:15 PM, "use-livecode on behalf of Bob Sneidar via use-livecode" wrote: Not sure what $Home is. I didn't know you could refer to your home folder that way. But keep in mind that you can change what Spotlight does and does not index. you home folder typically is not a place you would create new folders and files for. What would be the point to indexing it? Bob S From ahsoftware at sonic.net Wed Aug 9 21:53:27 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Wed, 9 Aug 2017 18:53:27 -0700 Subject: Bug 20255 - Simple Loop Labeling In-Reply-To: References: Message-ID: <1f1b93a3-9bb3-27f4-0ec4-76bbc09cc954@sonic.net> On 08/09/2017 01:39 PM, Dr. Hawkins via use-livecode wrote: > Eureka! > > I don't know why I didn't think of this earlier, but . . . > > A simple way to get *some* level of control structure labeling . . . > > > So when finding the structure typed in the id of > > switch -- myLoop > > instead of simply adding an end switch, the comment could be copied > > end switch -- myLoop > > > Better yet, perhaps, would be to insert "end " before the first word > of the comment. > > I do this regularly with repeat statements and if/endif statments as well, in fact the glx2 script editor does this automatically for me. It helps keep me more or less sane, especially when dealing with nested structures. Instead of a comment like "myLoop" I use the parameters to the switch or repeat or if statement, so I end up with switch word 1 of tLine ... end switch -- word 1 of tLine repeat for each item tItem in tList ... end repeat -- for each item tItem in tList if tVariable is not empty then ... end if -- tVariable is not empty -- Mark Wieder ahsoftware at gmail.com From jacque at hyperactivesw.com Wed Aug 9 23:22:38 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Wed, 9 Aug 2017 22:22:38 -0500 Subject: Parent of Target In-Reply-To: <8BB9BBF1-548C-4562-8408-0D91C5C53998@hindu.org> References: <9FA2E439-5F28-4EC1-B087-142D3E2D24FF@hindu.org> <9EECE76E-8AEF-497C-802B-D637C13304CB@appisle.net> <8BB9BBF1-548C-4562-8408-0D91C5C53998@hindu.org> Message-ID: <62f0b8b7-68ce-dd55-0b12-618d4feb1483@hyperactivesw.com> On 8/9/17 8:24 PM, Sannyasin Brahmanathaswami via use-livecode wrote: > the behavior is attached to a stack that is not the same stack as the target (a download button) so "this me" won't work I think it should... Object with an assigned behavior: "me" Object that contains the behavior script: "this me" If the backscript stack holds the behavior script then the stack itself should be "this me". The target (the download button) which has the behavior assigned would be "me". Logically, anyway. > So instead we start sending and dispatching commands If the script is in the message hierarchy, I wouldn't think you'd need to send or dispatch anything, just issue the command normally. You can debug that pretty easily and there's one less level of abstraction. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com From ali.lloyd at livecode.com Thu Aug 10 03:32:02 2017 From: ali.lloyd at livecode.com (Ali Lloyd) Date: Thu, 10 Aug 2017 07:32:02 +0000 Subject: Parent of Target In-Reply-To: <6b997b8a-f250-d445-ab69-384580fb8da3@fourthworld.com> References: <6b997b8a-f250-d445-ab69-384580fb8da3@fourthworld.com> Message-ID: > > Jacque recently showed me the speed difference between explicitly > writing out the element of an object reference: > > get the width of btn 1 of cd 2 of stack "MyStack" > > ...vs other forms like long IDs: > > put the long is of btn 1 of cd 2 of stack "MyStack" into t5Obj > get teh width of tObj > > The latter is much slower, yet long IDs are so good to work with. > The only reason this is true is that in the second case you are resolving the object twice. It is not true in general - the second time the long id is used it will use the id cache which is constant time, whereas "button n" is O(n). Try benchmarking repeated use of the stored long id vs the number version, especially if the numbers are large. So it's horses for courses. If it's a one-shot object access then the number form is faster. For repeated use, get the long id. > > From mark at livecode.com Thu Aug 10 03:40:30 2017 From: mark at livecode.com (Mark Waddingham) Date: Thu, 10 Aug 2017 09:40:30 +0200 Subject: Parent of Target In-Reply-To: <7BF8174D-442F-4610-A20B-E63B76869D6C@appisle.net> References: <9FA2E439-5F28-4EC1-B087-142D3E2D24FF@hindu.org> <9EECE76E-8AEF-497C-802B-D637C13304CB@appisle.net> <7BF8174D-442F-4610-A20B-E63B76869D6C@appisle.net> Message-ID: <6e8ba0d24399c325386e22cd2c86e889@livecode.com> On 2017-08-10 01:47, Monte Goulding via use-livecode wrote: > Thinking about this some more I wonder if a stringified representation > and string representation type could be paired with the object > reference so that if you got say the abbreviated id then that would be > the stringified representation and if the object is deleted then the > stringified representation is used from then on until it is > re-resolved (say the stack is reloaded). Then if it is re-stringified > then the new representation stored. The only issue here would be any > code that relied on the string not changing when you rename etc an > object etc but I?m not sure how common that would be. That and there > could be quirks like if you get the reference, rename it and then > delete it the string representation would probably still be the > original name. The general idea though is it would be something like a > string is now in the engine. We don?t need to know if under the hood > it is currently an 8 bit native string or a 16 bit unicode string. This sounds very much like the idea proposed here - http://forums.livecode.com/viewtopic.php?f=66&t=15017 - as a reason for why UUIDs were not necessarily the 'right' approach (and never will be, IMHO) ;) This is something which could be done (with the new architecture in 7+, indeed the potential for it was one of the many many reasons that motivated the refactor) - however, in reality, we risk changing the language quite fundamentally. Something which I became acutely aware of during the refactoring process (partly through direct conversation with a variety of long-term xTalkers - trying to explain what could become possible with it). If we are going to break the everything-but-arrays are strings semantic then let's do it (1) completely and (2) in a way which ensures we 'bring everyone with us' (how many VB users didn't move to VB.NET?). [ The latter point is the most important one, btw ]. 'Creeping' language changes just don't work - particularly at the core semantic (types, in this case) level - you risk ending up with something which may be much more powerful but also much less accessible/easy/familiar/... ] Indeed, this realisation of the crucial 'semantic gap'* LiveCode Script has (which is true of 4GLs *in general*) was one of the motivations for Builder**. Builder already has the 'object handle' (ScriptObject) idea - so we can use that to build a library which manages the object references the IDE holds at any one time. This solves the robustness problem we face in the IDE and in a way which doesn't require a single change to LCS. (Over time it could also solve the speed issue too - we implement the parts which are bottle-necked by ScriptObject<->StringId conversions in LCB so they aren't necessary). [ Robustness is far more important than speed here, though ]. In terms of user-code, then yes, there are also user apps which require this - so we can just make the functionality a user available library extension when it is mature enough. Users can then evaluate whether it is 'worth' the extra cognitive cost of using such a thing for their situation on a per-project basis (just like the IDE - being a LiveCode Script project itself). Warmest Regards, Mark. * I should stress that what I call a 'semantic gap' does not in any way make LCS a 'lesser' language - because it really is not. xTalks have evolved with a different focus from many other languages and fill that very well, that's all. They make the tasks it is focused on easier, at the expense of making some other things harder (but only slightly - you still have the 'ease' of the language as a whole to couch them in). ** I do see a future where there are not two languages - 'Script' and 'Builder' - but only 'LiveCode'. However, that 'unification' has to be done in a way which does not, in any way, detract from what makes LiveCode Script what it is (which sounds subjective, but the recent study released about 'cognitive load' does perhaps suggest a means of measurement - which starts to make it objective). -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From mark at livecode.com Thu Aug 10 03:53:16 2017 From: mark at livecode.com (Mark Waddingham) Date: Thu, 10 Aug 2017 09:53:16 +0200 Subject: Parent of Target In-Reply-To: References: <6b997b8a-f250-d445-ab69-384580fb8da3@fourthworld.com> Message-ID: On 2017-08-10 09:32, Ali Lloyd via use-livecode wrote: >> >> Jacque recently showed me the speed difference between explicitly >> writing out the element of an object reference: >> >> get the width of btn 1 of cd 2 of stack "MyStack" >> >> ...vs other forms like long IDs: >> >> put the long is of btn 1 of cd 2 of stack "MyStack" into t5Obj >> get teh width of tObj >> >> The latter is much slower, yet long IDs are so good to work with. >> > > The only reason this is true is that in the second case you are > resolving > the object twice. It is not true in general - the second time the long > id > is used it will use the id cache which is constant time, whereas > "button n" > is O(n). Try benchmarking repeated use of the stored long id vs the > number > version, especially if the numbers are large. > > So it's horses for courses. If it's a one-shot object access then the > number form is faster. For repeated use, get the long id. Just to expand on what Ali said... There is an overhead in parsing a long id string - however, that is proportional to the length of the id string which are generally quite short. Also, this is purely 'parsing' it is basically munching chars and branching which means the 'step' taken at each char is very very very fast. Certainly something which is overwhelmed by whatever operation you might be doing with the resolved chunk. What takes up the time in resolving object references is finding the objects at each step. If you use the indexed form - e.g. btn 3 - then the time taken is proportional to the magnitude of the index as the engine has to step through a list to find the object. If you use the id form, however, then the lookups are cached at the stack level after the first time they are resolved. The id of an object is unique within the confines of a stack, and every stack has a hash-table which caches id->objectptrs internally. If you are doing custom control type work (which is where you tend to have to manage lots of child control references), then I'd generally suggest not using long ids, but instead just store the id property of the child object and use explicit syntax: control id ... of me -- here I'm assuming that 'me' is a group ;) The reason is that this is (after the first lookup for any given id/me pair) a completely constant time lookup: - 'me' is stored internally as a direct pointer - id's can be looked up in the stack hash table. Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From mark at livecode.com Thu Aug 10 03:57:49 2017 From: mark at livecode.com (Mark Waddingham) Date: Thu, 10 Aug 2017 09:57:49 +0200 Subject: Parent of Target In-Reply-To: <9FA2E439-5F28-4EC1-B087-142D3E2D24FF@hindu.org> References: <9FA2E439-5F28-4EC1-B087-142D3E2D24FF@hindu.org> Message-ID: <413fecbd6d6a0662306ddefd956e7ba3@livecode.com> On 2017-08-09 05:39, Sannyasin Brahmanathaswami via use-livecode wrote: > The more we separate our code/libraries/behaviors from the binary UI, > the more I find myself trying to dispatch call backs or other messages > back to the group/card/stack that has a behavior and not the > individual control: widget/button/field on the card itself, whose job > was simply to intercept a mouse event and server as the target in > higher switch. So you need to get the long ID I'm not sure I follow the underlying reasoning here - why not just use 'the long id of the target'?* The message path means that the message will hit the group/card/stack if not handled in the control (which it won't be, from what you are saying). Warmest Regards, Mark. * This is the model used in the engine (e.g. for sockets), and in LCB widgets (which post a message to the script of the widget, which then filters down the message path in the usual way). -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From merakosp at gmail.com Thu Aug 10 04:02:16 2017 From: merakosp at gmail.com (panagiotis merakos) Date: Thu, 10 Aug 2017 09:02:16 +0100 Subject: Bug 20255 - Simple Loop Labeling In-Reply-To: <1f1b93a3-9bb3-27f4-0ec4-76bbc09cc954@sonic.net> References: <1f1b93a3-9bb3-27f4-0ec4-76bbc09cc954@sonic.net> Message-ID: Hi all, I personally like this idea, and I find it pretty useful. And this does not sound too difficult to implement. But I am not sure if everyone will like it, so if we do it, we should probably add a pref to turn it on/off. The good news is that Ali has been doing some work on scriptifying the Prefs stack, so in the future it will be easier to add Prefs for such features. Best, Panos On 10 Aug 2017 02:53, "Mark Wieder via use-livecode" < use-livecode at lists.runrev.com> wrote: > On 08/09/2017 01:39 PM, Dr. Hawkins via use-livecode wrote: > >> Eureka! >> >> I don't know why I didn't think of this earlier, but . . . >> >> A simple way to get *some* level of control structure labeling . . . >> >> >> So when finding the structure typed in the id of >> >> switch -- myLoop >> >> instead of simply adding an end switch, the comment could be copied >> >> end switch -- myLoop >> >> >> Better yet, perhaps, would be to insert "end " before the first word >> of the comment. >> >> >> > I do this regularly with repeat statements and if/endif statments as well, > in fact the glx2 script editor does this automatically for me. It helps > keep me more or less sane, especially when dealing with nested structures. > Instead of a comment like "myLoop" I use the parameters to the switch or > repeat or if statement, so I end up with > > switch word 1 of tLine > ... > end switch -- word 1 of tLine > > repeat for each item tItem in tList > ... > end repeat -- for each item tItem in tList > > if tVariable is not empty then > ... > end if -- tVariable is not empty > > -- > Mark Wieder > ahsoftware at gmail.com > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From monte at appisle.net Thu Aug 10 06:00:43 2017 From: monte at appisle.net (Monte Goulding) Date: Thu, 10 Aug 2017 20:00:43 +1000 Subject: Bug 20255 - Simple Loop Labeling In-Reply-To: References: <1f1b93a3-9bb3-27f4-0ec4-76bbc09cc954@sonic.net> Message-ID: <9DA005B4-7090-464E-ABB8-E7DC4FA05512@appisle.net> > On 10 Aug 2017, at 6:02 pm, panagiotis merakos via use-livecode wrote: > > I personally like this idea, and I find it pretty useful. And this does not > sound too difficult to implement. > > But I am not sure if everyone will like it, so if we do it, we should > probably add a pref to turn it on/off. > > The good news is that Ali has been doing some work on scriptifying the > Prefs stack, so in the future it will be easier to add Prefs for such > features. I wonder whether a mouse over tooltip would work just as well. Is this something you want to be able to see _all_ the time or just if you get confused about where you are? Cheers Monte From monte at appisle.net Thu Aug 10 06:01:28 2017 From: monte at appisle.net (Monte Goulding) Date: Thu, 10 Aug 2017 20:01:28 +1000 Subject: common code patterns Message-ID: Hi Folks I?m looking for a few common code patterns that you find yourselves writing often but aren?t well suited to reusable handlers. So snippets of code or common ways that events are handled together in a script for a certain task. Cheers Monte From MikeKerner at roadrunner.com Thu Aug 10 09:25:33 2017 From: MikeKerner at roadrunner.com (Mike Kerner) Date: Thu, 10 Aug 2017 09:25:33 -0400 Subject: common code patterns In-Reply-To: References: Message-ID: Do I sense macros? I have several things that I frequently end up typing that aren't vanilla: for any structure - repeat/if/case/etc., I normally want the "end" to have a comment matching the beginning if i=2 then something end if #i=2 I also frequently use code blocks that I want to label # # There are lots of times where you need to store a property, change it, then restore it For just straight code that repeats put the itemDelimiter into theItemDelimiter set the itemDelimiter to tab and then below set the itemDelimiter to theItemDelimiter Now with 9, especially, being able to have a command set the result, there is a lot of if the result is not empty then exit mouseUp put it into goop On Thu, Aug 10, 2017 at 6:01 AM, Monte Goulding via use-livecode < use-livecode at lists.runrev.com> wrote: > Hi Folks > > I?m looking for a few common code patterns that you find yourselves > writing often but aren?t well suited to reusable handlers. So snippets of > code or common ways that events are handled together in a script for a > certain task. > > Cheers > > Monte > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode -- On the first day, God created the heavens and the Earth On the second day, God created the oceans. On the third day, God put the animals on hold for a few hours, and did a little diving. And God said, "This is good." From MikeKerner at roadrunner.com Thu Aug 10 09:53:53 2017 From: MikeKerner at roadrunner.com (Mike Kerner) Date: Thu, 10 Aug 2017 09:53:53 -0400 Subject: Bug 20255 - Simple Loop Labeling In-Reply-To: <9DA005B4-7090-464E-ABB8-E7DC4FA05512@appisle.net> References: <1f1b93a3-9bb3-27f4-0ec4-76bbc09cc954@sonic.net> <9DA005B4-7090-464E-ABB8-E7DC4FA05512@appisle.net> Message-ID: I do this, in my code, too. I also label my else's (with the opposite of the condition, of course) 4D's macros have a cool way of making this happen. for example, to make a labeled if type the text of the condition Select the text Insert the if macro The condition is replaced with if condition then end if #condition That's not entirely correct, because 4D uses the ` as the comment symbol, but you get the idea. If you use Levure, Trevor foolishly accepted my indent rules for sublimeText. I added an indent rule for blocks labeled like this # # The code in such a block will be indented another level, which means I get visual separation within the block, and I can fold it. On Thu, Aug 10, 2017 at 6:00 AM, Monte Goulding via use-livecode < use-livecode at lists.runrev.com> wrote: > > > On 10 Aug 2017, at 6:02 pm, panagiotis merakos via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > > I personally like this idea, and I find it pretty useful. And this does > not > > sound too difficult to implement. > > > > But I am not sure if everyone will like it, so if we do it, we should > > probably add a pref to turn it on/off. > > > > The good news is that Ali has been doing some work on scriptifying the > > Prefs stack, so in the future it will be easier to add Prefs for such > > features. > > I wonder whether a mouse over tooltip would work just as well. Is this > something you want to be able to see _all_ the time or just if you get > confused about where you are? > > Cheers > > Monte > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > -- On the first day, God created the heavens and the Earth On the second day, God created the oceans. On the third day, God put the animals on hold for a few hours, and did a little diving. And God said, "This is good." From bobsneidar at iotecdigital.com Thu Aug 10 10:36:23 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Thu, 10 Aug 2017 14:36:23 +0000 Subject: Using Find with Shell on Mac In-Reply-To: <29CE0AEE-5BBA-460F-A538-9F15871AECFA@hindu.org> References: <29CE0AEE-5BBA-460F-A538-9F15871AECFA@hindu.org> Message-ID: <3FF4B323-3AF1-4B6B-B943-1E6CE78E4A17@iotecdigital.com> OH RIGHT. I thought you were talking about using this in the terminal. I know about the LC environment variables. Bob S > On Aug 9, 2017, at 18:51 , Sannyasin Brahmanathaswami via use-livecode wrote: > > @ bob > > try it in msg > > put $HOME > > see the dictionary for $ From bobsneidar at iotecdigital.com Thu Aug 10 10:42:33 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Thu, 10 Aug 2017 14:42:33 +0000 Subject: Parent of Target In-Reply-To: <8BB9BBF1-548C-4562-8408-0D91C5C53998@hindu.org> References: <9FA2E439-5F28-4EC1-B087-142D3E2D24FF@hindu.org> <9EECE76E-8AEF-497C-802B-D637C13304CB@appisle.net> <8BB9BBF1-548C-4562-8408-0D91C5C53998@hindu.org> Message-ID: <9890FBD3-7C5C-4D59-BB31-6A2385EF35F4@iotecdigital.com> Remember that arrays stored as properties provides a kind of scoping. For example 2 stacks can hold the same array but with different values in a property with the same name. The added advantage is they are persistent through idle and you can now check the contents of the properties by drilling down in the property inspector to the value you want to check to see what it contains. Properties work great as a kind of scoped global. Bob S > On Aug 9, 2017, at 18:24 , Sannyasin Brahmanathaswami via use-livecode wrote: > > Addendum on Scoping > > This new "modular" world, of behaviors, libs that have been put into msg path with "start Using" or "insert into back".. text files, multiple binary.livecode stacks -- not substacks as such, but separate.livecode files. > The app is now a complete "environment/framework". With Andre constant warnings along with my experience using globals in this environment gets very dangerous very fast, typically want to use an array to starts holding all kind of things we think we need to reference across many different stacks/libs. Seems OK on the surface, but then as Andre says, if someGlobalArray["fruit"] = "apple" when you thought for sure it should now be "orange" then then debugging "hell" door opens. So instead we start sending and dispatching commands, setting up locals in scripts with lots of small > > local sCurrentFlavorA > > function returnCurrentFlavor > put sCurrentFlavorA["fruit"] > end returnCurrentFlavor > > So now, with debug on you can trace easily where things are happening. so some way to track, not only "where did this come from" (which is what debug stepping is really doing) but to look "up" "Who is asking?" > would be interesting. From paul at researchware.com Thu Aug 10 10:57:23 2017 From: paul at researchware.com (Paul Dupuis) Date: Thu, 10 Aug 2017 10:57:23 -0400 Subject: common code patterns In-Reply-To: References: Message-ID: On 8/10/2017 6:01 AM, Monte Goulding via use-livecode wrote: > Hi Folks > > I?m looking for a few common code patterns that you find yourselves writing often but aren?t well suited to reusable handlers. So snippets of code or common ways that events are handled together in a script for a certain task. > > Cheers > > Monte I am not sure I get exactly what you are looking for, but I find myself rewriting very similar code over and over again in resizeStack and resizeControl handlers on resizeStack x,y ... -- what I want to do is modify part of an object rect, something like: -- set rect of btn X to rect of btn X but with new right of y-10 -- and end up writing set rect of btn X to (item 1 of rect of btn X,item 2 of rect of btn X, y-10, item 4 of rect of btn X) ... end resizeStack Sometimes I just want to add to 1 or more items in the rect, sometime replace the values. Using top,left,etc, MOVES the object. You have to use the rect to resize. Of course, I could write functions (and have) to do this. There are a lot of approaches people take with function, from general to specific. set rect of btn X to resizeRectRight(btn X,y-10) A clean way to do this would be nice. Say something like instead of: set the right of btn X to y-10 -- moves button modify the right of btn X to y-10 -- resizes button From andrew at midwestcoastmedia.com Thu Aug 10 11:06:43 2017 From: andrew at midwestcoastmedia.com (andrew at midwestcoastmedia.com) Date: Thu, 10 Aug 2017 15:06:43 +0000 Subject: Bug regression Message-ID: <20170810150643.Horde.7jQ6czwmsatkjqIDnm0QUBu@ua850258.serversignin.com> I found a bug that was squashed in 8.1.0dp3 has re-appeared. What's the proper way to report this? I found the original thread (marked FIXED) and made a comment, but not sure that anyone revisits those. http://quality.livecode.com/show_bug.cgi?id=17852 --Andrew Bell From bobsneidar at iotecdigital.com Thu Aug 10 11:17:46 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Thu, 10 Aug 2017 15:17:46 +0000 Subject: DragDrop Bug Message-ID: <5CF80DB9-BABA-4A16-8997-83B87965683F@iotecdigital.com> Hi all. I mentioned in the past I have a drag drop handler in all my editable fields which cleans up the dragged text and then sets the text of the field to the result. Part of the time dragging and dropping text onto these fields will cause the controls on the card to become unresponsive. I cannot click buttons, I cannot change the focus. Simply clicking the titlebar of the window resolves this. Also focusing on another window and back again will resolve it. Switching apps and back again will resolve it. It's as though the stack loses focus and I have to force the stack to gain focus again, although visually it is the top stack. Any ideas how to track something like that down? Bob S From ahsoftware at sonic.net Thu Aug 10 11:28:49 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Thu, 10 Aug 2017 08:28:49 -0700 Subject: Bug 20255 - Simple Loop Labeling In-Reply-To: <9DA005B4-7090-464E-ABB8-E7DC4FA05512@appisle.net> References: <1f1b93a3-9bb3-27f4-0ec4-76bbc09cc954@sonic.net> <9DA005B4-7090-464E-ABB8-E7DC4FA05512@appisle.net> Message-ID: <557f5563-0cec-6aba-a076-d263d6f5e251@sonic.net> On 08/10/2017 03:00 AM, Monte Goulding via use-livecode wrote: > I wonder whether a mouse over tooltip would work just as well. Is this something you want to be able to see _all_ the time or just if you get confused about where you are? Hmmm... I think a tooltip could be especially useful for exit and break statements in nested conditionals where it's not always obvious at first glance. -- Mark Wieder ahsoftware at gmail.com From warren at warrensweb.us Thu Aug 10 11:38:01 2017 From: warren at warrensweb.us (Warren Samples) Date: Thu, 10 Aug 2017 10:38:01 -0500 Subject: Using Find with Shell on Mac In-Reply-To: <3FF4B323-3AF1-4B6B-B943-1E6CE78E4A17@iotecdigital.com> References: <29CE0AEE-5BBA-460F-A538-9F15871AECFA@hindu.org> <3FF4B323-3AF1-4B6B-B943-1E6CE78E4A17@iotecdigital.com> Message-ID: <74166121-bf74-82ab-b237-9ad81227dbc7@warrensweb.us> On 08/10/2017 09:36 AM, Bob Sneidar via use-livecode wrote: > OH RIGHT. I thought you were talking about using this in the terminal. I know about the LC environment variables. > > Bob S What does this do in Terminal? 'echo $HOME' From bobsneidar at iotecdigital.com Thu Aug 10 11:39:59 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Thu, 10 Aug 2017 15:39:59 +0000 Subject: Bug 20255 - Simple Loop Labeling In-Reply-To: <557f5563-0cec-6aba-a076-d263d6f5e251@sonic.net> References: <1f1b93a3-9bb3-27f4-0ec4-76bbc09cc954@sonic.net> <9DA005B4-7090-464E-ABB8-E7DC4FA05512@appisle.net> <557f5563-0cec-6aba-a076-d263d6f5e251@sonic.net> Message-ID: <7263A1F4-3913-4AB7-A621-7D313702FE1B@iotecdigital.com> +1 on the tooltip. I also comment end statements in nested loops or control structures, but it gets cluttery when trying to read through the script. Bob S > On Aug 10, 2017, at 08:28 , Mark Wieder via use-livecode wrote: > > On 08/10/2017 03:00 AM, Monte Goulding via use-livecode wrote: > >> I wonder whether a mouse over tooltip would work just as well. Is this something you want to be able to see _all_ the time or just if you get confused about where you are? > > Hmmm... I think a tooltip could be especially useful for exit and break statements in nested conditionals where it's not always obvious at first glance. > > -- > Mark Wieder > ahsoftware at gmail.com From bobsneidar at iotecdigital.com Thu Aug 10 11:46:41 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Thu, 10 Aug 2017 15:46:41 +0000 Subject: Using Find with Shell on Mac In-Reply-To: <74166121-bf74-82ab-b237-9ad81227dbc7@warrensweb.us> References: <29CE0AEE-5BBA-460F-A538-9F15871AECFA@hindu.org> <3FF4B323-3AF1-4B6B-B943-1E6CE78E4A17@iotecdigital.com> <74166121-bf74-82ab-b237-9ad81227dbc7@warrensweb.us> Message-ID: Well it's case sensitive for one. echo $home produces a blank line. $HOME produces my home folder. But I beg to be excused. I got into computers at first because of the Macintosh. I cannot remember hundreds of commands along with their varied arguments and flags and nuances. I will probably forget the $ in the terminal in about 2 weeks. I avoided PC's for years because all they ran was DOS and I would flip burgers before I learned DOS. I still have to continually refer to the dictionary and online API's to program. I do not have the mind for memorization of arbitrary information. I've only gotten one trivia question right in all my years. The correct answer is, "Kickapoo Joy Juice". Bob S > On Aug 10, 2017, at 08:38 , Warren Samples via use-livecode wrote: > > On 08/10/2017 09:36 AM, Bob Sneidar via use-livecode wrote: >> OH RIGHT. I thought you were talking about using this in the terminal. I know about the LC environment variables. >> Bob S > > > What does this do in Terminal? > > 'echo $HOME' > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From warren at warrensweb.us Thu Aug 10 11:48:55 2017 From: warren at warrensweb.us (Warren Samples) Date: Thu, 10 Aug 2017 10:48:55 -0500 Subject: Using Find with Shell on Mac In-Reply-To: References: <29CE0AEE-5BBA-460F-A538-9F15871AECFA@hindu.org> <3FF4B323-3AF1-4B6B-B943-1E6CE78E4A17@iotecdigital.com> <74166121-bf74-82ab-b237-9ad81227dbc7@warrensweb.us> Message-ID: <5d679dd8-764e-2846-9288-d533951a06de@warrensweb.us> On 08/10/2017 10:46 AM, Bob Sneidar via use-livecode wrote: > But I beg to be excused. :D It's okay, Bob. Stay curious! Warren From merakosp at gmail.com Thu Aug 10 11:49:04 2017 From: merakosp at gmail.com (panagiotis merakos) Date: Thu, 10 Aug 2017 16:49:04 +0100 Subject: Bug regression In-Reply-To: <20170810150643.Horde.7jQ6czwmsatkjqIDnm0QUBu@ua850258.serversignin.com> References: <20170810150643.Horde.7jQ6czwmsatkjqIDnm0QUBu@ua850258.serversignin.com> Message-ID: Hi Andrew, In such cases, I would suggest to file a new bug report (and probably mention the number of the old bug that reappeared). However, in this specific case, what happens is a bit more complicated. What you see is a result of some changes we have done in the segmented control widget in LC 9.0 DP-2: 1. In LC 9.0 DP-2 the segmented control widget has been improved. One of the changes is that you can now have no hilited items at all. You can verify that by trying the following test, in 8.1.6 and 9.0 DP-8: - Create a stack - Drag a segmented control widget onto the card - Switch to run mode - Click twice on "Label 1" RESULTS: - In LC 8.1.6, the second click does not un-hilite "Label 1" - in LC 9.0 DP-8, it does. IMO the correct behavior is the one in 9.0 DP-8, since there might be cases where you don't want any hilitedItem at all. 2. Now regarding the textAlign issue in the Property Inspector, when you select multiple objects that have a different value for a property X, the value of the property X in the property inspector is set to empty (meaning that the multiple objects don't have the same value for property X) and the respective property field is greyed out. But since in this case you cannot have the textAlign being empty, the "default" value (e.g "item1" -> left) is re-hilited. This issue is tracked in this report: http://quality.livecode.com/show_bug.cgi?id=19441 Best regards, Panos -- On Thu, Aug 10, 2017 at 4:06 PM, Andrew Bell via use-livecode < use-livecode at lists.runrev.com> wrote: > I found a bug that was squashed in 8.1.0dp3 has re-appeared. What's the > proper way to report this? I found the original thread (marked FIXED) and > made a comment, but not sure that anyone revisits those. > > http://quality.livecode.com/show_bug.cgi?id=17852 > > --Andrew Bell > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From bobsneidar at iotecdigital.com Thu Aug 10 11:49:24 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Thu, 10 Aug 2017 15:49:24 +0000 Subject: DragDrop Bug In-Reply-To: <5CF80DB9-BABA-4A16-8997-83B87965683F@iotecdigital.com> References: <5CF80DB9-BABA-4A16-8997-83B87965683F@iotecdigital.com> Message-ID: <2B5A264B-84A2-421A-AA7C-627441D259D8@iotecdigital.com> BTW I am dragging text from another application. I have never seen this dragging text from within Livecode. And what is being dragged is text from an email app although there are other sources like PDF's which is why I have to clean up the text before setting any LC field to the result. Bob S > On Aug 10, 2017, at 08:17 , Bob Sneidar via use-livecode wrote: > > Hi all. > > I mentioned in the past I have a drag drop handler in all my editable fields which cleans up the dragged text and then sets the text of the field to the result. Part of the time dragging and dropping text onto these fields will cause the controls on the card to become unresponsive. I cannot click buttons, I cannot change the focus. Simply clicking the titlebar of the window resolves this. Also focusing on another window and back again will resolve it. Switching apps and back again will resolve it. It's as though the stack loses focus and I have to force the stack to gain focus again, although visually it is the top stack. > > Any ideas how to track something like that down? > > Bob S > From MikeKerner at roadrunner.com Thu Aug 10 11:51:07 2017 From: MikeKerner at roadrunner.com (Mike Kerner) Date: Thu, 10 Aug 2017 11:51:07 -0400 Subject: Bug 20255 - Simple Loop Labeling In-Reply-To: <7263A1F4-3913-4AB7-A621-7D313702FE1B@iotecdigital.com> References: <1f1b93a3-9bb3-27f4-0ec4-76bbc09cc954@sonic.net> <9DA005B4-7090-464E-ABB8-E7DC4FA05512@appisle.net> <557f5563-0cec-6aba-a076-d263d6f5e251@sonic.net> <7263A1F4-3913-4AB7-A621-7D313702FE1B@iotecdigital.com> Message-ID: It can, but as of now we don't have another good way of matching structures on a permanent basis so that if you, for instance, remove the "if" or "repeat" on the top, the "end if" or "end repeat" on the bottom goes away, too, or if you change the condition the label on the end changes. On Thu, Aug 10, 2017 at 11:39 AM, Bob Sneidar via use-livecode < use-livecode at lists.runrev.com> wrote: > +1 on the tooltip. I also comment end statements in nested loops or > control structures, but it gets cluttery when trying to read through the > script. > > Bob S > > > > On Aug 10, 2017, at 08:28 , Mark Wieder via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > > On 08/10/2017 03:00 AM, Monte Goulding via use-livecode wrote: > > > >> I wonder whether a mouse over tooltip would work just as well. Is this > something you want to be able to see _all_ the time or just if you get > confused about where you are? > > > > Hmmm... I think a tooltip could be especially useful for exit and break > statements in nested conditionals where it's not always obvious at first > glance. > > > > -- > > Mark Wieder > > ahsoftware at gmail.com > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > -- On the first day, God created the heavens and the Earth On the second day, God created the oceans. On the third day, God put the animals on hold for a few hours, and did a little diving. And God said, "This is good." From rdimola at evergreeninfo.net Thu Aug 10 12:25:56 2017 From: rdimola at evergreeninfo.net (Ralph DiMola) Date: Thu, 10 Aug 2017 12:25:56 -0400 Subject: common code patterns In-Reply-To: References: Message-ID: <004501d311f5$592fc940$0b8f5bc0$@net> Monte, I find that I do this quite often local tIndex put 1 into tIndex repeat for each line tLine in tLines add 1 to tIndex end repeat What would be very help full is the construct: repeat for each line tLine in tLines index tIndex end repeat This eliminates 3 lines. Ralph DiMola IT Director Evergreen Information Services rdimola at evergreeninfo.net -----Original Message----- From: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] On Behalf Of Monte Goulding via use-livecode Sent: Thursday, August 10, 2017 6:01 AM To: How to use LiveCode Cc: Monte Goulding Subject: common code patterns Hi Folks I?m looking for a few common code patterns that you find yourselves writing often but aren?t well suited to reusable handlers. So snippets of code or common ways that events are handled together in a script for a certain task. Cheers Monte _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode From devin_asay at byu.edu Thu Aug 10 12:33:18 2017 From: devin_asay at byu.edu (Devin Asay) Date: Thu, 10 Aug 2017 16:33:18 +0000 Subject: common code patterns In-Reply-To: <004501d311f5$592fc940$0b8f5bc0$@net> References: <004501d311f5$592fc940$0b8f5bc0$@net> Message-ID: <765F1581-ADB6-4BE5-ADF5-BB616F2D489A@byu.edu> On Aug 10, 2017, at 10:25 AM, Ralph DiMola via use-livecode > wrote: Monte, I find that I do this quite often local tIndex put 1 into tIndex repeat for each line tLine in tLines add 1 to tIndex end repeat What would be very help full is the construct: repeat for each line tLine in tLines index tIndex end repeat This eliminates 3 lines. +1. I like this idea because I end of doing something similar a lot. Maybe this sounds a little more x-codish: repeat for each line tLine in tLines with [counter] tIndex end repeat Devin Devin Asay Director Office of Digital Humanities Brigham Young University From jacque at hyperactivesw.com Thu Aug 10 12:38:41 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Thu, 10 Aug 2017 11:38:41 -0500 Subject: Bug 20255 - Simple Loop Labeling In-Reply-To: References: <1f1b93a3-9bb3-27f4-0ec4-76bbc09cc954@sonic.net> <9DA005B4-7090-464E-ABB8-E7DC4FA05512@appisle.net> <557f5563-0cec-6aba-a076-d263d6f5e251@sonic.net> <7263A1F4-3913-4AB7-A621-7D313702FE1B@iotecdigital.com> Message-ID: <15dcd02dc18.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> I like the tooltip idea. It's less invasive than altering the script itself, yet still easy to access. Variable values work the same way and I find that to be a good balance between accessibility and convenience. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com On August 10, 2017 10:53:34 AM Mike Kerner via use-livecode wrote: > It can, but as of now we don't have another good way of matching structures > on a permanent basis so that if you, for instance, remove the "if" or > "repeat" on the top, the "end if" or "end repeat" on the bottom goes away, > too, or if you change the condition the label on the end changes. > > On Thu, Aug 10, 2017 at 11:39 AM, Bob Sneidar via use-livecode < > use-livecode at lists.runrev.com> wrote: > >> +1 on the tooltip. I also comment end statements in nested loops or >> control structures, but it gets cluttery when trying to read through the >> script. >> >> Bob S >> >> >> > On Aug 10, 2017, at 08:28 , Mark Wieder via use-livecode < >> use-livecode at lists.runrev.com> wrote: >> > >> > On 08/10/2017 03:00 AM, Monte Goulding via use-livecode wrote: >> > >> >> I wonder whether a mouse over tooltip would work just as well. Is this >> something you want to be able to see _all_ the time or just if you get >> confused about where you are? >> > >> > Hmmm... I think a tooltip could be especially useful for exit and break >> statements in nested conditionals where it's not always obvious at first >> glance. >> > >> > -- >> > Mark Wieder >> > ahsoftware at gmail.com >> >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> > > > > -- > On the first day, God created the heavens and the Earth > On the second day, God created the oceans. > On the third day, God put the animals on hold for a few hours, > and did a little diving. > And God said, "This is good." > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From jacque at hyperactivesw.com Thu Aug 10 13:30:11 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Thu, 10 Aug 2017 12:30:11 -0500 Subject: common code patterns In-Reply-To: References: Message-ID: <15dcd3248b8.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> How about every time I write a "case" statement inside a switch construct, the editor adds a blank line and then "break"? -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com On August 10, 2017 5:03:25 AM Monte Goulding via use-livecode wrote: > Hi Folks > > I?m looking for a few common code patterns that you find yourselves writing > often but aren?t well suited to reusable handlers. So snippets of code or > common ways that events are handled together in a script for a certain task. > > Cheers > > Monte > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From mark at livecode.com Thu Aug 10 13:32:07 2017 From: mark at livecode.com (Mark Waddingham) Date: Thu, 10 Aug 2017 19:32:07 +0200 Subject: the defaultStack changes on resume In-Reply-To: References: Message-ID: On 2017-08-09 20:48, Trevor DeVore via use-livecode wrote: > I think this bug report has a recipe for the issue you are seeing: > > http://quality.livecode.com/show_bug.cgi?id=18030 > > This has been around for a long time. I don?t know of a workaround > other > than fully qualifying all object references. Unfortunately that is a separate issue. The reason you get that error is because at present the popup button command requires there to be a mouseStack. So if you cmd-tab away from the app whilst your mouse is over some stack, and cmd-tab back in - it will work; if you do not have your mouse over any stack, and do the same you will get the error. In fact, you get the same error if you press the shortcut combination without the mouse over a stack. I guess the 'popup' command was always intended to be run in response to a mouse-click - both the ExecPopup function and the 'openmenu()' function in MCButton have a guard against doing anything if the mouseStack is empty. The requirement for a mouseStack seems to be somewhat deeply tied into the menu code so this could be a little tricky to untangle. (It certainly seems to be part of the mouse tracking behavior menus need on Windows and Linux). So a simple explanation, but not a clear or easy solution. Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From bobsneidar at iotecdigital.com Thu Aug 10 13:37:51 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Thu, 10 Aug 2017 17:37:51 +0000 Subject: common code patterns In-Reply-To: <15dcd3248b8.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> References: <15dcd3248b8.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Message-ID: Ooooh... Ah, but then someone will complain about occassionally having to delete the break. Bob S > On Aug 10, 2017, at 10:30 , J. Landman Gay via use-livecode wrote: > > How about every time I write a "case" statement inside a switch construct, the editor adds a blank line and then "break"? > > -- > Jacqueline Landman Gay | jacque at hyperactivesw.com > HyperActive Software | http://www.hyperactivesw.com From rdimola at evergreeninfo.net Thu Aug 10 13:38:31 2017 From: rdimola at evergreeninfo.net (Ralph DiMola) Date: Thu, 10 Aug 2017 13:38:31 -0400 Subject: common code patterns In-Reply-To: <765F1581-ADB6-4BE5-ADF5-BB616F2D489A@byu.edu> References: <004501d311f5$592fc940$0b8f5bc0$@net> <765F1581-ADB6-4BE5-ADF5-BB616F2D489A@byu.edu> Message-ID: <005e01d311ff$7c4c6370$74e52a50$@net> To make this even more flexible: repeat for each line tLine in tLines with [counter] tIndex [start] [{1}|x] [step] [{1}|y] end repeat Ralph DiMola IT Director Evergreen Information Services rdimola at evergreeninfo.net -----Original Message----- From: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] On Behalf Of Devin Asay via use-livecode Sent: Thursday, August 10, 2017 12:33 PM To: How to use LiveCode Cc: Devin Asay Subject: Re: common code patterns On Aug 10, 2017, at 10:25 AM, Ralph DiMola via use-livecode > wrote: Monte, I find that I do this quite often local tIndex put 1 into tIndex repeat for each line tLine in tLines add 1 to tIndex end repeat What would be very help full is the construct: repeat for each line tLine in tLines index tIndex end repeat This eliminates 3 lines. +1. I like this idea because I end of doing something similar a lot. Maybe this sounds a little more x-codish: repeat for each line tLine in tLines with [counter] tIndex end repeat Devin Devin Asay Director Office of Digital Humanities Brigham Young University _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode From rdimola at evergreeninfo.net Thu Aug 10 13:39:31 2017 From: rdimola at evergreeninfo.net (Ralph DiMola) Date: Thu, 10 Aug 2017 13:39:31 -0400 Subject: common code patterns In-Reply-To: <15dcd3248b8.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> References: <15dcd3248b8.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Message-ID: <005f01d311ff$a035cf10$e0a16d30$@net> +1 Ralph DiMola IT Director Evergreen Information Services rdimola at evergreeninfo.net -----Original Message----- From: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] On Behalf Of J. Landman Gay via use-livecode Sent: Thursday, August 10, 2017 1:30 PM To: How to use LiveCode Cc: J. Landman Gay Subject: Re: common code patterns How about every time I write a "case" statement inside a switch construct, the editor adds a blank line and then "break"? -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com On August 10, 2017 5:03:25 AM Monte Goulding via use-livecode wrote: > Hi Folks > > I?m looking for a few common code patterns that you find yourselves > writing often but aren?t well suited to reusable handlers. So snippets > of code or common ways that events are handled together in a script for a certain task. > > Cheers > > Monte > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode From ambassador at fourthworld.com Thu Aug 10 13:44:53 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Thu, 10 Aug 2017 10:44:53 -0700 Subject: Parent of Target In-Reply-To: References: Message-ID: <16f39823-929b-dc1b-4806-937d31e1d9fe@fourthworld.com> Mark Wieder wrote: > I do use getter and setter routines regularly. I think your function is > useful, but won't by itself get at the question of "who changed that?", > and for that question there are at least two possible methods: > > method 1: > > local sCurrentFlavorA > > command setCurrentFruitFlavorTo pFlavor > put pFlavor into sCurrentFlavor["fruit"] > end setCurrentFruitFlavorTo > > setCurrentFruitFlavorTo "orange" > > method 2: > > setProp CurrentFruitFlavor pFlavor > put pFlavor into sCurrentFlavor["fruit"] > end CurrentFruitFlavor > > getProp CurrentFruitFlavor > return sCurrentFlavor["fruit"] > end CurrentFruitFlavor > > set the CurrentFruitFlavor of me to "orange" > get the CurrentFruitFlavor of me With rare exceptions I use Method 1 almost exclusively. Method 2 feel more natural in many respects, but suffers from one drawback critical in some cases: when lockMessages is true getProp and setProp won't fire. Custom handlers will always fire regardless of the current state of message locking. This has been discussed before, and IIRC Mark Waddingham expressed an interest in perhaps reclassifying getProp and setProp from system messages to custom messages, so they would become as immune to locking as other custom handlers. But despite the good intention, it seems the work involved would have murky non-trivial implications. So for the sake of robustness (and sanity during debugging when things go mysteriously wrong), as much as I would prefer to use property syntax for things that behave like properties, I don't. -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From devin_asay at byu.edu Thu Aug 10 13:49:50 2017 From: devin_asay at byu.edu (Devin Asay) Date: Thu, 10 Aug 2017 17:49:50 +0000 Subject: common code patterns In-Reply-To: <15dcd3248b8.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> References: <15dcd3248b8.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Message-ID: <28213F50-F3F4-4BCE-84A0-F2838350F591@byu.edu> On Aug 10, 2017, at 11:30 AM, J. Landman Gay via use-livecode > wrote: How about every time I write a "case" statement inside a switch construct, the editor adds a blank line and then "break?? +2! Yes please. Devin Devin Asay Director Office of Digital Humanities Brigham Young University From jacque at hyperactivesw.com Thu Aug 10 13:57:02 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Thu, 10 Aug 2017 12:57:02 -0500 Subject: common code patterns In-Reply-To: References: <15dcd3248b8.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Message-ID: <15dcd4addb0.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> On the other hand, it would prevent the common (mostly newbie?) mistake where you forget to break and the switch statements run amok. I reported a bug back in the MetaCard days and was gently reminded that I was an idio... um... in error. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com On August 10, 2017 12:39:44 PM Bob Sneidar via use-livecode wrote: > Ooooh... Ah, but then someone will complain about occassionally having to > delete the break. > > Bob S > > >> On Aug 10, 2017, at 10:30 , J. Landman Gay via use-livecode >> wrote: >> >> How about every time I write a "case" statement inside a switch construct, >> the editor adds a blank line and then "break"? >> >> -- >> Jacqueline Landman Gay | jacque at hyperactivesw.com >> HyperActive Software | http://www.hyperactivesw.com > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From rdimola at evergreeninfo.net Thu Aug 10 13:56:51 2017 From: rdimola at evergreeninfo.net (Ralph DiMola) Date: Thu, 10 Aug 2017 13:56:51 -0400 Subject: common code patterns In-Reply-To: References: <15dcd3248b8.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Message-ID: <006001d31202$0ba6c630$22f45290$@net> Using a break in every case is 95%+ of my switch usage. Also the editor should not do this if there is a case in the immediately preceding non-blank/non-comment line. Doing this and J's suggestion would save me lots of typing. Ralph DiMola IT Director Evergreen Information Services rdimola at evergreeninfo.net -----Original Message----- From: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] On Behalf Of Bob Sneidar via use-livecode Sent: Thursday, August 10, 2017 1:38 PM To: How to use LiveCode Cc: Bob Sneidar Subject: Re: common code patterns Ooooh... Ah, but then someone will complain about occassionally having to delete the break. Bob S > On Aug 10, 2017, at 10:30 , J. Landman Gay via use-livecode wrote: > > How about every time I write a "case" statement inside a switch construct, the editor adds a blank line and then "break"? > > -- > Jacqueline Landman Gay | jacque at hyperactivesw.com > HyperActive Software | http://www.hyperactivesw.com _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode From bobsneidar at iotecdigital.com Thu Aug 10 14:11:22 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Thu, 10 Aug 2017 18:11:22 +0000 Subject: the defaultStack changes on resume In-Reply-To: References: Message-ID: Well now wait just a doggone minute. What if I popup a button but the frontmost application is NOT LC, like when I drag drop onto an object I call a landing pad and popup a button to select what kind of data it is? This is Mac OS X. If LC isn't frontmost, how would that affect the mouseStack? Bob S > On Aug 10, 2017, at 10:32 , Mark Waddingham via use-livecode wrote: > > The reason you get that error is because at present the popup button command requires there to be a mouseStack. So if you cmd-tab away from the app whilst your mouse is over some stack, and cmd-tab back in - it will work; if you do not have your mouse over any stack, and do the same you will get the error. From jerry at jhjensen.com Thu Aug 10 14:12:07 2017 From: jerry at jhjensen.com (Jerry Jensen) Date: Thu, 10 Aug 2017 11:12:07 -0700 Subject: common code patterns In-Reply-To: <15dcd4addb0.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> References: <15dcd3248b8.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <15dcd4addb0.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Message-ID: <55A41B3C-F61F-466D-99E7-8482ED86E5D1@jhjensen.com> Switch constructs without breaks are almost like having a 21st century ?goto?. You can really make a mess if you try. > On Aug 10, 2017, at 10:57 AM, J. Landman Gay via use-livecode wrote: > > On the other hand, it would prevent the common (mostly newbie?) mistake where you forget to break and the switch statements run amok. I reported a bug back in the MetaCard days and was gently reminded that I was an idio... um... in error. From ambassador at fourthworld.com Thu Aug 10 14:20:48 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Thu, 10 Aug 2017 11:20:48 -0700 Subject: Bug 20255 - Simple Loop Labeling In-Reply-To: <7263A1F4-3913-4AB7-A621-7D313702FE1B@iotecdigital.com> References: <7263A1F4-3913-4AB7-A621-7D313702FE1B@iotecdigital.com> Message-ID: <77a4c282-09c5-c8ab-d0b2-c0c3da28e71d@fourthworld.com> If we're taking votes, respectfully count mine as -1 on using tooltips for this. Labels within code are most useful when visible. If we need to read the code carefully enough to figure out where we should aim the mouse, then aim the mouse, then pause waiting for the tooltip to appear, the benefit of labels is diminished. I use comments, as most others here seem to do too. Quite happy to just keep doing that - it only costs two extra characters ("--"), is simple and flexible, and immediately self-evident when skimming code. -- Richard Gaskin Fourth World Systems Bob Sneidar wrote: > +1 on the tooltip. I also comment end statements in nested loops or control structures, but it gets cluttery when trying to read through the script. > > Bob S > > >> On Aug 10, 2017, at 08:28 , Mark Wieder via use-livecode wrote: >> >> On 08/10/2017 03:00 AM, Monte Goulding via use-livecode wrote: >> >>> I wonder whether a mouse over tooltip would work just as well. Is this something you want to be able to see _all_ the time or just if you get confused about where you are? >> >> Hmmm... I think a tooltip could be especially useful for exit and break statements in nested conditionals where it's not always obvious at first glance. >> >> -- >> Mark Wieder From mark at livecode.com Thu Aug 10 14:21:37 2017 From: mark at livecode.com (Mark Waddingham) Date: Thu, 10 Aug 2017 19:21:37 +0100 Subject: the defaultStack changes on resume In-Reply-To: References: Message-ID: <763BD8FC-A148-4A62-8D17-587A022C0C65@livecode.com> I'm pretty sure the mouseStack works even if the app is in the background - I could be wrong though... Warmest Regards, Mark. Sent from my iPhone > On 10 Aug 2017, at 19:11, Bob Sneidar via use-livecode wrote: > > Well now wait just a doggone minute. What if I popup a button but the frontmost application is NOT LC, like when I drag drop onto an object I call a landing pad and popup a button to select what kind of data it is? This is Mac OS X. If LC isn't frontmost, how would that affect the mouseStack? > > Bob S > > >> On Aug 10, 2017, at 10:32 , Mark Waddingham via use-livecode wrote: >> >> The reason you get that error is because at present the popup button command requires there to be a mouseStack. So if you cmd-tab away from the app whilst your mouse is over some stack, and cmd-tab back in - it will work; if you do not have your mouse over any stack, and do the same you will get the error. > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From ambassador at fourthworld.com Thu Aug 10 14:28:22 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Thu, 10 Aug 2017 11:28:22 -0700 Subject: common code patterns In-Reply-To: <15dcd4addb0.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> References: <15dcd4addb0.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Message-ID: <706b3323-8110-d746-6291-322a448d6435@fourthworld.com> FWIW I'm with Jacque on this one. Not only are exclusive blocks far more common in practice, they're also explicit - you can see the work "BREAK" right at the end of the case block. If a template doesn't include that explicit guidance, I fear for the experience of new users confused by how their code flows (not to mention old-timers who either forget to add "BREAK" or wonder why it isn't put there with the rest of the supplied code). -- Richard Gaskin Fourth World Systems J. Landman Gay wrote: > On the other hand, it would prevent the common (mostly newbie?) mistake > where you forget to break and the switch statements run amok. I reported a > bug back in the MetaCard days and was gently reminded that I was an idio... > um... in error. > > -- > Jacqueline Landman Gay | jacque at hyperactivesw.com > HyperActive Software | http://www.hyperactivesw.com > > > > On August 10, 2017 12:39:44 PM Bob Sneidar via use-livecode > wrote: > >> Ooooh... Ah, but then someone will complain about occassionally having to >> delete the break. >> >> Bob S >> >> >>> On Aug 10, 2017, at 10:30 , J. Landman Gay via use-livecode >>> wrote: >>> >>> How about every time I write a "case" statement inside a switch construct, >>> the editor adds a blank line and then "break"? From brahma at hindu.org Thu Aug 10 14:51:19 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Thu, 10 Aug 2017 18:51:19 +0000 Subject: App Rejected: IPv6 network? In-Reply-To: <<3EAB7D3C-537A-4D1A-9447-1615FD03AEC3@clearvisiontech.com>> Message-ID: <585D5458-00B6-4A07-AFAE-60D6A5EA2A53@contoso.com> Dan: this is "big news" -- I thought the downloading of LC binary stacks was definitely forbidden fruit inside Apple's Walled Garden Dan wrote: "The app, on launch, downloads a file (a compressed stack) from my server. I know for fact that went without error. That freshly downloaded stack then downloads another compressed stack. The error happened on this second stack. The app (with the development profile, of course) works perfectly on numerous iPads and iPhones (using several versions of iOS including 10.3.3) tested on several WI-Fi wireless networks at multiple locations. It also preformed perfectly using cellular data." Was this app previously submitted, approved, and orking and this is a new version? or is this first submission attempt? Assuming you *do* solve the networking host connection issue, please keep us posted as to whether Apple throws up red flags on downloading binary stacks from a remote server or if they let it pass BR From MikeKerner at roadrunner.com Thu Aug 10 14:53:00 2017 From: MikeKerner at roadrunner.com (Mike Kerner) Date: Thu, 10 Aug 2017 14:53:00 -0400 Subject: common code patterns In-Reply-To: <706b3323-8110-d746-6291-322a448d6435@fourthworld.com> References: <15dcd4addb0.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <706b3323-8110-d746-6291-322a448d6435@fourthworld.com> Message-ID: ick on ralph, and how about if we just get rid of case/switch, and tell everyone to use if/else if/else/end if On Thu, Aug 10, 2017 at 2:28 PM, Richard Gaskin via use-livecode < use-livecode at lists.runrev.com> wrote: > FWIW I'm with Jacque on this one. Not only are exclusive blocks far more > common in practice, they're also explicit - you can see the work "BREAK" > right at the end of the case block. > > If a template doesn't include that explicit guidance, I fear for the > experience of new users confused by how their code flows (not to mention > old-timers who either forget to add "BREAK" or wonder why it isn't put > there with the rest of the supplied code). > > -- > Richard Gaskin > Fourth World Systems > > J. Landman Gay wrote: > >> On the other hand, it would prevent the common (mostly newbie?) mistake >> where you forget to break and the switch statements run amok. I reported a >> bug back in the MetaCard days and was gently reminded that I was an idio... >> um... in error. >> >> -- >> Jacqueline Landman Gay | jacque at hyperactivesw.com >> HyperActive Software | http://www.hyperactivesw.com >> >> >> >> On August 10, 2017 12:39:44 PM Bob Sneidar via use-livecode > at lists.runrev.com> wrote: >> >> Ooooh... Ah, but then someone will complain about occassionally having to >>> delete the break. >>> >>> Bob S >>> >>> >>> On Aug 10, 2017, at 10:30 , J. Landman Gay via use-livecode >>>> wrote: >>>> >>>> How about every time I write a "case" statement inside a switch >>>> construct, the editor adds a blank line and then "break"? >>>> >>> > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > -- On the first day, God created the heavens and the Earth On the second day, God created the oceans. On the third day, God put the animals on hold for a few hours, and did a little diving. And God said, "This is good." From jacque at hyperactivesw.com Thu Aug 10 14:55:19 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Thu, 10 Aug 2017 13:55:19 -0500 Subject: Bug 20255 - Simple Loop Labeling In-Reply-To: <77a4c282-09c5-c8ab-d0b2-c0c3da28e71d@fourthworld.com> References: <7263A1F4-3913-4AB7-A621-7D313702FE1B@iotecdigital.com> <77a4c282-09c5-c8ab-d0b2-c0c3da28e71d@fourthworld.com> Message-ID: <15dcd8039d8.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Well, you don't actually have to use the tooltip. It wouldn't interfere with your current method and would enhance the editor for those who don't want the clutter. Best of both worlds. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com On August 10, 2017 1:22:44 PM Richard Gaskin via use-livecode wrote: > If we're taking votes, respectfully count mine as -1 on using tooltips > for this. > > Labels within code are most useful when visible. If we need to read the > code carefully enough to figure out where we should aim the mouse, then > aim the mouse, then pause waiting for the tooltip to appear, the benefit > of labels is diminished. > > I use comments, as most others here seem to do too. Quite happy to just > keep doing that - it only costs two extra characters ("--"), is simple > and flexible, and immediately self-evident when skimming code. > > -- > Richard Gaskin > Fourth World Systems > > > Bob Sneidar wrote: > >> +1 on the tooltip. I also comment end statements in nested loops or control >> structures, but it gets cluttery when trying to read through the script. >> >> Bob S >> >> >>> On Aug 10, 2017, at 08:28 , Mark Wieder via use-livecode >> lists.runrev.com> wrote: >>> >>> On 08/10/2017 03:00 AM, Monte Goulding via use-livecode wrote: >>> >>>> I wonder whether a mouse over tooltip would work just as well. Is this >>>> something you want to be able to see _all_ the time or just if you get >>>> confused about where you are? >>> >>> Hmmm... I think a tooltip could be especially useful for exit and break >>> statements in nested conditionals where it's not always obvious at first >>> glance. >>> >>> -- >>> Mark Wieder > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From ambassador at fourthworld.com Thu Aug 10 15:10:11 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Thu, 10 Aug 2017 12:10:11 -0700 Subject: Parent of Target In-Reply-To: References: Message-ID: <861b4e0c-aa36-19d3-a79a-a7f528e52463@fourthworld.com> Ali Lloyd wrote: > Richard wrote >> Jacque recently showed me the speed difference between explicitly >> writing out the element of an object reference: >> >> get the width of btn 1 of cd 2 of stack "MyStack" >> >> ...vs other forms like long IDs: >> >> put the long is of btn 1 of cd 2 of stack "MyStack" into t5Obj >> get teh width of tObj >> >> The latter is much slower, yet long IDs are so good to work with. > > The only reason this is true is that in the second case you are > resolving the object twice. Indeed - a very poor example on my part. Also "teh" is not a recognized token. :) > It is not true in general - the second time the long id is used it > will use the id cache which is constant time, whereas "button n" > is O(n). Try benchmarking repeated use of the stored long id vs the > number version, especially if the numbers are large. > > So it's horses for courses. If it's a one-shot object access then the > number form is faster. For repeated use, get the long id. Sounds good, but the benefits of long ID caching have been difficult for me to measure. I was exploring this a while back in response to this forum thread: http://forums.livecode.com/viewtopic.php?f=7&t=29555 Of course object ref performance matters most when you need to traverse a lot of objects or refer to objects frequently, so my test attempts to do both: I made a simple stack with one button containing the script below, and one group containing 100 buttons. The script uses three different methods to obtain a property value from every object in the group, through 100 iterations, for a total of 10,000 accesses with each method. When I'd posted earlier the property being obtained was the short ID, which seems a reasonable reflection of time needed to obtain an arbitrary property value. After reading your post I changed that to long ID, but see little difference in relative performance. How might I measure the benefits of long ID caching? --=================================================-- local sObjRefsA on mouseUp put 100 into n put (the number of btns of grp 1) * n into tIterations -------------- put the millisecs into t repeat n put ObjRef1() into r1 end repeat put the millisecs - t into t1 -- put the millisecs into t repeat n put ObjRef2() into r2 end repeat put the millisecs - t into t2 ------------------ -- Last test requires that we first obtain the object refs to -- measure the benefits of long ID caching: repeat with i = 1 to the number of btns of grp 1 put the long id of btn i of grp 1 into sObjRefsA[i] end repeat -- put the millisecs into t repeat n put ObjRef3() into r3 end repeat put the millisecs - t into t3 -------------------- set the numberformat to "0.0000" put t1/tIterations &" - Method 1 - full expression by number " &cr \ & t2/tIterations &" - Method 2 - mixed expression" &cr \ & t3/tIterations &" - Method 3 - long ID only" &cr \ & (r1 = r3) end mouseUp -- Ordinal references all the way down: function ObjRef1 put the number of btns of grp 1 into tNumBtns repeat with x = 1 to tNumBtns put the long id of btn x of grp 1 of cd 1 of stack \ "objref test" &cr after s end repeat return s end ObjRef1 -- Mix of ordinal button with group long ID: function ObjRef2 put the long id of grp 1 into tGrpObj put the number of btns of tGrpObj into tNumBtns repeat with x = 1 to tNumBtns put the long id of btn x of tGrpObj &cr after s end repeat return s end ObjRef2 -- Long ID: function ObjRef3 put the number of btns of grp 1 into tNumBtns repeat with x = 1 to tNumBtns put the long id of sObjRefsA[x] &cr after s end repeat return s end ObjRef3 -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From MikeKerner at roadrunner.com Thu Aug 10 15:10:43 2017 From: MikeKerner at roadrunner.com (Mike Kerner) Date: Thu, 10 Aug 2017 15:10:43 -0400 Subject: App Rejected: IPv6 network? In-Reply-To: <585D5458-00B6-4A07-AFAE-60D6A5EA2A53@contoso.com> References: <585D5458-00B6-4A07-AFAE-60D6A5EA2A53@contoso.com> Message-ID: I didn't know that downloading stacks onto an app was ever a problem. It's not downloading a file of any sort that has been a no-no, it's loading executable code, which LC scripts are not, and LC stacks are not. On Thu, Aug 10, 2017 at 2:51 PM, Sannyasin Brahmanathaswami via use-livecode wrote: > Dan: > > this is "big news" -- I thought the downloading of LC binary stacks was > definitely forbidden fruit inside Apple's Walled Garden > > Dan wrote: > > "The app, on launch, downloads a file (a compressed stack) from my > server. I > know for fact that went without error. That freshly downloaded stack then > downloads another compressed stack. The error happened on this second > stack. > > The app (with the development profile, of course) works perfectly on > numerous > iPads and iPhones (using several versions of iOS including 10.3.3) tested > on > several WI-Fi wireless networks at multiple locations. It also preformed > perfectly using cellular data." > > Was this app previously submitted, approved, and orking and this is a new > version? or is this first submission attempt? > > Assuming you *do* solve the networking host connection issue, please keep > us posted as to whether Apple throws up red flags on downloading binary > stacks from a remote server or if they let it pass > > BR > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > -- On the first day, God created the heavens and the Earth On the second day, God created the oceans. On the third day, God put the animals on hold for a few hours, and did a little diving. And God said, "This is good." From jonathandlynch at gmail.com Thu Aug 10 15:18:25 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Thu, 10 Aug 2017 15:18:25 -0400 Subject: App Rejected: IPv6 network? In-Reply-To: References: <585D5458-00B6-4A07-AFAE-60D6A5EA2A53@contoso.com> Message-ID: <8DF42F9F-E7BC-467E-AE2C-93106F046A6A@gmail.com> LC scripts are not executable code? Sent from my iPhone > On Aug 10, 2017, at 3:10 PM, Mike Kerner via use-livecode wrote: > > I didn't know that downloading stacks onto an app was ever a problem. It's > not downloading a file of any sort that has been a no-no, it's loading > executable code, which LC scripts are not, and LC stacks are not. > > On Thu, Aug 10, 2017 at 2:51 PM, Sannyasin Brahmanathaswami via > use-livecode wrote: > >> Dan: >> >> this is "big news" -- I thought the downloading of LC binary stacks was >> definitely forbidden fruit inside Apple's Walled Garden >> >> Dan wrote: >> >> "The app, on launch, downloads a file (a compressed stack) from my >> server. I >> know for fact that went without error. That freshly downloaded stack then >> downloads another compressed stack. The error happened on this second >> stack. >> >> The app (with the development profile, of course) works perfectly on >> numerous >> iPads and iPhones (using several versions of iOS including 10.3.3) tested >> on >> several WI-Fi wireless networks at multiple locations. It also preformed >> perfectly using cellular data." >> >> Was this app previously submitted, approved, and orking and this is a new >> version? or is this first submission attempt? >> >> Assuming you *do* solve the networking host connection issue, please keep >> us posted as to whether Apple throws up red flags on downloading binary >> stacks from a remote server or if they let it pass >> >> BR >> >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> > > > > -- > On the first day, God created the heavens and the Earth > On the second day, God created the oceans. > On the third day, God put the animals on hold for a few hours, > and did a little diving. > And God said, "This is good." > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From jacque at hyperactivesw.com Thu Aug 10 15:20:59 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Thu, 10 Aug 2017 14:20:59 -0500 Subject: App Rejected: IPv6 network? In-Reply-To: References: <585D5458-00B6-4A07-AFAE-60D6A5EA2A53@contoso.com> Message-ID: <587e8a35-fab1-3732-1e0f-361539771678@hyperactivesw.com> On 8/10/17 2:10 PM, Mike Kerner via use-livecode wrote: > I didn't know that downloading stacks onto an app was ever a problem. It's > not downloading a file of any sort that has been a no-no, it's loading > executable code, which LC scripts are not, and LC stacks are not. If a script isn't executable code, I'm not sure what is. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com From ambassador at fourthworld.com Thu Aug 10 15:21:18 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Thu, 10 Aug 2017 12:21:18 -0700 Subject: detailed files with specified path? Message-ID: LC 8.1 now includes an option to specify a folder for the "files" function, e.g.: put files("~/Desktop") How do we obtain the detailed files for a specified folder using this extended functionality? I tried: put the detailed files of "~/Desktop") ..and got an error. :( -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From merakosp at gmail.com Thu Aug 10 15:27:10 2017 From: merakosp at gmail.com (panagiotis merakos) Date: Thu, 10 Aug 2017 20:27:10 +0100 Subject: detailed files with specified path? In-Reply-To: References: Message-ID: Hi Richard, The new syntax does not support the yet. There is already a feature request about it: http://quality.livecode.com/show_bug.cgi?id=18010 Best, Panos -- On Thu, Aug 10, 2017 at 8:21 PM, Richard Gaskin via use-livecode < use-livecode at lists.runrev.com> wrote: > LC 8.1 now includes an option to specify a folder for the "files" > function, e.g.: > > put files("~/Desktop") > > How do we obtain the detailed files for a specified folder using this > extended functionality? > > I tried: > > put the detailed files of "~/Desktop") > > ..and got an error. :( > > -- > Richard Gaskin > Fourth World Systems > Software Design and Development for the Desktop, Mobile, and the Web > ____________________________________________________________________ > Ambassador at FourthWorld.com http://www.FourthWorld.com > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From ambassador at fourthworld.com Thu Aug 10 15:27:07 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Thu, 10 Aug 2017 12:27:07 -0700 Subject: App Rejected: IPv6 network? In-Reply-To: <8DF42F9F-E7BC-467E-AE2C-93106F046A6A@gmail.com> References: <8DF42F9F-E7BC-467E-AE2C-93106F046A6A@gmail.com> Message-ID: jonathandlynch wrote: > LC scripts are not executable code? They are to the LiveCode engine, but not to the OS. LiveCode Script has no access to the OS, and can't touch anything outside of the LiveCode engine. So from the OS perspective, scripts are just data, like glorified spreadsheet formulas. All sandboxing and other API evaluation is relevant to the LC Engine. -- Richard Gaskin Fourth World Systems From dochawk at gmail.com Thu Aug 10 15:33:00 2017 From: dochawk at gmail.com (Dr. Hawkins) Date: Thu, 10 Aug 2017 12:33:00 -0700 Subject: Bug 20255 - Simple Loop Labeling In-Reply-To: References: <1f1b93a3-9bb3-27f4-0ec4-76bbc09cc954@sonic.net> Message-ID: On Thu, Aug 10, 2017 at 1:02 AM, panagiotis merakos via use-livecode < use-livecode at lists.runrev.com> wrote: > > I personally like this idea, and I find it pretty useful. And this does not > sound too difficult to implement. > That was the flash of insight that triggered me: something was *already* happening that could bee piggy-backed. > > But I am not sure if everyone will like it, so if we do it, we should > probably add a pref to turn it on/off. > That makes sense--but in my narrow proposal, it would only happen if someone added the comment. In fact, what I would *like* is modern Fortran style labelling or something like that, and the ability to the those labels to controls like next and exit. This, however, would accomplish so much with so little. In fact, I think I like Mark's labeling even better, if the preference could be set to always include that moment on the terminating statement. And Monte's mouseover tooltip, and the ability to jump to the matching end, would be great . . . While such things are being discussed, everyone realizes that indenting is horribly broken in 8.x, don't they? -- Dr. Richard E. Hawkins, Esq. (702) 508-8462 From jacque at hyperactivesw.com Thu Aug 10 15:42:33 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Thu, 10 Aug 2017 14:42:33 -0500 Subject: App Rejected: IPv6 network? In-Reply-To: References: <8DF42F9F-E7BC-467E-AE2C-93106F046A6A@gmail.com> Message-ID: <83764670-72ba-f106-f1c0-b7d6f590c6c7@hyperactivesw.com> On 8/10/17 2:27 PM, Richard Gaskin via use-livecode wrote: > jonathandlynch wrote: > > LC scripts are not executable code? > > They are to the LiveCode engine, but not to the OS. > > LiveCode Script has no access to the OS, and can't touch anything > outside of the LiveCode engine. > > So from the OS perspective, scripts are just data, like glorified > spreadsheet formulas. All sandboxing and other API evaluation is > relevant to the LC Engine. > Well then, that opens up a whole realm of possibilities. I was unaware. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com From richmondmathewson at gmail.com Thu Aug 10 15:59:25 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Thu, 10 Aug 2017 22:59:25 +0300 Subject: App Rejected: IPv6 network? In-Reply-To: <585D5458-00B6-4A07-AFAE-60D6A5EA2A53@contoso.com> References: <585D5458-00B6-4A07-AFAE-60D6A5EA2A53@contoso.com> Message-ID: On 8/10/17 9:51 pm, Sannyasin Brahmanathaswami via use-livecode wrote: > Dan: > > this is "big news" -- I thought the downloading of LC binary stacks was definitely forbidden fruit inside Apple's Walled Garden Somehow the metaphor's are getting a bit mixed there. For starters if Tim Cook is Adam it's a good thing their garden is in California . . . Also, I have a feeling that the situation started out with a situation more like the 3 wierd sisters: Job, Wozniak and Ronald Wayne. Considering Apple's track record with binary files (Aha; here come the forked tongues) . . . I wonder why they should object. Certainly I know that a very clever BBC computer emulator that was made for iPad was rejected because it downloaded other files (BBC computer program files). Richmond. > > Dan wrote: > > "The app, on launch, downloads a file (a compressed stack) from my server. I > know for fact that went without error. That freshly downloaded stack then > downloads another compressed stack. The error happened on this second stack. > > The app (with the development profile, of course) works perfectly on numerous > iPads and iPhones (using several versions of iOS including 10.3.3) tested on > several WI-Fi wireless networks at multiple locations. It also preformed > perfectly using cellular data." > > Was this app previously submitted, approved, and orking and this is a new version? or is this first submission attempt? > > Assuming you *do* solve the networking host connection issue, please keep us posted as to whether Apple throws up red flags on downloading binary stacks from a remote server or if they let it pass > > BR > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From jonathandlynch at gmail.com Thu Aug 10 16:01:45 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Thu, 10 Aug 2017 16:01:45 -0400 Subject: App Rejected: IPv6 network? In-Reply-To: <83764670-72ba-f106-f1c0-b7d6f590c6c7@hyperactivesw.com> References: <8DF42F9F-E7BC-467E-AE2C-93106F046A6A@gmail.com> <83764670-72ba-f106-f1c0-b7d6f590c6c7@hyperactivesw.com> Message-ID: <19FC68B7-59BC-4931-AB9F-C07F1DD61971@gmail.com> If this were allowed, LC could create a player app for iPhone and android and allow people to exchange stacks outside of the app stores. It could be quite big. Sent from my iPhone > On Aug 10, 2017, at 3:42 PM, J. Landman Gay via use-livecode wrote: > >> On 8/10/17 2:27 PM, Richard Gaskin via use-livecode wrote: >> jonathandlynch wrote: >> > LC scripts are not executable code? >> They are to the LiveCode engine, but not to the OS. >> LiveCode Script has no access to the OS, and can't touch anything outside of the LiveCode engine. >> So from the OS perspective, scripts are just data, like glorified spreadsheet formulas. All sandboxing and other API evaluation is relevant to the LC Engine. > > Well then, that opens up a whole realm of possibilities. I was unaware. > > -- > Jacqueline Landman Gay | jacque at hyperactivesw.com > HyperActive Software | http://www.hyperactivesw.com > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From ahsoftware at sonic.net Thu Aug 10 16:09:55 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Thu, 10 Aug 2017 13:09:55 -0700 Subject: common code patterns In-Reply-To: <006001d31202$0ba6c630$22f45290$@net> References: <15dcd3248b8.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <006001d31202$0ba6c630$22f45290$@net> Message-ID: On 08/10/2017 10:56 AM, Ralph DiMola via use-livecode wrote: > Using a break in every case is 95%+ of my switch usage. Also the editor > should not do this if there is a case in the immediately preceding > non-blank/non-comment line. Doing this and J's suggestion would save me lots > of typing. Agreed. While I rely on the fall-through approach sometimes, it's much more often that I want break statements. And if I forget to put them in, it's hard to figure out where the code is breaking. -- Mark Wieder ahsoftware at gmail.com From revolution at derbrill.de Thu Aug 10 16:18:20 2017 From: revolution at derbrill.de (Malte Pfaff-Brill) Date: Thu, 10 Aug 2017 22:18:20 +0200 Subject: common code patterns In-Reply-To: References: Message-ID: <8C6CB235-67B7-47BB-B6B6-A2586DEFBAE1@derbrill.de> Hi Monte, What I do way too often is combining all parameters of a function in a string and then split them up again as needed e.g.: repeat with i=1 to paramcount() if i References: <004501d311f5$592fc940$0b8f5bc0$@net> <765F1581-ADB6-4BE5-ADF5-BB616F2D489A@byu.edu> <005e01d311ff$7c4c6370$74e52a50$@net> Message-ID: <2e9c6011-fc00-fc63-1bfd-1b58427c40d2@sonic.net> On 08/10/2017 10:38 AM, Ralph DiMola via use-livecode wrote: > To make this even more flexible: > > repeat for each line tLine in tLines with [counter] tIndex [start] [{1}|x] > [step] [{1}|y] > > end repeat I would change the syntax slightly: repeat for each line tLine in tLines [using tIndex [start [to end]]] end repeat but otherwise +1: I end up writing loops like this a lot. -- Mark Wieder ahsoftware at gmail.com From ambassador at fourthworld.com Thu Aug 10 16:28:41 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Thu, 10 Aug 2017 13:28:41 -0700 Subject: App Rejected: IPv6 network? In-Reply-To: <83764670-72ba-f106-f1c0-b7d6f590c6c7@hyperactivesw.com> References: <83764670-72ba-f106-f1c0-b7d6f590c6c7@hyperactivesw.com> Message-ID: <56e07e5d-b9ce-3422-5a3e-d2ef1747de2c@fourthworld.com> J. Landman Gay wrote: > On 8/10/17 2:27 PM, Richard Gaskin via use-livecode wrote: >> jonathandlynch wrote: >> > LC scripts are not executable code? >> >> They are to the LiveCode engine, but not to the OS. >> >> LiveCode Script has no access to the OS, and can't touch anything >> outside of the LiveCode engine. >> >> So from the OS perspective, scripts are just data, like glorified >> spreadsheet formulas. All sandboxing and other API evaluation is >> relevant to the LC Engine. >> > > Well then, that opens up a whole realm of possibilities. I was > unaware. I should probably note that I'm neither an attorney nor a representative of any OS vendor. What I described is more or less the view of LC Ltd as far as I understand it. When we had this discussion here a few weeks ago Mark Waddingham also reminded us that LC Builder is an exception, since of course it provides access to OS APIs. So downloading things that contain widgets that use OS APIs may not be in keeping with guidelines from OS vendors. And in all fairness I've not read anything truly definitive on this one way or another from any OS vendor themselves. This is just my own view, apparently that of LC Ltd, and others. We see many apps that allow various forms of interpreted instructions, like spreadsheets and integration tools, and even a few scripting language tools. And I've met developers using a wide range of scripting languages downloading script objects in their apps. But even when something is widely done, and even if it makes logical sense both in terms of policy compliance and respecting actual security risk, it doesn't necessarily mean there isn't an arbitrary prohibition against it. Where exactly Apple or any other OS vendor will draw the line is not something I can say definitively. That would be for them. Did Colin ever hear back on this from the folks on the Android team? -- Richard Gaskin Fourth World Systems From monte at appisle.net Thu Aug 10 16:39:21 2017 From: monte at appisle.net (Monte Goulding) Date: Fri, 11 Aug 2017 06:39:21 +1000 Subject: common code patterns In-Reply-To: <2e9c6011-fc00-fc63-1bfd-1b58427c40d2@sonic.net> References: <004501d311f5$592fc940$0b8f5bc0$@net> <765F1581-ADB6-4BE5-ADF5-BB616F2D489A@byu.edu> <005e01d311ff$7c4c6370$74e52a50$@net> <2e9c6011-fc00-fc63-1bfd-1b58427c40d2@sonic.net> Message-ID: > On 11 Aug 2017, at 6:20 am, Mark Wieder via use-livecode wrote: > > On 08/10/2017 10:38 AM, Ralph DiMola via use-livecode wrote: >> To make this even more flexible: >> repeat for each line tLine in tLines with [counter] tIndex [start] [{1}|x] >> [step] [{1}|y] >> end repeat > > I would change the syntax slightly: > > repeat for each line tLine in tLines [using tIndex [start [to end]]] > end repeat > > but otherwise +1: I end up writing loops like this a lot. Sorry folks I should have been more specific and said using existing syntax. So the original thing posted is what I?m after at the moment: local tIndex put 1 into tIndex repeat for each line tLine in tLines ? code add 1 to tIndex end repeat Jacque the break thing is possible but not what I?m after at the moment. Could you open an enhancement request and I?ll try and get that done for you. Cheers Monte From ambassador at fourthworld.com Thu Aug 10 17:02:18 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Thu, 10 Aug 2017 14:02:18 -0700 Subject: common code patterns In-Reply-To: References: Message-ID: <9deb5e77-3bfa-a761-9586-89743ae9b3e6@fourthworld.com> Monte Goulding wrote: > Sorry folks I should have been more specific and said using existing > syntax. So the original thing posted is what I?m after at the moment: > > local tIndex > put 1 into tIndex > repeat for each line tLine in tLines > ? code > add 1 to tIndex > end repeat Except that's wrong. :) I tend to use 0 as the initial value, and increment at the top of the loop: local tIndex put 0 into tIndex repeat for each line tLine in tLines add 1 to tIndex ? code end repeat I've found two benefits from this habit: 1. (minor) Clearer distinction between unincremented and incremented counter. 2. (major) I can "next repeat" at any point in the block and know that the counter is appropriately updated. Indeed, it was a runaway loop many years ago that set me know this path. All this raises a bigger question: can we for now provide some sparse minimums and perhaps consider adding more later if truly needed? Saves work for you folks, and obviates the need to have what would likely be really long threads here about different coding styles (or whether all possible styles should be supported in Prefs - "Damnation to the dangling 'thens'!" ). -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From MikeKerner at roadrunner.com Thu Aug 10 17:15:25 2017 From: MikeKerner at roadrunner.com (Mike Kerner) Date: Thu, 10 Aug 2017 17:15:25 -0400 Subject: common code patterns In-Reply-To: <9deb5e77-3bfa-a761-9586-89743ae9b3e6@fourthworld.com> References: <9deb5e77-3bfa-a761-9586-89743ae9b3e6@fourthworld.com> Message-ID: So back to my original question, and my original comment - you're talking about macros? See my first reply. On Thu, Aug 10, 2017 at 5:02 PM, Richard Gaskin via use-livecode < use-livecode at lists.runrev.com> wrote: > Monte Goulding wrote: > > Sorry folks I should have been more specific and said using existing > > syntax. So the original thing posted is what I?m after at the moment: > > > > local tIndex > > put 1 into tIndex > > repeat for each line tLine in tLines > > ? code > > add 1 to tIndex > > end repeat > > Except that's wrong. :) > > I tend to use 0 as the initial value, and increment at the top of the loop: > > local tIndex > put 0 into tIndex > repeat for each line tLine in tLines > add 1 to tIndex > ? code > end repeat > > I've found two benefits from this habit: > > 1. (minor) Clearer distinction between unincremented and incremented > counter. > > 2. (major) I can "next repeat" at any point in the block and know that the > counter is appropriately updated. > > Indeed, it was a runaway loop many years ago that set me know this path. > > > All this raises a bigger question: can we for now provide some sparse > minimums and perhaps consider adding more later if truly needed? > > Saves work for you folks, and obviates the need to have what would likely > be really long threads here about different coding styles (or whether all > possible styles should be supported in Prefs - "Damnation to the dangling > 'thens'!" ). > > -- > Richard Gaskin > Fourth World Systems > Software Design and Development for the Desktop, Mobile, and the Web > ____________________________________________________________________ > Ambassador at FourthWorld.com http://www.FourthWorld.com > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > -- On the first day, God created the heavens and the Earth On the second day, God created the oceans. On the third day, God put the animals on hold for a few hours, and did a little diving. And God said, "This is good." From monte at appisle.net Thu Aug 10 17:28:54 2017 From: monte at appisle.net (Monte Goulding) Date: Fri, 11 Aug 2017 07:28:54 +1000 Subject: common code patterns In-Reply-To: <9deb5e77-3bfa-a761-9586-89743ae9b3e6@fourthworld.com> References: <9deb5e77-3bfa-a761-9586-89743ae9b3e6@fourthworld.com> Message-ID: <0EC57650-D6FA-4D82-B5E6-0336CA9F3E72@appisle.net> > On 11 Aug 2017, at 7:02 am, Richard Gaskin via use-livecode wrote: > > Except that's wrong. :) > > I tend to use 0 as the initial value, and increment at the top of the loop: > > local tIndex > put 0 into tIndex > repeat for each line tLine in tLines > add 1 to tIndex > ? code > end repeat > > I've found two benefits from this habit: > > 1. (minor) Clearer distinction between unincremented and incremented counter. > > 2. (major) I can "next repeat" at any point in the block and know that the counter is appropriately updated. > > Indeed, it was a runaway loop many years ago that set me know this path. Aha? well it probably depends on what you are using tIndex for but yes your pattern is much more reliable if tIndex is meant to represent the line number. If on the other hand tIndex is meant to only be incremented if you haven?t exited the loop at some point while processing tLine then you may want the other pattern so perhaps both have value as examples but I?m not sure how one would name the two different patterns. I guess you could do this which is probably best: local tIndex put 0 into tIndex repeat for each line tLine in tLines ? code for ensuring tIndex should be incremented add 1 to tIndex ? code for using tIndex end repeat > > > > All this raises a bigger question: can we for now provide some sparse minimums and perhaps consider adding more later if truly needed? > > Saves work for you folks, and obviates the need to have what would likely be really long threads here about different coding styles (or whether all possible styles should be supported in Prefs - "Damnation to the dangling 'thens'!" ). Sparse minimums are fine. I just need a few examples for the moment. Down the track once you all see _why_ I?m asking then we can expand on things a bit ;-) Cheers Monte From dan at clearvisiontech.com Thu Aug 10 17:43:47 2017 From: dan at clearvisiontech.com (Dan Friedman) Date: Thu, 10 Aug 2017 21:43:47 +0000 Subject: App Rejected: IPv6 network? Message-ID: <871E3E19-FB9A-458F-BC64-B17FF83C853F@clearvisiontech.com> To begin, the original purpose of this thread was to discover why the app was rejected by Apple. It turns out that my app disables tsNet (because I have had tons of trouble with it) and that?s why the first stack was successful and the second one failed. Simply not disabling tsNet resolved the problem and the app was the approved and released in the app store. Now, does Apple allow my app to launch, and then download, save, and run a stack? The answer is yes. I have several apps in the app store now that function under this architecture. In my opinion, a LiveCode stack is no more ?executable code? than is a web page or java script. And those is certainly aloud. I also believe that this practice is best and not heard. As of now, Apple is not rejecting these apps. Let?s not give them a reason to ?look deeper? when reviewing our submitted apps. I quietly enjoy all the possibilities that this system brings. I also don?t abuse it. -Dan From monte at appisle.net Thu Aug 10 17:46:37 2017 From: monte at appisle.net (Monte Goulding) Date: Fri, 11 Aug 2017 07:46:37 +1000 Subject: common code patterns In-Reply-To: References: <9deb5e77-3bfa-a761-9586-89743ae9b3e6@fourthworld.com> Message-ID: > On 11 Aug 2017, at 7:15 am, Mike Kerner via use-livecode wrote: > > So back to my original question, and my original comment - you're talking > about macros? See my first reply. However they are used the patterns will be the same ;-) Cheers Monte From ambassador at fourthworld.com Thu Aug 10 18:44:49 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Thu, 10 Aug 2017 15:44:49 -0700 Subject: common code patterns In-Reply-To: <0EC57650-D6FA-4D82-B5E6-0336CA9F3E72@appisle.net> References: <0EC57650-D6FA-4D82-B5E6-0336CA9F3E72@appisle.net> Message-ID: <84afcf9b-7cba-9734-4171-2b8cc4828db2@fourthworld.com> Monte Goulding wrote: >> On 11 Aug 2017, at 7:02 am, Richard Gaskin via use-livecode wrote: >> >> Except that's wrong. :) >> >> I tend to use 0 as the initial value, and increment at the top of the loop: >> >> local tIndex >> put 0 into tIndex >> repeat for each line tLine in tLines >> add 1 to tIndex >> ? code >> end repeat >> >> I've found two benefits from this habit: >> >> 1. (minor) Clearer distinction between unincremented and incremented counter. >> >> 2. (major) I can "next repeat" at any point in the block and know that the counter is appropriately updated. >> >> Indeed, it was a runaway loop many years ago that set me know this path. > > Aha? well it probably depends on what you are using tIndex for but yes your pattern is much more reliable if tIndex is meant to represent the line number. If on the other hand tIndex is meant to only be incremented if you haven?t exited the loop at some point while processing tLine then you may want the other pattern so perhaps both have value as examples but I?m not sure how one would name the two different patterns. I guess you could do this which is probably best: > > local tIndex > put 0 into tIndex > repeat for each line tLine in tLines > ? code for ensuring tIndex should be incremented > add 1 to tIndex > ? code for using tIndex > end repeat Exactly. Many possible waya to write code. No single template will capture all needs. Most of my loops never use counters, or I use the built-in counter form. "repeat with...". So many different ways to do things. That's why we use a scripting language rather than a point-and-click tool. for the flexible expressiveness. > Sparse minimums are fine. I just need a few examples for the moment. Let's start with just two: repeat with i = to -- end repeat repeat for each in -- end repeat Leave any specific extras for the scripter. We need to be in control o those things, and many times we don't use them at all. These barebones are all we need. If we need another line we'll write it. PS: A nagging thought just occurred to me: if the counter variable is named in the script, it would need to account for nested loops. And FWIW I only sometimes use K&R's "i", "j", "k" pattern. Sometimes I'll use more descriptive names, esp. if the block inside the loop is long. -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From dochawk at gmail.com Thu Aug 10 18:53:45 2017 From: dochawk at gmail.com (Dr. Hawkins) Date: Thu, 10 Aug 2017 15:53:45 -0700 Subject: common code patterns In-Reply-To: <55A41B3C-F61F-466D-99E7-8482ED86E5D1@jhjensen.com> References: <15dcd3248b8.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <15dcd4addb0.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <55A41B3C-F61F-466D-99E7-8482ED86E5D1@jhjensen.com> Message-ID: On Thu, Aug 10, 2017 at 11:12 AM, Jerry Jensen via use-livecode < use-livecode at lists.runrev.com> wrote: > Switch constructs without breaks are almost like having a 21st century > ?goto?. You can really make a mess if you try. While doing the code for my dissertation, I actually found that I was duplicating a good-sized block of code that could be resolved with a GOTO. I forget the details, but I effectively had multiple entry and exit points in a recursive problem, and using a GOTO did something like passing the alternate entry setup and going straight to the shared code--but I couldn't simply do an IF/ELSEIF block due to the entry. Then again, that was the first GOTO I'd used since MBASIC 5 eliminated the need to stash setup codes in high line numbers and then return for performance reasons--so the first time in 20 years or so. And it was still the (very) late 20th century. Anyway, I'll remind those who worry about such things that the failure to provide ENDIF to IF in livecode is inconsistent with the other control structures. -- Dr. Richard E. Hawkins, Esq. (702) 508-8462 From dan at clearvisiontech.com Thu Aug 10 19:28:35 2017 From: dan at clearvisiontech.com (Dan Friedman) Date: Thu, 10 Aug 2017 23:28:35 +0000 Subject: Local File in Browser Widget on Android - Fail Message-ID: I?m having a problem loading a local file on Android in the Browser Widget in LC 8.1.5. I am experiencing what is described in bug 19036. But, bug 19036?s status is ?Resolved? in version 8.0.0. So, is something else up? Anyone have any insight? -Dan From alex at tweedly.net Thu Aug 10 19:40:23 2017 From: alex at tweedly.net (Alex Tweedly) Date: Fri, 11 Aug 2017 00:40:23 +0100 Subject: common code patterns In-Reply-To: <8C6CB235-67B7-47BB-B6B6-A2586DEFBAE1@derbrill.de> References: <8C6CB235-67B7-47BB-B6B6-A2586DEFBAE1@derbrill.de> Message-ID: <9b45dfb7-8869-3527-9982-c3936f47e9a9@tweedly.net> Sticking with that style, why not do repeat with i=1 to paramcount()-1 put param(i)&"," after theValue end repeat put param(paramcount()) after theValue Shorter, faster, and just plain tidier :-) or, to change style, is there a reason not to do put param(1) into isLeft put param(2) into isTop etc. This always has fewer lines (i.e. the same number of lines as the "recombine" part), and removes the loop completely. -- Alex. On 10/08/2017 21:18, Malte Pfaff-Brill via use-livecode wrote: > Hi Monte, > > What I do way too often is combining all parameters of a function in a string and then split them up again as needed e.g.: > > > repeat with i=1 to paramcount() > if i put param(i)&"," after theValue > else > put param(i) after theValue > end if > end repeat > > ? specific code follows: > > put item 1 of theValue into isLeft > put item 2 of theValue into isTop > put item 3 of theValue into isRight > put item 4 of theValue into isBottom > > > As this allows me to pass most variants to the function: > > myFunction(10,20,30,40) > > Or > > myFunction(the rect of grc ?myGraphic" > myFunction(the loc of me,10, > > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From hh at hyperhh.de Thu Aug 10 19:56:20 2017 From: hh at hyperhh.de (hh) Date: Fri, 11 Aug 2017 01:56:20 +0200 Subject: JPNG Message-ID: JPNG (named using JPEG and PNG) is not an image format but a compression method. We use the file ending ".lcjpng" for that. It takes features from both JPEG (setting JPEGquality to compress the imageData and from the PNG compression the alphaData/transparency). It saves the alphaData, optionally the maskData, and the JPEG-compressed imageData in one file. The JPNG-compressed image has here, using a JPEGquality of 80, around 25% of the PNG-compressed size. So this may be interesting for people who wish to compress (significantly in size) the PNG-images containing transparency in their stack/standalone and decompress only some images for "current" use. Compression/Decompression is very fast. See stack "JPNG" via the "Sample stacks" of the LC toolbar or (slower) here: http://livecodeshare.runrev.com/stack/841/JPNG This sample stack compresses to files or to (numbered) custom properties. Note: I don't use the JPNG data structure of js or objC, but you can easily convert it to that. From alex at tweedly.net Thu Aug 10 19:59:42 2017 From: alex at tweedly.net (Alex Tweedly) Date: Fri, 11 Aug 2017 00:59:42 +0100 Subject: Parent of Target In-Reply-To: <16f39823-929b-dc1b-4806-937d31e1d9fe@fourthworld.com> References: <16f39823-929b-dc1b-4806-937d31e1d9fe@fourthworld.com> Message-ID: <200c1663-1d4d-325a-da7f-5551aa9b9882@tweedly.net> On 10/08/2017 18:44, Richard Gaskin via use-livecode wrote: > Mark Wieder wrote: >> I do use getter and setter routines regularly. I think your function >> is useful, but won't by itself get at the question of "who changed >> that?", and for that question there are at least two possible methods: >> >> method 1: >> >> local sCurrentFlavorA >> >> command setCurrentFruitFlavorTo pFlavor >> put pFlavor into sCurrentFlavor["fruit"] >> end setCurrentFruitFlavorTo >> >> setCurrentFruitFlavorTo "orange" >> > With rare exceptions I use Method 1 almost exclusively. > I do a variant of this .... local sCurrentFlavorA, sCurrentFlavorSetterA command setCurrentFruitFlavorTo pFlavor put pFlavor into sCurrentFlavorA["fruit"] put the executioncontexts into sCurrentFlavorSetterA["fruit"] end setCurrentFruitFlavorTo (usually only if in 'development' mode) Alex From monte at appisle.net Thu Aug 10 20:42:32 2017 From: monte at appisle.net (Monte Goulding) Date: Fri, 11 Aug 2017 10:42:32 +1000 Subject: common code patterns In-Reply-To: <9b45dfb7-8869-3527-9982-c3936f47e9a9@tweedly.net> References: <8C6CB235-67B7-47BB-B6B6-A2586DEFBAE1@derbrill.de> <9b45dfb7-8869-3527-9982-c3936f47e9a9@tweedly.net> Message-ID: <69CF1E79-81FC-4675-9F9F-CD2AB9C473A3@appisle.net> Over on the Parent of Target thread we are discussing local var access so I wonder if this is a useful common pattern: local s command set p put p into s end set function get return s end get Cheers Monte From devin_asay at byu.edu Thu Aug 10 20:53:58 2017 From: devin_asay at byu.edu (Devin Asay) Date: Fri, 11 Aug 2017 00:53:58 +0000 Subject: common code patterns In-Reply-To: <69CF1E79-81FC-4675-9F9F-CD2AB9C473A3@appisle.net> References: <8C6CB235-67B7-47BB-B6B6-A2586DEFBAE1@derbrill.de> <9b45dfb7-8869-3527-9982-c3936f47e9a9@tweedly.net> <69CF1E79-81FC-4675-9F9F-CD2AB9C473A3@appisle.net> Message-ID: <5C499090-BA10-40B0-BDCD-2118F108FC27@byu.edu> I?d like to see one like this for conditional structures: if then -- do if true else -- do if false end if I always try to use the ?full? form of if-then-else. It solves lots of confusion when you end up with nested if-thens. I teach my students to do it this way as best practice, and I think it reinforces the idea of a completely formed and terminated structure. Devin > On Aug 10, 2017, at 6:42 PM, Monte Goulding via use-livecode wrote: > > Over on the Parent of Target thread we are discussing local var access so I wonder if this is a useful common pattern: > > local s > > command set p > put p into s > end set > > function get > return s > end get > > Cheers > > Monte > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode Devin Asay Learn to code with LiveCode University https://livecode.com/store/education/ From monte at appisle.net Thu Aug 10 21:14:13 2017 From: monte at appisle.net (Monte Goulding) Date: Fri, 11 Aug 2017 11:14:13 +1000 Subject: common code patterns In-Reply-To: <5C499090-BA10-40B0-BDCD-2118F108FC27@byu.edu> References: <8C6CB235-67B7-47BB-B6B6-A2586DEFBAE1@derbrill.de> <9b45dfb7-8869-3527-9982-c3936f47e9a9@tweedly.net> <69CF1E79-81FC-4675-9F9F-CD2AB9C473A3@appisle.net> <5C499090-BA10-40B0-BDCD-2118F108FC27@byu.edu> Message-ID: <33196178-A8D5-48B3-973E-CC86820AB681@appisle.net> > On 11 Aug 2017, at 10:53 am, Devin Asay via use-livecode wrote: > > I?d like to see one like this for conditional structures: > > if then > -- do if true > else > -- do if false > end if > > I always try to use the ?full? form of if-then-else. It solves lots of confusion when you end up with nested if-thens. I teach my students to do it this way as best practice, and I think it reinforces the idea of a completely formed and terminated structure. I agree Devin The script editor doesn?t do macro completion on return of `if` because we have so many possible variations of that it is near impossible to work out what the user wants however I know I always want `return & indent & cursor selection & return & end if` when I hit return and the last non comment word of the line is then. I will occasionally use the single line for things like exit repeat if I?m feeling lazy but it?s likely I only do this because there?s no macro completion here so? Anyway, as with the macro completion of `case` -> `break` adding `if` macro completion only if the last token is `then` would require some special casing in the current code which only looks at the first token of the statement and only does completion with end . Cheers Monte From monte at appisle.net Thu Aug 10 21:24:19 2017 From: monte at appisle.net (Monte Goulding) Date: Fri, 11 Aug 2017 11:24:19 +1000 Subject: Bug 20255 - Simple Loop Labeling In-Reply-To: <15dcd8039d8.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> References: <7263A1F4-3913-4AB7-A621-7D313702FE1B@iotecdigital.com> <77a4c282-09c5-c8ab-d0b2-c0c3da28e71d@fourthworld.com> <15dcd8039d8.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Message-ID: <07F582EA-F787-4A89-BED6-A6D7659B1297@appisle.net> > On 11 Aug 2017, at 4:55 am, J. Landman Gay via use-livecode wrote: > > Well, you don't actually have to use the tooltip. It wouldn't interfere with your current method and would enhance the editor for those who don't want the clutter. Having thought about this a bit I think the issue with the tooltip is if it is worked out dynamically then if you?ve done something to stuff up your control structures then it won?t work out the right thing anyway? when the comments are most useful is in exactly that scenario so perhaps comments is the way to go for those that wan them. So we need: 1. an optional way to add such comments (even users that want them might not want them unless they are making spaghetti) 2. automagical maintenance if the comments exist and you change the condition 3. work out whether tags rather than the actual condition is what people really want because the condition might add too much clutter: if some complicated condition then # I?m a makin? spaghetti ? spaghetti end if # I?m a makin' spaghetti Cheers Monte From ahsoftware at sonic.net Thu Aug 10 21:38:24 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Thu, 10 Aug 2017 18:38:24 -0700 Subject: Bug 20255 - Simple Loop Labeling In-Reply-To: <07F582EA-F787-4A89-BED6-A6D7659B1297@appisle.net> References: <7263A1F4-3913-4AB7-A621-7D313702FE1B@iotecdigital.com> <77a4c282-09c5-c8ab-d0b2-c0c3da28e71d@fourthworld.com> <15dcd8039d8.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <07F582EA-F787-4A89-BED6-A6D7659B1297@appisle.net> Message-ID: <69585f01-f02a-455e-a02a-3ee58bd9f653@sonic.net> On 08/10/2017 06:24 PM, Monte Goulding via use-livecode wrote: > So we need: > > 1. an optional way to add such comments (even users that want them might not want them unless they are making spaghetti) > 2. automagical maintenance if the comments exist and you change the condition > 3. work out whether tags rather than the actual condition is what people really want because the condition might add too much clutter: > > if some complicated condition then # I?m a makin? spaghetti > ? spaghetti > end if # I?m a makin' spaghetti I would actually argue against this. For me, the useful part would be end if # some complicated condition Otherwise, making the user come up with a comment that basically says "some complicated condition" anyway, and doing all the maintentance you've described above sounds like a lot of work for very little gain. -- Mark Wieder ahsoftware at gmail.com From monte at appisle.net Thu Aug 10 21:40:39 2017 From: monte at appisle.net (Monte Goulding) Date: Fri, 11 Aug 2017 11:40:39 +1000 Subject: Bug 20255 - Simple Loop Labeling In-Reply-To: <69585f01-f02a-455e-a02a-3ee58bd9f653@sonic.net> References: <7263A1F4-3913-4AB7-A621-7D313702FE1B@iotecdigital.com> <77a4c282-09c5-c8ab-d0b2-c0c3da28e71d@fourthworld.com> <15dcd8039d8.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <07F582EA-F787-4A89-BED6-A6D7659B1297@appisle.net> <69585f01-f02a-455e-a02a-3ee58bd9f653@sonic.net> Message-ID: <62E5A350-ECA0-4AA3-9260-A623CB68E48E@appisle.net> > On 11 Aug 2017, at 11:38 am, Mark Wieder via use-livecode wrote: > > I would actually argue against this. For me, the useful part would be > > end if # some complicated condition > > Otherwise, making the user come up with a comment that basically says "some complicated condition" anyway, and doing all the maintentance you've described above sounds like a lot of work for very little gain. OK but: if some complicated condition then else if some other complicated condition then else if some yet again complicated condition then else end if # what do you put here? From dan at clearvisiontech.com Thu Aug 10 21:42:26 2017 From: dan at clearvisiontech.com (Dan Friedman) Date: Fri, 11 Aug 2017 01:42:26 +0000 Subject: Crash with mobilePickPhoto and Android Message-ID: Hello! Having some trouble with mobilePickPhoto on an Android device. I call mobilePickPhoto "library" (or mobilePickPhoto "camera") and I can choose the photo or take the picture, but as soon as I accept the image (when LC should have control again) the app crashes with the prompt ?[appName] has stopped?. LC 8.1.5, Moto g5 Plus running Android 7.0. Any thoughts? Any assistance would be GREATLY appreciated! -Dan From ahsoftware at sonic.net Thu Aug 10 21:45:49 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Thu, 10 Aug 2017 18:45:49 -0700 Subject: common code patterns In-Reply-To: References: <004501d311f5$592fc940$0b8f5bc0$@net> <765F1581-ADB6-4BE5-ADF5-BB616F2D489A@byu.edu> <005e01d311ff$7c4c6370$74e52a50$@net> <2e9c6011-fc00-fc63-1bfd-1b58427c40d2@sonic.net> Message-ID: On 08/10/2017 01:39 PM, Monte Goulding via use-livecode wrote: > Sorry folks I should have been more specific and said using existing syntax. You know, if you'd post what you're trying to do it might be more possible to stay on target here. For instance, I regularly have to fill an array with constants in an initialization routine or use a custom property array filled with constants. Is that any help? Or are you looking to make a macro processor? Or a library of common ? Or something else? -- Mark Wieder ahsoftware at gmail.com From monte at appisle.net Thu Aug 10 21:50:07 2017 From: monte at appisle.net (Monte Goulding) Date: Fri, 11 Aug 2017 11:50:07 +1000 Subject: common code patterns In-Reply-To: References: <004501d311f5$592fc940$0b8f5bc0$@net> <765F1581-ADB6-4BE5-ADF5-BB616F2D489A@byu.edu> <005e01d311ff$7c4c6370$74e52a50$@net> <2e9c6011-fc00-fc63-1bfd-1b58427c40d2@sonic.net> Message-ID: <5788CD65-C092-46E2-810B-8B96340B0BDE@appisle.net> > On 11 Aug 2017, at 11:45 am, Mark Wieder via use-livecode wrote: > > You know, if you'd post what you're trying to do it might be more possible to stay on target here. For instance, I regularly have to fill an array with constants in an initialization routine or use a custom property array filled with constants. Is that any help? Or are you looking to make a macro processor? Or a library of common ? Or something else? A library of common is probably the best description at the moment but the use case is not reusable handlers as we have other means for that. Basically anything where you follow a common pattern to do a thing but you can?t abstract away so you don?t have to write the pattern any more. Cheers Monte From ahsoftware at sonic.net Thu Aug 10 21:54:43 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Thu, 10 Aug 2017 18:54:43 -0700 Subject: Bug 20255 - Simple Loop Labeling In-Reply-To: <62E5A350-ECA0-4AA3-9260-A623CB68E48E@appisle.net> References: <7263A1F4-3913-4AB7-A621-7D313702FE1B@iotecdigital.com> <77a4c282-09c5-c8ab-d0b2-c0c3da28e71d@fourthworld.com> <15dcd8039d8.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <07F582EA-F787-4A89-BED6-A6D7659B1297@appisle.net> <69585f01-f02a-455e-a02a-3ee58bd9f653@sonic.net> <62E5A350-ECA0-4AA3-9260-A623CB68E48E@appisle.net> Message-ID: On 08/10/2017 06:40 PM, Monte Goulding via use-livecode wrote: > >> On 11 Aug 2017, at 11:38 am, Mark Wieder via use-livecode wrote: >> >> I would actually argue against this. For me, the useful part would be >> >> end if # some complicated condition >> >> Otherwise, making the user come up with a comment that basically says "some complicated condition" anyway, and doing all the maintentance you've described above sounds like a lot of work for very little gain. > > OK but: > > if some complicated condition then > > else if some other complicated condition then > > else if some yet again complicated condition then > > else > > end if # what do you put here? I would code that as switch someRelatedVariable case someComplicatedCondition break case someOtherComplicatedCondition break case someYetAgainComplicatedCondition break default end switch -- someRelatedVariable but otherwise, I assume the 'end if' is attached to the 'if' and use that condition as the comment. The whole point of this isn't to create useless comments, but to ensure that a large structure can still be parsed visually. By the time I get to an 'end if' statement a few screens down I'll want to know what the original 'if' statement was, and with two spaces of indentation that's often hard to grok. What would you put as a comment after the 'end if' using your proposed approach? The original comment for the 'if' statement or something else? Would you force the user to create comments for each 'else if' as well? -- Mark Wieder ahsoftware at gmail.com From ahsoftware at sonic.net Thu Aug 10 21:57:17 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Thu, 10 Aug 2017 18:57:17 -0700 Subject: common code patterns In-Reply-To: <5788CD65-C092-46E2-810B-8B96340B0BDE@appisle.net> References: <004501d311f5$592fc940$0b8f5bc0$@net> <765F1581-ADB6-4BE5-ADF5-BB616F2D489A@byu.edu> <005e01d311ff$7c4c6370$74e52a50$@net> <2e9c6011-fc00-fc63-1bfd-1b58427c40d2@sonic.net> <5788CD65-C092-46E2-810B-8B96340B0BDE@appisle.net> Message-ID: <08d9ccea-434b-8e79-af00-07537e4c1045@sonic.net> On 08/10/2017 06:50 PM, Monte Goulding via use-livecode wrote: > A library of common is probably the best description at the moment but the use case is not reusable handlers as we have other means for that. Hmmm... very mysterious. So I take it an array of constants doesn't fit the category. -- Mark Wieder ahsoftware at gmail.com From monte at appisle.net Thu Aug 10 22:02:32 2017 From: monte at appisle.net (Monte Goulding) Date: Fri, 11 Aug 2017 12:02:32 +1000 Subject: Bug 20255 - Simple Loop Labeling In-Reply-To: References: <7263A1F4-3913-4AB7-A621-7D313702FE1B@iotecdigital.com> <77a4c282-09c5-c8ab-d0b2-c0c3da28e71d@fourthworld.com> <15dcd8039d8.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <07F582EA-F787-4A89-BED6-A6D7659B1297@appisle.net> <69585f01-f02a-455e-a02a-3ee58bd9f653@sonic.net> <62E5A350-ECA0-4AA3-9260-A623CB68E48E@appisle.net> Message-ID: > On 11 Aug 2017, at 11:54 am, Mark Wieder via use-livecode wrote: > > What would you put as a comment after the 'end if' using your proposed approach? The original comment for the 'if' statement or something else? Would you force the user to create comments for each 'else if' as well? I?m not sure if I proposed anything? was just wondering out loud? but yes I think if a tag approach is used then if some complicated condition then # commontag else if some other complicated condition then # commontag else if some yet again complicated condition then # commontag else # commontag end if # commontag Now you would know no matter how much spaghetti you write or how complicated your conditions are which control structure each if/else if/else/end if belongs to. Cheers Monte From MikeKerner at roadrunner.com Thu Aug 10 22:31:56 2017 From: MikeKerner at roadrunner.com (Mike Kerner) Date: Thu, 10 Aug 2017 22:31:56 -0400 Subject: Bug 20255 - Simple Loop Labeling In-Reply-To: References: <7263A1F4-3913-4AB7-A621-7D313702FE1B@iotecdigital.com> <77a4c282-09c5-c8ab-d0b2-c0c3da28e71d@fourthworld.com> <15dcd8039d8.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <07F582EA-F787-4A89-BED6-A6D7659B1297@appisle.net> <69585f01-f02a-455e-a02a-3ee58bd9f653@sonic.net> <62E5A350-ECA0-4AA3-9260-A623CB68E48E@appisle.net> Message-ID: I like and use end if #some complicated condition On Thu, Aug 10, 2017 at 10:02 PM, Monte Goulding via use-livecode < use-livecode at lists.runrev.com> wrote: > > > On 11 Aug 2017, at 11:54 am, Mark Wieder via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > > What would you put as a comment after the 'end if' using your proposed > approach? The original comment for the 'if' statement or something else? > Would you force the user to create comments for each 'else if' as well? > > I?m not sure if I proposed anything? was just wondering out loud? but yes > I think if a tag approach is used then > > if some complicated condition then # commontag > > else if some other complicated condition then # commontag > > else if some yet again complicated condition then # commontag > > else # commontag > > end if # commontag > > Now you would know no matter how much spaghetti you write or how > complicated your conditions are which control structure each if/else > if/else/end if belongs to. > > Cheers > > Monte > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > -- On the first day, God created the heavens and the Earth On the second day, God created the oceans. On the third day, God put the animals on hold for a few hours, and did a little diving. And God said, "This is good." From dan at clearvisiontech.com Thu Aug 10 22:41:51 2017 From: dan at clearvisiontech.com (Dan Friedman) Date: Fri, 11 Aug 2017 02:41:51 +0000 Subject: Crash with mobilePickPhoto and Android Message-ID: <784717B7-DAD1-4DC5-86D0-45E7299209D8@clearvisiontech.com> FYI? Also fails with exact same result on Samsung Galaxy S3 Running 4.4.2. -Dan From charles at techstrategies.com.au Thu Aug 10 22:45:02 2017 From: charles at techstrategies.com.au (Charles Warwick) Date: Fri, 11 Aug 2017 12:45:02 +1000 Subject: App Rejected: IPv6 network? In-Reply-To: <871E3E19-FB9A-458F-BC64-B17FF83C853F@clearvisiontech.com> References: <871E3E19-FB9A-458F-BC64-B17FF83C853F@clearvisiontech.com> Message-ID: <423fd142-c7f9-7a74-0028-c86b107a2637@techstrategies.com.au> Hi Dan, On 11/08/2017 7:43 AM, Dan Friedman via use-livecode wrote: > To begin, the original purpose of this thread was to discover why the app was rejected by Apple. It turns out that my app disables tsNet (because I have had tons of trouble with it) and that?s why the first stack was successful and the second one failed. Simply not disabling tsNet resolved the problem and the app was the approved and released in the app store. > Can you provide any more information about the problems you have been having with tsNet? If there is anything you can pass on, it would be greatly appreciated, so that I can work to resolve any of these issues. Cheers, Charles From brahma at hindu.org Thu Aug 10 23:23:33 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Fri, 11 Aug 2017 03:23:33 +0000 Subject: Mobile LC Apps Downloading Stacks After installation Message-ID: <6C82BF40-3736-4B30-961F-2D0EC4F16D4C@hindu.org> Sorry for mixing threads and hijacking Dan's original issue with Apples rejection because of disabling TS Net moving this to a new thread. here. This is HUGE from my point of view.. though as Dan says, let's just do it, quietly and not abuse it Though if Richard and Mark's assessement is correct and I think clearly, it must be and there is no problem, since the app/engine is sandboxed? there is no way to do some crazy thing like issue worst case scenario, clearly abuse put "rm -Rf /*" into tShell get shell(tShell) theoretically this would simple "die" with "no permission" in a mobile app. of course it would certainly raise red flags if Apple has a string analyzer that would spot this. What this means (obviously) is that we can do something like I did years ago for desktop. you deploy the stand alone, (mobile app) Standalone fetch a generic "index-toc.livecode.gz" and the index-toc.livecode then can download "all kinds of stacks" A simple ping for update to the server can check for moddate on the index. if new, then download overwriting the existing one in the specialFolderPath("documents") launch, and the user has access a whole new fresh update of *content only* stack(s) ------------- Dan wrote: "The app, on launch, downloads a file (a compressed stack) from my server. I know for fact that went without error. That freshly downloaded stack then downloads another compressed stack. BR: wrote: this is "big news" -- I thought the downloading of LC binary stacks was definitely forbidden fruit inside Apple's Walled Garden jonathandlynch wrote: > LC scripts are not executable code? Richard wrote: They are to the LiveCode engine, but not to the OS. LiveCode Script has no access to the OS, and can't touch anything outside of the LiveCode engine. So from the OS perspective, scripts are just data, like glorified spreadsheet formulas. All sandboxing and other API evaluation is relevant to the LC Engine. On 8/10/17, 9:42 AM, "use-livecode on behalf of J. Landman Gay via use-livecode" wrote: Well then, that opens up a whole realm of possibilities. I was unaware. From brahma at hindu.org Thu Aug 10 23:36:58 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Fri, 11 Aug 2017 03:36:58 +0000 Subject: Local File in Browser Widget on Android - Fail In-Reply-To: References: Message-ID: <7D2A7854-F9C2-4A3C-AF5F-5EC0378070E4@hindu.org> make sure your slashes are all correct. on iOS and desktop are forgiving with double// in URLs; but android is not.. .this bit me many times file:/somepath/somefile.html works file://somepath/somefile.html doesn't So If you have path setters here and there, one needs to follow some convention, either leave folder string *always* with no closing slash and all appended url strings begin with a slash.. I started that way but this was always confusing to me because on web / means "from DOCROOT" so slowly I am refactoring all these to function path_Assets return specialFolderPath("documents") & "/assets/" end path_Assets then in any module we use play sound (path_Assets() & "bells-whistles/ding.mp3") because this is "relative" # very subjective.. So what started failing on Android -- really hard to debug! where instances of play sound (path_Assets() & "/bells-whistles/ding.mp3") because these would work on Mac desktop and only fail on Android so you are beating your head "what is wrong." On 8/10/17, 1:28 PM, "use-livecode on behalf of Dan Friedman via use-livecode" wrote: I?m having a problem loading a local file on Android in the Browser Widget in LC 8.1.5. I am experiencing what is described in bug 19036. But, bug 19036?s status is ?Resolved? in version 8.0.0. So, is something else up? Anyone have any insight? -Dan From scott at elementarysoftware.com Fri Aug 11 00:54:23 2017 From: scott at elementarysoftware.com (Scott Morrow) Date: Thu, 10 Aug 2017 21:54:23 -0700 Subject: common code patterns In-Reply-To: <5788CD65-C092-46E2-810B-8B96340B0BDE@appisle.net> References: <004501d311f5$592fc940$0b8f5bc0$@net> <765F1581-ADB6-4BE5-ADF5-BB616F2D489A@byu.edu> <005e01d311ff$7c4c6370$74e52a50$@net> <2e9c6011-fc00-fc63-1bfd-1b58427c40d2@sonic.net> <5788CD65-C092-46E2-810B-8B96340B0BDE@appisle.net> Message-ID: <25EDDAE1-E21F-4563-96DB-0C1871525CB3@elementarysoftware.com> What about the use of mobile-only commands? needing to always wrap them in something to keep the IDE from touching. if "mobile" is in the environment then mobileControlSet tObject, tProp, tValue end if > On Aug 10, 2017, at 6:50 PM, Monte Goulding via use-livecode wrote: > > >> On 11 Aug 2017, at 11:45 am, Mark Wieder via use-livecode wrote: >> >> You know, if you'd post what you're trying to do it might be more possible to stay on target here. For instance, I regularly have to fill an array with constants in an initialization routine or use a custom property array filled with constants. Is that any help? Or are you looking to make a macro processor? Or a library of common ? Or something else? > > A library of common is probably the best description at the moment but the use case is not reusable handlers as we have other means for that. > > Basically anything where you follow a common pattern to do a thing but you can?t abstract away so you don?t have to write the pattern any more. > > Cheers > > Monte > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From monte at appisle.net Fri Aug 11 01:04:14 2017 From: monte at appisle.net (Monte Goulding) Date: Fri, 11 Aug 2017 15:04:14 +1000 Subject: common code patterns In-Reply-To: <25EDDAE1-E21F-4563-96DB-0C1871525CB3@elementarysoftware.com> References: <004501d311f5$592fc940$0b8f5bc0$@net> <765F1581-ADB6-4BE5-ADF5-BB616F2D489A@byu.edu> <005e01d311ff$7c4c6370$74e52a50$@net> <2e9c6011-fc00-fc63-1bfd-1b58427c40d2@sonic.net> <5788CD65-C092-46E2-810B-8B96340B0BDE@appisle.net> <25EDDAE1-E21F-4563-96DB-0C1871525CB3@elementarysoftware.com> Message-ID: > On 11 Aug 2017, at 2:54 pm, Scott Morrow via use-livecode wrote: > > What about the use of mobile-only commands? needing to always wrap them in something to keep the IDE from touching. > > if "mobile" is in the environment then > mobileControlSet tObject, tProp, tValue > end if Yes that?s quite a common bit of code in a mobile app! Cheers Monte From waprothero at gmail.com Fri Aug 11 02:15:07 2017 From: waprothero at gmail.com (William Prothero) Date: Thu, 10 Aug 2017 23:15:07 -0700 Subject: Sending text messages from iOS Message-ID: Folks, I want to send a text message to a list of about 38 recipients. I know about mobileComposeTextMessage, but it requires user interaction with the message app. Has anybody used livecode to send SMS messages directly, to a list of numbers? Bill P William Prothero http://es.earthednet.org From terry.judd at unimelb.edu.au Fri Aug 11 02:15:58 2017 From: terry.judd at unimelb.edu.au (Terry Judd) Date: Fri, 11 Aug 2017 06:15:58 +0000 Subject: common code patterns In-Reply-To: <25EDDAE1-E21F-4563-96DB-0C1871525CB3@elementarysoftware.com> References: <004501d311f5$592fc940$0b8f5bc0$@net> <765F1581-ADB6-4BE5-ADF5-BB616F2D489A@byu.edu> <005e01d311ff$7c4c6370$74e52a50$@net> <2e9c6011-fc00-fc63-1bfd-1b58427c40d2@sonic.net> <5788CD65-C092-46E2-810B-8B96340B0BDE@appisle.net> <25EDDAE1-E21F-4563-96DB-0C1871525CB3@elementarysoftware.com> Message-ID: <8E0D3AD1-DF86-4DF4-BD16-8F792723D7D6@unimelb.edu.au> Even better - the mobile commands could an error rather than spitting the dummy when called from a non-mobile environment. I usually add my own mobile get and set handlers/functions that do the environment test and then pass the necessary parameter to either mobileControlGet or mobileControlSet to minimize the number of times I need to write this sort of code. Terry... On 11/08/2017 2:54 pm, "use-livecode on behalf of Scott Morrow via use-livecode" wrote: What about the use of mobile-only commands? needing to always wrap them in something to keep the IDE from touching. if "mobile" is in the environment then mobileControlSet tObject, tProp, tValue end if > On Aug 10, 2017, at 6:50 PM, Monte Goulding via use-livecode wrote: > > >> On 11 Aug 2017, at 11:45 am, Mark Wieder via use-livecode wrote: >> >> You know, if you'd post what you're trying to do it might be more possible to stay on target here. For instance, I regularly have to fill an array with constants in an initialization routine or use a custom property array filled with constants. Is that any help? Or are you looking to make a macro processor? Or a library of common ? Or something else? > > A library of common is probably the best description at the moment but the use case is not reusable handlers as we have other means for that. > > Basically anything where you follow a common pattern to do a thing but you can?t abstract away so you don?t have to write the pattern any more. > > Cheers > > Monte > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode From jacque at hyperactivesw.com Fri Aug 11 03:07:37 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Fri, 11 Aug 2017 02:07:37 -0500 Subject: common code patterns In-Reply-To: <69CF1E79-81FC-4675-9F9F-CD2AB9C473A3@appisle.net> References: <8C6CB235-67B7-47BB-B6B6-A2586DEFBAE1@derbrill.de> <9b45dfb7-8869-3527-9982-c3936f47e9a9@tweedly.net> <69CF1E79-81FC-4675-9F9F-CD2AB9C473A3@appisle.net> Message-ID: <0345d0c1-4a95-4907-caf9-0b40ea75ed2d@hyperactivesw.com> On 8/10/17 7:42 PM, Monte Goulding via use-livecode wrote: > Over on the Parent of Target thread we are discussing local var access so I wonder if this is a useful common pattern: > > local s > > command set p > put p into s > end set > > function get > return s > end get Yes, I use that a lot. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com From th.douez at gmail.com Fri Aug 11 03:12:30 2017 From: th.douez at gmail.com (Thierry Douez) Date: Fri, 11 Aug 2017 09:12:30 +0200 Subject: common code patterns In-Reply-To: <0345d0c1-4a95-4907-caf9-0b40ea75ed2d@hyperactivesw.com> References: <8C6CB235-67B7-47BB-B6B6-A2586DEFBAE1@derbrill.de> <9b45dfb7-8869-3527-9982-c3936f47e9a9@tweedly.net> <69CF1E79-81FC-4675-9F9F-CD2AB9C473A3@appisle.net> <0345d0c1-4a95-4907-caf9-0b40ea75ed2d@hyperactivesw.com> Message-ID: 2017-08-11 9:07 GMT+02:00 J. Landman Gay: On 8/10/17 7:42 PM, Monte Goulding: > > Over on the Parent of Target thread we are discussing local var access so >> I wonder if this is a useful common pattern: >> >> local s >> >> command set p >> put p into s >> end set >> >> function get >> return s >> end get >> > > Yes, I use that a lot. > > +1 -- ------------------------------------------------ Thierry Douez - sunny-tdz.com sunnYrex - sunnYtext2speech - sunnYperl - sunnYmidi - sunnYmage From jacque at hyperactivesw.com Fri Aug 11 03:13:35 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Fri, 11 Aug 2017 02:13:35 -0500 Subject: common code patterns In-Reply-To: References: <004501d311f5$592fc940$0b8f5bc0$@net> <765F1581-ADB6-4BE5-ADF5-BB616F2D489A@byu.edu> <005e01d311ff$7c4c6370$74e52a50$@net> <2e9c6011-fc00-fc63-1bfd-1b58427c40d2@sonic.net> Message-ID: <1c726a3b-fc6a-1a56-1120-0e505d071d46@hyperactivesw.com> On 8/10/17 3:39 PM, Monte Goulding via use-livecode wrote: > Jacque the break thing is possible but not what I?m after at the moment. Could you open an enhancement request and I?ll try and get that done for you. Done: http://quality.livecode.com/show_bug.cgi?id=20258 -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com From richmondmathewson at gmail.com Fri Aug 11 03:29:49 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Fri, 11 Aug 2017 10:29:49 +0300 Subject: JPNG In-Reply-To: References: Message-ID: <649f35c9-7b45-18ab-4e7b-0ede46b71cff@gmail.com> In theory that sounds both impressive and useful . . . But, what, apart from your stack can read the format/compression method properly. Also, for the sake of argument: LiveCode can export images in the .PNG, .JPG, .GIF and the (horribly obscure ?) .PBM formats. Can your stack export a JPNG image? And, if, so; what will read it? AND this: "This may even result in a larger data size than the original when decompressing." doesn't bode well. Richmond. On 8/11/17 2:56 am, hh via use-livecode wrote: > JPNG (named using JPEG and PNG) is not an image format but a compression method. > We use the file ending ".lcjpng" for that. > > It takes features from both JPEG (setting JPEGquality to compress the imageData > and from the PNG compression the alphaData/transparency). It saves the alphaData, > optionally the maskData, and the JPEG-compressed imageData in one file. The > JPNG-compressed image has here, using a JPEGquality of 80, around 25% of the > PNG-compressed size. > > So this may be interesting for people who wish to compress (significantly in > size) the PNG-images containing transparency in their stack/standalone and > decompress only some images for "current" use. > > Compression/Decompression is very fast. > > See stack "JPNG" via the "Sample stacks" of the LC toolbar or (slower) here: > http://livecodeshare.runrev.com/stack/841/JPNG > This sample stack compresses to files or to (numbered) custom properties. > > Note: I don't use the JPNG data structure of js or objC, but you can easily > convert it to that. > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From mark at livecode.com Fri Aug 11 03:55:58 2017 From: mark at livecode.com (Mark Waddingham) Date: Fri, 11 Aug 2017 09:55:58 +0200 Subject: Mobile LC Apps Downloading Stacks After installation In-Reply-To: <6C82BF40-3736-4B30-961F-2D0EC4F16D4C@hindu.org> References: <6C82BF40-3736-4B30-961F-2D0EC4F16D4C@hindu.org> Message-ID: <3aee2f40b156a12383e1c292515c0285@livecode.com> Okay so the thread from which this post came has some glaringly large and obvious incorrect statements in it so I think it wise I correct them. First of all being able to submit apps to the App Stores which exist today is critically important to our ecosystem - those App Stores come with rules about what is allowed and what is not - the players involved here have demonstrated that they can and will change those rules without consultation and also have budgets larger than you can imagine so, no, you will not win a fight with them so I strongly suggest not trying in the first place. (Also, remember these are *their* gardens - they are not public - they are free to do what they want and see fit!). From my perspective, there are numerous things we could do technically to the engine in order to completely prevent any Apps in our ecosystem violating the critical rules which seem to cause a lot of confusion. I'd rather not do this as it would be a very large blunt instrument based on a very strict interpretation of said rules which would mean a lot of you would have to rewrite a fair bit of code (e.g. We completely remove the ability to compile code at runtime if the engine is running in the context of one of those stores - no 'do' or variants, no ability to create objects with any code attached etc). So, first question - is script 'executable code'? Yes. Script is code (they are essentially synonyms in our 'world'); Script is executable - it is executable by the LiveCode engine. Let's be clear about this - one can 'hypothesise' about the boundary between code and data but it is pointless. Data is code if it can be executed and *is* executed - i.e. cause a physical processor to execute instructions which is parameterized by that data. (e.g. 'Machine code' is data until it is put into an executable page and called - so even as data it is code, if it is executed at some point). Second question - do stackfiles contain executable code? Only if you put data in them which could be considered to be executable - script is obviously covered here. Whether that script be set as the script properties of buttons, or as strings which you then set as a script on an existing object, or execute with 'do'. The means by which a script is executed, or could be executed, is immaterial. If your app takes data from a stackfile and causes the engine to execute steps parameterized by that data, then your stackfile contains executable code. Third question - what are the rules? The Apple App Store(s) Review Guidelines are here: https://developer.apple.com/app-store/review/guidelines/ The Google Play Guidelines are here: https://play.google.com/about/developer-content-policy/#!?modal_active=none The critical parts related to 'executable code' for Apple's App Stores is: 2.5.2 Apps should be self-contained in their bundles, and may not read or write data outside the designated container area, nor may they download, install, or execute code, including other apps. Apps designed to teach, develop, or test executable code may, in limited circumstances, download code provided that such code is not used for other purposes. Such apps must make the source code provided by the Application completely viewable and editable by the user. The critical parts related to 'executable code' for Google's Play Store is: Malicious Behavior We don?t allow apps that steal data, secretly monitor or harm users, or are otherwise malicious. An app distributed via Google Play may not modify, replace, or update itself using any method other than Google Play?s update mechanism. Likewise, an app may not download executable code (e.g. dex, JAR, .so files) from a source other than Google Play. This restriction does not apply to code that runs in a virtual machine and has limited access to Android APIs (such as JavaScript in a webview or browser). The following are explicitly prohibited: Viruses, trojan horses, malware, spyware or any other malicious software. Apps that link to or facilitate the distribution or installation of malicious software. Apps or SDKs that download executable code, such as dex files or native code, from a source other than Google Play. Apps that introduce or exploit security vulnerabilities. Apps that steal a user?s authentication information (such as usernames or passwords) or that mimic other apps or websites to trick users into disclosing personal or authentication information. Apps that install other apps on a device without the user?s prior consent. Apps designed to secretly collect device usage, such as commercial spyware apps. These are pretty clear - at the point of submission to the app stores, you must present the full 'code' of your app and ensure that it is possible to execute it through some interaction with your app. Code (regardless of form) should not be downloadable and then executed by a user receiving the app after being reviewed. Now, the reality is that the whole code/data thing is a somewhat grey area but that's just due to the difficulty in explicitly defining what the boundary is without resorting to very very abstract notions which would render such guidelines incomprehensible to anyone other than hardcode computer scientists. However, I think there are reasonable interpretations of it when you consider what the rules are trying to do. They are two-fold: 1) Subjective: Ensuring that apps which are in the stores do what they say they do, and only what they say they do. 2) Objective: Ensuring that apps which are in the stores do not open up the user to malicious behavior - in particular, increasing the surface area by which a vulnerability could be exploited to do something malicious (e.g. by ensuring the OS APIs the app users are frozen at the point of review). Taken from this point of view, and looking at very successful Apps (typically games) in the stores then you are probably fine if your stackfiles have data/code in them which parameterize the *existing* actions of the main app in reasonably limited ways. So, for example, providing levels to a game where some parts require computations of expressions or triggering of particular events - as long as those levels are consistent with 'what the game is meant to do' (i.e. you don't make it do anything different from what it did with the levels bundled with the original submitted app). This model applies to any sort of 'content player' - language learning flash cards or lessons would be similar - you just have to be careful to make sure you don't end up expanding the ability of the main app in a way which is not directly 'seeable' in the original submitted app. Things which really aren't okay: 1) Using downloaded stackfiles to *update* your main app (e.g. fix problems, expand the set of OS APIs it calls - indirectly through using more engine syntax) or *expand* your main app. This should only be done by resubmitting the main app. 2) Using downloaded stackfiles to create *completely* new UIs and ways for the user to interact which were not present in the original app. [ This is another 'expansion' suggested in (1), really; but I thought it worth enumerating separately as it is something which is really easy to do with LiveCode ] 3) Having a general 'player' of any sort which is not very context/content-specific. Again, you could argue that there are a whole host of grey areas there - which there are if you want to be really pedantic. However, we just need to go back to the intent of the rules which are there: Both Google and Apple expect that, at the point of submission, the complete purpose and ability of an app (regardless of whether it can be parameterized by subsequent downloads) is present, and testable by them; particularly in regard to access to system features and user data. Like other things in life, if you have to drill down too far in terms of asking 'is it okay if I do this', then it probably isn't. On the other hand, 'better to ask forgiveness than permission' - there are *real* people behind App Store review processes, the above are policies/guidelines. As long as you can demonstrate that what you are doing is in keeping with the rules, and you have good reason to do what you are doing, then you aren't hugely likely to encounter a problem. Warmest Regards, Mark. On 2017-08-11 05:23, Sannyasin Brahmanathaswami via use-livecode wrote: > Sorry for mixing threads and hijacking Dan's original issue with > Apples rejection because of disabling TS Net > > moving this to a new thread. here. This is HUGE from my point of > view.. though as Dan says, let's just do it, quietly and not abuse it > > Though if Richard and Mark's assessement is correct and I think > clearly, it must be and there is no problem, since the app/engine is > sandboxed? there is no way to do some crazy thing like issue > > worst case scenario, clearly abuse > > put "rm -Rf /*" into tShell > get shell(tShell) > > theoretically this would simple "die" with "no permission" in a > mobile app. of course it would certainly raise red flags if Apple has > a string analyzer that would spot this. > > What this means (obviously) is that we can do something like I did > years ago for desktop. > > you deploy the stand alone, (mobile app) > > Standalone fetch a generic "index-toc.livecode.gz" and the > index-toc.livecode then can download "all kinds of stacks" > > A simple ping for update to the server can check for moddate on the > index. if new, then download overwriting the existing one in the > specialFolderPath("documents") > launch, and the user has access a whole new fresh update of *content > only* stack(s) > ------------- > > Dan wrote: > > "The app, on launch, downloads a file (a compressed stack) from my > server. I > know for fact that went without error. That freshly downloaded stack > then > downloads another compressed stack. > > BR: wrote: this is "big news" -- I thought the downloading of LC > binary stacks was definitely forbidden fruit inside Apple's Walled > Garden > > jonathandlynch wrote: >> LC scripts are not executable code? > > Richard wrote: > > They are to the LiveCode engine, but not to the OS. > > LiveCode Script has no access to the OS, and can't touch anything > outside of the LiveCode engine. > > So from the OS perspective, scripts are just data, like glorified > spreadsheet formulas. All sandboxing and other API evaluation is > relevant to the LC Engine. > > > > > On 8/10/17, 9:42 AM, "use-livecode on behalf of J. Landman Gay via > use-livecode" use-livecode at lists.runrev.com> wrote: > > Well then, that opens up a whole realm of possibilities. I was > unaware. > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From mark at livecode.com Fri Aug 11 04:13:25 2017 From: mark at livecode.com (Mark Waddingham) Date: Fri, 11 Aug 2017 10:13:25 +0200 Subject: JPNG In-Reply-To: <649f35c9-7b45-18ab-4e7b-0ede46b71cff@gmail.com> References: <649f35c9-7b45-18ab-4e7b-0ede46b71cff@gmail.com> Message-ID: <385444b994733a4de785c9ef1e6d2272@livecode.com> On 2017-08-11 09:29, Richmond Mathewson via use-livecode wrote: > In theory that sounds both impressive and useful . . . > > But, what, apart from your stack can read the format/compression > method properly. I think Hermann's suggestion is a bespoke way of reducing resource size for built apps and their content - as there isn't a 'standard' for JPNG (yet) it isn't really useful for interchange between apps, but it might be that a standard does appear at some point. > Can your stack export a JPNG image? It doesn't need to in order to be useful. This is something which could be used at the point of building a standalone (in a standaloneSaving handler, for example) to convert PNG images into a smaller form for use by the app at runtime. > "This may even result in a larger data size than the original when > decompressing." I'm not sure I quite understand that comment... Any (loss-less) compression algorithm will produce output which is larger than the input for some inputs (https://en.wikipedia.org/wiki/Lossless_compression#Limitations). So all (such) compression algorithms tend to have a flag in their encoded output which says 'this is not compressed'. When the compressor runs, if the output is greater in size than the original input it just emits the output with that flag and the original data. (In this case, if the JPNG process produces a data size larger than the original PNG, just use the original PNG!). In this case the JPNG idea exploits the fact that color images tend to withstand data-loss, but alpha data (masks) do not - JPEG is lossy, it removes information which our eyes cannot see. PNG compression (a variant of gzip IIRC) is loss-less, it preserves the exact values of the inputs. So you use the lossy method (JPEG) on the part of the image which makes no difference to our eyes, and the loss-less method (PNG) on the part of the image which our eyes would notice a difference in. Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From richmondmathewson at gmail.com Fri Aug 11 04:41:16 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Fri, 11 Aug 2017 11:41:16 +0300 Subject: JPNG In-Reply-To: <385444b994733a4de785c9ef1e6d2272@livecode.com> References: <649f35c9-7b45-18ab-4e7b-0ede46b71cff@gmail.com> <385444b994733a4de785c9ef1e6d2272@livecode.com> Message-ID: On 8/11/17 11:13 am, Mark Waddingham via use-livecode wrote: > On 2017-08-11 09:29, Richmond Mathewson via use-livecode wrote: >> In theory that sounds both impressive and useful . . . >> >> But, what, apart from your stack can read the format/compression >> method properly. > > I think Hermann's suggestion is a bespoke way of reducing resource > size for built apps and their content - as there isn't a 'standard' > for JPNG (yet) it isn't really useful for interchange between apps, > but it might be that a standard does appear at some point. > >> Can your stack export a JPNG image? > > It doesn't need to in order to be useful. This is something which > could be used at the point of building a standalone (in a > standaloneSaving handler, for example) to convert PNG images into a > smaller form for use by the app at runtime. > It may not, but the stack does export images with a .lcjpng suffix . . . and the question is what for? Richmond. >> "This may even result in a larger data size than the original when >> decompressing." > > I'm not sure I quite understand that comment... > > Any (loss-less) compression algorithm will produce output which is > larger than the input for some inputs > (https://en.wikipedia.org/wiki/Lossless_compression#Limitations). So > all (such) compression algorithms tend to have a flag in their encoded > output which says 'this is not compressed'. When the compressor runs, > if the output is greater in size than the original input it just emits > the output with that flag and the original data. (In this case, if the > JPNG process produces a data size larger than the original PNG, just > use the original PNG!). > > In this case the JPNG idea exploits the fact that color images tend to > withstand data-loss, but alpha data (masks) do not - JPEG is lossy, it > removes information which our eyes cannot see. PNG compression (a > variant of gzip IIRC) is loss-less, it preserves the exact values of > the inputs. So you use the lossy method (JPEG) on the part of the > image which makes no difference to our eyes, and the loss-less method > (PNG) on the part of the image which our eyes would notice a > difference in. > > Warmest Regards, > > Mark. > From mark at livecode.com Fri Aug 11 05:12:39 2017 From: mark at livecode.com (Mark Waddingham) Date: Fri, 11 Aug 2017 11:12:39 +0200 Subject: Parent of Target In-Reply-To: <861b4e0c-aa36-19d3-a79a-a7f528e52463@fourthworld.com> References: <861b4e0c-aa36-19d3-a79a-a7f528e52463@fourthworld.com> Message-ID: <1c58ee122286399422313a2af587c453@livecode.com> On 2017-08-10 21:10, Richard Gaskin via use-livecode wrote: > How might I measure the benefits of long ID caching? It isn't long ids which are cached - it is ids. I made a few adjustments, tweaked a few things to remove some overheads which aren't relevant here: private function MarkObjRef1 pCount repeat with x = 1 to pCount get the long id of button x of group 1 of card 1 of this stack end repeat end MarkObjRef1 private function MarkObjRef2 pCount put the long id of group 1 of card 1 of this stack into tGrpObj repeat with x = 1 to pCount get the long id of button x of tGrpObj end repeat end MarkObjRef2 private function MarkObjRef3 pCount repeat with x = 1 to pCount get the long id of sObjRefsA[x] end repeat end MarkObjRef3 private function MarkObjRef4 pCount repeat with x = 1 to pCount get the long id of button id word 3 of sObjRefsA[x] of this stack end repeat end MarkObjRef4 I get these results for (100 iterations with) 1000 groups: 0.000801 - Method 1 - full expression by number 0.001399 - Method 2 - mixed expression 0.001786 - Method 3 - long ID only 0.000665 - Method 4 - ID only 0.000005 - Control 0.000796 - Method 1 wo Control - full expression by number 0.001394 - Method 2 wo Control - mixed expression 0.001781 - Method 3 wo Control - long ID only 0.00066 - Method 4 wo Control- ID only And these results for (10 interations with) 10000 groups: 0.05243 - Method 1 - full expression by number 0.05965 - Method 2 - mixed expression 0.0498 - Method 3 - long ID only 0.00697 - Method 4 - ID only 0.00006 - Control 0.05237 - Method 1 wo Control - full expression by number 0.05959 - Method 2 wo Control - mixed expression 0.04974 - Method 3 wo Control - long ID only 0.00691 - Method 4 wo Control - ID only Here you can see that: Method 1 takes 65 times as long, even though the number of groups has only increased 10 times Method 2 takes 42 times as long, even though the number of groups has only increased 10 times Method 3 takes 30 times as long, even though the number of groups has only increased 10 times Method 4 takes 10 times as long - the same factor as the increase in number of groups. Here Method 4 is the only one truly exploiting the id cache to maximum effect - Methods 2 and 3 both have a stack lookup too - which is *not* currently cached. The modified code is below. Warmest Regards, Mark. ================= local sObjRefsA on mouseUp put 10 into n put (the number of btns of grp 1) * n into tIterations put 10000 into tCount -------------- put the millisecs into t repeat n put MarkObjRef1(tCount) into r1 end repeat put the millisecs - t into t1 -- put the millisecs into t repeat n put MarkObjRef2(tCount) into r2 end repeat put the millisecs - t into t2 ------------------ -- Last test requires that we first obtain the object refs to -- measure the benefits of long ID caching: repeat with i = 1 to the number of btns of grp 1 put the long id of btn i of grp 1 into sObjRefsA[i] end repeat -- put the millisecs into t repeat n put MarkObjRef3(tCount) into r3 end repeat put the millisecs - t into t3 -- put the millisecs into t repeat n put MarkObjRef4(tCount) into r4 end repeat put the millisecs - t into t4 put the millisecs into t repeat n put MarkObjRefControl(tCount) into r5 end repeat put the millisecs - t into t5 put the millisecs into t repeat n put MarkObjRefControlStackLookup(tCount) into r6 end repeat put the millisecs - t into t6 -------------------- put t1/tIterations &" - Method 1 - full expression by number " &cr \ & t2/tIterations &" - Method 2 - mixed expression" &cr \ & t3/tIterations &" - Method 3 - long ID only" &cr \ & t4/tIterations &" - Method 4 - ID only" &cr \ & t5/tIterations &" - Control" & cr\ & t6/tIterations & " - Control Stack Lookup" & cr put (t1 - t5)/tIterations &" - Method 1 - full expression by number " &cr \ & (t2 - t5)/tIterations &" - Method 2 - mixed expression" &cr \ & (t3 - t5)/tIterations &" - Method 3 - long ID only" &cr \ & (t4 - t5)/tIterations &" - Method 4 - ID only" after msg end mouseUp private function MarkObjRef1 pCount repeat with x = 1 to pCount get the long id of button x of group 1 of card 1 of this stack end repeat end MarkObjRef1 private function MarkObjRef2 pCount put the long id of group 1 of card 1 of this stack into tGrpObj repeat with x = 1 to pCount get the long id of button x of tGrpObj end repeat end MarkObjRef2 private function MarkObjRef3 pCount repeat with x = 1 to pCount get the long id of sObjRefsA[x] end repeat end MarkObjRef3 private function MarkObjRef4 pCount repeat with x = 1 to pCount get the long id of button id (word 3 of sObjRefsA[x]) of this stack end repeat end MarkObjRef4 private function MarkObjRefControl pCount repeat with x = 1 to pCount end repeat end MarkObjRefControl private function MarkObjRefControlStackLookup pCount repeat with x = 1 to pCount get the long id of (word 13 to 14 of sObjRefsA[x]) end repeat end MarkObjRefControlStackLookup -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From mark at livecode.com Fri Aug 11 05:14:12 2017 From: mark at livecode.com (Mark Waddingham) Date: Fri, 11 Aug 2017 11:14:12 +0200 Subject: JPNG In-Reply-To: References: <649f35c9-7b45-18ab-4e7b-0ede46b71cff@gmail.com> <385444b994733a4de785c9ef1e6d2272@livecode.com> Message-ID: <39c0ced5acd94c79d21ec272599eadd9@livecode.com> On 2017-08-11 10:41, Richmond Mathewson via use-livecode wrote: > It may not, but the stack does export images with a .lcjpng suffix . . > . and the question is what for? Perhaps so it can be loaded again by code which knows how to decompress them as images in LiveCode? After all you have to *store* resources somewhere, disk tends to be quite a good place ;) Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From mark at livecode.com Fri Aug 11 05:24:58 2017 From: mark at livecode.com (Mark Waddingham) Date: Fri, 11 Aug 2017 11:24:58 +0200 Subject: common code patterns In-Reply-To: <005e01d311ff$7c4c6370$74e52a50$@net> References: <004501d311f5$592fc940$0b8f5bc0$@net> <765F1581-ADB6-4BE5-ADF5-BB616F2D489A@byu.edu> <005e01d311ff$7c4c6370$74e52a50$@net> Message-ID: <5d0eb575eb329262a1aceb34ec1e5aaf@livecode.com> On 2017-08-10 19:38, Ralph DiMola via use-livecode wrote: > To make this even more flexible: > > repeat for each line tLine in tLines with [counter] tIndex [start] > [{1}|x] > [step] [{1}|y] > > end repeat Not quite on topic for the thread, but this interested in me in terms of - what are the use cases? The common code pattern we see as justification for 'repeat for each line tLine and index tIndex in tLines' is that it allows you to use the efficiency of iteration over a primary container, whilst still retaining the index of the chunk being iterated over. i.e. put 0 into tIndex repeat for each line tLine in tContainer add 1 to tIndex if tLine is not line tIndex of tContainer then answer "Oh dear - something is *really* wrong" end if end repeat So an extension to the syntax with 'index' means you get both pieces of information and a good amount of duality which justifies its existence. In what kinds of situation do you find yourself wanting an offset index, relative to the index of the iterated chunk? Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From iphonelagi at gmail.com Fri Aug 11 05:32:52 2017 From: iphonelagi at gmail.com (Lagi Pittas) Date: Fri, 11 Aug 2017 10:32:52 +0100 Subject: Bug 20255 - Simple Loop Labeling In-Reply-To: <69585f01-f02a-455e-a02a-3ee58bd9f653@sonic.net> References: <7263A1F4-3913-4AB7-A621-7D313702FE1B@iotecdigital.com> <77a4c282-09c5-c8ab-d0b2-c0c3da28e71d@fourthworld.com> <15dcd8039d8.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <07F582EA-F787-4A89-BED6-A6D7659B1297@appisle.net> <69585f01-f02a-455e-a02a-3ee58bd9f653@sonic.net> Message-ID: +100 To Mark for that one In fact it could copy the complicated condition AND any comment after it - best of all possible worlds Lagi On 11 August 2017 at 02:38, Mark Wieder via use-livecode < use-livecode at lists.runrev.com> wrote: > On 08/10/2017 06:24 PM, Monte Goulding via use-livecode wrote: > > So we need: >> >> 1. an optional way to add such comments (even users that want them might >> not want them unless they are making spaghetti) >> 2. automagical maintenance if the comments exist and you change the >> condition >> 3. work out whether tags rather than the actual condition is what people >> really want because the condition might add too much clutter: >> >> if some complicated condition then # I?m a makin? spaghetti >> ? spaghetti >> end if # I?m a makin' spaghetti >> > > I would actually argue against this. For me, the useful part would be > > end if # some complicated condition > > Otherwise, making the user come up with a comment that basically says > "some complicated condition" anyway, and doing all the maintentance you've > described above sounds like a lot of work for very little gain. > > -- > Mark Wieder > ahsoftware at gmail.com > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From mark at livecode.com Fri Aug 11 05:37:58 2017 From: mark at livecode.com (Mark Waddingham) Date: Fri, 11 Aug 2017 11:37:58 +0200 Subject: Weird thing I noticed with a graphics speed test In-Reply-To: <7F15AE57-993C-416C-ACCC-F3F4D5C85F41@gmail.com> References: <771F86B9-C043-4EA0-8374-9E6301004C72@gmail.com> <7F15AE57-993C-416C-ACCC-F3F4D5C85F41@gmail.com> Message-ID: <782e5f0f61f3d96c7ffd941ca15838ec@livecode.com> On 2017-08-10 03:38, Jonathan Lynch via use-livecode wrote: > Actually, I had forgotten to set the layermode of the group. > > Now the number of passes on my Mac is 47 and on the android it is 31. > > This still seems rather close. I expected the slow android device to > be like a quarter as fast. How many device pixels are there in your group when on your Mac compared to on your slow android device? On Android and iOS, the engine uses OpenGLES to blit tiles to the screen meaning that specific operation comes at virtually no cost. On Desktop it doesn't use OpenGL, so blitting is in software. On Mac, there are two options CoreGraphics or software - I think the former tends to be a bit quicker than the latter (particularly for larger numbers of pixels). Generally (for simple cases, where no mutation beyond movement is happening in your display) you should find that acceleratedRendering will make something on iOS/Android about the same speed as you would get on Desktop without acceleratedRendering turned on. Warmest Regards, Mark. > Sent from my iPhone > >> On Aug 9, 2017, at 9:27 PM, jonathandlynch at gmail.com wrote: >> >> I created a group with ten buttons. I have a function that scrolls >> this group as many times as it can in a second. >> >> With acceleratedrendering on, it can scroll 30 times on my Mac. My >> very slow android device also scrolls it 30 times. >> >> With accelerated rendering off, it can scroll the group 87 times on >> the Mac and 35 times on the android. >> >> Why would the scrolling be faster with accelerated rendering off? >> >> Why do both devices have the same speed with accelerated rendering on? >> >> I thought accelerated rendering used the graphics card? Shouldn't this >> graphically slow android be slower? >> >> Sent from my iPhone > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From mark at livecode.com Fri Aug 11 05:51:12 2017 From: mark at livecode.com (Mark Waddingham) Date: Fri, 11 Aug 2017 11:51:12 +0200 Subject: Bug 20255 - Simple Loop Labeling In-Reply-To: References: <1f1b93a3-9bb3-27f4-0ec4-76bbc09cc954@sonic.net> Message-ID: On 2017-08-10 21:33, Dr. Hawkins via use-livecode wrote: > In fact, what I would *like* is modern Fortran style labelling or > something > like that, and the ability to the those labels to controls like next > and > exit. This, however, would accomplish so much with so little. Thinking out loud here and taking into account suggestions people have made in the past... Naming loops in a syntactic way certainly sounds like a useful thing to do: repeat for each line tLine in tContainer named LineLoop repeat for each item tItem in tLine named ItemLoop if some complicated condition then exit repeat ItemLoop else if some other complicated condition then exit repeat LineLoop end if -- do other stuff if some even more complicated condition then next repeat LineLoop end if end repeat ItemLoop end repeat LineLoop Certainly 'exit repeat ...' would not be harmful, 'next repeat ...' I'd have to analyze more deeply. The main problem with GOTO (apart from the ability to create very hard to understand code) is that it allows creation of what is called 'unstructured control-flow'. Basically that means that you have to work *exceptionally* hard to untangle it in a compile to perform any sort of reasonable optimization. At present LiveCode only allows you to produce 'structured control flow'. Adding 'next repeat ...', doesn't change that... However, 'next repeat ...' is not so clear (I think it is probably fine, but need to check some algorithmics). The only other issue with the above (beyond implementing it) is the syntax... It would reserve 'named' as a non-operator in this context. If we did ever have reason to have 'X named Y' then in repeats you'd have to do: repeat for each line tLine in (tContainer named ...) named ... Although - without knowing what 'named' might do as an operator, or being able to think of anything it could do - that is probably a safe addition from that point of view. (Of course we could use 'labelled' instead of 'named' in the repeat context - 'labelled' seems for some reason less likely to be leveragable as a binary operator!) Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From jonathandlynch at gmail.com Fri Aug 11 06:20:51 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Fri, 11 Aug 2017 06:20:51 -0400 Subject: Mobile LC Apps Downloading Stacks After installation In-Reply-To: <3aee2f40b156a12383e1c292515c0285@livecode.com> References: <6C82BF40-3736-4B30-961F-2D0EC4F16D4C@hindu.org> <3aee2f40b156a12383e1c292515c0285@livecode.com> Message-ID: <3034E4FD-679E-4EAB-9BB8-5B8D37005184@gmail.com> Thank you, Mark. This was a great explanation. I know the reviewers at app stores are not always careful, but something like an LC player would surely get their notice. They do allow us to import JS, but JS is way more sandboxed than LC. Sent from my iPhone > On Aug 11, 2017, at 3:55 AM, Mark Waddingham via use-livecode wrote: > > Okay so the thread from which this post came has some glaringly large and obvious incorrect statements in it so I think it wise I correct them. > > First of all being able to submit apps to the App Stores which exist today is critically important to our ecosystem - those App Stores come with rules about what is allowed and what is not - the players involved here have demonstrated that they can and will change those rules without consultation and also have budgets larger than you can imagine so, no, you will not win a fight with them so I strongly suggest not trying in the first place. (Also, remember these are *their* gardens - they are not public - they are free to do what they want and see fit!). > > From my perspective, there are numerous things we could do technically to the engine in order to completely prevent any Apps in our ecosystem violating the critical rules which seem to cause a lot of confusion. I'd rather not do this as it would be a very large blunt instrument based on a very strict interpretation of said rules which would mean a lot of you would have to rewrite a fair bit of code (e.g. We completely remove the ability to compile code at runtime if the engine is running in the context of one of those stores - no 'do' or variants, no ability to create objects with any code attached etc). > > So, first question - is script 'executable code'? Yes. Script is code (they are essentially synonyms in our 'world'); Script is executable - it is executable by the LiveCode engine. Let's be clear about this - one can 'hypothesise' about the boundary between code and data but it is pointless. Data is code if it can be executed and *is* executed - i.e. cause a physical processor to execute instructions which is parameterized by that data. (e.g. 'Machine code' is data until it is put into an executable page and called - so even as data it is code, if it is executed at some point). > > Second question - do stackfiles contain executable code? Only if you put data in them which could be considered to be executable - script is obviously covered here. Whether that script be set as the script properties of buttons, or as strings which you then set as a script on an existing object, or execute with 'do'. The means by which a script is executed, or could be executed, is immaterial. If your app takes data from a stackfile and causes the engine to execute steps parameterized by that data, then your stackfile contains executable code. > > Third question - what are the rules? > > The Apple App Store(s) Review Guidelines are here: > > https://developer.apple.com/app-store/review/guidelines/ > > The Google Play Guidelines are here: > > https://play.google.com/about/developer-content-policy/#!?modal_active=none > > The critical parts related to 'executable code' for Apple's App Stores is: > > 2.5.2 Apps should be self-contained in their bundles, and may not read or write > data outside the designated container area, nor may they download, install, > or execute code, including other apps. Apps designed to teach, develop, or > test executable code may, in limited circumstances, download code provided > that such code is not used for other purposes. Such apps must make the > source code provided by the Application completely viewable and editable > by the user. > > The critical parts related to 'executable code' for Google's Play Store is: > > Malicious Behavior > We don?t allow apps that steal data, secretly monitor or harm users, or are > otherwise malicious. > > An app distributed via Google Play may not modify, replace, or update itself > using any method other than Google Play?s update mechanism. Likewise, an app > may not download executable code (e.g. dex, JAR, .so files) from a source other > than Google Play. This restriction does not apply to code that runs in a virtual > machine and has limited access to Android APIs (such as JavaScript in a webview > or browser). > > The following are explicitly prohibited: > Viruses, trojan horses, malware, spyware or any other malicious software. > Apps that link to or facilitate the distribution or installation of malicious > software. > Apps or SDKs that download executable code, such as dex files or native code, > from a source other than Google Play. > Apps that introduce or exploit security vulnerabilities. > Apps that steal a user?s authentication information (such as usernames or > passwords) or that mimic other apps or websites to trick users into disclosing > personal or authentication information. > Apps that install other apps on a device without the user?s prior consent. > Apps designed to secretly collect device usage, such as commercial spyware apps. > > These are pretty clear - at the point of submission to the app stores, you must present the full 'code' of your app and ensure that it is possible to execute it through some interaction with your app. Code (regardless of form) should not be downloadable and then executed by a user receiving the app after being reviewed. > > Now, the reality is that the whole code/data thing is a somewhat grey area but that's just due to the difficulty in explicitly defining what the boundary is without resorting to very very abstract notions which would render such guidelines incomprehensible to anyone other than hardcode computer scientists. > > However, I think there are reasonable interpretations of it when you consider what the rules are trying to do. > > They are two-fold: > > 1) Subjective: Ensuring that apps which are in the stores do what they say they do, and only what they say they do. > > 2) Objective: Ensuring that apps which are in the stores do not open up the user to malicious behavior - in particular, increasing the surface area by which a vulnerability could be exploited to do something malicious (e.g. by ensuring the OS APIs the app users are frozen at the point of review). > > Taken from this point of view, and looking at very successful Apps (typically games) in the stores then you are probably fine if your stackfiles have data/code in them which parameterize the *existing* actions of the main app in reasonably limited ways. > > So, for example, providing levels to a game where some parts require computations of expressions or triggering of particular events - as long as those levels are consistent with 'what the game is meant to do' (i.e. you don't make it do anything different from what it did with the levels bundled with the original submitted app). This model applies to any sort of 'content player' - language learning flash cards or lessons would be similar - you just have to be careful to make sure you don't end up expanding the ability of the main app in a way which is not directly 'seeable' in the original submitted app. > > Things which really aren't okay: > > 1) Using downloaded stackfiles to *update* your main app (e.g. fix problems, expand the set of OS APIs it calls - indirectly through using more engine syntax) or *expand* your main app. This should only be done by resubmitting the main app. > > 2) Using downloaded stackfiles to create *completely* new UIs and ways for the user to interact which were not present in the original app. [ This is another 'expansion' suggested in (1), really; but I thought it worth enumerating separately as it is something which is really easy to do with LiveCode ] > > 3) Having a general 'player' of any sort which is not very context/content-specific. > > Again, you could argue that there are a whole host of grey areas there - which there are if you want to be really pedantic. However, we just need to go back to the intent of the rules which are there: > > Both Google and Apple expect that, at the point of submission, the complete purpose and ability of an app (regardless of whether it can be parameterized by subsequent downloads) is present, and testable by them; particularly in regard to access to system features and user data. > > Like other things in life, if you have to drill down too far in terms of asking 'is it okay if I do this', then it probably isn't. On the other hand, 'better to ask forgiveness than permission' - there are *real* people behind App Store review processes, the above are policies/guidelines. As long as you can demonstrate that what you are doing is in keeping with the rules, and you have good reason to do what you are doing, then you aren't hugely likely to encounter a problem. > > Warmest Regards, > > Mark. > >> On 2017-08-11 05:23, Sannyasin Brahmanathaswami via use-livecode wrote: >> Sorry for mixing threads and hijacking Dan's original issue with >> Apples rejection because of disabling TS Net >> moving this to a new thread. here. This is HUGE from my point of >> view.. though as Dan says, let's just do it, quietly and not abuse it >> Though if Richard and Mark's assessement is correct and I think >> clearly, it must be and there is no problem, since the app/engine is >> sandboxed? there is no way to do some crazy thing like issue >> worst case scenario, clearly abuse >> put "rm -Rf /*" into tShell >> get shell(tShell) >> theoretically this would simple "die" with "no permission" in a >> mobile app. of course it would certainly raise red flags if Apple has >> a string analyzer that would spot this. >> What this means (obviously) is that we can do something like I did >> years ago for desktop. >> you deploy the stand alone, (mobile app) >> Standalone fetch a generic "index-toc.livecode.gz" and the >> index-toc.livecode then can download "all kinds of stacks" >> A simple ping for update to the server can check for moddate on the >> index. if new, then download overwriting the existing one in the >> specialFolderPath("documents") >> launch, and the user has access a whole new fresh update of *content >> only* stack(s) >> ------------- >> Dan wrote: >> "The app, on launch, downloads a file (a compressed stack) from my server. I >> know for fact that went without error. That freshly downloaded stack then >> downloads another compressed stack. >> BR: wrote: this is "big news" -- I thought the downloading of LC >> binary stacks was definitely forbidden fruit inside Apple's Walled >> Garden >> jonathandlynch wrote: >>> LC scripts are not executable code? >> Richard wrote: >> They are to the LiveCode engine, but not to the OS. >> LiveCode Script has no access to the OS, and can't touch anything >> outside of the LiveCode engine. >> So from the OS perspective, scripts are just data, like glorified >> spreadsheet formulas. All sandboxing and other API evaluation is >> relevant to the LC Engine. >> On 8/10/17, 9:42 AM, "use-livecode on behalf of J. Landman Gay via >> use-livecode" > use-livecode at lists.runrev.com> wrote: >> Well then, that opens up a whole realm of possibilities. I was unaware. >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode > > -- > Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ > LiveCode: Everyone can create apps > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From jonathandlynch at gmail.com Fri Aug 11 06:26:37 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Fri, 11 Aug 2017 06:26:37 -0400 Subject: Weird thing I noticed with a graphics speed test In-Reply-To: <782e5f0f61f3d96c7ffd941ca15838ec@livecode.com> References: <771F86B9-C043-4EA0-8374-9E6301004C72@gmail.com> <7F15AE57-993C-416C-ACCC-F3F4D5C85F41@gmail.com> <782e5f0f61f3d96c7ffd941ca15838ec@livecode.com> Message-ID: <5EABFE7A-48CC-4AED-A26A-5C521D28D50A@gmail.com> This explains - thanks! So I need to compare performance between the android and iOS devices to get a valid comparison. The group has 20 small images. I will turn them into large images to increase the demand on pixel processing. Sent from my iPhone > On Aug 11, 2017, at 5:37 AM, Mark Waddingham via use-livecode wrote: > >> On 2017-08-10 03:38, Jonathan Lynch via use-livecode wrote: >> Actually, I had forgotten to set the layermode of the group. >> Now the number of passes on my Mac is 47 and on the android it is 31. >> This still seems rather close. I expected the slow android device to >> be like a quarter as fast. > > How many device pixels are there in your group when on your Mac compared to on your slow android device? > > On Android and iOS, the engine uses OpenGLES to blit tiles to the screen meaning that specific operation comes at virtually no cost. > > On Desktop it doesn't use OpenGL, so blitting is in software. On Mac, there are two options CoreGraphics or software - I think the former tends to be a bit quicker than the latter (particularly for larger numbers of pixels). > > Generally (for simple cases, where no mutation beyond movement is happening in your display) you should find that acceleratedRendering will make something on iOS/Android about the same speed as you would get on Desktop without acceleratedRendering turned on. > > Warmest Regards, > > Mark. > >> Sent from my iPhone >>> On Aug 9, 2017, at 9:27 PM, jonathandlynch at gmail.com wrote: >>> I created a group with ten buttons. I have a function that scrolls this group as many times as it can in a second. >>> With acceleratedrendering on, it can scroll 30 times on my Mac. My very slow android device also scrolls it 30 times. >>> With accelerated rendering off, it can scroll the group 87 times on the Mac and 35 times on the android. >>> Why would the scrolling be faster with accelerated rendering off? >>> Why do both devices have the same speed with accelerated rendering on? >>> I thought accelerated rendering used the graphics card? Shouldn't this graphically slow android be slower? >>> Sent from my iPhone >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode > > -- > Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ > LiveCode: Everyone can create apps > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From hh at hyperhh.de Fri Aug 11 06:32:55 2017 From: hh at hyperhh.de (hh) Date: Fri, 11 Aug 2017 12:32:55 +0200 Subject: JPNG Message-ID: @Mark *** Thanks for your expertise. I couldn't do that this perfectly. *** One of the reasons for posting this JPNG stack is to show the power of LC: The essential code of compressing PNG -> JPNG and decompresing PNG -> JPNG is both less than 10 *essential* lines of code, using comfortable LC tools. It is currently "en vogue" to try using JPEG compression together with transparency. The js- and/or objC-people have to do _a lot more_ for that. So take my demo stack as 'suggestion for the engine', to add a JPNG format to LiveCode with a compression parameter and an useAlphaDataOrMaskData switch. [ Possibly also with adding JPEG 2000 (.jp2)? ] The work is nearly done as it is already available in the engine to a big part. And for the dictionary entry use your post ;-) This all could contribute to make the size of standalones that contain a lot of PNG-compressed images significantly smaller. An may also be of advantage for a usage together with the browser widget. Once again, with a JPEGquality of 80 I have here in average JPNG-compressed sizes of 30% compared to the original PNG-compressed sizes. [I'll update the JPNG stack today for use on RaspberryPi 2/3 (and in LC 6/7).] ==== Mark wrote: > On 2017-08-11 09:29, Richmond Mathewson via use-livecode wrote: > > In theory that sounds both impressive and useful . . . > > > > But, what, apart from your stack can read the format/compression > > method properly. > > I think Hermann's suggestion is a bespoke way of reducing resource size > for built apps and their content - as there isn't a 'standard' for JPNG > (yet) it isn't really useful for interchange between apps, but it might > be that a standard does appear at some point. > > > Can your stack export a JPNG image? > > It doesn't need to in order to be useful. This is something which could > be used at the point of building a standalone (in a standaloneSaving > handler, for example) to convert PNG images into a smaller form for use > by the app at runtime. > > > "This may even result in a larger data size than the original when > > decompressing." > > I'm not sure I quite understand that comment... > > Any (loss-less) compression algorithm will produce output which is > larger than the input for some inputs > (https://en.wikipedia.org/wiki/Lossless_compression#Limitations). So all > (such) compression algorithms tend to have a flag in their encoded > output which says 'this is not compressed'. When the compressor runs, if > the output is greater in size than the original input it just emits the > output with that flag and the original data. (In this case, if the JPNG > process produces a data size larger than the original PNG, just use the > original PNG!). > > In this case the JPNG idea exploits the fact that color images tend to > withstand data-loss, but alpha data (masks) do not - JPEG is lossy, it > removes information which our eyes cannot see. PNG compression (a > variant of gzip IIRC) is loss-less, it preserves the exact values of the > inputs. So you use the lossy method (JPEG) on the part of the image > which makes no difference to our eyes, and the loss-less method (PNG) on > the part of the image which our eyes would notice a difference in. > > Warmest Regards, > > Mark. From richmondmathewson at gmail.com Fri Aug 11 06:43:24 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Fri, 11 Aug 2017 13:43:24 +0300 Subject: Drag Queen Message-ID: <10a20630-2359-17af-942e-3d38253deab9@gmail.com> I am in trouble because I cannot work out why this is not working: on scrollbarDrag NVAL put "NVAL,0,0" into KARRAY["color"] put 50 into KARRAY["opacity"] set the coloroverlay of img "BB" to KARRAY end scrollbarDrag Richmond. From iphonelagi at gmail.com Fri Aug 11 06:51:06 2017 From: iphonelagi at gmail.com (Lagi Pittas) Date: Fri, 11 Aug 2017 11:51:06 +0100 Subject: Bug 20255 - Simple Loop Labeling In-Reply-To: References: <1f1b93a3-9bb3-27f4-0ec4-76bbc09cc954@sonic.net> Message-ID: Hi Mark, I Beg to Differ about Next Repeat. "It's not wat you do it's the way that you do it" comes to mind Someone who writes spaghetti code can do it very well in any language but its much more difficult without the structure brought in by the Algol/Pascal/Modula. I have not used a Goto Since I used Fortran, Basic and Cobol at Uni they introduced Pascal later and it was a breath of fresh air. If you really want to be pedantic down at the assembler and machine code level it's Gotos all the way BNE, BCC, BEQ anyone? If you only allow GOTOS within a procedure to a NON numeric label then you can write structured code in any language. What is EXIT to Top if not a GOTO so rules are always there to be broken in certain cases - a simple comment next to the "NEXT REPEAT" and all is good. The problem arises when procedure with "jumps" in (EXIT, NEXT REPEAT, LOOP etc are too big to fit on a page. Personally I hate too many if then else's and many a time code the "If then" inline because the second one will never be executed - the amount of extra time in execution is minimal. I don't do it too often but usually if the routine starts to get too wide for the screen, but then I might break each one up into its own Procedure and use a switch statement to call them. Of course if it is time critical and every millisecond saved is important then if spaghetti code is needed to get the speed then there is no "best way" . But as I have said I have never missed Goto in nearly 40 Years of Coding in High level languages (you can't not use them in Machine code which Dijkstra was acknowledging in his "Goto Considered Harmful" article). Regards Lagi On 11 August 2017 at 10:51, Mark Waddingham via use-livecode < use-livecode at lists.runrev.com> wrote: > On 2017-08-10 21:33, Dr. Hawkins via use-livecode wrote: > >> In fact, what I would *like* is modern Fortran style labelling or >> something >> like that, and the ability to the those labels to controls like next and >> exit. This, however, would accomplish so much with so little. >> > > Thinking out loud here and taking into account suggestions people have > made in the past... > > Naming loops in a syntactic way certainly sounds like a useful thing to do: > > repeat for each line tLine in tContainer named LineLoop > repeat for each item tItem in tLine named ItemLoop > if some complicated condition then > exit repeat ItemLoop > else if some other complicated condition then > exit repeat LineLoop > end if > > -- do other stuff > if some even more complicated condition then > next repeat LineLoop > end if > end repeat ItemLoop > end repeat LineLoop > > Certainly 'exit repeat ...' would not be harmful, 'next repeat ...' I'd > have to analyze more deeply. > > The main problem with GOTO (apart from the ability to create very hard to > understand code) is that it allows creation of what is called 'unstructured > control-flow'. Basically that means that you have to work *exceptionally* > hard to untangle it in a compile to perform any sort of reasonable > optimization. > > At present LiveCode only allows you to produce 'structured control flow'. > Adding 'next repeat ...', doesn't change that... However, 'next repeat ...' > is not so clear (I think it is probably fine, but need to check some > algorithmics). > > The only other issue with the above (beyond implementing it) is the > syntax... It would reserve 'named' as a non-operator in this context. If we > did ever have reason to have 'X named Y' then in repeats you'd have to do: > > repeat for each line tLine in (tContainer named ...) named ... > > Although - without knowing what 'named' might do as an operator, or being > able to think of anything it could do - that is probably a safe addition > from that point of view. > > (Of course we could use 'labelled' instead of 'named' in the repeat > context - 'labelled' seems for some reason less likely to be leveragable as > a binary operator!) > > Warmest Regards, > > Mark. > > -- > Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ > LiveCode: Everyone can create apps > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From klaus at major-k.de Fri Aug 11 06:59:55 2017 From: klaus at major-k.de (Klaus major-k) Date: Fri, 11 Aug 2017 12:59:55 +0200 Subject: Drag Queen In-Reply-To: <10a20630-2359-17af-942e-3d38253deab9@gmail.com> References: <10a20630-2359-17af-942e-3d38253deab9@gmail.com> Message-ID: <4B0CE872-D62C-41A3-ABAB-9F382ACC86E7@major-k.de> Hi Richmond, > Am 11.08.2017 um 12:43 schrieb Richmond Mathewson via use-livecode : > > I am in trouble because I cannot work out why this is not working: > > on scrollbarDrag NVAL ## You are passing the STRING NVAL and not its value: > ## put "NVAL,0,0" into KARRAY["color"] put NVAL & ",0,0" into KARRAY["color"] > put 50 into KARRAY["opacity"] > set the coloroverlay of img "BB" to KARRAY > end scrollbarDrag > > Richmond. Best Klaus -- Klaus Major http://www.major-k.de klaus at major-k.de From mark at livecode.com Fri Aug 11 07:00:05 2017 From: mark at livecode.com (Mark Waddingham) Date: Fri, 11 Aug 2017 13:00:05 +0200 Subject: Drag Queen In-Reply-To: <10a20630-2359-17af-942e-3d38253deab9@gmail.com> References: <10a20630-2359-17af-942e-3d38253deab9@gmail.com> Message-ID: <5726f41ca61e6035556c962778e1ce80@livecode.com> On 2017-08-11 12:43, Richmond Mathewson via use-livecode wrote: > I am in trouble because I cannot work out why this is not working: > > on scrollbarDrag NVAL > put "NVAL,0,0" into KARRAY["color"] > put 50 into KARRAY["opacity"] > set the coloroverlay of img "BB" to KARRAY > end scrollbarDrag Try: put NVAL,0,0 into KARRAY["color"] Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From mark at livecode.com Fri Aug 11 07:16:58 2017 From: mark at livecode.com (Mark Waddingham) Date: Fri, 11 Aug 2017 13:16:58 +0200 Subject: Bug 20255 - Simple Loop Labeling In-Reply-To: References: <1f1b93a3-9bb3-27f4-0ec4-76bbc09cc954@sonic.net> Message-ID: <55ce4a7b9af157962bd010c9a57ee3c2@livecode.com> On 2017-08-11 12:51, Lagi Pittas via use-livecode wrote: > Hi Mark, > > I Beg to Differ about Next Repeat. > > "It's not wat you do it's the way that you do it" comes to mind > > Someone who writes spaghetti code can do it very well in any language > but > its much more difficult without the structure brought in by the > Algol/Pascal/Modula. I'm not sure I quite get your point here... Pure structured control flow does not allow any exit from a loop (it's definition is actually related to properties of the 'control-flow graph' (CFG) created by what are called 'basic blocks' when you analyze code at a more fundamental level than the syntax - structured control-flow only produces 'reducible CFGs' which have nice properties). However, there are relatively straightforward transformation you can apply to mostly-structured-control-flow with 'exit' to turn it into pure structured control flow: repeat while tCondition ... before ... exit repeat ... after ... end while Can be re-written as: repeat while tCondition and not tExit ... before ... put true into tExit if not tExit then ... after ... end if end repeat The latter is 'pure structured control flow' - so 'exit loop' does no harm; the compiler can do an 'easy' transformation on the code to make it work; and that transformation is something which you have to do by hand if 'exit loop' is not available. The key thing here is extending 'exit loop' to allow you to exit from more than one loop at once - if a language does not have this ability directly, then you have to write code to do it yourself (which is always possible - by the above transformation). Needing to exit multiple loops is not uncommon - which is why that extension might well be useful. Similarly, 'next repeat' is often useful at least in the current loop - I'm not sure how useful it is for nested loops - it might not be. However, there is a transformation you can do for that as well: repeat while tCondition ... before ... next repeat ... after ... end while Becomes: repeat while tCondition ... before ... put true into tNext if not tNext then ... after ... end if end while So, having written that, clearly it is fine (it is actually the same as 'exit repeat'; except that the boolean flag you need to create doesn't become part of the loop condition). > If you only allow GOTOS within a procedure to a NON numeric label then > you > can write structured code in any language. Not strictly true - I think the rules (in terms of the actual underlying definition of structured control flow) is that you must not jump into a block of code which has a jump from elsewhere at the top. e.g. void func() { while(condition) { ... foo: if (baz) goto bar: } while(othercondition) { ... bar: if (foobar) goto foo: } } This produces a non-reducible CFG if memory serves. So as soon as you allow general GOTO, you end up with the ability to create irksome CFGs from the point of view of a compiler. > Of course if it is time critical and every millisecond saved is > important > then if spaghetti code is needed to get the speed then there is no > "best > way" . But as I have said I have never missed Goto in nearly 40 Years > of > Coding in High level languages (you can't not use them in Machine code > which Dijkstra was acknowledging in his "Goto Considered Harmful" > article). Indeed - the ability for a compiler to analyse code is the thing which makes it potentially run faster. With GOTO you can do the optimizations yourself; however, in almost all cases if you can only produce structured control flow, then a suitable competent compiler can do the work for you - making your code easier to read and maintain, whilst still not loosing performance. Warmest Regards, Mark. P.S. I should point out that LCS is not a 'suitably competent compiler' as yet - however, that does not mean we should introduce language features which make it much harder for it to be given greater competence. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From mark at livecode.com Fri Aug 11 07:23:56 2017 From: mark at livecode.com (Mark Waddingham) Date: Fri, 11 Aug 2017 13:23:56 +0200 Subject: Mobile LC Apps Downloading Stacks After installation In-Reply-To: <3034E4FD-679E-4EAB-9BB8-5B8D37005184@gmail.com> References: <6C82BF40-3736-4B30-961F-2D0EC4F16D4C@hindu.org> <3aee2f40b156a12383e1c292515c0285@livecode.com> <3034E4FD-679E-4EAB-9BB8-5B8D37005184@gmail.com> Message-ID: <1b96f5da101f5648e7868aeeda2982a8@livecode.com> On 2017-08-11 12:20, Jonathan Lynch via use-livecode wrote: > I know the reviewers at app stores are not always careful, but > something like an LC player would surely get their notice. Review, from my understanding, is heavily automated (it has to be - if you think of the scale of the App Stores these days). However, there is always a means to get in contact with a human about specific issues (which can take a while to get escalated with someone who can actually do something - but at least it is possible). > They do allow us to import JS, but JS is way more sandboxed than LC. Yes - this is true - however, as I noticed this morning Apple no longer have their advisory about allowing arbitrary JS to be downloaded and run within a WebView. This is simply because you can could build a host app which gives access to every single OS API on iOS and make all of them callable from JS (even if the JS bundled with the app does not use any of it). So, the point is the language is not the point - what the code running in the language does is important. Like Google, Apple are wanting to know precisely what OS APIs your app is calling at the point of review - so they have some idea of the surface area of attack for any malicious intent. How much analysis they currently do, no-one really knows - however the guidelines means that (in principal) they have reasons to pull any apps very quickly if they find that they are doing something which is 'not allowed'. Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From iphonelagi at gmail.com Fri Aug 11 08:56:16 2017 From: iphonelagi at gmail.com (Lagi Pittas) Date: Fri, 11 Aug 2017 13:56:16 +0100 Subject: Bug 20255 - Simple Loop Labeling In-Reply-To: <55ce4a7b9af157962bd010c9a57ee3c2@livecode.com> References: <1f1b93a3-9bb3-27f4-0ec4-76bbc09cc954@sonic.net> <55ce4a7b9af157962bd010c9a57ee3c2@livecode.com> Message-ID: HI Mark, I was probably reading more into this ... "Certainly 'exit repeat ...' would not be harmful, 'next repeat ...' I'd have to analyze more deeply" I thought you didn't agree with USING next repeat as a structured way of programming - Reading and understanding before my Brain was in gear. But if nothing else we got another erudite exposition about programming methodology (and I am being sincere here lest you think I'm yanking your chain). We could do a "Mark On Software" a bit like "Joel on Software" - always readable and you learn something - even if it's about Baking Bread (look it up). I think these threads in the mailing list with the engineers such as yourself, Monte, Ali and Panos is something I don't think any other development system has - I might be wrong - and such a great way of honing the system that I would like to thank you all again for LC (Other than the dot notation, the open language ....... https://www.youtube.com/watch?v=Y7tvauOJMHo ;-) ) Kindest Regards Lagi On 11 August 2017 at 12:16, Mark Waddingham via use-livecode < use-livecode at lists.runrev.com> wrote: > On 2017-08-11 12:51, Lagi Pittas via use-livecode wrote: > >> Hi Mark, >> >> I Beg to Differ about Next Repeat. >> >> "It's not wat you do it's the way that you do it" comes to mind >> >> Someone who writes spaghetti code can do it very well in any language but >> its much more difficult without the structure brought in by the >> Algol/Pascal/Modula. >> > > I'm not sure I quite get your point here... > > Pure structured control flow does not allow any exit from a loop (it's > definition is actually related to properties of the 'control-flow graph' > (CFG) created by what are called 'basic blocks' when you analyze code at a > more fundamental level than the syntax - structured control-flow only > produces 'reducible CFGs' which have nice properties). > > However, there are relatively straightforward transformation you can apply > to mostly-structured-control-flow with 'exit' to turn it into pure > structured control flow: > > repeat while tCondition > ... before ... > > exit repeat > > ... after ... > end while > > Can be re-written as: > > repeat while tCondition and not tExit > ... before ... > > put true into tExit > > if not tExit then > ... after ... > end if > end repeat > > The latter is 'pure structured control flow' - so 'exit loop' does no > harm; the compiler can do an 'easy' transformation on the code to make it > work; and that transformation is something which you have to do by hand if > 'exit loop' is not available. > > The key thing here is extending 'exit loop' to allow you to exit from more > than one loop at once - if a language does not have this ability directly, > then you have to write code to do it yourself (which is always possible - > by the above transformation). Needing to exit multiple loops is not > uncommon - which is why that extension might well be useful. > > Similarly, 'next repeat' is often useful at least in the current loop - > I'm not sure how useful it is for nested loops - it might not be. However, > there is a transformation you can do for that as well: > > repeat while tCondition > ... before ... > > next repeat > > ... after ... > end while > > Becomes: > > repeat while tCondition > ... before ... > > put true into tNext > > if not tNext then > ... after ... > end if > end while > > So, having written that, clearly it is fine (it is actually the same as > 'exit repeat'; except that the boolean flag you need to create doesn't > become part of the loop condition). > > If you only allow GOTOS within a procedure to a NON numeric label then you >> can write structured code in any language. >> > > Not strictly true - I think the rules (in terms of the actual underlying > definition of structured control flow) is that you must not jump into a > block of code which has a jump from elsewhere at the top. e.g. > > void func() > { > while(condition) > { > ... > foo: > if (baz) > goto bar: > } > > while(othercondition) > { > ... > bar: > if (foobar) > goto foo: > } > } > > This produces a non-reducible CFG if memory serves. So as soon as you > allow general GOTO, you end up with the ability to create irksome CFGs from > the point of view of a compiler. > > Of course if it is time critical and every millisecond saved is important >> then if spaghetti code is needed to get the speed then there is no "best >> way" . But as I have said I have never missed Goto in nearly 40 Years of >> Coding in High level languages (you can't not use them in Machine code >> which Dijkstra was acknowledging in his "Goto Considered Harmful" >> article). >> > > Indeed - the ability for a compiler to analyse code is the thing which > makes it potentially run faster. With GOTO you can do the optimizations > yourself; however, in almost all cases if you can only produce structured > control flow, then a suitable competent compiler can do the work for you - > making your code easier to read and maintain, whilst still not loosing > performance. > > Warmest Regards, > > Mark. > > P.S. I should point out that LCS is not a 'suitably competent compiler' as > yet - however, that does not mean we should introduce language features > which make it much harder for it to be given greater competence. > > -- > Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ > LiveCode: Everyone can create apps > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From mark at livecode.com Fri Aug 11 08:57:43 2017 From: mark at livecode.com (Mark Waddingham) Date: Fri, 11 Aug 2017 14:57:43 +0200 Subject: Fwd: Speed of control lookup (Was Re: Parent of Target) Message-ID: On 2017-08-11 11:12, Mark Waddingham via use-livecode wrote: > On 2017-08-10 21:10, Richard Gaskin via use-livecode wrote: >> How might I measure the benefits of long ID caching? Here is perhaps a better set of simple benchmarks to compare approaches to lookup (related to ids, anyway): ======== on mouseUp local tIterations put 100000 into tIterations -- card id is 1002 -- button id is 1003 -- group id is 1004 local tLongId put the long id of button id 1003 of group id 1004 of card id 1002 into tLongId local tButtonIdOfStack put "button id 1003 of stack" && quote & "LongIdSpeedTest" & quote into tButtonIdOfStack local tButtonIdOfCardIdOfStack put "button id 1003 of card id 1002 of stack" && quote & "LongIdSpeedTest" & quote into tButtonIdOfCardIdOfStack local tTime put the millisecs into tTime repeat tIterations times get the id of me end repeat put "Control" && (the millisecs - tTime) & return into msg put the millisecs into tTime repeat tIterations times get the id of tLongId end repeat put "GetIdOfLongIdInString" && (the millisecs - tTime) & return after msg put the millisecs into tTime repeat tIterations times get the id of tButtonIdOfCardIdOfStack end repeat put "GetIdOfButtonIdOfCardIdOfStackInString" && (the millisecs - tTime) & return after msg put the millisecs into tTime repeat tIterations times get the id of tButtonIdOfStack end repeat put "GetIdOfButtonIdOfStackInString" && (the millisecs - tTime) & return after msg put the millisecs into tTime repeat tIterations times get the id of button id 1003 of group id 1004 of card id 1002 of stack "LongIdSpeedTest" end repeat put "GetIdOfButtonIdOfGroupIdOfCardIdOfStack" && (the millisecs - tTime) & return after msg put the millisecs into tTime repeat tIterations times get the id of button id 1003 of card id 1002 of stack "LongIdSpeedTest" end repeat put "GetIdOfButtonIdOfCardIdOfStack" && (the millisecs - tTime) & return after msg local tStackString put "LongIdSpeed" & "Test" into tStackString put the millisecs into tTime repeat tIterations times get the id of button id 1003 of group id 1004 of card id 1002 of stack tStackString end repeat put "GetIdOfButtonIdOfGroupIdOfStackNotName" && (the millisecs - tTime) & return after msg put the millisecs into tTime repeat tIterations times get the id of button id 1003 of card id 1002 of stack tStackString end repeat put "GetIdOfButtonIdOfCardIdOfStackNotName" && (the millisecs - tTime) & return after msg end mouseUp ======== On my machine (in 8.1.5) I get: Control 21 GetIdOfLongIdInString 714 GetIdOfButtonIdOfCardIdOfStackInString 497 GetIdOfButtonIdOfStackInString 320 GetIdOfButtonIdOfGroupIdOfCardIdOfStack 56 GetIdOfButtonIdOfCardIdOfStack 53 GetIdOfButtonIdOfGroupIdOfStackNotName 65 GetIdOfButtonIdOfCardIdOfStackNotName 63 So, currently, there is a significant overhead to getting a control reference out of a string - the minimum you actually need in a string to uniquely identify a control (which may or may not have per-card data) is "control id ... of card id ... of stack ...". Indeed - using the minimal info you need hard-coded in syntax: get the id of button id 1003 of card id 1002 of stack tStackString Is about 10 times faster than using a long id in a string and about 8 times faster than using a modified form of a string id to cut out the (strictly) unnecessary bits: get the id of "button id 1003 of card id 1002 of stack LongIdSpeedTest" -- quoted name, appropriately So, my advice changes *slightly* - if you are doing tight loops which need to manipulate lots of controls in the current card of the defaultStack use: control id If the things aren't on the current card of the default stack, then extract the card id and stack name outside of the loop and use: control id of card id tCardId of stack tStackName The question of course is 'how fast could we get long id parsing to be' (as that is the bottleneck here, or at least appears to be). Warmest Regards, Mark. P.S. Due to a mailing server glitch any mails which were sent here between 12:30BST and 14:00BST will not have got through. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From richmondmathewson at gmail.com Fri Aug 11 09:00:02 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Fri, 11 Aug 2017 16:00:02 +0300 Subject: Drag Queen In-Reply-To: <5726f41ca61e6035556c962778e1ce80@livecode.com> References: <10a20630-2359-17af-942e-3d38253deab9@gmail.com> <5726f41ca61e6035556c962778e1ce80@livecode.com> Message-ID: <0de12df2-0bbd-f346-33ce-da02d54d00d7@gmail.com> Thanks Both, Klaus and Mark. Richmond. On 8/11/17 2:00 pm, Mark Waddingham via use-livecode wrote: > On 2017-08-11 12:43, Richmond Mathewson via use-livecode wrote: >> I am in trouble because I cannot work out why this is not working: >> >> on scrollbarDrag NVAL >> put "NVAL,0,0" into KARRAY["color"] >> put 50 into KARRAY["opacity"] >> set the coloroverlay of img "BB" to KARRAY >> end scrollbarDrag > > Try: > > put NVAL,0,0 into KARRAY["color"] > > Warmest Regards, > > Mark. > From mark at livecode.com Fri Aug 11 09:02:40 2017 From: mark at livecode.com (Mark Waddingham) Date: Fri, 11 Aug 2017 15:02:40 +0200 Subject: Bug 20255 - Simple Loop Labeling In-Reply-To: References: <1f1b93a3-9bb3-27f4-0ec4-76bbc09cc954@sonic.net> <55ce4a7b9af157962bd010c9a57ee3c2@livecode.com> Message-ID: On 2017-08-11 14:56, Lagi Pittas via use-livecode wrote: > I thought you didn't agree with USING next repeat as a structured way > of > programming - Reading and understanding before my Brain was in gear. Sorry - I should have made that more clear - 'next repeat' and 'exit repeat' are definitely immeasurably better than GOTO or hand-coded bools. Just to clarify - I meant 'harmful with respect analyses the compiler might want to do in the future' when not tied to the directly enclosing loop. I answered my own question by responding to you though - it is almost the same transform required as for 'exit repeat' :) Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From rdimola at evergreeninfo.net Fri Aug 11 09:52:50 2017 From: rdimola at evergreeninfo.net (Ralph DiMola) Date: Fri, 11 Aug 2017 09:52:50 -0400 Subject: Mobile LC Apps Downloading Stacks After installation In-Reply-To: <1b96f5da101f5648e7868aeeda2982a8@livecode.com> References: <6C82BF40-3736-4B30-961F-2D0EC4F16D4C@hindu.org> <3aee2f40b156a12383e1c292515c0285@livecode.com> <3034E4FD-679E-4EAB-9BB8-5B8D37005184@gmail.com> <1b96f5da101f5648e7868aeeda2982a8@livecode.com> Message-ID: <001701d312a9$1f9e5700$5edb0500$@net> Mark, Thanks for weighing in. I would like to read into those licenses that I could update my core LCS, but I know in my soul that if I do that it's just a shoe waiting to drop that could affect not only my license but the entire LC community. I also feel that when I create an extra button(with stub code) because a "data" update offers more options that I am staying within the guidelines and the spirit of the App/Play store rules. I see this as simple decision. I call it the "Johnny, did you eat a cookie?" scenario. Johnny says "no" because he did not eat "A" cookie but ate 3 cookies. I am not a 2 year old and know what these rules were intended to prevent. By the way, I was once rejected because my data update "answer" dialog was worded as "An app update is available". I explained that it was a data update and not code and changed the verbiage of the dialog. I then passed the review. Moral: The review team can look VERY close at any app during review. As it was said in Goodfellows... At least, that's how I feel. Ralph DiMola IT Director Evergreen Information Services rdimola at evergreeninfo.net -----Original Message----- From: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] On Behalf Of Mark Waddingham via use-livecode Sent: Friday, August 11, 2017 7:24 AM To: How to use LiveCode Cc: Mark Waddingham Subject: Re: Mobile LC Apps Downloading Stacks After installation On 2017-08-11 12:20, Jonathan Lynch via use-livecode wrote: > I know the reviewers at app stores are not always careful, but > something like an LC player would surely get their notice. Review, from my understanding, is heavily automated (it has to be - if you think of the scale of the App Stores these days). However, there is always a means to get in contact with a human about specific issues (which can take a while to get escalated with someone who can actually do something - but at least it is possible). > They do allow us to import JS, but JS is way more sandboxed than LC. Yes - this is true - however, as I noticed this morning Apple no longer have their advisory about allowing arbitrary JS to be downloaded and run within a WebView. This is simply because you can could build a host app which gives access to every single OS API on iOS and make all of them callable from JS (even if the JS bundled with the app does not use any of it). So, the point is the language is not the point - what the code running in the language does is important. Like Google, Apple are wanting to know precisely what OS APIs your app is calling at the point of review - so they have some idea of the surface area of attack for any malicious intent. How much analysis they currently do, no-one really knows - however the guidelines means that (in principal) they have reasons to pull any apps very quickly if they find that they are doing something which is 'not allowed'. Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode From rdimola at evergreeninfo.net Fri Aug 11 09:57:01 2017 From: rdimola at evergreeninfo.net (Ralph DiMola) Date: Fri, 11 Aug 2017 09:57:01 -0400 Subject: Bug 20255 - Simple Loop Labeling In-Reply-To: References: <1f1b93a3-9bb3-27f4-0ec4-76bbc09cc954@sonic.net> Message-ID: <001801d312a9$b50a4b00$1f1ee100$@net> I did not want to be the one to rehash this again but I would love to have this as I do it manually all the time with comments. +1 Ralph DiMola IT Director Evergreen Information Services rdimola at evergreeninfo.net -----Original Message----- From: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] On Behalf Of Mark Waddingham via use-livecode Sent: Friday, August 11, 2017 5:51 AM To: How to use LiveCode Cc: Mark Waddingham Subject: Re: Bug 20255 - Simple Loop Labeling On 2017-08-10 21:33, Dr. Hawkins via use-livecode wrote: > In fact, what I would *like* is modern Fortran style labelling or > something like that, and the ability to the those labels to controls > like next and exit. This, however, would accomplish so much with so > little. Thinking out loud here and taking into account suggestions people have made in the past... Naming loops in a syntactic way certainly sounds like a useful thing to do: repeat for each line tLine in tContainer named LineLoop repeat for each item tItem in tLine named ItemLoop if some complicated condition then exit repeat ItemLoop else if some other complicated condition then exit repeat LineLoop end if -- do other stuff if some even more complicated condition then next repeat LineLoop end if end repeat ItemLoop end repeat LineLoop Certainly 'exit repeat ...' would not be harmful, 'next repeat ...' I'd have to analyze more deeply. The main problem with GOTO (apart from the ability to create very hard to understand code) is that it allows creation of what is called 'unstructured control-flow'. Basically that means that you have to work *exceptionally* hard to untangle it in a compile to perform any sort of reasonable optimization. At present LiveCode only allows you to produce 'structured control flow'. Adding 'next repeat ...', doesn't change that... However, 'next repeat ...' is not so clear (I think it is probably fine, but need to check some algorithmics). The only other issue with the above (beyond implementing it) is the syntax... It would reserve 'named' as a non-operator in this context. If we did ever have reason to have 'X named Y' then in repeats you'd have to do: repeat for each line tLine in (tContainer named ...) named ... Although - without knowing what 'named' might do as an operator, or being able to think of anything it could do - that is probably a safe addition from that point of view. (Of course we could use 'labelled' instead of 'named' in the repeat context - 'labelled' seems for some reason less likely to be leveragable as a binary operator!) Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode From jonathandlynch at gmail.com Fri Aug 11 10:00:32 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Fri, 11 Aug 2017 10:00:32 -0400 Subject: Mobile LC Apps Downloading Stacks After installation In-Reply-To: <001701d312a9$1f9e5700$5edb0500$@net> References: <6C82BF40-3736-4B30-961F-2D0EC4F16D4C@hindu.org> <3aee2f40b156a12383e1c292515c0285@livecode.com> <3034E4FD-679E-4EAB-9BB8-5B8D37005184@gmail.com> <1b96f5da101f5648e7868aeeda2982a8@livecode.com> <001701d312a9$1f9e5700$5edb0500$@net> Message-ID: <7286E02C-F90F-40F9-8BBD-A595DB4D555F@gmail.com> If Apple and Google allowed player apps that play external code, companies could essentially set up their own app stores, bypassing google play and iTunes. I cannot imagine either company would appreciate that. Sent from my iPhone > On Aug 11, 2017, at 9:52 AM, Ralph DiMola via use-livecode wrote: > > Mark, > > Thanks for weighing in. I would like to read into those licenses that I > could update my core LCS, but I know in my soul that if I do that it's just > a shoe waiting to drop that could affect not only my license but the entire > LC community. I also feel that when I create an extra button(with stub code) > because a "data" update offers more options that I am staying within the > guidelines and the spirit of the App/Play store rules. I see this as simple > decision. I call it the "Johnny, did you eat a cookie?" scenario. Johnny > says "no" because he did not eat "A" cookie but ate 3 cookies. I am not a 2 > year old and know what these rules were intended to prevent. > > By the way, I was once rejected because my data update "answer" dialog was > worded as "An app update is available". I explained that it was a data > update and not code and changed the verbiage of the dialog. I then passed > the review. Moral: The review team can look VERY close at any app during > review. > > As it was said in Goodfellows... At least, that's how I feel. > > Ralph DiMola > IT Director > Evergreen Information Services > rdimola at evergreeninfo.net > > > -----Original Message----- > From: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] On Behalf > Of Mark Waddingham via use-livecode > Sent: Friday, August 11, 2017 7:24 AM > To: How to use LiveCode > Cc: Mark Waddingham > Subject: Re: Mobile LC Apps Downloading Stacks After installation > >> On 2017-08-11 12:20, Jonathan Lynch via use-livecode wrote: >> I know the reviewers at app stores are not always careful, but >> something like an LC player would surely get their notice. > > Review, from my understanding, is heavily automated (it has to be - if you > think of the scale of the App Stores these days). However, there is always a > means to get in contact with a human about specific issues (which can take a > while to get escalated with someone who can actually do something - but at > least it is possible). > >> They do allow us to import JS, but JS is way more sandboxed than LC. > > Yes - this is true - however, as I noticed this morning Apple no longer have > their advisory about allowing arbitrary JS to be downloaded and run within a > WebView. This is simply because you can could build a host app which gives > access to every single OS API on iOS and make all of them callable from JS > (even if the JS bundled with the app does not use any of it). > > So, the point is the language is not the point - what the code running in > the language does is important. > > Like Google, Apple are wanting to know precisely what OS APIs your app is > calling at the point of review - so they have some idea of the surface area > of attack for any malicious intent. How much analysis they currently do, > no-one really knows - however the guidelines means that (in principal) they > have reasons to pull any apps very quickly if they find that they are doing > something which is 'not allowed'. > > Warmest Regards, > > Mark. > > -- > Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ > LiveCode: Everyone can create apps > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription > preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From roger.e.eller at sealedair.com Fri Aug 11 10:09:18 2017 From: roger.e.eller at sealedair.com (Roger Eller) Date: Fri, 11 Aug 2017 10:09:18 -0400 Subject: Mobile LC Apps Downloading Stacks After installation In-Reply-To: <7286E02C-F90F-40F9-8BBD-A595DB4D555F@gmail.com> References: <6C82BF40-3736-4B30-961F-2D0EC4F16D4C@hindu.org> <3aee2f40b156a12383e1c292515c0285@livecode.com> <3034E4FD-679E-4EAB-9BB8-5B8D37005184@gmail.com> <1b96f5da101f5648e7868aeeda2982a8@livecode.com> <001701d312a9$1f9e5700$5edb0500$@net> <7286E02C-F90F-40F9-8BBD-A595DB4D555F@gmail.com> Message-ID: Several companies HAVE their own app stores. Samsung is one that comes to mind. http://joyofandroid.com/android-app-store-alternatives/ ~Roger On Fri, Aug 11, 2017 at 10:00 AM, Jonathan Lynch via use-livecode < use-livecode at lists.runrev.com> wrote: > If Apple and Google allowed player apps that play external code, companies > could essentially set up their own app stores, bypassing google play and > iTunes. > I cannot imagine either company would appreciate that. > > Sent from my iPhone > > > On Aug 11, 2017, at 9:52 AM, Ralph DiMola via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > > Mark, > > > > Thanks for weighing in. I would like to read into those licenses that I > > could update my core LCS, but I know in my soul that if I do that it's > just > > a shoe waiting to drop that could affect not only my license but the > entire > > LC community. I also feel that when I create an extra button(with stub > code) > > because a "data" update offers more options that I am staying within the > > guidelines and the spirit of the App/Play store rules. I see this as > simple > > decision. I call it the "Johnny, did you eat a cookie?" scenario. Johnny > > says "no" because he did not eat "A" cookie but ate 3 cookies. I am not > a 2 > > year old and know what these rules were intended to prevent. > > > > By the way, I was once rejected because my data update "answer" dialog > was > > worded as "An app update is available". I explained that it was a data > > update and not code and changed the verbiage of the dialog. I then passed > > the review. Moral: The review team can look VERY close at any app during > > review. > > > > As it was said in Goodfellows... At least, that's how I feel. > > > > Ralph DiMola > > IT Director > > Evergreen Information Services > > rdimola at evergreeninfo.net > > > > > > -----Original Message----- > > From: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] On > Behalf > > Of Mark Waddingham via use-livecode > > Sent: Friday, August 11, 2017 7:24 AM > > To: How to use LiveCode > > Cc: Mark Waddingham > > Subject: Re: Mobile LC Apps Downloading Stacks After installation > > > >> On 2017-08-11 12:20, Jonathan Lynch via use-livecode wrote: > >> I know the reviewers at app stores are not always careful, but > >> something like an LC player would surely get their notice. > > > > Review, from my understanding, is heavily automated (it has to be - if > you > > think of the scale of the App Stores these days). However, there is > always a > > means to get in contact with a human about specific issues (which can > take a > > while to get escalated with someone who can actually do something - but > at > > least it is possible). > > > >> They do allow us to import JS, but JS is way more sandboxed than LC. > > > > Yes - this is true - however, as I noticed this morning Apple no longer > have > > their advisory about allowing arbitrary JS to be downloaded and run > within a > > WebView. This is simply because you can could build a host app which > gives > > access to every single OS API on iOS and make all of them callable from > JS > > (even if the JS bundled with the app does not use any of it). > > > > So, the point is the language is not the point - what the code running in > > the language does is important. > > > > Like Google, Apple are wanting to know precisely what OS APIs your app is > > calling at the point of review - so they have some idea of the surface > area > > of attack for any malicious intent. How much analysis they currently do, > > no-one really knows - however the guidelines means that (in principal) > they > > have reasons to pull any apps very quickly if they find that they are > doing > > something which is 'not allowed'. > > > > Warmest Regards, > > > > Mark. > > > > -- > > Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ > > LiveCode: Everyone can create apps > > > > _______________________________________________ > > use-livecode mailing list > > use-livecode at lists.runrev.com > > Please visit this url to subscribe, unsubscribe and manage your > subscription > > preferences: > > http://lists.runrev.com/mailman/listinfo/use-livecode > > > > > > _______________________________________________ > > use-livecode mailing list > > use-livecode at lists.runrev.com > > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > > http://lists.runrev.com/mailman/listinfo/use-livecode > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From rdimola at evergreeninfo.net Fri Aug 11 10:29:29 2017 From: rdimola at evergreeninfo.net (Ralph DiMola) Date: Fri, 11 Aug 2017 10:29:29 -0400 Subject: common code patterns In-Reply-To: <5d0eb575eb329262a1aceb34ec1e5aaf@livecode.com> References: <004501d311f5$592fc940$0b8f5bc0$@net> <765F1581-ADB6-4BE5-ADF5-BB616F2D489A@byu.edu> <005e01d311ff$7c4c6370$74e52a50$@net> <5d0eb575eb329262a1aceb34ec1e5aaf@livecode.com> Message-ID: <002b01d312ae$3e5cb970$bb162c50$@net> Mark, Again thanks for chiming in. Here's an example: Local tIndex, tDataArray put getMyRecordSet() into tRS put 1 into tIndex repeat while not isEof(tRS) Put makeThisRecordIntoAnArray(tRS) into tDataArray[tIndex] Add 1 to tIndex End repeat Now I can sort the keys of the array to ripple thru the records. This is what I imagined: local tDataArray put getMyRecordSet() into tRS repeat while not isEof(tRS) with counter tIndex Put makeThisRecordIntoAnArray(tRS) into tDataArray[tIndex] end repeat Another example: repeat for each word tWord in tWords with counter tIndex switch tIndex case 1 -- first word stuff break case the number of words in tWords -- last word stuff break default -- not first or last word stuff end switch -- all stuff end repeat Ralph DiMola IT Director Evergreen Information Services rdimola at evergreeninfo.net -----Original Message----- From: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] On Behalf Of Mark Waddingham via use-livecode Sent: Friday, August 11, 2017 5:25 AM To: How to use LiveCode Cc: Mark Waddingham Subject: RE: common code patterns On 2017-08-10 19:38, Ralph DiMola via use-livecode wrote: > To make this even more flexible: > > repeat for each line tLine in tLines with [counter] tIndex [start] > [{1}|x] [step] [{1}|y] > > end repeat Not quite on topic for the thread, but this interested in me in terms of - what are the use cases? The common code pattern we see as justification for 'repeat for each line tLine and index tIndex in tLines' is that it allows you to use the efficiency of iteration over a primary container, whilst still retaining the index of the chunk being iterated over. i.e. put 0 into tIndex repeat for each line tLine in tContainer add 1 to tIndex if tLine is not line tIndex of tContainer then answer "Oh dear - something is *really* wrong" end if end repeat So an extension to the syntax with 'index' means you get both pieces of information and a good amount of duality which justifies its existence. In what kinds of situation do you find yourself wanting an offset index, relative to the index of the iterated chunk? Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode From jonathandlynch at gmail.com Fri Aug 11 10:35:14 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Fri, 11 Aug 2017 10:35:14 -0400 Subject: Mobile LC Apps Downloading Stacks After installation In-Reply-To: References: <6C82BF40-3736-4B30-961F-2D0EC4F16D4C@hindu.org> <3aee2f40b156a12383e1c292515c0285@livecode.com> <3034E4FD-679E-4EAB-9BB8-5B8D37005184@gmail.com> <1b96f5da101f5648e7868aeeda2982a8@livecode.com> <001701d312a9$1f9e5700$5edb0500$@net> <7286E02C-F90F-40F9-8BBD-A595DB4D555F@gmail.com> Message-ID: <3C5C7075-BAA8-4D76-8749-3DB32412A20C@gmail.com> If we could have our own LC App Store, where people could play an app with a player app on different platforms, it would be quite excellent. At the very least, I think Apple would object. Sent from my iPhone > On Aug 11, 2017, at 10:09 AM, Roger Eller via use-livecode wrote: > > Several companies HAVE their own app stores. Samsung is one that comes to > mind. http://joyofandroid.com/android-app-store-alternatives/ > > ~Roger > > > On Fri, Aug 11, 2017 at 10:00 AM, Jonathan Lynch via use-livecode < > use-livecode at lists.runrev.com> wrote: > >> If Apple and Google allowed player apps that play external code, companies >> could essentially set up their own app stores, bypassing google play and >> iTunes. >> I cannot imagine either company would appreciate that. >> >> Sent from my iPhone >> >>> On Aug 11, 2017, at 9:52 AM, Ralph DiMola via use-livecode < >> use-livecode at lists.runrev.com> wrote: >>> >>> Mark, >>> >>> Thanks for weighing in. I would like to read into those licenses that I >>> could update my core LCS, but I know in my soul that if I do that it's >> just >>> a shoe waiting to drop that could affect not only my license but the >> entire >>> LC community. I also feel that when I create an extra button(with stub >> code) >>> because a "data" update offers more options that I am staying within the >>> guidelines and the spirit of the App/Play store rules. I see this as >> simple >>> decision. I call it the "Johnny, did you eat a cookie?" scenario. Johnny >>> says "no" because he did not eat "A" cookie but ate 3 cookies. I am not >> a 2 >>> year old and know what these rules were intended to prevent. >>> >>> By the way, I was once rejected because my data update "answer" dialog >> was >>> worded as "An app update is available". I explained that it was a data >>> update and not code and changed the verbiage of the dialog. I then passed >>> the review. Moral: The review team can look VERY close at any app during >>> review. >>> >>> As it was said in Goodfellows... At least, that's how I feel. >>> >>> Ralph DiMola >>> IT Director >>> Evergreen Information Services >>> rdimola at evergreeninfo.net >>> >>> >>> -----Original Message----- >>> From: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] On >> Behalf >>> Of Mark Waddingham via use-livecode >>> Sent: Friday, August 11, 2017 7:24 AM >>> To: How to use LiveCode >>> Cc: Mark Waddingham >>> Subject: Re: Mobile LC Apps Downloading Stacks After installation >>> >>>> On 2017-08-11 12:20, Jonathan Lynch via use-livecode wrote: >>>> I know the reviewers at app stores are not always careful, but >>>> something like an LC player would surely get their notice. >>> >>> Review, from my understanding, is heavily automated (it has to be - if >> you >>> think of the scale of the App Stores these days). However, there is >> always a >>> means to get in contact with a human about specific issues (which can >> take a >>> while to get escalated with someone who can actually do something - but >> at >>> least it is possible). >>> >>>> They do allow us to import JS, but JS is way more sandboxed than LC. >>> >>> Yes - this is true - however, as I noticed this morning Apple no longer >> have >>> their advisory about allowing arbitrary JS to be downloaded and run >> within a >>> WebView. This is simply because you can could build a host app which >> gives >>> access to every single OS API on iOS and make all of them callable from >> JS >>> (even if the JS bundled with the app does not use any of it). >>> >>> So, the point is the language is not the point - what the code running in >>> the language does is important. >>> >>> Like Google, Apple are wanting to know precisely what OS APIs your app is >>> calling at the point of review - so they have some idea of the surface >> area >>> of attack for any malicious intent. How much analysis they currently do, >>> no-one really knows - however the guidelines means that (in principal) >> they >>> have reasons to pull any apps very quickly if they find that they are >> doing >>> something which is 'not allowed'. >>> >>> Warmest Regards, >>> >>> Mark. >>> >>> -- >>> Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ >>> LiveCode: Everyone can create apps >>> >>> _______________________________________________ >>> use-livecode mailing list >>> use-livecode at lists.runrev.com >>> Please visit this url to subscribe, unsubscribe and manage your >> subscription >>> preferences: >>> http://lists.runrev.com/mailman/listinfo/use-livecode >>> >>> >>> _______________________________________________ >>> use-livecode mailing list >>> use-livecode at lists.runrev.com >>> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >>> http://lists.runrev.com/mailman/listinfo/use-livecode >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From MikeKerner at roadrunner.com Fri Aug 11 10:35:42 2017 From: MikeKerner at roadrunner.com (Mike Kerner) Date: Fri, 11 Aug 2017 10:35:42 -0400 Subject: Mobile LC Apps Downloading Stacks After installation In-Reply-To: References: <6C82BF40-3736-4B30-961F-2D0EC4F16D4C@hindu.org> <3aee2f40b156a12383e1c292515c0285@livecode.com> <3034E4FD-679E-4EAB-9BB8-5B8D37005184@gmail.com> <1b96f5da101f5648e7868aeeda2982a8@livecode.com> <001701d312a9$1f9e5700$5edb0500$@net> <7286E02C-F90F-40F9-8BBD-A595DB4D555F@gmail.com> Message-ID: Unless I read your post incorrectly, mark, "Do" works just fine, at least for ad hoc apps, as well it better, because it is a critically important part of trying to debug mobile apps at runtime, with some of the rather annoying things that happen at runtime, like some failure in a script causing that script to silently exit without any notice or message. "Do" lets me add the equivalent of the message box when I'm working on an app. Before I realized that it worked, about half of the lines of code in any app I wrote was related to debugging some issue or another. The ability to use "Do" means far fewer debugging builds and a lot less shaking my monitor, cursing the runtime engine for being so unhelpful, and me for choosing coding over septic technician. The remote debugger is a great new tool to have in the toolbox, but "do" is still the one that saves me when everything just stops. The sideloading/bootstrapping capabilities in LC are a fantastic way to work on corporate apps, force updates, and save everyone time and hassle. From dan at clearvisiontech.com Fri Aug 11 10:44:02 2017 From: dan at clearvisiontech.com (Dan Friedman) Date: Fri, 11 Aug 2017 14:44:02 +0000 Subject: Subject: Re: Local File in Browser Widget on Android - Fail Message-ID: <39E6AECE-371A-4B62-B5F6-6B133FA6B34B@clearvisiontech.com> Sannyasin, Thank you for the reply! I have discovered that it?s not the local path the is the issue. If I do this, I see ?123? in the browser: put ?123? into url ("file:" & specialFolderPath("documents") & "/map.html") set the url of widget "Browser1" to ("file:" & specialFolderPath("documents") & "/map.html") However, the html document I am trying to load references images that were included in the app. These images are here: specialFolderPath("engine"). Note that a ?there is a file? test proves the existence of the file. So, here?s what I do, I load the html template from a custom property. In my html document, I have this: historicalOverlay = new google.maps.GroundOverlay('/MapFinal.png',imageBounds); I then insert the local path: replace "" with specialFolderPath("engine") in mapFile Then I save the file to disk and load it into the browser widget. On my mac and iOS it works famously. On Android, I just get a broken image icon. Do I have to alter the local image path somehow? Again, thank you for the response and assistance! -Dan On 8/11/17, 2:33 AM, "use-livecode on behalf of use-livecode-request at lists.runrev.com" wrote: make sure your slashes are all correct. on iOS and desktop are forgiving with double// in URLs; but android is not.. .this bit me many times file:/somepath/somefile.html works file://somepath/somefile.html doesn't So If you have path setters here and there, one needs to follow some convention, either leave folder string *always* with no closing slash and all appended url strings begin with a slash.. I started that way but this was always confusing to me because on web / means "from DOCROOT" so slowly I am refactoring all these to function path_Assets return specialFolderPath("documents") & "/assets/" end path_Assets then in any module we use play sound (path_Assets() & "bells-whistles/ding.mp3") because this is "relative" # very subjective.. So what started failing on Android -- really hard to debug! where instances of play sound (path_Assets() & "/bells-whistles/ding.mp3") because these would work on Mac desktop and only fail on Android so you are beating your head "what is wrong." On 8/10/17, 1:28 PM, "use-livecode on behalf of Dan Friedman via use-livecode" wrote: I?m having a problem loading a local file on Android in the Browser Widget in LC 8.1.5. I am experiencing what is described in bug 19036. But, bug 19036?s status is ?Resolved? in version 8.0.0. So, is something else up? Anyone have any insight? -Dan From richmondmathewson at gmail.com Fri Aug 11 10:44:42 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Fri, 11 Aug 2017 17:44:42 +0300 Subject: [OT] Draconian computer company policies, was: Mobile LC Apps Downloading Stacks After installation In-Reply-To: <3C5C7075-BAA8-4D76-8749-3DB32412A20C@gmail.com> References: <6C82BF40-3736-4B30-961F-2D0EC4F16D4C@hindu.org> <3aee2f40b156a12383e1c292515c0285@livecode.com> <3034E4FD-679E-4EAB-9BB8-5B8D37005184@gmail.com> <1b96f5da101f5648e7868aeeda2982a8@livecode.com> <001701d312a9$1f9e5700$5edb0500$@net> <7286E02C-F90F-40F9-8BBD-A595DB4D555F@gmail.com> <3C5C7075-BAA8-4D76-8749-3DB32412A20C@gmail.com> Message-ID: <0c6a9d9a-ca92-a9d8-506a-f8683e7eaa05@gmail.com> I cannot quite see how people are prepared to go on buying Apple iPads when there are such draconian restrictions as to what one can run on them. While the Android "thing" may not be much better, at last one can side-load almost anything one wants. But, Like Richard Stallman, I suffer from the "horrible" belief that once one has bought something it belongs to you and you should not be told what you can and cannot do with it. OK, OK, I'm back off to the kitchen to carry on slicing vegetables with a roll of toliet paper. There is a whole world of difference between a set of actions one cannot do because of the physical limitations of a thing and a set of actions one is not allowed to do because a bunch of people in California want to carry on mucking you around even after they ahve successfully manipulated you into buying their over-priced product. Currently trying to get my ASUS Intel Tablet which runs Android to do a few things I want it to, but Google [wouldn't Douglas Adams have a fit of the dry boak?] do want me to do with it. Richmond. On 8/11/17 5:35 pm, Jonathan Lynch via use-livecode wrote: > If we could have our own LC App Store, where people could play an app with a player app on different platforms, it would be quite excellent. > > At the very least, I think Apple would object. > > Sent from my iPhone > >> On Aug 11, 2017, at 10:09 AM, Roger Eller via use-livecode wrote: >> >> Several companies HAVE their own app stores. Samsung is one that comes to >> mind. http://joyofandroid.com/android-app-store-alternatives/ >> >> ~Roger >> >> >> On Fri, Aug 11, 2017 at 10:00 AM, Jonathan Lynch via use-livecode < >> use-livecode at lists.runrev.com> wrote: >> >>> If Apple and Google allowed player apps that play external code, companies >>> could essentially set up their own app stores, bypassing google play and >>> iTunes. >>> I cannot imagine either company would appreciate that. >>> >>> Sent from my iPhone >>> >>>> On Aug 11, 2017, at 9:52 AM, Ralph DiMola via use-livecode < >>> use-livecode at lists.runrev.com> wrote: >>>> Mark, >>>> >>>> Thanks for weighing in. I would like to read into those licenses that I >>>> could update my core LCS, but I know in my soul that if I do that it's >>> just >>>> a shoe waiting to drop that could affect not only my license but the >>> entire >>>> LC community. I also feel that when I create an extra button(with stub >>> code) >>>> because a "data" update offers more options that I am staying within the >>>> guidelines and the spirit of the App/Play store rules. I see this as >>> simple >>>> decision. I call it the "Johnny, did you eat a cookie?" scenario. Johnny >>>> says "no" because he did not eat "A" cookie but ate 3 cookies. I am not >>> a 2 >>>> year old and know what these rules were intended to prevent. >>>> >>>> By the way, I was once rejected because my data update "answer" dialog >>> was >>>> worded as "An app update is available". I explained that it was a data >>>> update and not code and changed the verbiage of the dialog. I then passed >>>> the review. Moral: The review team can look VERY close at any app during >>>> review. >>>> >>>> As it was said in Goodfellows... At least, that's how I feel. >>>> >>>> Ralph DiMola >>>> IT Director >>>> Evergreen Information Services >>>> rdimola at evergreeninfo.net >>>> >>>> >>>> -----Original Message----- >>>> From: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] On >>> Behalf >>>> Of Mark Waddingham via use-livecode >>>> Sent: Friday, August 11, 2017 7:24 AM >>>> To: How to use LiveCode >>>> Cc: Mark Waddingham >>>> Subject: Re: Mobile LC Apps Downloading Stacks After installation >>>> >>>>> On 2017-08-11 12:20, Jonathan Lynch via use-livecode wrote: >>>>> I know the reviewers at app stores are not always careful, but >>>>> something like an LC player would surely get their notice. >>>> Review, from my understanding, is heavily automated (it has to be - if >>> you >>>> think of the scale of the App Stores these days). However, there is >>> always a >>>> means to get in contact with a human about specific issues (which can >>> take a >>>> while to get escalated with someone who can actually do something - but >>> at >>>> least it is possible). >>>> >>>>> They do allow us to import JS, but JS is way more sandboxed than LC. >>>> Yes - this is true - however, as I noticed this morning Apple no longer >>> have >>>> their advisory about allowing arbitrary JS to be downloaded and run >>> within a >>>> WebView. This is simply because you can could build a host app which >>> gives >>>> access to every single OS API on iOS and make all of them callable from >>> JS >>>> (even if the JS bundled with the app does not use any of it). >>>> >>>> So, the point is the language is not the point - what the code running in >>>> the language does is important. >>>> >>>> Like Google, Apple are wanting to know precisely what OS APIs your app is >>>> calling at the point of review - so they have some idea of the surface >>> area >>>> of attack for any malicious intent. How much analysis they currently do, >>>> no-one really knows - however the guidelines means that (in principal) >>> they >>>> have reasons to pull any apps very quickly if they find that they are >>> doing >>>> something which is 'not allowed'. >>>> >>>> Warmest Regards, >>>> >>>> Mark. >>>> >>>> -- >>>> Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ >>>> LiveCode: Everyone can create apps >>>> >>>> _______________________________________________ >>>> use-livecode mailing list >>>> use-livecode at lists.runrev.com >>>> Please visit this url to subscribe, unsubscribe and manage your >>> subscription >>>> preferences: >>>> http://lists.runrev.com/mailman/listinfo/use-livecode >>>> >>>> >>>> _______________________________________________ >>>> use-livecode mailing list >>>> use-livecode at lists.runrev.com >>>> Please visit this url to subscribe, unsubscribe and manage your >>> subscription preferences: >>>> http://lists.runrev.com/mailman/listinfo/use-livecode >>> _______________________________________________ >>> use-livecode mailing list >>> use-livecode at lists.runrev.com >>> Please visit this url to subscribe, unsubscribe and manage your >>> subscription preferences: >>> http://lists.runrev.com/mailman/listinfo/use-livecode >>> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From bobsneidar at iotecdigital.com Fri Aug 11 11:00:25 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Fri, 11 Aug 2017 15:00:25 +0000 Subject: App Rejected: IPv6 network? In-Reply-To: <587e8a35-fab1-3732-1e0f-361539771678@hyperactivesw.com> References: <585D5458-00B6-4A07-AFAE-60D6A5EA2A53@contoso.com> <587e8a35-fab1-3732-1e0f-361539771678@hyperactivesw.com> Message-ID: <8A752A0D-5985-48CF-B0BE-67C1B9BDC396@iotecdigital.com> I think they mean a binary executable, one that can instruct the processor to go do something. The engine is a binary executable. The scripts the engine interprets and runs is not, even though they are "compiled" in a sense. They are not compiled like a C++ code would be. It's more like compressed. Bob S > On Aug 10, 2017, at 12:20 , J. Landman Gay via use-livecode wrote: > > On 8/10/17 2:10 PM, Mike Kerner via use-livecode wrote: >> I didn't know that downloading stacks onto an app was ever a problem. It's >> not downloading a file of any sort that has been a no-no, it's loading >> executable code, which LC scripts are not, and LC stacks are not. > > If a script isn't executable code, I'm not sure what is. > > -- > Jacqueline Landman Gay | jacque at hyperactivesw.com > HyperActive Software | http://www.hyperactivesw.com From benr_mc at cogapp.com Fri Aug 11 11:00:24 2017 From: benr_mc at cogapp.com (Ben Rubinstein) Date: Fri, 11 Aug 2017 16:00:24 +0100 Subject: [OT] HyperCard preservation society Message-ID: This is fabulous: http://blog.archive.org/2017/08/11/hypercard-on-the-archive-celebrating-30-years-of-hypercard/ Submit your jewels of yesteryear! best Ben From dan at clearvisiontech.com Fri Aug 11 11:15:35 2017 From: dan at clearvisiontech.com (Dan Friedman) Date: Fri, 11 Aug 2017 15:15:35 +0000 Subject: Update: Crash with mobilePickPhoto and Android In-Reply-To: <> Message-ID: <080813D5-8C6E-4AD0-BB04-8C2E54CB66B9@clearvisiontech.com> For those who may be interested, here?s a fun one? If acceleratedRendering is enabled, mobilePickPhoto will crash the app on Android. Here?s your workaround: set the acceleratedRendering of stack "main" to false mobilePickPhoto "camera" set the acceleratedRendering of stack "main" to true Perhaps LC will fix this or add this limitation to the documentation. -Dan >> Hello! Having some trouble with mobilePickPhoto on an Android device. I call mobilePickPhoto "library" >> (or mobilePickPhoto "camera") and I can choose the photo or take the picture, but as soon as I accept the >> image (when LC should have control again) the app crashes with the prompt ?[appName] has stopped?. >> LC 8.1.5, Moto g5 Plus running Android 7.0. Any thoughts? >> >> Any assistance would be GREATLY appreciated! >> >> -Dan From mark at livecode.com Fri Aug 11 11:23:41 2017 From: mark at livecode.com (Mark Waddingham) Date: Fri, 11 Aug 2017 17:23:41 +0200 Subject: Fwd: Speed of control lookup (Was Re: Parent of Target) In-Reply-To: References: Message-ID: On 2017-08-11 14:57, Mark Waddingham via use-livecode wrote: > The question of course is 'how fast could we get long id parsing to > be' (as that is the bottleneck here, or at least appears to be). Okay so I got stuck on what I am *meant* to be doing, so spent a little time trying to answer this question. The results are quite encouraging... So, my idea was this - long ids which the engine generates have a *very* strict structure - so write a very fast parser for them which fails as soon as it encounters anything it doesn't expect. If this happens you just use the existing (relatively slow) method which handles all the edge cases. It turns out you can hand-craft a parser for 'the long id' in about 150 lines of C (char-bashing, one might call it, as opposed to bit-bashing) and assuming you restrict yourself to only looking up things on the current card of the target stack, and don't check group ownership (oops!) you end up with something which can resolve a long id in about the same time as you could if you hand-coded the syntax. i.e. put "button id 1003 of group id 1004 of card id 1002 of stack " & quote & "MyStackName" & quote into tRuggedId get the id of tRuggedId -- has about the same speed (assuming all those objects are in the cache) as put the id of button id 1003 of group id 1004 of card id 1002 of stack "MyStackName" Now, I do wonder if the long id parsing method we currently have is actually using the stack-id cache everywhere it could (this code is somewhat old and knotty - so it is quite hard to see) - so I'm not sure quite how fair the above comparison is with current long id parsing (were the latter as optimal as it potentially could be) but there is obviously quite a significant overhead in the way chunks are parsed from strings (which I kind of already knew - but perhaps not just *how much*!). Anyway, it is quite pleasing to know that we perhaps don't need the complexity of 'caching an object-handle along side a string from which a long id has been parsed' (where getting the cache validation right is going to be hard to do performantly enough) as we can probably make parsing of long ids (or variants of) themselves so quick, that the time taken to do so is thoroughly lost in the actual operation they are being used for. This was just an 'experiment', so I can't really say when this change might (if ever) appear - however, it certainly suggests a slightly less fiddly approach than the caching method. It has also suggested (to me, at least) a slightly different approach - we make the return value of the 'long id' property of objects what you might call a StringyLongId value. Instead of returning a string: button id 1003 of group id 1004 of card id 1002 of stack "MyStackName" It would be a value which acts like a string, but internally stores: [ BUTTON, 1003, [ 1004 ], 1002, "MyStackName" ] i.e. A list of component parts - [ main chunk, main chunk id, [ group id, ... ], card id, stack name/filename ] This has the advantage that you use up a great deal less memory for long ids of very frequently referenced objects (filenames / names can be quite long!). They can be resolved quickly assuming the stack-id cache (and if we add a name / filename cache for top-level stacks); compared more quickly; and still be rendered as a string when doing stringy things to them (it would also be possible to optimize the 'word' chunk for them). This has the *distinct* advantage of not needing to be validated (long ids change as objects move around in the hierarchy or id / names change ] before use. Of course, this actually requires a bit of machinery we don't actually have (but could be used for other things) - the ability for a value (internally) to be able to act like a string, but not actually be a string. On balance the optimized long id chunk parser is probably less work (as it only needs a bit of code in *one* place - in the chunk evaluator); and probably less prone to causing regressions - especially if we only used the optimized code path in cases where we were sure there weren't any 'difficult' edge-cases to deal with. I suppose I should now get back to what I was meant to be doing... Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From ahsoftware at sonic.net Fri Aug 11 11:26:46 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Fri, 11 Aug 2017 08:26:46 -0700 Subject: common code patterns In-Reply-To: <5d0eb575eb329262a1aceb34ec1e5aaf@livecode.com> References: <004501d311f5$592fc940$0b8f5bc0$@net> <765F1581-ADB6-4BE5-ADF5-BB616F2D489A@byu.edu> <005e01d311ff$7c4c6370$74e52a50$@net> <5d0eb575eb329262a1aceb34ec1e5aaf@livecode.com> Message-ID: <54e031f7-7971-1b5b-c06b-fdf671b1ac5d@sonic.net> On 08/11/2017 02:24 AM, Mark Waddingham via use-livecode wrote: > Not quite on topic for the thread, but this interested in me in terms of > - what are the use cases? Somewhat similar to Ralph's use cases, this paradigm comes up quite often in my code. Probably the most common case is where I want the performance of a 'repeat for each' loop but don't have a proper iterator to use, so I have to use a doppelganger. Examples here from actual working code: case 1: setting up an array of constants: put 0 into tCount repeat for each item tConst in tConsts put tConst into tArray[tCount] add 1 to tCount end repeat case 2: iterating through a cr-separated list and needing to modify lines (note: this is even more extreme if I need to delete lines): put tBreaks into tNewBreaks put 1 into tLine repeat for each line tBreak in tBreaks put item 1 of tBreak into tID put the long id of control id tID of the topstack into tObjectID put tObjectID into item 1 of line tLine of tNewBreaks add 1 to tLine end repeat return tNewBreaks case 3: parsing data and needing an iterator: command SetVarFieldColors pFieldName local x put 1 into x set the itemdelimiter to tab repeat for each line tLine in field pFieldName switch item 3 of tLine case "C" set the forecolor of item 2 to 3 of line x of field pFieldName to sDebugColors["declarations"] break case "P" set the forecolor of item 2 to 3 of line x of field pFieldName to sDebugColors["parameters"] break default break end switch add 1 to x end repeat end SetVarFieldColors -- Mark Wieder ahsoftware at gmail.com From mark at livecode.com Fri Aug 11 11:31:24 2017 From: mark at livecode.com (Mark Waddingham) Date: Fri, 11 Aug 2017 17:31:24 +0200 Subject: Mobile LC Apps Downloading Stacks After installation In-Reply-To: References: <6C82BF40-3736-4B30-961F-2D0EC4F16D4C@hindu.org> <3aee2f40b156a12383e1c292515c0285@livecode.com> <3034E4FD-679E-4EAB-9BB8-5B8D37005184@gmail.com> <1b96f5da101f5648e7868aeeda2982a8@livecode.com> <001701d312a9$1f9e5700$5edb0500$@net> <7286E02C-F90F-40F9-8BBD-A595DB4D555F@gmail.com> Message-ID: <6b4f525d17543a32100435cfd4f35d5e@livecode.com> On 2017-08-11 16:35, Mike Kerner via use-livecode wrote: > Unless I read your post incorrectly, mark, "Do" works just fine, at > least Yes it does - the point I was making was that breaking the rules in the App Store could end up with us having to restrict what the LiveCode engine can do when being run in an App Store Installed environment to ensure that we aren't blocked from said App Store. The blunt instrument would be not allowing *any* dynamic code execution (which is essentially what Apple *did* do for a while in 2010). > The sideloading/bootstrapping capabilities in LC are a fantastic way to > work on corporate apps, force updates, and save everyone time and > hassle. What happens inside corporations within the Enterprise schemes the App Stores have is not the issue here. There you can do whatever you like - within what the IT departments allow, at least. This is the consumer facing App Store(s) which have these restrictions. Primarily to protect people who don't want to have to understand all the details of the risks involved with having hugely powerful computational devices in their pockets which can download and run code provided by (what are, in reality) very loosely vetted organisations/businesses/individuals. Particularly when those computational devices also tend to store their entire 'lives' (in terms of personal details, financial details, contacts, etc.). Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From mark at livecode.com Fri Aug 11 11:37:41 2017 From: mark at livecode.com (Mark Waddingham) Date: Fri, 11 Aug 2017 17:37:41 +0200 Subject: common code patterns In-Reply-To: <54e031f7-7971-1b5b-c06b-fdf671b1ac5d@sonic.net> References: <004501d311f5$592fc940$0b8f5bc0$@net> <765F1581-ADB6-4BE5-ADF5-BB616F2D489A@byu.edu> <005e01d311ff$7c4c6370$74e52a50$@net> <5d0eb575eb329262a1aceb34ec1e5aaf@livecode.com> <54e031f7-7971-1b5b-c06b-fdf671b1ac5d@sonic.net> Message-ID: <1dc049c849d8a5e7e123b391890d7166@livecode.com> On 2017-08-11 17:26, Mark Wieder via use-livecode wrote: > On 08/11/2017 02:24 AM, Mark Waddingham via use-livecode wrote: > >> Not quite on topic for the thread, but this interested in me in terms >> of - what are the use cases? > > Somewhat similar to Ralph's use cases, this paradigm comes up quite > often in my code. Probably the most common case is where I want the > performance of a 'repeat for each' loop but don't have a proper > iterator to use, so I have to use a doppelganger. Examples here from > actual working code: Hehe - I wasn't clear enough there... I meant 'use-cases for a generalized form allowing start index to be specified'. Although, Ralph's suggestion of allowing a counter alongside *any* repeat perhaps suggests the generalization *might* be worthwhile (after all there isn't a thing you are counting from 1 there - unlike in repeat for each). So, let me rephrase - what are the use-cases people can see for allowing (some variant of): repeat ... with counter tCounter starting from tStart Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From ahsoftware at sonic.net Fri Aug 11 11:40:43 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Fri, 11 Aug 2017 08:40:43 -0700 Subject: Bug 20255 - Simple Loop Labeling In-Reply-To: References: <1f1b93a3-9bb3-27f4-0ec4-76bbc09cc954@sonic.net> Message-ID: <5b8b4d55-11c9-f797-9d60-ad6e41297225@sonic.net> On 08/11/2017 02:51 AM, Mark Waddingham via use-livecode wrote: > Naming loops in a syntactic way certainly sounds like a useful thing to do: I should point out here that Robert Cailliau has complained about the lack of named loops as one of the main deficiencies of LiveCode for some ten years now. -- Mark Wieder ahsoftware at gmail.com From alex at tweedly.net Fri Aug 11 11:42:28 2017 From: alex at tweedly.net (Alex Tweedly) Date: Fri, 11 Aug 2017 16:42:28 +0100 Subject: common code patterns In-Reply-To: <54e031f7-7971-1b5b-c06b-fdf671b1ac5d@sonic.net> References: <004501d311f5$592fc940$0b8f5bc0$@net> <765F1581-ADB6-4BE5-ADF5-BB616F2D489A@byu.edu> <005e01d311ff$7c4c6370$74e52a50$@net> <5d0eb575eb329262a1aceb34ec1e5aaf@livecode.com> <54e031f7-7971-1b5b-c06b-fdf671b1ac5d@sonic.net> Message-ID: On 11/08/2017 16:26, Mark Wieder via use-livecode wrote: > > case 2: > iterating through a cr-separated list and needing to modify lines > (note: this is even more extreme if I need to delete lines): > > put tBreaks into tNewBreaks > put 1 into tLine > repeat for each line tBreak in tBreaks > put item 1 of tBreak into tID > put the long id of control id tID of the topstack into tObjectID > put tObjectID into item 1 of line tLine of tNewBreaks > add 1 to tLine > end repeat > return tNewBreaks > Is it really worth doing this by changing each of the lines ? Is it not easier, clearer and very likely just as fast, to do: > put empty into tNewBreaks > repeat for each line tBreak in tBreaks > put item 1 of tBreak into tID > put the long id of control id tID of the topstack into tObjectID > put tObjectID & the itemDel & item 2 to -1 of tBreak &CR after > tNewBreaks > end repeat > return char 1 to -1 of tNewBreaks With a bonus that deleting lines (i.e. not copying them) is easier. Regards, Alex From mark at livecode.com Fri Aug 11 11:44:55 2017 From: mark at livecode.com (Mark Waddingham) Date: Fri, 11 Aug 2017 17:44:55 +0200 Subject: [OT] Draconian computer company policies, was: Mobile LC Apps Downloading Stacks After installation In-Reply-To: <0c6a9d9a-ca92-a9d8-506a-f8683e7eaa05@gmail.com> References: <6C82BF40-3736-4B30-961F-2D0EC4F16D4C@hindu.org> <3aee2f40b156a12383e1c292515c0285@livecode.com> <3034E4FD-679E-4EAB-9BB8-5B8D37005184@gmail.com> <1b96f5da101f5648e7868aeeda2982a8@livecode.com> <001701d312a9$1f9e5700$5edb0500$@net> <7286E02C-F90F-40F9-8BBD-A595DB4D555F@gmail.com> <3C5C7075-BAA8-4D76-8749-3DB32412A20C@gmail.com> <0c6a9d9a-ca92-a9d8-506a-f8683e7eaa05@gmail.com> Message-ID: <420702503e86f8faf4cec8da3c79b775@livecode.com> On 2017-08-11 16:44, Richmond Mathewson via use-livecode wrote: > I cannot quite see how people are prepared to go on buying Apple iPads > when > there are such draconian restrictions as to what one can run on them. > > While the Android "thing" may not be much better, at last one can > side-load almost anything one wants. One can on iOS too - if you want to Jailbreak your device. Or, indeed, if you have a Apple dev account (which I believe are now free until you want to submit an app - someone please correct me if I'm wrong) you can put on it whatever you like. > There is a whole world of difference between a set of actions one > cannot do because of the > physical limitations of a thing and a set of actions one is not > allowed to do because a bunch of people > in California want to carry on mucking you around even after they ahve > successfully manipulated you into buying their > over-priced product. That might be true - but as much as these restrictions *might* be because the vendors 'want complete control of their walled garden to scalp us for cash', I honestly do think it is much more about ensuring these devices are *safe* for people to use in regards to all the very critical information we tend to hold on our devices. It is important to remember that the majority of people who use mobile phones, tablets and computers use them like they do their car or washing machine. They have little interest in how the thing works, just that it does what they need to - does it well and does it safely. Sure some people complain about seat-belts and speed limits but the reality is that those *legally enforceable requirements* make the roads a great deal safer for everyone. Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From mark at livecode.com Fri Aug 11 11:50:30 2017 From: mark at livecode.com (Mark Waddingham) Date: Fri, 11 Aug 2017 17:50:30 +0200 Subject: Bug 20255 - Simple Loop Labeling In-Reply-To: <5b8b4d55-11c9-f797-9d60-ad6e41297225@sonic.net> References: <1f1b93a3-9bb3-27f4-0ec4-76bbc09cc954@sonic.net> <5b8b4d55-11c9-f797-9d60-ad6e41297225@sonic.net> Message-ID: <3b94d3959de04b5c2dbff83ce4589f1a@livecode.com> On 2017-08-11 17:40, Mark Wieder via use-livecode wrote: > On 08/11/2017 02:51 AM, Mark Waddingham via use-livecode wrote: > >> Naming loops in a syntactic way certainly sounds like a useful thing >> to do: > > I should point out here that Robert Cailliau has complained about the > lack of named loops as one of the main deficiencies of LiveCode for > some ten years now. I know - it has come up numerous times. I wasn't presenting it as a new idea - because it most certainly isn't (although it isn't all that common, when you look across the vast range of programming languages which do exist...) Robert has also suggested a 'with' construct, allowing quotes in quoted strings (I think his suggestion is "") and probably many other things (he did a talk many years ago which listed quite a few...) The reality is though, as there has never been a truly concrete proposal for any of those which take into account all the constraints of the current implementation - they aren't likely to happen until someone actually has some 'time' to do the necessary thinking that is required to turn them from a theoretical notion, to an implementable specification aligned with what could actually be done. As the topic of naming of loops came up (admittedly from a different point of view) it seemed useful to garner some more detail on the idea - since it was on quite a few people's minds :) Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From dochawk at gmail.com Fri Aug 11 11:51:51 2017 From: dochawk at gmail.com (Dr. Hawkins) Date: Fri, 11 Aug 2017 08:51:51 -0700 Subject: [OT] Draconian computer company policies, was: Mobile LC Apps Downloading Stacks After installation In-Reply-To: <420702503e86f8faf4cec8da3c79b775@livecode.com> References: <6C82BF40-3736-4B30-961F-2D0EC4F16D4C@hindu.org> <3aee2f40b156a12383e1c292515c0285@livecode.com> <3034E4FD-679E-4EAB-9BB8-5B8D37005184@gmail.com> <1b96f5da101f5648e7868aeeda2982a8@livecode.com> <001701d312a9$1f9e5700$5edb0500$@net> <7286E02C-F90F-40F9-8BBD-A595DB4D555F@gmail.com> <3C5C7075-BAA8-4D76-8749-3DB32412A20C@gmail.com> <0c6a9d9a-ca92-a9d8-506a-f8683e7eaa05@gmail.com> <420702503e86f8faf4cec8da3c79b775@livecode.com> Message-ID: On Fri, Aug 11, 2017 at 8:44 AM, Mark Waddingham via use-livecode < use-livecode at lists.runrev.com> wrote: > > > It is important to remember that the majority of people who use mobile > phones, tablets and computers use them like they do their car or washing > machine. They have little interest in how the thing works, just that it > does what they need to - does it well and does it safely. > This. Word processor, spreadsheet, browser, email, and a few games probably covers 99% of users. On a phone, many want their facetwit applications, too. My interest in a smart phone ends at navigation, camera, and caller ID. Oh, and enough voice control to place calls. I'd be tempted to switch to an android (I actually had the original gphone), but the privacy, hacks, and whathaveyou stop me. Security and privacy *are* what I'm buying when I pay extra for an iOS device. -- Dr. Richard E. Hawkins, Esq. (702) 508-8462 From MikeKerner at roadrunner.com Fri Aug 11 12:00:44 2017 From: MikeKerner at roadrunner.com (Mike Kerner) Date: Fri, 11 Aug 2017 12:00:44 -0400 Subject: Mobile LC Apps Downloading Stacks After installation In-Reply-To: <6b4f525d17543a32100435cfd4f35d5e@livecode.com> References: <6C82BF40-3736-4B30-961F-2D0EC4F16D4C@hindu.org> <3aee2f40b156a12383e1c292515c0285@livecode.com> <3034E4FD-679E-4EAB-9BB8-5B8D37005184@gmail.com> <1b96f5da101f5648e7868aeeda2982a8@livecode.com> <001701d312a9$1f9e5700$5edb0500$@net> <7286E02C-F90F-40F9-8BBD-A595DB4D555F@gmail.com> <6b4f525d17543a32100435cfd4f35d5e@livecode.com> Message-ID: That's not what I'm saying. What I'm saying is while telling everyone to control themselves is good, removing these capabilities from LC is bad, so if the time comes where it is necessary to do something to stop someone from behaving badly, please make sure we have a switch in place that allows the rest of us to continue as-is. On Fri, Aug 11, 2017 at 11:31 AM, Mark Waddingham via use-livecode < use-livecode at lists.runrev.com> wrote: > On 2017-08-11 16:35, Mike Kerner via use-livecode wrote: > >> Unless I read your post incorrectly, mark, "Do" works just fine, at least >> > > Yes it does - the point I was making was that breaking the rules in the > App Store could end up with us having to restrict what the LiveCode engine > can do when being run in an App Store Installed environment to ensure that > we aren't blocked from said App Store. The blunt instrument would be not > allowing *any* dynamic code execution (which is essentially what Apple > *did* do for a while in 2010). > > The sideloading/bootstrapping capabilities in LC are a fantastic way to >> work on corporate apps, force updates, and save everyone time and hassle. >> > > What happens inside corporations within the Enterprise schemes the App > Stores have is not the issue here. There you can do whatever you like - > within what the IT departments allow, at least. > > This is the consumer facing App Store(s) which have these restrictions. > Primarily to protect people who don't want to have to understand all the > details of the risks involved with having hugely powerful computational > devices in their pockets which can download and run code provided by (what > are, in reality) very loosely vetted organisations/businesses/individuals. > Particularly when those computational devices also tend to store their > entire 'lives' (in terms of personal details, financial details, contacts, > etc.). > > > Warmest Regards, > > Mark. > > -- > Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ > LiveCode: Everyone can create apps > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > -- On the first day, God created the heavens and the Earth On the second day, God created the oceans. On the third day, God put the animals on hold for a few hours, and did a little diving. And God said, "This is good." From MikeKerner at roadrunner.com Fri Aug 11 12:00:44 2017 From: MikeKerner at roadrunner.com (Mike Kerner) Date: Fri, 11 Aug 2017 12:00:44 -0400 Subject: Mobile LC Apps Downloading Stacks After installation In-Reply-To: <6b4f525d17543a32100435cfd4f35d5e@livecode.com> References: <6C82BF40-3736-4B30-961F-2D0EC4F16D4C@hindu.org> <3aee2f40b156a12383e1c292515c0285@livecode.com> <3034E4FD-679E-4EAB-9BB8-5B8D37005184@gmail.com> <1b96f5da101f5648e7868aeeda2982a8@livecode.com> <001701d312a9$1f9e5700$5edb0500$@net> <7286E02C-F90F-40F9-8BBD-A595DB4D555F@gmail.com> <6b4f525d17543a32100435cfd4f35d5e@livecode.com> Message-ID: That's not what I'm saying. What I'm saying is while telling everyone to control themselves is good, removing these capabilities from LC is bad, so if the time comes where it is necessary to do something to stop someone from behaving badly, please make sure we have a switch in place that allows the rest of us to continue as-is. On Fri, Aug 11, 2017 at 11:31 AM, Mark Waddingham via use-livecode < use-livecode at lists.runrev.com> wrote: > On 2017-08-11 16:35, Mike Kerner via use-livecode wrote: > >> Unless I read your post incorrectly, mark, "Do" works just fine, at least >> > > Yes it does - the point I was making was that breaking the rules in the > App Store could end up with us having to restrict what the LiveCode engine > can do when being run in an App Store Installed environment to ensure that > we aren't blocked from said App Store. The blunt instrument would be not > allowing *any* dynamic code execution (which is essentially what Apple > *did* do for a while in 2010). > > The sideloading/bootstrapping capabilities in LC are a fantastic way to >> work on corporate apps, force updates, and save everyone time and hassle. >> > > What happens inside corporations within the Enterprise schemes the App > Stores have is not the issue here. There you can do whatever you like - > within what the IT departments allow, at least. > > This is the consumer facing App Store(s) which have these restrictions. > Primarily to protect people who don't want to have to understand all the > details of the risks involved with having hugely powerful computational > devices in their pockets which can download and run code provided by (what > are, in reality) very loosely vetted organisations/businesses/individuals. > Particularly when those computational devices also tend to store their > entire 'lives' (in terms of personal details, financial details, contacts, > etc.). > > > Warmest Regards, > > Mark. > > -- > Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ > LiveCode: Everyone can create apps > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > -- On the first day, God created the heavens and the Earth On the second day, God created the oceans. On the third day, God put the animals on hold for a few hours, and did a little diving. And God said, "This is good." From mark at livecode.com Fri Aug 11 12:07:14 2017 From: mark at livecode.com (Mark Waddingham) Date: Fri, 11 Aug 2017 18:07:14 +0200 Subject: Mobile LC Apps Downloading Stacks After installation In-Reply-To: References: <6C82BF40-3736-4B30-961F-2D0EC4F16D4C@hindu.org> <3aee2f40b156a12383e1c292515c0285@livecode.com> <3034E4FD-679E-4EAB-9BB8-5B8D37005184@gmail.com> <1b96f5da101f5648e7868aeeda2982a8@livecode.com> <001701d312a9$1f9e5700$5edb0500$@net> <7286E02C-F90F-40F9-8BBD-A595DB4D555F@gmail.com> <6b4f525d17543a32100435cfd4f35d5e@livecode.com> Message-ID: On 2017-08-11 18:00, Mike Kerner via use-livecode wrote: > That's not what I'm saying. What I'm saying is while telling everyone > to > control themselves is good, removing these capabilities from LC is bad, > so > if the time comes where it is necessary to do something to stop someone > from behaving badly, please make sure we have a switch in place that > allows > the rest of us to continue as-is. Hence my comment about 'when being run from an App Store installed environment'. It is easy to check if an App is running when installed from an AppStore... Indeed, you have to build such things using a 'distribution profile' specific to the store - so any action would be at standalone-build time, rather than anywhere else. To be fair, I don't think it is likely to happen... However, unlikely does not mean impossible! Warmest Regards, Mark. P.S. I'd also rather not have to expend the resources doing it - there are far better things we could be doing than figuring out ways to turn dynamic features into static ones, or reworking stuff so the dynamic features could be turned off. I much prefer the 'with great power comes great responsibility' approach - i.e. trust! -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From dochawk at gmail.com Fri Aug 11 12:12:10 2017 From: dochawk at gmail.com (Dr. Hawkins) Date: Fri, 11 Aug 2017 09:12:10 -0700 Subject: Bug 20255 - Simple Loop Labeling In-Reply-To: <07F582EA-F787-4A89-BED6-A6D7659B1297@appisle.net> References: <7263A1F4-3913-4AB7-A621-7D313702FE1B@iotecdigital.com> <77a4c282-09c5-c8ab-d0b2-c0c3da28e71d@fourthworld.com> <15dcd8039d8.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <07F582EA-F787-4A89-BED6-A6D7659B1297@appisle.net> Message-ID: On Thu, Aug 10, 2017 at 6:24 PM, Monte Goulding via use-livecode < use-livecode at lists.runrev.com> wrote: > > 2. automagical maintenance if the comments exist and you change the > conditio > Oooh, yes; automagical maintenance would be wonderful! (really? my spellchecker recognizes "automagical" as a word?) And to be clear, I am *NOT* suggesting in any way that Livecode get a GOTO; I was suggesting that there are *very* rare cases where they are useful. (I can probably count the number I have *ever* used on my fingers, possibly of one hand [unless you count the ones driven by performance and how memory was accessed in interpreters, but that still gave you two per program {jump to high/slow area for onetime setup, then to mid-memory main loop above time critical subroutines, and possibly a third from the end of the main loop to the beginning if the language couldn't loop forever}]). (and as dust drifts about the cobwebs of my memory, I think that on what I think of as "my goto" was used instead of putting the common section into another routine to avoid the computational cost of that context switch; this was in the recursive core routine that was called zillions of times in the program which ran for a couple of days [initially more than that]. If you need that kind of optimization/performance, livecode will be fairly low on your list of choices . . .) -- Dr. Richard E. Hawkins, Esq. (702) 508-8462 From revolution at derbrill.de Fri Aug 11 12:19:29 2017 From: revolution at derbrill.de (Malte Pfaff-Brill) Date: Fri, 11 Aug 2017 18:19:29 +0200 Subject: common code patterns In-Reply-To: References: Message-ID: <470BEC6B-A9F2-4E21-9A5A-02B7F0B3244F@derbrill.de> HI Alex, > put param(1) into isLeft > put param(2) into isTop > etc. > > This always has fewer lines (i.e. the same number of lines as the > "recombine" part), and removes the loop completely. > But would change the way the functions are intended to be able to called. myFunction(the loc of control 1) has one comma delimited Parameter while myFunction(item 1 of the loc of control 1,item 2 of the loc of control 1) has 2 parameters Thus combining all params into a literal first and then breaking out the items of that in the desired order > > > repeat with i=1 to paramcount()-1 > put param(i)&"," after theValue > end repeat > put param(paramcount()) after theValue > > Shorter, faster, and just plain tidier :-) > Agreed. :-) Cheers, Malte From jacque at hyperactivesw.com Fri Aug 11 12:20:41 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Fri, 11 Aug 2017 11:20:41 -0500 Subject: [OT] Draconian computer company policies, was: Mobile LC Apps Downloading Stacks After installation In-Reply-To: <0c6a9d9a-ca92-a9d8-506a-f8683e7eaa05@gmail.com> References: <6C82BF40-3736-4B30-961F-2D0EC4F16D4C@hindu.org> <3aee2f40b156a12383e1c292515c0285@livecode.com> <3034E4FD-679E-4EAB-9BB8-5B8D37005184@gmail.com> <1b96f5da101f5648e7868aeeda2982a8@livecode.com> <001701d312a9$1f9e5700$5edb0500$@net> <7286E02C-F90F-40F9-8BBD-A595DB4D555F@gmail.com> <3C5C7075-BAA8-4D76-8749-3DB32412A20C@gmail.com> <0c6a9d9a-ca92-a9d8-506a-f8683e7eaa05@gmail.com> Message-ID: <15dd21903a8.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> In this case, the restrictions are to prevent malware from entering the app stores, which hardly sounds Draconian to me. Even so, there have been a handful of apps that made it through the vetting process and affected dozens or hundreds of users. It's rare but it has happened. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com On August 11, 2017 9:46:37 AM Richmond Mathewson via use-livecode wrote: > I cannot quite see how people are prepared to go on buying Apple iPads when > there are such draconian restrictions as to what one can run on them. > > While the Android "thing" may not be much better, at last one can > side-load almost anything one wants. > > But, Like Richard Stallman, I suffer from the "horrible" belief that > once one has bought something > it belongs to you and you should not be told what you can and cannot do > with it. > > OK, OK, I'm back off to the kitchen to carry on slicing vegetables with > a roll of toliet paper. > > There is a whole world of difference between a set of actions one cannot > do because of the > physical limitations of a thing and a set of actions one is not allowed > to do because a bunch of people > in California want to carry on mucking you around even after they ahve > successfully manipulated you into buying their > over-priced product. > > Currently trying to get my ASUS Intel Tablet which runs Android to do a > few things I want it to, but Google [wouldn't Douglas Adams > have a fit of the dry boak?] do want me to do with it. > > Richmond. > > On 8/11/17 5:35 pm, Jonathan Lynch via use-livecode wrote: >> If we could have our own LC App Store, where people could play an app with >> a player app on different platforms, it would be quite excellent. >> >> At the very least, I think Apple would object. >> >> Sent from my iPhone >> >>> On Aug 11, 2017, at 10:09 AM, Roger Eller via use-livecode >>> wrote: >>> >>> Several companies HAVE their own app stores. Samsung is one that comes to >>> mind. http://joyofandroid.com/android-app-store-alternatives/ >>> >>> ~Roger >>> >>> >>> On Fri, Aug 11, 2017 at 10:00 AM, Jonathan Lynch via use-livecode < >>> use-livecode at lists.runrev.com> wrote: >>> >>>> If Apple and Google allowed player apps that play external code, companies >>>> could essentially set up their own app stores, bypassing google play and >>>> iTunes. >>>> I cannot imagine either company would appreciate that. >>>> >>>> Sent from my iPhone >>>> >>>>> On Aug 11, 2017, at 9:52 AM, Ralph DiMola via use-livecode < >>>> use-livecode at lists.runrev.com> wrote: >>>>> Mark, >>>>> >>>>> Thanks for weighing in. I would like to read into those licenses that I >>>>> could update my core LCS, but I know in my soul that if I do that it's >>>> just >>>>> a shoe waiting to drop that could affect not only my license but the >>>> entire >>>>> LC community. I also feel that when I create an extra button(with stub >>>> code) >>>>> because a "data" update offers more options that I am staying within the >>>>> guidelines and the spirit of the App/Play store rules. I see this as >>>> simple >>>>> decision. I call it the "Johnny, did you eat a cookie?" scenario. Johnny >>>>> says "no" because he did not eat "A" cookie but ate 3 cookies. I am not >>>> a 2 >>>>> year old and know what these rules were intended to prevent. >>>>> >>>>> By the way, I was once rejected because my data update "answer" dialog >>>> was >>>>> worded as "An app update is available". I explained that it was a data >>>>> update and not code and changed the verbiage of the dialog. I then passed >>>>> the review. Moral: The review team can look VERY close at any app during >>>>> review. >>>>> >>>>> As it was said in Goodfellows... At least, that's how I feel. >>>>> >>>>> Ralph DiMola >>>>> IT Director >>>>> Evergreen Information Services >>>>> rdimola at evergreeninfo.net >>>>> >>>>> >>>>> -----Original Message----- >>>>> From: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] On >>>> Behalf >>>>> Of Mark Waddingham via use-livecode >>>>> Sent: Friday, August 11, 2017 7:24 AM >>>>> To: How to use LiveCode >>>>> Cc: Mark Waddingham >>>>> Subject: Re: Mobile LC Apps Downloading Stacks After installation >>>>> >>>>>> On 2017-08-11 12:20, Jonathan Lynch via use-livecode wrote: >>>>>> I know the reviewers at app stores are not always careful, but >>>>>> something like an LC player would surely get their notice. >>>>> Review, from my understanding, is heavily automated (it has to be - if >>>> you >>>>> think of the scale of the App Stores these days). However, there is >>>> always a >>>>> means to get in contact with a human about specific issues (which can >>>> take a >>>>> while to get escalated with someone who can actually do something - but >>>> at >>>>> least it is possible). >>>>> >>>>>> They do allow us to import JS, but JS is way more sandboxed than LC. >>>>> Yes - this is true - however, as I noticed this morning Apple no longer >>>> have >>>>> their advisory about allowing arbitrary JS to be downloaded and run >>>> within a >>>>> WebView. This is simply because you can could build a host app which >>>> gives >>>>> access to every single OS API on iOS and make all of them callable from >>>> JS >>>>> (even if the JS bundled with the app does not use any of it). >>>>> >>>>> So, the point is the language is not the point - what the code running in >>>>> the language does is important. >>>>> >>>>> Like Google, Apple are wanting to know precisely what OS APIs your app is >>>>> calling at the point of review - so they have some idea of the surface >>>> area >>>>> of attack for any malicious intent. How much analysis they currently do, >>>>> no-one really knows - however the guidelines means that (in principal) >>>> they >>>>> have reasons to pull any apps very quickly if they find that they are >>>> doing >>>>> something which is 'not allowed'. >>>>> >>>>> Warmest Regards, >>>>> >>>>> Mark. >>>>> >>>>> -- >>>>> Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ >>>>> LiveCode: Everyone can create apps >>>>> >>>>> _______________________________________________ >>>>> use-livecode mailing list >>>>> use-livecode at lists.runrev.com >>>>> Please visit this url to subscribe, unsubscribe and manage your >>>> subscription >>>>> preferences: >>>>> http://lists.runrev.com/mailman/listinfo/use-livecode >>>>> >>>>> >>>>> _______________________________________________ >>>>> use-livecode mailing list >>>>> use-livecode at lists.runrev.com >>>>> Please visit this url to subscribe, unsubscribe and manage your >>>> subscription preferences: >>>>> http://lists.runrev.com/mailman/listinfo/use-livecode >>>> _______________________________________________ >>>> use-livecode mailing list >>>> use-livecode at lists.runrev.com >>>> Please visit this url to subscribe, unsubscribe and manage your >>>> subscription preferences: >>>> http://lists.runrev.com/mailman/listinfo/use-livecode >>>> >>> _______________________________________________ >>> use-livecode mailing list >>> use-livecode at lists.runrev.com >>> Please visit this url to subscribe, unsubscribe and manage your >>> subscription preferences: >>> http://lists.runrev.com/mailman/listinfo/use-livecode >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From ahsoftware at sonic.net Fri Aug 11 12:27:24 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Fri, 11 Aug 2017 09:27:24 -0700 Subject: common code patterns In-Reply-To: References: <004501d311f5$592fc940$0b8f5bc0$@net> <765F1581-ADB6-4BE5-ADF5-BB616F2D489A@byu.edu> <005e01d311ff$7c4c6370$74e52a50$@net> <5d0eb575eb329262a1aceb34ec1e5aaf@livecode.com> <54e031f7-7971-1b5b-c06b-fdf671b1ac5d@sonic.net> Message-ID: <9f399b78-9ef6-4a8d-b1d7-58c08be21d0e@sonic.net> On 08/11/2017 08:42 AM, Alex Tweedly via use-livecode wrote: > Is it really worth doing this by changing each of the lines ? > Is it not easier, clearer and very likely just as fast, to do: > >> put empty into tNewBreaks >> repeat for each line tBreak in tBreaks >> put item 1 of tBreak into tID >> put the long id of control id tID of the topstack into tObjectID >> put tObjectID & the itemDel & item 2 to -1 of tBreak &CR after >> tNewBreaks >> end repeat >> return char 1 to -1 of tNewBreaks > With a bonus that deleting lines (i.e. not copying them) is easier. It is indeed. Thanks. Refactoring... er... moomin... FTW. -- Mark Wieder ahsoftware at gmail.com From jacque at hyperactivesw.com Fri Aug 11 12:32:27 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Fri, 11 Aug 2017 11:32:27 -0500 Subject: Update: Crash with mobilePickPhoto and Android In-Reply-To: <080813D5-8C6E-4AD0-BB04-8C2E54CB66B9@clearvisiontech.com> References: <080813D5-8C6E-4AD0-BB04-8C2E54CB66B9@clearvisiontech.com> Message-ID: <15dd223c590.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> This needs a bug report. Crashes are high priority fixes. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com On August 11, 2017 10:17:35 AM Dan Friedman via use-livecode wrote: > For those who may be interested, here?s a fun one? > > If acceleratedRendering is enabled, mobilePickPhoto will crash the app on > Android. Here?s your workaround: > > set the acceleratedRendering of stack "main" to false > mobilePickPhoto "camera" > set the acceleratedRendering of stack "main" to true > > Perhaps LC will fix this or add this limitation to the documentation. > > -Dan > > >>> Hello! Having some trouble with mobilePickPhoto on an Android device. I >>> call mobilePickPhoto "library" >>> (or mobilePickPhoto "camera") and I can choose the photo or take the >>> picture, but as soon as I accept the >>> image (when LC should have control again) the app crashes with the prompt >>> ?[appName] has stopped?. >>> LC 8.1.5, Moto g5 Plus running Android 7.0. Any thoughts? >>> >>> Any assistance would be GREATLY appreciated! >>> >>> -Dan > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From ahsoftware at sonic.net Fri Aug 11 12:34:39 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Fri, 11 Aug 2017 09:34:39 -0700 Subject: Bug 20255 - Simple Loop Labeling In-Reply-To: <3b94d3959de04b5c2dbff83ce4589f1a@livecode.com> References: <1f1b93a3-9bb3-27f4-0ec4-76bbc09cc954@sonic.net> <5b8b4d55-11c9-f797-9d60-ad6e41297225@sonic.net> <3b94d3959de04b5c2dbff83ce4589f1a@livecode.com> Message-ID: <1e0878bc-0257-85ac-db05-01c42944b04a@sonic.net> On 08/11/2017 08:50 AM, Mark Waddingham via use-livecode wrote: > they aren't likely to happen until someone actually has some 'time' to do the necessary thinking Um. Yes. That would be you. -- Mark Wieder ahsoftware at gmail.com From richmondmathewson at gmail.com Fri Aug 11 12:39:44 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Fri, 11 Aug 2017 19:39:44 +0300 Subject: Ink pullDown menu Message-ID: <1ab95e1c-756f-a13a-e5ec-50b6aeac580f@gmail.com> I can have a pullDown menu with this sort of script: put the fontNames into me how can I do the smae sort of thing for Ink? e.g. (pseudocode): put the inkNames into me Richmond. From jonathandlynch at gmail.com Fri Aug 11 12:39:46 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Fri, 11 Aug 2017 12:39:46 -0400 Subject: [OT] Draconian computer company policies, was: Mobile LC Apps Downloading Stacks After installation In-Reply-To: <15dd21903a8.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> References: <6C82BF40-3736-4B30-961F-2D0EC4F16D4C@hindu.org> <3aee2f40b156a12383e1c292515c0285@livecode.com> <3034E4FD-679E-4EAB-9BB8-5B8D37005184@gmail.com> <1b96f5da101f5648e7868aeeda2982a8@livecode.com> <001701d312a9$1f9e5700$5edb0500$@net> <7286E02C-F90F-40F9-8BBD-A595DB4D555F@gmail.com> <3C5C7075-BAA8-4D76-8749-3DB32412A20C@gmail.com> <0c6a9d9a-ca92-a9d8-506a-f8683e7eaa05@gmail.com> <15dd21903a8.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Message-ID: <6B1123AC-9B8F-4A51-A799-3756EFBE9453@gmail.com> It seems that this is another reason to use LC's HTML5 deployment. Since external javascript is permitted, one could do the "sideloading" by accessing a website created with LC. It would just be an LC HTML5 app displayed inside of a browser widget. Of course, it would be easy to abuse this by adding in function calls to LC on the mobile device, so we would need to be careful. In Augmented Earth, reports can have ads added to them. The report, with the ad, is displayed through a browser widget. This will allow advertisers to place high-quality ads, which they will love. However, nothing in the app would give them access to extra system calls. It is still sandboxed, but only by choice. So, that great power thing still applies - and thanks to the great Stan Lee for that meme! Sent from my iPhone > On Aug 11, 2017, at 12:20 PM, J. Landman Gay via use-livecode wrote: > > In this case, the restrictions are to prevent malware from entering the app stores, which hardly sounds Draconian to me. Even so, there have been a handful of apps that made it through the vetting process and affected dozens or hundreds of users. It's rare but it has happened. > > -- > Jacqueline Landman Gay | jacque at hyperactivesw.com > HyperActive Software | http://www.hyperactivesw.com > > > >> On August 11, 2017 9:46:37 AM Richmond Mathewson via use-livecode wrote: >> >> I cannot quite see how people are prepared to go on buying Apple iPads when >> there are such draconian restrictions as to what one can run on them. >> >> While the Android "thing" may not be much better, at last one can >> side-load almost anything one wants. >> >> But, Like Richard Stallman, I suffer from the "horrible" belief that >> once one has bought something >> it belongs to you and you should not be told what you can and cannot do >> with it. >> >> OK, OK, I'm back off to the kitchen to carry on slicing vegetables with >> a roll of toliet paper. >> >> There is a whole world of difference between a set of actions one cannot >> do because of the >> physical limitations of a thing and a set of actions one is not allowed >> to do because a bunch of people >> in California want to carry on mucking you around even after they ahve >> successfully manipulated you into buying their >> over-priced product. >> >> Currently trying to get my ASUS Intel Tablet which runs Android to do a >> few things I want it to, but Google [wouldn't Douglas Adams >> have a fit of the dry boak?] do want me to do with it. >> >> Richmond. >> >>> On 8/11/17 5:35 pm, Jonathan Lynch via use-livecode wrote: >>> If we could have our own LC App Store, where people could play an app with a player app on different platforms, it would be quite excellent. >>> >>> At the very least, I think Apple would object. >>> >>> Sent from my iPhone >>> >>>> On Aug 11, 2017, at 10:09 AM, Roger Eller via use-livecode wrote: >>>> >>>> Several companies HAVE their own app stores. Samsung is one that comes to >>>> mind. http://joyofandroid.com/android-app-store-alternatives/ >>>> >>>> ~Roger >>>> >>>> >>>> On Fri, Aug 11, 2017 at 10:00 AM, Jonathan Lynch via use-livecode < >>>> use-livecode at lists.runrev.com> wrote: >>>> >>>>> If Apple and Google allowed player apps that play external code, companies >>>>> could essentially set up their own app stores, bypassing google play and >>>>> iTunes. >>>>> I cannot imagine either company would appreciate that. >>>>> >>>>> Sent from my iPhone >>>>> >>>>>> On Aug 11, 2017, at 9:52 AM, Ralph DiMola via use-livecode < >>>>> use-livecode at lists.runrev.com> wrote: >>>>>> Mark, >>>>>> >>>>>> Thanks for weighing in. I would like to read into those licenses that I >>>>>> could update my core LCS, but I know in my soul that if I do that it's >>>>> just >>>>>> a shoe waiting to drop that could affect not only my license but the >>>>> entire >>>>>> LC community. I also feel that when I create an extra button(with stub >>>>> code) >>>>>> because a "data" update offers more options that I am staying within the >>>>>> guidelines and the spirit of the App/Play store rules. I see this as >>>>> simple >>>>>> decision. I call it the "Johnny, did you eat a cookie?" scenario. Johnny >>>>>> says "no" because he did not eat "A" cookie but ate 3 cookies. I am not >>>>> a 2 >>>>>> year old and know what these rules were intended to prevent. >>>>>> >>>>>> By the way, I was once rejected because my data update "answer" dialog >>>>> was >>>>>> worded as "An app update is available". I explained that it was a data >>>>>> update and not code and changed the verbiage of the dialog. I then passed >>>>>> the review. Moral: The review team can look VERY close at any app during >>>>>> review. >>>>>> >>>>>> As it was said in Goodfellows... At least, that's how I feel. >>>>>> >>>>>> Ralph DiMola >>>>>> IT Director >>>>>> Evergreen Information Services >>>>>> rdimola at evergreeninfo.net >>>>>> >>>>>> >>>>>> -----Original Message----- >>>>>> From: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] On >>>>> Behalf >>>>>> Of Mark Waddingham via use-livecode >>>>>> Sent: Friday, August 11, 2017 7:24 AM >>>>>> To: How to use LiveCode >>>>>> Cc: Mark Waddingham >>>>>> Subject: Re: Mobile LC Apps Downloading Stacks After installation >>>>>> >>>>>>> On 2017-08-11 12:20, Jonathan Lynch via use-livecode wrote: >>>>>>> I know the reviewers at app stores are not always careful, but >>>>>>> something like an LC player would surely get their notice. >>>>>> Review, from my understanding, is heavily automated (it has to be - if >>>>> you >>>>>> think of the scale of the App Stores these days). However, there is >>>>> always a >>>>>> means to get in contact with a human about specific issues (which can >>>>> take a >>>>>> while to get escalated with someone who can actually do something - but >>>>> at >>>>>> least it is possible). >>>>>> >>>>>>> They do allow us to import JS, but JS is way more sandboxed than LC. >>>>>> Yes - this is true - however, as I noticed this morning Apple no longer >>>>> have >>>>>> their advisory about allowing arbitrary JS to be downloaded and run >>>>> within a >>>>>> WebView. This is simply because you can could build a host app which >>>>> gives >>>>>> access to every single OS API on iOS and make all of them callable from >>>>> JS >>>>>> (even if the JS bundled with the app does not use any of it). >>>>>> >>>>>> So, the point is the language is not the point - what the code running in >>>>>> the language does is important. >>>>>> >>>>>> Like Google, Apple are wanting to know precisely what OS APIs your app is >>>>>> calling at the point of review - so they have some idea of the surface >>>>> area >>>>>> of attack for any malicious intent. How much analysis they currently do, >>>>>> no-one really knows - however the guidelines means that (in principal) >>>>> they >>>>>> have reasons to pull any apps very quickly if they find that they are >>>>> doing >>>>>> something which is 'not allowed'. >>>>>> >>>>>> Warmest Regards, >>>>>> >>>>>> Mark. >>>>>> >>>>>> -- >>>>>> Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ >>>>>> LiveCode: Everyone can create apps >>>>>> >>>>>> _______________________________________________ >>>>>> use-livecode mailing list >>>>>> use-livecode at lists.runrev.com >>>>>> Please visit this url to subscribe, unsubscribe and manage your >>>>> subscription >>>>>> preferences: >>>>>> http://lists.runrev.com/mailman/listinfo/use-livecode >>>>>> >>>>>> >>>>>> _______________________________________________ >>>>>> use-livecode mailing list >>>>>> use-livecode at lists.runrev.com >>>>>> Please visit this url to subscribe, unsubscribe and manage your >>>>> subscription preferences: >>>>>> http://lists.runrev.com/mailman/listinfo/use-livecode >>>>> _______________________________________________ >>>>> use-livecode mailing list >>>>> use-livecode at lists.runrev.com >>>>> Please visit this url to subscribe, unsubscribe and manage your >>>>> subscription preferences: >>>>> http://lists.runrev.com/mailman/listinfo/use-livecode >>>>> >>>> _______________________________________________ >>>> use-livecode mailing list >>>> use-livecode at lists.runrev.com >>>> Please visit this url to subscribe, unsubscribe and manage your subscription preferences: >>>> http://lists.runrev.com/mailman/listinfo/use-livecode >>> _______________________________________________ >>> use-livecode mailing list >>> use-livecode at lists.runrev.com >>> Please visit this url to subscribe, unsubscribe and manage your subscription preferences: >>> http://lists.runrev.com/mailman/listinfo/use-livecode >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode > > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From curry at pair.com Fri Aug 11 12:49:57 2017 From: curry at pair.com (Curry Kenworthy) Date: Fri, 11 Aug 2017 12:49:57 -0400 Subject: [OT] Draconian computer company policies, was: Mobile LC Apps Downloading Stacks After installation In-Reply-To: <0c6a9d9a-ca92-a9d8-506a-f8683e7eaa05@gmail.com> References: <0c6a9d9a-ca92-a9d8-506a-f8683e7eaa05@gmail.com> Message-ID: <598DE035.4010507@pair.com> Richmond: > I cannot quite see how people are prepared to go on buying > Apple iPads when there are such draconian restrictions as to > what one can run on them. > While the Android "thing" may not be much better, at last one > can side-load almost anything one wants. > But, Like Richard Stallman, I suffer from the "horrible" belief > that once one has bought something it belongs to you and you > should not be told what you can and cannot do with it. Richmond, this may be rare but I'm 100% in agreement with you! My device, my management. I don't have the right to do something illegal or endanger others, but otherwise, I call the shots. Safer? Ha! I can assure everyone that at least in the U.S., your own confidential information is fairly likely to be transmitted insecurely even by professions, regardless of which phone or computer they are using. I've seen it again and again - social security numbers, sensitive records, photo ID, banking and financial, the works. Dumbing things down, the resulting ignorance and complacency hasn't helped. I'm not even getting into other long-term implications of recent technology trends. For virus and malware in particular, yes. But that type of safety could be achieved in other specific ways. This system is primarily about control - a lot of it is financial, some perhaps even ideological. Safety is also a big component of the system, but not the defining one. Best wishes, Curry Kenworthy Custom Software Development http://curryk.com/consulting/ From richmondmathewson at gmail.com Fri Aug 11 12:54:05 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Fri, 11 Aug 2017 19:54:05 +0300 Subject: [OT] Draconian computer company policies, was: Mobile LC Apps Downloading Stacks After installation In-Reply-To: <420702503e86f8faf4cec8da3c79b775@livecode.com> References: <6C82BF40-3736-4B30-961F-2D0EC4F16D4C@hindu.org> <3aee2f40b156a12383e1c292515c0285@livecode.com> <3034E4FD-679E-4EAB-9BB8-5B8D37005184@gmail.com> <1b96f5da101f5648e7868aeeda2982a8@livecode.com> <001701d312a9$1f9e5700$5edb0500$@net> <7286E02C-F90F-40F9-8BBD-A595DB4D555F@gmail.com> <3C5C7075-BAA8-4D76-8749-3DB32412A20C@gmail.com> <0c6a9d9a-ca92-a9d8-506a-f8683e7eaa05@gmail.com> <420702503e86f8faf4cec8da3c79b775@livecode.com> Message-ID: Well, I always drive below the speed limit and I always wear a seatbelt (and have always done so whether or not it was a legal requirement in the country I happened to be living in at the time). This is not quite the same as keeping goats and hens in the back of your car (which was not illegal last time I looked). While keeping goats and hens in the car may prove extremely smelly it cannot be said to be unsafe (unless one wants to drive the car with a nanny goat sitting on one's lap). Now putting a LiveCode standalone onto an iPad that does thing that Apple doesn't like isn't always the same thing as putting things onto an iPad that is unsafe. I'm absolutely sure that an awful lot of the creative potential of tablets is being lost because of unnecessary restrictions. On 8/11/17 6:44 pm, Mark Waddingham via use-livecode wrote: > On 2017-08-11 16:44, Richmond Mathewson via use-livecode wrote: >> I cannot quite see how people are prepared to go on buying Apple >> iPads when >> there are such draconian restrictions as to what one can run on them. >> >> While the Android "thing" may not be much better, at last one can >> side-load almost anything one wants. > > One can on iOS too - if you want to Jailbreak your device. Or, indeed, > if you have a Apple dev account (which I believe are now free until > you want to submit an app - someone please correct me if I'm wrong) > you can put on it whatever you like. > >> There is a whole world of difference between a set of actions one >> cannot do because of the >> physical limitations of a thing and a set of actions one is not >> allowed to do because a bunch of people >> in California want to carry on mucking you around even after they ahve >> successfully manipulated you into buying their >> over-priced product. > > That might be true - but as much as these restrictions *might* be > because the vendors 'want complete control of their walled garden to > scalp us for cash', I honestly do think it is much more about ensuring > these devices are *safe* for people to use in regards to all the very > critical information we tend to hold on our devices. I don't see that, so much as the possibility that Apple and Google are scalping developers for cash; and even that does not make much sense as they could still "scalp" if the restrictions were not so tight. I don't think the developers of these machines or their operating systems are worried that much about the end-users' safety; surely they are more interested in keeping their shareholders happy. > > It is important to remember that the majority of people who use mobile > phones, tablets and computers use them like they do their car or > washing machine. They have little interest in how the thing works, > just that it does what they need to - does it well and does it safely. Yes, I am sure you are right. But, by imposing these restrictions they do not give the end-user a choice; and a world in which choice seems to be increasingly restricted is not good. It would seem that the use of over-regulation and over-restriction is a way of dodging the very heavy moral responsibility of teaching people to make sensible decisions. > > Sure some people complain about seat-belts and speed limits but the > reality is that those *legally enforceable requirements* make the > roads a great deal safer for everyone. > > Warmest Regards, Not half as warm as over here in Bulgaria; hit 43 Centigrade today! > > Mark. > Best, Richmond. From jonathandlynch at gmail.com Fri Aug 11 13:16:27 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Fri, 11 Aug 2017 13:16:27 -0400 Subject: [OT] Draconian computer company policies, was: Mobile LC Apps Downloading Stacks After installation In-Reply-To: References: <6C82BF40-3736-4B30-961F-2D0EC4F16D4C@hindu.org> <3aee2f40b156a12383e1c292515c0285@livecode.com> <3034E4FD-679E-4EAB-9BB8-5B8D37005184@gmail.com> <1b96f5da101f5648e7868aeeda2982a8@livecode.com> <001701d312a9$1f9e5700$5edb0500$@net> <7286E02C-F90F-40F9-8BBD-A595DB4D555F@gmail.com> <3C5C7075-BAA8-4D76-8749-3DB32412A20C@gmail.com> <0c6a9d9a-ca92-a9d8-506a-f8683e7eaa05@gmail.com> <420702503e86f8faf4cec8da3c79b775@livecode.com> Message-ID: If we buy an iPad, we are buying both the device and the services that go with it. To use a service, like iTunes, we are agreeing to operate by their rules. It seems acceptable for Apple to impose restrictions on use of their device and their services simply because people have the choice to agree to those terms or not. We are not forced to buy it. Basically, I don't complain about a closed ecosystem since I elected to partake of that system, especially since we have alternatives. Sent from my iPhone > On Aug 11, 2017, at 12:54 PM, Richmond Mathewson via use-livecode wrote: > > Well, I always drive below the speed limit and I always wear a seatbelt (and have always done so whether or not it was > a legal requirement in the country I happened to be living in at the time). > > This is not quite the same as keeping goats and hens in the back of your car (which was not illegal last time I looked). > > While keeping goats and hens in the car may prove extremely smelly it cannot be said to be unsafe > (unless one wants to drive the car with a nanny goat sitting on one's lap). > > Now putting a LiveCode standalone onto an iPad that does thing that Apple doesn't like isn't always the same thing as putting things onto an iPad that is unsafe. > > I'm absolutely sure that an awful lot of the creative potential of tablets is being lost because of unnecessary restrictions. > >> On 8/11/17 6:44 pm, Mark Waddingham via use-livecode wrote: >>> On 2017-08-11 16:44, Richmond Mathewson via use-livecode wrote: >>> I cannot quite see how people are prepared to go on buying Apple iPads when >>> there are such draconian restrictions as to what one can run on them. >>> >>> While the Android "thing" may not be much better, at last one can >>> side-load almost anything one wants. >> >> One can on iOS too - if you want to Jailbreak your device. Or, indeed, if you have a Apple dev account (which I believe are now free until you want to submit an app - someone please correct me if I'm wrong) you can put on it whatever you like. >> >>> There is a whole world of difference between a set of actions one >>> cannot do because of the >>> physical limitations of a thing and a set of actions one is not >>> allowed to do because a bunch of people >>> in California want to carry on mucking you around even after they ahve >>> successfully manipulated you into buying their >>> over-priced product. >> >> That might be true - but as much as these restrictions *might* be because the vendors 'want complete control of their walled garden to scalp us for cash', I honestly do think it is much more about ensuring these devices are *safe* for people to use in regards to all the very critical information we tend to hold on our devices. > > I don't see that, so much as the possibility that Apple and Google are scalping developers for cash; > and even that does not make much sense as they could still "scalp" if the restrictions were not so tight. > > I don't think the developers of these machines or their operating systems are worried that much about > the end-users' safety; surely they are more interested in keeping their shareholders happy. > >> >> It is important to remember that the majority of people who use mobile phones, tablets and computers use them like they do their car or washing machine. They have little interest in how the thing works, just that it does what they need to - does it well and does it safely. > > Yes, I am sure you are right. But, by imposing these restrictions they do not give the end-user a choice; and a world in which choice seems to be increasingly restricted is not good. > > It would seem that the use of over-regulation and over-restriction is a way of dodging the very heavy moral responsibility of teaching people to > make sensible decisions. >> >> Sure some people complain about seat-belts and speed limits but the reality is that those *legally enforceable requirements* make the roads a great deal safer for everyone. >> >> Warmest Regards, > > Not half as warm as over here in Bulgaria; hit 43 Centigrade today! >> >> Mark. >> > > Best, Richmond. > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From mark at livecode.com Fri Aug 11 13:18:14 2017 From: mark at livecode.com (Mark Waddingham) Date: Fri, 11 Aug 2017 19:18:14 +0200 Subject: [OT] Draconian computer company policies, was: Mobile LC Apps Downloading Stacks After installation In-Reply-To: References: <6C82BF40-3736-4B30-961F-2D0EC4F16D4C@hindu.org> <3aee2f40b156a12383e1c292515c0285@livecode.com> <3034E4FD-679E-4EAB-9BB8-5B8D37005184@gmail.com> <1b96f5da101f5648e7868aeeda2982a8@livecode.com> <001701d312a9$1f9e5700$5edb0500$@net> <7286E02C-F90F-40F9-8BBD-A595DB4D555F@gmail.com> <3C5C7075-BAA8-4D76-8749-3DB32412A20C@gmail.com> <0c6a9d9a-ca92-a9d8-506a-f8683e7eaa05@gmail.com> <420702503e86f8faf4cec8da3c79b775@livecode.com> Message-ID: On 2017-08-11 18:54, Richmond Mathewson via use-livecode wrote: > Now putting a LiveCode standalone onto an iPad that does thing that > Apple doesn't like isn't always the same thing as putting things onto > an iPad that is unsafe. I've already pointed out that you can put whatever you want onto *your* iPad or *your* iPhone - you just need an Apple Developer account, a provisioning profile and away you go. There are also numerous ways to share such apps with your friends and colleagues, or indeed anyone you like (beta test codes etc. - or just sending them the built app bundle which they can then resign to install themselves through Xcode onto their own devices). For organisations, it is also bypass the *consumer* AppStore - by having an organisation wide AppStore. Again, these come with no review or restrictions. The restrictions are about what your app is allowed to do when you submit to the *Consumer* Apple App Store - i.e. when you are making your app potentially available to millions of people. Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From richmondmathewson at gmail.com Fri Aug 11 13:22:17 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Fri, 11 Aug 2017 20:22:17 +0300 Subject: [OT] Draconian computer company policies, was: Mobile LC Apps Downloading Stacks After installation In-Reply-To: References: <6C82BF40-3736-4B30-961F-2D0EC4F16D4C@hindu.org> <3aee2f40b156a12383e1c292515c0285@livecode.com> <3034E4FD-679E-4EAB-9BB8-5B8D37005184@gmail.com> <1b96f5da101f5648e7868aeeda2982a8@livecode.com> <001701d312a9$1f9e5700$5edb0500$@net> <7286E02C-F90F-40F9-8BBD-A595DB4D555F@gmail.com> <3C5C7075-BAA8-4D76-8749-3DB32412A20C@gmail.com> <0c6a9d9a-ca92-a9d8-506a-f8683e7eaa05@gmail.com> <420702503e86f8faf4cec8da3c79b775@livecode.com> Message-ID: On 8/11/17 8:18 pm, Mark Waddingham via use-livecode wrote: > On 2017-08-11 18:54, Richmond Mathewson via use-livecode wrote: >> Now putting a LiveCode standalone onto an iPad that does thing that >> Apple doesn't like isn't always the same thing as putting things onto >> an iPad that is unsafe. > > I've already pointed out that you can put whatever you want onto > *your* iPad or *your* iPhone - you just need an Apple Developer > account, a provisioning profile and away you go. There are also > numerous ways to share such apps with your friends and colleagues, or > indeed anyone you like (beta test codes etc. - or just sending them > the built app bundle which they can then resign to install themselves > through Xcode onto their own devices). > > For organisations, it is also bypass the *consumer* AppStore - by > having an organisation wide AppStore. Again, these come with no review > or restrictions. > > The restrictions are about what your app is allowed to do when you > submit to the *Consumer* Apple App Store - i.e. when you are making > your app potentially available to millions of people. So, I wonder why there is not a way of putting one's iPad app onot the web in a way (and I don't mean via Cydia) that will allow people to download it onto their tablets independently, as one can do on an Android device? Therefore allowing those "millions" of people (i.e. the 25 who are interested in "Fred Flintstone's" app) the abi;lity to choose for themselves. Richmond. > > Warmest Regards, > > Mark. > From roger.e.eller at sealedair.com Fri Aug 11 13:24:36 2017 From: roger.e.eller at sealedair.com (Roger Eller) Date: Fri, 11 Aug 2017 13:24:36 -0400 Subject: Update: Crash with mobilePickPhoto and Android In-Reply-To: <15dd223c590.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> References: <080813D5-8C6E-4AD0-BB04-8C2E54CB66B9@clearvisiontech.com> <15dd223c590.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Message-ID: Also, you shouldn't have to use a workaround just because it is Android. The mobile syntax should work the same for either OS. ~Roger On Fri, Aug 11, 2017 at 12:32 PM, J. Landman Gay via use-livecode < use-livecode at lists.runrev.com> wrote: > This needs a bug report. Crashes are high priority fixes. > -- > Jacqueline Landman Gay | jacque at hyperactivesw.com > HyperActive Software | http://www.hyperactivesw.com > > > > > On August 11, 2017 10:17:35 AM Dan Friedman via use-livecode < > use-livecode at lists.runrev.com> wrote: > > For those who may be interested, here?s a fun one? >> >> If acceleratedRendering is enabled, mobilePickPhoto will crash the app on >> Android. Here?s your workaround: >> >> set the acceleratedRendering of stack "main" to false >> mobilePickPhoto "camera" >> set the acceleratedRendering of stack "main" to true >> >> Perhaps LC will fix this or add this limitation to the documentation. >> >> -Dan >> >> >> Hello! Having some trouble with mobilePickPhoto on an Android device. >>>> I call mobilePickPhoto "library" >>>> (or mobilePickPhoto "camera") and I can choose the photo or take the >>>> picture, but as soon as I accept the >>>> image (when LC should have control again) the app crashes with the >>>> prompt ?[appName] has stopped?. >>>> LC 8.1.5, Moto g5 Plus running Android 7.0. Any thoughts? >>>> >>>> Any assistance would be GREATLY appreciated! >>>> >>>> -Dan >>>> >>> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> > > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From mark at livecode.com Fri Aug 11 13:24:54 2017 From: mark at livecode.com (Mark Waddingham) Date: Fri, 11 Aug 2017 19:24:54 +0200 Subject: [OT] Draconian computer company policies, was: Mobile LC Apps Downloading Stacks After installation In-Reply-To: <598DE035.4010507@pair.com> References: <0c6a9d9a-ca92-a9d8-506a-f8683e7eaa05@gmail.com> <598DE035.4010507@pair.com> Message-ID: On 2017-08-11 18:49, Curry Kenworthy via use-livecode wrote: > Richmond, this may be rare but I'm 100% in agreement with you! My > device, my management. I don't have the right to do something illegal > or endanger others, but otherwise, I call the shots. Indeed - you are free to do whatever you want with your device. You can JailBreak it for a start - you won't be able to use the Apple AppStore, because if they were to allow that it punches a large whole in the 'security blanket' (however thin it might be) that the locked-down device + 'controlled' AppStore environment Apple provide. > For virus and malware in particular, yes. But that type of safety > could be achieved in other specific ways. This system is primarily > about control - a lot of it is financial, some perhaps even > ideological. Safety is also a big component of the system, but not the > defining one. What other specific ways? The best defense against virii and malware is to minimize the surface area of vulnerabilities - there is simply no better way. The less 'holes' which can be exploited, the less exploits that can exist. I think Johnathan made the best point here - if you want into the iOS world and the AppStore Apple provide you have to abide by their rules. However, if you don't care about the AppStore, then just jailbreak your phone and run free - no-one is stopping you. It is entirely your choice :) Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From mark at livecode.com Fri Aug 11 13:28:53 2017 From: mark at livecode.com (Mark Waddingham) Date: Fri, 11 Aug 2017 19:28:53 +0200 Subject: [OT] Draconian computer company policies, was: Mobile LC Apps Downloading Stacks After installation In-Reply-To: References: <6C82BF40-3736-4B30-961F-2D0EC4F16D4C@hindu.org> <3aee2f40b156a12383e1c292515c0285@livecode.com> <3034E4FD-679E-4EAB-9BB8-5B8D37005184@gmail.com> <1b96f5da101f5648e7868aeeda2982a8@livecode.com> <001701d312a9$1f9e5700$5edb0500$@net> <7286E02C-F90F-40F9-8BBD-A595DB4D555F@gmail.com> <3C5C7075-BAA8-4D76-8749-3DB32412A20C@gmail.com> <0c6a9d9a-ca92-a9d8-506a-f8683e7eaa05@gmail.com> <420702503e86f8faf4cec8da3c79b775@livecode.com> Message-ID: On 2017-08-11 19:22, Richmond Mathewson via use-livecode wrote: > So, I wonder why there is not a way of putting one's iPad app onot the > web in a way (and I don't mean via Cydia) > that will allow people to download it onto their tablets > independently, as one can do on an Android device? There is - you build your app signed with your provisioning profile. You upload it. Someone else downloads it, and resigns it with there's. I'm sure there must be a utility out there which makes this 'easy' - it certainly seems simple enough to me - okay so not a nice 'store' type interface on your phone; you need to attach it to a computer. However, that is just a small wall to step over. Of course, it is contigent on having a Apple developer account but I'm pretty sure these days you don't need to pay the $99 unless you want to submit an app.... Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From dochawk at gmail.com Fri Aug 11 13:29:41 2017 From: dochawk at gmail.com (Dr. Hawkins) Date: Fri, 11 Aug 2017 10:29:41 -0700 Subject: [OT] Draconian computer company policies, was: Mobile LC Apps Downloading Stacks After installation In-Reply-To: References: <6C82BF40-3736-4B30-961F-2D0EC4F16D4C@hindu.org> <3aee2f40b156a12383e1c292515c0285@livecode.com> <3034E4FD-679E-4EAB-9BB8-5B8D37005184@gmail.com> <1b96f5da101f5648e7868aeeda2982a8@livecode.com> <001701d312a9$1f9e5700$5edb0500$@net> <7286E02C-F90F-40F9-8BBD-A595DB4D555F@gmail.com> <3C5C7075-BAA8-4D76-8749-3DB32412A20C@gmail.com> <0c6a9d9a-ca92-a9d8-506a-f8683e7eaa05@gmail.com> <420702503e86f8faf4cec8da3c79b775@livecode.com> Message-ID: On Fri, Aug 11, 2017 at 9:54 AM, Richmond Mathewson via use-livecode < use-livecode at lists.runrev.com> wrote: > Well, I always drive below the speed limit and I always wear a seatbelt > (and have always done so whether or not it was > a legal requirement in the country I happened to be living in at the time). > I won't leave the driveway without a seat belt, but if you drive below the posted speed around here, you better check your medical insurance first . . . With our new law, our Highway Patrol is actually citing people now for driving below the posted speed in the left lane . . . > > This is not quite the same as keeping goats and hens in the back of your > car (which was not illegal last time I looked). > > While keeping goats and hens in the car may prove extremely smelly it Both would be quite heavy objects to be flying around in a collision . . -- Dr. Richard E. Hawkins, Esq. (702) 508-8462 From roger.e.eller at sealedair.com Fri Aug 11 13:38:51 2017 From: roger.e.eller at sealedair.com (Roger Eller) Date: Fri, 11 Aug 2017 13:38:51 -0400 Subject: [OT] Draconian computer company policies, was: Mobile LC Apps Downloading Stacks After installation In-Reply-To: References: <6C82BF40-3736-4B30-961F-2D0EC4F16D4C@hindu.org> <3aee2f40b156a12383e1c292515c0285@livecode.com> <3034E4FD-679E-4EAB-9BB8-5B8D37005184@gmail.com> <1b96f5da101f5648e7868aeeda2982a8@livecode.com> <001701d312a9$1f9e5700$5edb0500$@net> <7286E02C-F90F-40F9-8BBD-A595DB4D555F@gmail.com> <3C5C7075-BAA8-4D76-8749-3DB32412A20C@gmail.com> <0c6a9d9a-ca92-a9d8-506a-f8683e7eaa05@gmail.com> <420702503e86f8faf4cec8da3c79b775@livecode.com> Message-ID: On Fri, Aug 11, 2017 at 1:28 PM, Mark Waddingham via use-livecode < use-livecode at lists.runrev.com> wrote: > On 2017-08-11 19:22, Richmond Mathewson via use-livecode wrote: > >> So, I wonder why there is not a way of putting one's iPad app onot the >> web in a way (and I don't mean via Cydia) >> that will allow people to download it onto their tablets >> independently, as one can do on an Android device? >> > > There is - you build your app signed with your provisioning profile. You > upload it. Someone else downloads it, and resigns it with there's. > > I'm sure there must be a utility out there which makes this 'easy' - it > certainly seems simple enough to me - okay so not a nice 'store' type > interface on your phone; you need to attach it to a computer. However, that > is just a small wall to step over. > > Of course, it is contigent on having a Apple developer account but I'm > pretty sure these days you don't need to pay the $99 unless you want to > submit an app.... > Um, and a Mac. Some iOS device owners have PCs, and therefore no access to Xcode. > > Warmest Regards, > > Mark. > > -- > Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ > LiveCode: Everyone can create apps ~Roger From richmondmathewson at gmail.com Fri Aug 11 14:03:31 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Fri, 11 Aug 2017 21:03:31 +0300 Subject: [OT] Draconian computer company policies, was: Mobile LC Apps Downloading Stacks After installation In-Reply-To: References: <6C82BF40-3736-4B30-961F-2D0EC4F16D4C@hindu.org> <3aee2f40b156a12383e1c292515c0285@livecode.com> <3034E4FD-679E-4EAB-9BB8-5B8D37005184@gmail.com> <1b96f5da101f5648e7868aeeda2982a8@livecode.com> <001701d312a9$1f9e5700$5edb0500$@net> <7286E02C-F90F-40F9-8BBD-A595DB4D555F@gmail.com> <3C5C7075-BAA8-4D76-8749-3DB32412A20C@gmail.com> <0c6a9d9a-ca92-a9d8-506a-f8683e7eaa05@gmail.com> <420702503e86f8faf4cec8da3c79b775@livecode.com> Message-ID: <973602c9-1bed-43ac-190e-4ef03376d856@gmail.com> Wow, Roger! You have "out devil's advocated me". Hope you have a great weekend. Richmond. On 8/11/17 8:38 pm, Roger Eller via use-livecode wrote: > On Fri, Aug 11, 2017 at 1:28 PM, Mark Waddingham via use-livecode < > use-livecode at lists.runrev.com> wrote: > >> On 2017-08-11 19:22, Richmond Mathewson via use-livecode wrote: >> >>> So, I wonder why there is not a way of putting one's iPad app onot the >>> web in a way (and I don't mean via Cydia) >>> that will allow people to download it onto their tablets >>> independently, as one can do on an Android device? >>> >> There is - you build your app signed with your provisioning profile. You >> upload it. Someone else downloads it, and resigns it with there's. >> >> I'm sure there must be a utility out there which makes this 'easy' - it >> certainly seems simple enough to me - okay so not a nice 'store' type >> interface on your phone; you need to attach it to a computer. However, that >> is just a small wall to step over. >> >> Of course, it is contigent on having a Apple developer account but I'm >> pretty sure these days you don't need to pay the $99 unless you want to >> submit an app.... >> > Um, and a Mac. Some iOS device owners have PCs, and therefore no access to > Xcode. > > >> Warmest Regards, >> >> Mark. >> >> -- >> Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ >> LiveCode: Everyone can create apps > > > ~Roger > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From roger.e.eller at sealedair.com Fri Aug 11 14:52:07 2017 From: roger.e.eller at sealedair.com (Roger Eller) Date: Fri, 11 Aug 2017 14:52:07 -0400 Subject: [OT] Draconian computer company policies, was: Mobile LC Apps Downloading Stacks After installation In-Reply-To: <973602c9-1bed-43ac-190e-4ef03376d856@gmail.com> References: <6C82BF40-3736-4B30-961F-2D0EC4F16D4C@hindu.org> <3aee2f40b156a12383e1c292515c0285@livecode.com> <3034E4FD-679E-4EAB-9BB8-5B8D37005184@gmail.com> <1b96f5da101f5648e7868aeeda2982a8@livecode.com> <001701d312a9$1f9e5700$5edb0500$@net> <7286E02C-F90F-40F9-8BBD-A595DB4D555F@gmail.com> <3C5C7075-BAA8-4D76-8749-3DB32412A20C@gmail.com> <0c6a9d9a-ca92-a9d8-506a-f8683e7eaa05@gmail.com> <420702503e86f8faf4cec8da3c79b775@livecode.com> <973602c9-1bed-43ac-190e-4ef03376d856@gmail.com> Message-ID: You too, Richmond! I agree with you that it's more about Apple greed than making a safe, malware-free environment. Stay safe from the Kool-ade. :) Kind regards, ~Roger Roger Eller Graphics Systems Analyst 803 North Maple Street P: 864.967.1625 Simpsonville, SC 29681 C: 864.908.0337 SealedAir.com Roger.E.Eller at SealedAir.com On Fri, Aug 11, 2017 at 2:03 PM, Richmond Mathewson via use-livecode < use-livecode at lists.runrev.com> wrote: > Wow, Roger! > > You have "out devil's advocated me". > > Hope you have a great weekend. > > Richmond. > > > On 8/11/17 8:38 pm, Roger Eller via use-livecode wrote: > >> On Fri, Aug 11, 2017 at 1:28 PM, Mark Waddingham via use-livecode < >> use-livecode at lists.runrev.com> wrote: >> >> On 2017-08-11 19:22, Richmond Mathewson via use-livecode wrote: >>> >>> So, I wonder why there is not a way of putting one's iPad app onot the >>>> web in a way (and I don't mean via Cydia) >>>> that will allow people to download it onto their tablets >>>> independently, as one can do on an Android device? >>>> >>>> There is - you build your app signed with your provisioning profile. You >>> upload it. Someone else downloads it, and resigns it with there's. >>> >>> I'm sure there must be a utility out there which makes this 'easy' - it >>> certainly seems simple enough to me - okay so not a nice 'store' type >>> interface on your phone; you need to attach it to a computer. However, >>> that >>> is just a small wall to step over. >>> >>> Of course, it is contigent on having a Apple developer account but I'm >>> pretty sure these days you don't need to pay the $99 unless you want to >>> submit an app.... >>> >>> Um, and a Mac. Some iOS device owners have PCs, and therefore no access >> to >> Xcode. >> >> >> Warmest Regards, >>> >>> Mark. >>> >>> -- >>> Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ >>> LiveCode: Everyone can create apps >>> >> >> >> ~Roger >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From brahma at hindu.org Fri Aug 11 15:21:09 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Fri, 11 Aug 2017 19:21:09 +0000 Subject: Mobile LC Apps Downloading Stacks After installation In-Reply-To: <3aee2f40b156a12383e1c292515c0285@livecode.com> References: <6C82BF40-3736-4B30-961F-2D0EC4F16D4C@hindu.org> <3aee2f40b156a12383e1c292515c0285@livecode.com> Message-ID: Mark, thanks for the thorough explanation. I would go on record to say that "vision" for our use of such post/sideloading option would fall well within th UI/UX of the existing app, since, from a design point of view our goals would want it to be virtually transparent. That said, the CMS can get a bit snakey over time, and possibly a better way to go, at least in our context of wanting to add on new modules, would be to bundle the LC binary/views/script into updates that would be reviewed and then post download only image-sounds-words-jsons-assets.gz bundles. unpack these and then binary uses them? This then allow us to add more to the app without adding more MB to the package size (since these LC binaries as pure view can be as small as 50 K) and then we just use side loading for what really *is* only *data* this would be playing it very safe, and in someways, guard against ad hoc dev CMS which is too easy to do with LC BR On 8/10/17, 9:56 PM, "use-livecode on behalf of Mark Waddingham via use-livecode" wrote: Taken from this point of view, and looking at very successful Apps (typically games) in the stores then you are probably fine if your stackfiles have data/code in them which parameterize the *existing* actions of the main app in reasonably limited ways. So, for example, providing levels to a game where some parts require computations of expressions or triggering of particular events - as long as those levels are consistent with 'what the game is meant to do' (i.e. you don't make it do anything different from what it did with the levels bundled with the original submitted app). This model applies to any sort of 'content player' - language learning flash cards or lessons would be similar - you just have to be careful to make sure you don't end up expanding the ability of the main app in a way which is not directly 'seeable' in the original submitted app. From curry at pair.com Fri Aug 11 16:43:07 2017 From: curry at pair.com (Curry Kenworthy) Date: Fri, 11 Aug 2017 16:43:07 -0400 Subject: [OT] Draconian computer company policies, was: Mobile LC Apps Downloading Stacks After installation In-Reply-To: References: Message-ID: <598E16DB.8080506@pair.com> Mark: > I think Johnathan made the best point here - if you want into the > iOS world and the AppStore Apple provide you have to abide by their > rules. However, if you don't care about the AppStore, then just > jailbreak your phone and run free - no-one is stopping you. > It is entirely your choice :) No, it's not merely a personal matter by any stretch of the imagination. This is a social and tech reality that affects all of us, our technological environment. You are framing this as primarily a security matter to save the masses, with a handy personal jail break or xCode opt-out that solves the matter for any individual who feels differently. (No thanks on JB, nor do I generally recommend that to others. Nor is my interest mainly personal, but rather as a consultant and developer. I doubt most true end users feel comfy with xCode, assuming they even have a Mac.) Sorry, I tend to be a frame breaker! It's missing out on the bigger picture of Apple's system, and similarly the impact of tech trends, not only from Apple but other major players. Much more complex, and it affects us far beyond our own choices. While someone here is waxing poetic about the security benefits, at one time or another someone has likely iPhoned that person's own data around insecurely in ways that would alarm you! Perhaps it has happened to you too without your knowledge. I've seen it too many times, very widespread. Often by people working for a reputable company or providing a vital professional service, but clueless or careless. Neither is the data completely secure even with companies that are more careful - the masses don't realize that. At the same time people are desensitized to sharing more data than ever. That makes them - and through them, sometimes you - very vulnerable. Security goes way beyond malware. Security is an integral part of Apple's system, but it's not a system primarily for the sake of security. Fairly easy to have safe apps outside of a particular app store. One way would be setting up other download repositories that are checked. Another is using networked antivirus systems, which are already popular and advanced. Going beyond security - breaking that frame again - it's much bigger. Richmond already had some good points, so maybe I don't need to add any, but for example: Actual publishing standards and choices are not all about security, quality, decency, and good style as advertised. Marketing versus reality. What viewpoints, topics, or potentially beneficial technologies might be suppressed? That would not be a big deal when there are multiple venues, but when there is one.... The whole society is also affected by tech trends, and the circle goes around, consumer behavior and choices, how professionals use and sometimes misuse the tech (I'm seeing that too, it can be within the law but extremely harmful for consumers), data expectations and proliferation, over-availability or under-availability of information, control, ideology, intrusive or invasive trends, healthy awareness and ability versus dangerous dumbing down and complacency, more comprehensive security versus a sense of security or partial security, the effects of dependency on a single venue and its viewpoint and its quirks - in the end, everyone is touched. Perceiving how technology trends impact society, and in turn come back to impact each of us, is very valuable and all too easy to overlook as we rush to keep up with those trends and create new ones. Definitely worth a look for those who don't want to avoid one type of risk only to fall into another! Stay safe. Hope everyone is doing well -- I haven't been able to pop up much here in the list lately. Best wishes, Curry Kenworthy Custom Software Development http://curryk.com/consulting/ From jacque at hyperactivesw.com Fri Aug 11 16:44:01 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Fri, 11 Aug 2017 15:44:01 -0500 Subject: [OT] Draconian computer company policies, was: Mobile LC Apps Downloading Stacks After installation In-Reply-To: References: <6C82BF40-3736-4B30-961F-2D0EC4F16D4C@hindu.org> <3aee2f40b156a12383e1c292515c0285@livecode.com> <3034E4FD-679E-4EAB-9BB8-5B8D37005184@gmail.com> <1b96f5da101f5648e7868aeeda2982a8@livecode.com> <001701d312a9$1f9e5700$5edb0500$@net> <7286E02C-F90F-40F9-8BBD-A595DB4D555F@gmail.com> <3C5C7075-BAA8-4D76-8749-3DB32412A20C@gmail.com> <0c6a9d9a-ca92-a9d8-506a-f8683e7eaa05@gmail.com> <420702503e86f8faf4cec8da3c79b775@livecode.com> Message-ID: <8c5d88f2-a03c-316c-af7a-a1fce3428a6b@hyperactivesw.com> On 8/11/17 10:51 AM, Dr. Hawkins via use-livecode wrote: > I'd be tempted to switch to an android (I actually had the original > gphone), but the privacy, hacks, and whathaveyou stop me. At the risk of starting a platform war... I love my Mac but I don't like iOS. It's too dumbed down to be useful. Android has many advantages over iOS, the main one being that it has an accessible file system like the Mac Finder (which I see iOS is about to implement finally.) Not to mention launcher widgets, which I can't live without, dozens of different launcher app options, and the ability to customize almost anything the phone can do. It has menus and tooltips so you don't have to memorize obscure gestures. Android Assistant is more intelligent than Siri. Google provides unlimited photo storage without data caps and uses intelligent algorithms to find photos without the need for content tagging. There are multiple apps for any purpose so you aren't required to use a single authorized browser, email client, or anything else. I have three browsers on my phone and four keyboards for different purposes. I had to laugh when Apple finally allowed third-party keyboards. It's a start. (Try SwiftKey, its prediction algorithms are the smartest anywhere and it is now available for iOS.) While Android malware is somewhat more prevalent than iOS, the actual risks are exaggerated. Google has taken aggressive steps to reduce occurances, which is only a tiny fraction of one percent anyway. There are nine layers of security checks for every app you install. If you stick to the authorized app stores you won't have trouble since almost all malware comes from third-party downloads. Android also scans your apps in the background even if you didn't download from their store, and recently added a manual scan so you can check on demand. I've had 8 Android devices over the years and never had any malware. Privacy: Google gives you more control than Apple. You can delete all or part of the data it stores at any time. You can control what it collects. The trade-off, in my view, is worth the data collection. (One advantage of multiple browsers is when I don't want Google to track my searches I just don't use Chrome.) Android Now is close to psychic, volunteering information I want without my asking. I walked out of a theater one night and Android offered a map showing me where I'd parked. I didn't have to ask, it was just there. You can turn off these things but I find them useful. If you don't want Google to know where you are, turn off location services. I see Google as the pioneer that Apple used to be, and in fact, Apple has started adopting popular Android features and claiming them as their own (Windows 1.0 anyone?) Most of the upcoming iOS 11 features Apple is bragging about incorporate Android features, most of which have been around for years: Notification system, document scanning, Finder-like file system, drag and drop files to local storage or cloud services, language translations, System UI Tuner ("customizable control center",) advanced camera control apps, Android Beam ("AirDrop"), app drawer, customizable Do Not Disturb, peer-to-peer Android Pay/Wallet ("Apple Pay",) Swapps ("persistent Dock".) Apple says Siri now learns from you and syncs across devices. Android has always done that. Etc. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com From monte at appisle.net Fri Aug 11 17:46:23 2017 From: monte at appisle.net (Monte Goulding) Date: Sat, 12 Aug 2017 07:46:23 +1000 Subject: common code patterns In-Reply-To: <1dc049c849d8a5e7e123b391890d7166@livecode.com> References: <004501d311f5$592fc940$0b8f5bc0$@net> <765F1581-ADB6-4BE5-ADF5-BB616F2D489A@byu.edu> <005e01d311ff$7c4c6370$74e52a50$@net> <5d0eb575eb329262a1aceb34ec1e5aaf@livecode.com> <54e031f7-7971-1b5b-c06b-fdf671b1ac5d@sonic.net> <1dc049c849d8a5e7e123b391890d7166@livecode.com> Message-ID: <1B579825-6907-4D07-ABCE-11B993BA4B80@appisle.net> > On 12 Aug 2017, at 1:37 am, Mark Waddingham via use-livecode wrote: > > So, let me rephrase - what are the use-cases people can see for allowing (some variant of): > > repeat ... with counter tCounter starting from tStart Hmm?. what about: repeat for each line tLine in line 5 to -1 of tLines with counter tCounter starting from 5 BTW if we ever do this could the following be ordered if the array is a 1..N sequence? I?m not really sure if repeat for each element is ordered in any way currently. repeat for each element tElement in tArray with counter tCounter I guess we could have more explicit syntax here which might be more flexible too repeat for each element tElement and key tKey in tArray ordered numeric ascending Cheers Monte From roger.e.eller at sealedair.com Fri Aug 11 17:55:25 2017 From: roger.e.eller at sealedair.com (Roger Eller) Date: Fri, 11 Aug 2017 17:55:25 -0400 Subject: [OT] Draconian computer company policies, was: Mobile LC Apps Downloading Stacks After installation In-Reply-To: References: <6C82BF40-3736-4B30-961F-2D0EC4F16D4C@hindu.org> <3aee2f40b156a12383e1c292515c0285@livecode.com> <3034E4FD-679E-4EAB-9BB8-5B8D37005184@gmail.com> <1b96f5da101f5648e7868aeeda2982a8@livecode.com> <001701d312a9$1f9e5700$5edb0500$@net> <7286E02C-F90F-40F9-8BBD-A595DB4D555F@gmail.com> <3C5C7075-BAA8-4D76-8749-3DB32412A20C@gmail.com> <0c6a9d9a-ca92-a9d8-506a-f8683e7eaa05@gmail.com> <420702503e86f8faf4cec8da3c79b775@livecode.com> <8c5d88f2-a03c-316c-af7a-a1fce3428a6b@hyperactivesw.com> Message-ID: I recently heard that Apple is planning a revolutionary smartwatch which has calling functions built-in. Seriously, no need to carry a phone! Now Google it and see how many of these have existed for several years. Revolutionary idea stealin' bunch! lol ~Roger On Aug 11, 2017 4:44 PM, "J. Landman Gay via use-livecode" < use-livecode at lists.runrev.com> wrote: On 8/11/17 10:51 AM, Dr. Hawkins via use-livecode wrote: > I'd be tempted to switch to an android (I actually had the original > gphone), but the privacy, hacks, and whathaveyou stop me. > At the risk of starting a platform war... I love my Mac but I don't like iOS. It's too dumbed down to be useful. Android has many advantages over iOS, the main one being that it has an accessible file system like the Mac Finder (which I see iOS is about to implement finally.) Not to mention launcher widgets, which I can't live without, dozens of different launcher app options, and the ability to customize almost anything the phone can do. It has menus and tooltips so you don't have to memorize obscure gestures. Android Assistant is more intelligent than Siri. Google provides unlimited photo storage without data caps and uses intelligent algorithms to find photos without the need for content tagging. There are multiple apps for any purpose so you aren't required to use a single authorized browser, email client, or anything else. I have three browsers on my phone and four keyboards for different purposes. I had to laugh when Apple finally allowed third-party keyboards. It's a start. (Try SwiftKey, its prediction algorithms are the smartest anywhere and it is now available for iOS.) While Android malware is somewhat more prevalent than iOS, the actual risks are exaggerated. Google has taken aggressive steps to reduce occurances, which is only a tiny fraction of one percent anyway. There are nine layers of security checks for every app you install. If you stick to the authorized app stores you won't have trouble since almost all malware comes from third-party downloads. Android also scans your apps in the background even if you didn't download from their store, and recently added a manual scan so you can check on demand. I've had 8 Android devices over the years and never had any malware. Privacy: Google gives you more control than Apple. You can delete all or part of the data it stores at any time. You can control what it collects. The trade-off, in my view, is worth the data collection. (One advantage of multiple browsers is when I don't want Google to track my searches I just don't use Chrome.) Android Now is close to psychic, volunteering information I want without my asking. I walked out of a theater one night and Android offered a map showing me where I'd parked. I didn't have to ask, it was just there. You can turn off these things but I find them useful. If you don't want Google to know where you are, turn off location services. I see Google as the pioneer that Apple used to be, and in fact, Apple has started adopting popular Android features and claiming them as their own (Windows 1.0 anyone?) Most of the upcoming iOS 11 features Apple is bragging about incorporate Android features, most of which have been around for years: Notification system, document scanning, Finder-like file system, drag and drop files to local storage or cloud services, language translations, System UI Tuner ("customizable control center",) advanced camera control apps, Android Beam ("AirDrop"), app drawer, customizable Do Not Disturb, peer-to-peer Android Pay/Wallet ("Apple Pay",) Swapps ("persistent Dock".) Apple says Siri now learns from you and syncs across devices. Android has always done that. Etc. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode From monte at appisle.net Fri Aug 11 17:58:40 2017 From: monte at appisle.net (Monte Goulding) Date: Sat, 12 Aug 2017 07:58:40 +1000 Subject: Speed of control lookup (Was Re: Parent of Target) In-Reply-To: References: Message-ID: <831B7861-DDB4-4A1C-A40B-CFC5BE05194F@appisle.net> > On 12 Aug 2017, at 1:23 am, Mark Waddingham via use-livecode wrote: > > It has also suggested (to me, at least) a slightly different approach - we make the return value of the 'long id' property of objects what you might call a StringyLongId value. Instead of returning a string: > > button id 1003 of group id 1004 of card id 1002 of stack "MyStackName" > > It would be a value which acts like a string, but internally stores: > > [ BUTTON, 1003, [ 1004 ], 1002, "MyStackName" ] Hmm? Would it be a good idea to create a new ID form with the bare minimum to identify an object. Say: id of card id of stack ?? Although I guess unplaced groups would need just id of stack ?? That would mean speed improvements could be done on an object reference that is relatively robust to changes in the object tree and unless you are creating an IDE you would be very unlikely to need to do the LCB object reference repository thing. Cheers Monte From MikeKerner at roadrunner.com Fri Aug 11 17:59:17 2017 From: MikeKerner at roadrunner.com (Mike Kerner) Date: Fri, 11 Aug 2017 17:59:17 -0400 Subject: common code patterns In-Reply-To: <1B579825-6907-4D07-ABCE-11B993BA4B80@appisle.net> References: <004501d311f5$592fc940$0b8f5bc0$@net> <765F1581-ADB6-4BE5-ADF5-BB616F2D489A@byu.edu> <005e01d311ff$7c4c6370$74e52a50$@net> <5d0eb575eb329262a1aceb34ec1e5aaf@livecode.com> <54e031f7-7971-1b5b-c06b-fdf671b1ac5d@sonic.net> <1dc049c849d8a5e7e123b391890d7166@livecode.com> <1B579825-6907-4D07-ABCE-11B993BA4B80@appisle.net> Message-ID: That is not easier to read. On Fri, Aug 11, 2017 at 5:46 PM, Monte Goulding via use-livecode < use-livecode at lists.runrev.com> wrote: > > > On 12 Aug 2017, at 1:37 am, Mark Waddingham via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > > So, let me rephrase - what are the use-cases people can see for allowing > (some variant of): > > > > repeat ... with counter tCounter starting from tStart > > Hmm?. what about: > > repeat for each line tLine in line 5 to -1 of tLines with counter tCounter > starting from 5 > > BTW if we ever do this could the following be ordered if the array is a > 1..N sequence? I?m not really sure if repeat for each element is ordered in > any way currently. > > repeat for each element tElement in tArray with counter tCounter > > I guess we could have more explicit syntax here which might be more > flexible too > > repeat for each element tElement and key tKey in tArray ordered numeric > ascending > > Cheers > > Monte > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > -- On the first day, God created the heavens and the Earth On the second day, God created the oceans. On the third day, God put the animals on hold for a few hours, and did a little diving. And God said, "This is good." From ahsoftware at sonic.net Fri Aug 11 18:00:42 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Fri, 11 Aug 2017 15:00:42 -0700 Subject: [OT] Draconian computer company policies, was: Mobile LC Apps Downloading Stacks After installation In-Reply-To: <8c5d88f2-a03c-316c-af7a-a1fce3428a6b@hyperactivesw.com> References: <6C82BF40-3736-4B30-961F-2D0EC4F16D4C@hindu.org> <3aee2f40b156a12383e1c292515c0285@livecode.com> <3034E4FD-679E-4EAB-9BB8-5B8D37005184@gmail.com> <1b96f5da101f5648e7868aeeda2982a8@livecode.com> <001701d312a9$1f9e5700$5edb0500$@net> <7286E02C-F90F-40F9-8BBD-A595DB4D555F@gmail.com> <3C5C7075-BAA8-4D76-8749-3DB32412A20C@gmail.com> <0c6a9d9a-ca92-a9d8-506a-f8683e7eaa05@gmail.com> <420702503e86f8faf4cec8da3c79b775@livecode.com> <8c5d88f2-a03c-316c-af7a-a1fce3428a6b@hyperactivesw.com> Message-ID: <16d19dea-cecf-d7c6-314d-e8b9fe45bc4d@sonic.net> On 08/11/2017 01:44 PM, J. Landman Gay via use-livecode wrote: > At the risk of starting a platform war. No platform war on my part. I hate operating systems. Linux comes closest to what I want because I can configure it, it (mostly) doesn't keep dumbing down the interface and (mostly) doesn't try to tell me what I can have or try to be more in touch with what I want than I am. > searches I just don't use Chrome.) Android Now is close to psychic, > volunteering information I want without my asking. I walked out of a > theater one night and Android offered a map showing me where I'd parked. > I didn't have to ask, it was just there. You can turn off these things > but I find them useful. If you don't want Google to know where you are, > turn off location services. The scary part of that, of course, is that (Google in this case, but feel free to insert whatever mobile OS or government agency you want) knows exactly where you are. -- Mark Wieder ahsoftware at gmail.com From ahsoftware at sonic.net Fri Aug 11 18:06:56 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Fri, 11 Aug 2017 15:06:56 -0700 Subject: common code patterns In-Reply-To: <1B579825-6907-4D07-ABCE-11B993BA4B80@appisle.net> References: <004501d311f5$592fc940$0b8f5bc0$@net> <765F1581-ADB6-4BE5-ADF5-BB616F2D489A@byu.edu> <005e01d311ff$7c4c6370$74e52a50$@net> <5d0eb575eb329262a1aceb34ec1e5aaf@livecode.com> <54e031f7-7971-1b5b-c06b-fdf671b1ac5d@sonic.net> <1dc049c849d8a5e7e123b391890d7166@livecode.com> <1B579825-6907-4D07-ABCE-11B993BA4B80@appisle.net> Message-ID: On 08/11/2017 02:46 PM, Monte Goulding via use-livecode wrote: > I guess we could have more explicit syntax here which might be more flexible too > > repeat for each element tElement and key tKey in tArray ordered numeric ascending I must be channeling Mark Waddingham here... I'm worried that the syntax is borderline not-xtalky. For instance, it's not obvious from looking at that whether tElement or tKey is sorted numerically. By guess is that you intend tKey to be sorted. -- Mark Wieder ahsoftware at gmail.com From ahsoftware at sonic.net Fri Aug 11 18:08:16 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Fri, 11 Aug 2017 15:08:16 -0700 Subject: common code patterns In-Reply-To: References: <004501d311f5$592fc940$0b8f5bc0$@net> <765F1581-ADB6-4BE5-ADF5-BB616F2D489A@byu.edu> <005e01d311ff$7c4c6370$74e52a50$@net> <5d0eb575eb329262a1aceb34ec1e5aaf@livecode.com> <54e031f7-7971-1b5b-c06b-fdf671b1ac5d@sonic.net> <1dc049c849d8a5e7e123b391890d7166@livecode.com> <1B579825-6907-4D07-ABCE-11B993BA4B80@appisle.net> Message-ID: On 08/11/2017 02:59 PM, Mike Kerner via use-livecode wrote: > That is not easier to read. Heh. Mike beat me to it. -- Mark Wieder ahsoftware at gmail.com From ahsoftware at sonic.net Fri Aug 11 18:11:05 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Fri, 11 Aug 2017 15:11:05 -0700 Subject: Speed of control lookup (Was Re: Parent of Target) In-Reply-To: <831B7861-DDB4-4A1C-A40B-CFC5BE05194F@appisle.net> References: <831B7861-DDB4-4A1C-A40B-CFC5BE05194F@appisle.net> Message-ID: <37b883fc-7efa-ef25-15e0-b7346d559ca7@sonic.net> On 08/11/2017 02:58 PM, Monte Goulding via use-livecode wrote: > Hmm? Would it be a good idea to create a new ID form with the bare minimum to identify an object. UUID -- Mark Wieder ahsoftware at gmail.com From monte at appisle.net Fri Aug 11 18:17:08 2017 From: monte at appisle.net (Monte Goulding) Date: Sat, 12 Aug 2017 08:17:08 +1000 Subject: common code patterns In-Reply-To: <9b45dfb7-8869-3527-9982-c3936f47e9a9@tweedly.net> References: <8C6CB235-67B7-47BB-B6B6-A2586DEFBAE1@derbrill.de> <9b45dfb7-8869-3527-9982-c3936f47e9a9@tweedly.net> Message-ID: > On 11 Aug 2017, at 9:40 am, Alex Tweedly via use-livecode wrote: > > repeat with i=1 to paramcount()-1 > put param(i)&"," after theValue > end repeat > put param(paramcount()) after theValue > > Shorter, faster, and just plain tidier :-) Hmm? there?s a few reasons I?m not a fan of this pattern: - you can?t really clearly document the handler parameters although this could feasibly be worked around by redefining what a parameter is in your docs - if any of your parameters may contain whatever delimiter you are using when parsing the params then everything breaks if you are using comma as suggested above then it?s not safe to pass object references to the handler. So my question therefore is are there many people that use this pattern and should we throw it around a bit to get a more robust form or is this an edge case of a particular developer?s scripting style? Cheers Monte From monte at appisle.net Fri Aug 11 18:18:19 2017 From: monte at appisle.net (Monte Goulding) Date: Sat, 12 Aug 2017 08:18:19 +1000 Subject: Speed of control lookup (Was Re: Parent of Target) In-Reply-To: <37b883fc-7efa-ef25-15e0-b7346d559ca7@sonic.net> References: <831B7861-DDB4-4A1C-A40B-CFC5BE05194F@appisle.net> <37b883fc-7efa-ef25-15e0-b7346d559ca7@sonic.net> Message-ID: > On 12 Aug 2017, at 8:11 am, Mark Wieder via use-livecode wrote: > >> Hmm? Would it be a good idea to create a new ID form with the bare minimum to identify an object. > > > UUID > Let?s not start that again ;-) From monte at appisle.net Fri Aug 11 18:21:37 2017 From: monte at appisle.net (Monte Goulding) Date: Sat, 12 Aug 2017 08:21:37 +1000 Subject: common code patterns In-Reply-To: References: <004501d311f5$592fc940$0b8f5bc0$@net> <765F1581-ADB6-4BE5-ADF5-BB616F2D489A@byu.edu> <005e01d311ff$7c4c6370$74e52a50$@net> <5d0eb575eb329262a1aceb34ec1e5aaf@livecode.com> <54e031f7-7971-1b5b-c06b-fdf671b1ac5d@sonic.net> <1dc049c849d8a5e7e123b391890d7166@livecode.com> <1B579825-6907-4D07-ABCE-11B993BA4B80@appisle.net> Message-ID: <199DDE00-535D-49B9-B331-CE1BBC83ABBE@appisle.net> > On 12 Aug 2017, at 8:06 am, Mark Wieder via use-livecode wrote: > >> I guess we could have more explicit syntax here which might be more flexible too >> repeat for each element tElement and key tKey in tArray ordered numeric ascending > > I must be channeling Mark Waddingham here... I'm worried that the syntax is borderline not-xtalky. For instance, it's not obvious from looking at that whether tElement or tKey is sorted numerically. By guess is that you intend tKey to be sorted. Ha? I hadn?t considered that you might want the elements sorted instead of the keys but of course you might? well I?m not sure I just know I?d really like to have a way to iterate sorted keys and elements? Cheers Monte From dochawk at gmail.com Fri Aug 11 18:32:33 2017 From: dochawk at gmail.com (Dr. Hawkins) Date: Fri, 11 Aug 2017 15:32:33 -0700 Subject: common code patterns In-Reply-To: References: <004501d311f5$592fc940$0b8f5bc0$@net> <765F1581-ADB6-4BE5-ADF5-BB616F2D489A@byu.edu> <005e01d311ff$7c4c6370$74e52a50$@net> <5d0eb575eb329262a1aceb34ec1e5aaf@livecode.com> <54e031f7-7971-1b5b-c06b-fdf671b1ac5d@sonic.net> <1dc049c849d8a5e7e123b391890d7166@livecode.com> <1B579825-6907-4D07-ABCE-11B993BA4B80@appisle.net> Message-ID: On Fri, Aug 11, 2017 at 3:08 PM, Mark Wieder via use-livecode < use-livecode at lists.runrev.com> wrote: > On 08/11/2017 02:59 PM, Mike Kerner via use-livecode wrote: > >> That is not easier to read. >> > > Heh. Mike beat me to it. . . . After seven chalkboards of deprivation, the calculus professor announce, "therefore, A is obviously equal to B" A student timidly raised her hand, and said, "That's not obvious, professor." He scrawled three more boards, and triumphantly announced, "See, I told you it was obvious!" :) -- Dr. Richard E. Hawkins, Esq. (702) 508-8462 From rdimola at evergreeninfo.net Fri Aug 11 18:41:53 2017 From: rdimola at evergreeninfo.net (Ralph DiMola) Date: Fri, 11 Aug 2017 18:41:53 -0400 Subject: common code patterns In-Reply-To: References: <004501d311f5$592fc940$0b8f5bc0$@net> <765F1581-ADB6-4BE5-ADF5-BB616F2D489A@byu.edu> <005e01d311ff$7c4c6370$74e52a50$@net> <5d0eb575eb329262a1aceb34ec1e5aaf@livecode.com> <54e031f7-7971-1b5b-c06b-fdf671b1ac5d@sonic.net> <1dc049c849d8a5e7e123b391890d7166@livecode.com> <1B579825-6907-4D07-ABCE-11B993BA4B80@appisle.net> Message-ID: <008001d312f3$0867ce50$19376af0$@net> I may not be obvious but neither is the sort command. When I start LC I could not grasp "each" and what it did to what from who, but that's me. I digress. I can't tell you how many times I've done: Local tKeys Put the keys of pArray into tKeys Sort the lines of tKeys numeric Repeat for each line tKey in tKeys ... Ralph DiMola IT Director Evergreen Information Services rdimola at evergreeninfo.net -----Original Message----- From: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] On Behalf Of Dr. Hawkins via use-livecode Sent: Friday, August 11, 2017 6:33 PM To: How to use LiveCode Cc: Dr. Hawkins Subject: Re: common code patterns On Fri, Aug 11, 2017 at 3:08 PM, Mark Wieder via use-livecode < use-livecode at lists.runrev.com> wrote: > On 08/11/2017 02:59 PM, Mike Kerner via use-livecode wrote: > >> That is not easier to read. >> > > Heh. Mike beat me to it. . . . After seven chalkboards of deprivation, the calculus professor announce, "therefore, A is obviously equal to B" A student timidly raised her hand, and said, "That's not obvious, professor." He scrawled three more boards, and triumphantly announced, "See, I told you it was obvious!" :) -- Dr. Richard E. Hawkins, Esq. (702) 508-8462 _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode From ahsoftware at sonic.net Fri Aug 11 18:59:29 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Fri, 11 Aug 2017 15:59:29 -0700 Subject: common code patterns In-Reply-To: <199DDE00-535D-49B9-B331-CE1BBC83ABBE@appisle.net> References: <004501d311f5$592fc940$0b8f5bc0$@net> <765F1581-ADB6-4BE5-ADF5-BB616F2D489A@byu.edu> <005e01d311ff$7c4c6370$74e52a50$@net> <5d0eb575eb329262a1aceb34ec1e5aaf@livecode.com> <54e031f7-7971-1b5b-c06b-fdf671b1ac5d@sonic.net> <1dc049c849d8a5e7e123b391890d7166@livecode.com> <1B579825-6907-4D07-ABCE-11B993BA4B80@appisle.net> <199DDE00-535D-49B9-B331-CE1BBC83ABBE@appisle.net> Message-ID: On 08/11/2017 03:21 PM, Monte Goulding via use-livecode wrote: > Ha? I hadn?t considered that you might want the elements sorted instead of the keys but of course you might? well I?m not sure I just know I?d really like to have a way to iterate sorted keys and elements? I'm not trying by any means to say that the idea isn't good. I'm also in favor of having a way to sort keys and elements other than the obvious. I just think that syntax is awkward. -- Mark Wieder ahsoftware at gmail.com From alex at tweedly.net Fri Aug 11 20:17:15 2017 From: alex at tweedly.net (Alex Tweedly) Date: Sat, 12 Aug 2017 01:17:15 +0100 Subject: common code patterns In-Reply-To: References: <8C6CB235-67B7-47BB-B6B6-A2586DEFBAE1@derbrill.de> <9b45dfb7-8869-3527-9982-c3936f47e9a9@tweedly.net> Message-ID: <745e5a1d-3c23-b83a-3ba4-a0526e9200bd@tweedly.net> On 11/08/2017 23:17, Monte Goulding via use-livecode wrote: >> On 11 Aug 2017, at 9:40 am, Alex Tweedly via use-livecode wrote: >> >> repeat with i=1 to paramcount()-1 >> put param(i)&"," after theValue >> end repeat >> put param(paramcount()) after theValue >> >> Shorter, faster, and just plain tidier :-) > Hmm? there?s a few reasons I?m not a fan of this pattern: > > - you can?t really clearly document the handler parameters although this could feasibly be worked around by redefining what a parameter is in your docs Well, it's not my pattern (in fact, initially I didn't even spot that it did this "trick" to handle a point) - so I may be the wrong one to defend it - but here goes. The common use case is where the parameters are any one of - one or two points - a rect - one to four coords (i.e. anywhere you are basically passing in a rectangle in the various common flavours). I think I've seen it in few places (presumably Geometry Engine, maybe one of the chart libraries, etc.) -- Alex. From dan at clearvisiontech.com Fri Aug 11 21:04:18 2017 From: dan at clearvisiontech.com (Dan Friedman) Date: Sat, 12 Aug 2017 01:04:18 +0000 Subject: mobilePick width on iPhone 6 Message-ID: <799D0051-5640-4B28-AAF3-ED2B6EE7BCDA@clearvisiontech.com> Anyone know why the width of the click wheel when calling mobilePick on an iPhone 6 is only about ? of the width of the screen? How do you go about fixing this? -Dan From dan at clearvisiontech.com Fri Aug 11 21:10:45 2017 From: dan at clearvisiontech.com (Dan Friedman) Date: Sat, 12 Aug 2017 01:10:45 +0000 Subject: Livecode Mobile App in Background Message-ID: <64CFDAD8-0365-48A8-8AFF-CAF11869EA2A@clearvisiontech.com> There?s been a lot of talk about this, but does any one have a working method for getting the app to not exit when it?s suspended? Need a solution for both iOS and Android. If it could stay alive for like 10 munites, that?s all I need. My client doesn?t want the app to have to completely reload (app boot is a little lenghty) just to bring up a calculator to add a few numbers. They want it to work like most apps do. Any solution would be a lifesaver!! -Dan From andre at andregarzia.com Fri Aug 11 21:17:14 2017 From: andre at andregarzia.com (Andre Garzia) Date: Fri, 11 Aug 2017 22:17:14 -0300 Subject: App Rejected: IPv6 network? In-Reply-To: References: <8DF42F9F-E7BC-467E-AE2C-93106F046A6A@gmail.com> Message-ID: It used to be the case that Apple would only allow JS to be downloaded, all other languages could not run. Of course the static analysis system is not perfect and probably it can't detect that that is what is happening with our LC apps, but the terms were clear that you could not download code from outside. That caused rejections in many other communities. On Thu, Aug 10, 2017 at 4:27 PM, Richard Gaskin via use-livecode < use-livecode at lists.runrev.com> wrote: > jonathandlynch wrote: > > LC scripts are not executable code? > > They are to the LiveCode engine, but not to the OS. > > LiveCode Script has no access to the OS, and can't touch anything outside > of the LiveCode engine. > > So from the OS perspective, scripts are just data, like glorified > spreadsheet formulas. All sandboxing and other API evaluation is relevant > to the LC Engine. > > -- > Richard Gaskin > Fourth World Systems > > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > -- http://www.andregarzia.com -- All We Do Is Code. http://fon.nu -- minimalist url shortening service. From jonathandlynch at gmail.com Fri Aug 11 21:24:13 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Fri, 11 Aug 2017 21:24:13 -0400 Subject: Livecode Mobile App in Background In-Reply-To: <64CFDAD8-0365-48A8-8AFF-CAF11869EA2A@clearvisiontech.com> References: <64CFDAD8-0365-48A8-8AFF-CAF11869EA2A@clearvisiontech.com> Message-ID: <71CCAF14-9304-4661-A973-4527BB994893@gmail.com> The plist can be edited for this. If you search plist on this list, you will find instructions. Augmented Earth hibernates rather than being shut down. Sent from my iPhone > On Aug 11, 2017, at 9:10 PM, Dan Friedman via use-livecode wrote: > > There?s been a lot of talk about this, but does any one have a working method for getting the app to not exit when it?s suspended? Need a solution for both iOS and Android. If it could stay alive for like 10 munites, that?s all I need. My client doesn?t want the app to have to completely reload (app boot is a little lenghty) just to bring up a calculator to add a few numbers. They want it to work like most apps do. > > Any solution would be a lifesaver!! > > -Dan > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From ahsoftware at sonic.net Fri Aug 11 21:27:03 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Fri, 11 Aug 2017 18:27:03 -0700 Subject: [OT] HyperCard preservation society In-Reply-To: References: Message-ID: <372b1140-504a-ad0e-d6e2-d5ce61c8c125@sonic.net> On 08/11/2017 08:00 AM, Ben Rubinstein via use-livecode wrote: > This is fabulous: > > http://blog.archive.org/2017/08/11/hypercard-on-the-archive-celebrating-30-years-of-hypercard/ LOL... "PRINT PEEL & STICK VHS LABELS" srsly, though... happy 30th, HyperCard. -- Mark Wieder ahsoftware at gmail.com From monte at appisle.net Fri Aug 11 21:29:19 2017 From: monte at appisle.net (Monte Goulding) Date: Sat, 12 Aug 2017 11:29:19 +1000 Subject: [OT] HyperCard preservation society In-Reply-To: <372b1140-504a-ad0e-d6e2-d5ce61c8c125@sonic.net> References: <372b1140-504a-ad0e-d6e2-d5ce61c8c125@sonic.net> Message-ID: > On 12 Aug 2017, at 11:27 am, Mark Wieder via use-livecode wrote: > > LOL... "PRINT PEEL & STICK VHS LABELS" Not betamax? C?mon! From jonathandlynch at gmail.com Fri Aug 11 21:29:49 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Fri, 11 Aug 2017 21:29:49 -0400 Subject: Livecode Mobile App in Background In-Reply-To: <71CCAF14-9304-4661-A973-4527BB994893@gmail.com> References: <64CFDAD8-0365-48A8-8AFF-CAF11869EA2A@clearvisiontech.com> <71CCAF14-9304-4661-A973-4527BB994893@gmail.com> Message-ID: <61D753DA-F611-44F4-90D2-C5E1BFB42211@gmail.com> Here are the instructions Ralph made. I think you can now load up your own custom plist if you want to, but these steps work. Big thanks to Ralph for this:) 1) Go to the Applications folder 2) Right click on the LC app you are using and select "Show Package Contents" 3) Navigate to the "Tools/Runtime/iOS" folder 4) Right click on all the device/simulator folders one at a time and select "Get Info" 5) At the bottom click on the "Read only" to the right of your account name and select "Read & Write" 6) Repeat 5 for all device/simulator folders 7) In each of the device/simulator folders edit the setting.plist file. 8) To edit... right click the setting.plist file and select "Open With" and then "Other..." and select "TextEdit.app". 9) You will get a warning that the file is locked. Choose the Unlock option. 10) Either change UIApplicationExitsOnSuspend key value to "False" or like I do delete the key all together(2 lines) 11) repeat 8-10 for setting.plist in each of the device/simulator folders. 12) Fire up LC and make an iOS app. Ralph DiMola IT Director Evergreen Information Services rdimola at evergreeninfo.net Sent from my iPhone > On Aug 11, 2017, at 9:24 PM, jonathandlynch at gmail.com wrote: > > The plist can be edited for this. If you search plist on this list, you will find instructions. > > Augmented Earth hibernates rather than being shut down. > > Sent from my iPhone > >> On Aug 11, 2017, at 9:10 PM, Dan Friedman via use-livecode wrote: >> >> There?s been a lot of talk about this, but does any one have a working method for getting the app to not exit when it?s suspended? Need a solution for both iOS and Android. If it could stay alive for like 10 munites, that?s all I need. My client doesn?t want the app to have to completely reload (app boot is a little lenghty) just to bring up a calculator to add a few numbers. They want it to work like most apps do. >> >> Any solution would be a lifesaver!! >> >> -Dan >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode From dunbarx at aol.com Fri Aug 11 21:38:39 2017 From: dunbarx at aol.com (dunbarx) Date: Fri, 11 Aug 2017 18:38:39 -0700 (PDT) Subject: common code patterns In-Reply-To: References: Message-ID: <1502501919056-4718394.post@n4.nabble.com> The subThread about Switch/Case is a current thread on the forum: Craig -- View this message in context: http://runtime-revolution.278305.n4.nabble.com/common-code-patterns-tp4718218p4718394.html Sent from the Revolution - User mailing list archive at Nabble.com. From dan at clearvisiontech.com Fri Aug 11 22:11:30 2017 From: dan at clearvisiontech.com (Dan Friedman) Date: Sat, 12 Aug 2017 02:11:30 +0000 Subject: Livecode Mobile App in Background In-Reply-To: <<61D753DA-F611-44F4-90D2-C5E1BFB42211@gmail.com>> Message-ID: Ralph, Thank you for the detailed reply! I tried it and it seems to work great. One question? if it?s that simple, why hasn?t LiveCode offered this as a feature? Seems like it would take a few minutes to write this in? Is there a catch to using this method? -Dan From dan at clearvisiontech.com Fri Aug 11 22:27:07 2017 From: dan at clearvisiontech.com (Dan Friedman) Date: Sat, 12 Aug 2017 02:27:07 +0000 Subject: common code patterns In-Reply-To: <<1502501919056-4718394.post@n4.nabble.com>> Message-ID: <99F68D5C-3832-4BEA-8017-0F21BC0F5F6C@clearvisiontech.com> Here?s my silly contribution. How many times do we write something like this: put ?Are you sure you want to delete the image? && quote & myImageName & quote && ??? into tPrompt I have a simple q() function in all my projects: function q inData return (quote & inData & quote) end q Now, I can simply do this: put ?Are you sure you want to delete the image? && q(myImageName) & ??? into tPrompt Tiny, but mighty. :) -Dan From rdimola at evergreeninfo.net Fri Aug 11 22:32:13 2017 From: rdimola at evergreeninfo.net (Ralph DiMola) Date: Fri, 11 Aug 2017 22:32:13 -0400 Subject: Livecode Mobile App in Background In-Reply-To: References: <<61D753DA-F611-44F4-90D2-C5E1BFB42211@gmail.com>> Message-ID: <008401d31313$359240c0$a0b6c240$@net> There are a couple of hitches.. I believe that Mark said that timers going off while running in the background may not work or lock up the app. There are other issues but I have not had any problems. It's an option in v9 iOS standalone setting but it's a "use at your own risk" type of thing. Ralph DiMola IT Director Evergreen Information Services rdimola at evergreeninfo.net -----Original Message----- From: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] On Behalf Of Dan Friedman via use-livecode Sent: Friday, August 11, 2017 10:12 PM To: use-livecode at lists.runrev.com Cc: Dan Friedman Subject: Re: Livecode Mobile App in Background Ralph, Thank you for the detailed reply! I tried it and it seems to work great. One question? if it?s that simple, why hasn?t LiveCode offered this as a feature? Seems like it would take a few minutes to write this in? Is there a catch to using this method? -Dan _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode From jacque at hyperactivesw.com Fri Aug 11 22:49:27 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Fri, 11 Aug 2017 21:49:27 -0500 Subject: Livecode Mobile App in Background In-Reply-To: <008401d31313$359240c0$a0b6c240$@net> References: <<61D753DA-F611-44F4-90D2-C5E1BFB42211@gmail.com>> <008401d31313$359240c0$a0b6c240$@net> Message-ID: <15dd458aad8.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> I think I remember that "wait" is a problem too. Meanwhile I know of no solution for Android. The OS controls what runs in the background and when it gets wiped from RAM. You'll never know when that happens either. It's an issue that causes trouble. If anyone knows of a solution before I talk about this in my presentation on Thursday, do tell. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com On August 11, 2017 9:34:41 PM Ralph DiMola via use-livecode wrote: > There are a couple of hitches.. I believe that Mark said that timers going > off while running in the background may not work or lock up the app. There > are other issues but I have not had any problems. It's an option in v9 iOS > standalone setting but it's a "use at your own risk" type of thing. > > Ralph DiMola > IT Director > Evergreen Information Services > rdimola at evergreeninfo.net > > > -----Original Message----- > From: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] On Behalf > Of Dan Friedman via use-livecode > Sent: Friday, August 11, 2017 10:12 PM > To: use-livecode at lists.runrev.com > Cc: Dan Friedman > Subject: Re: Livecode Mobile App in Background > > Ralph, > > Thank you for the detailed reply! I tried it and it seems to work great. > One question? if it?s that simple, why hasn?t LiveCode offered this as a > feature? Seems like it would take a few minutes to write this in? Is > there a catch to using this method? > > -Dan > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From paul at livecode.org Fri Aug 11 23:22:03 2017 From: paul at livecode.org (Paul Hibbert) Date: Fri, 11 Aug 2017 20:22:03 -0700 Subject: Ink pullDown menu In-Reply-To: <1ab95e1c-756f-a13a-e5ec-50b6aeac580f@gmail.com> References: <1ab95e1c-756f-a13a-e5ec-50b6aeac580f@gmail.com> Message-ID: The fontNames is a built-in function, but there?s no built-in function for ink names AFAIK, however, that doesn?t stop you form creating a custom function, something like this should work for an option menu button (edit as appropriate): on mouseEnter if word 1 of the selectedObject = "image" then put inkNames("img") into me else put inkNames() into me end if end mouseEnter function inkNames pChoice if pChoice = "img" then return "blendPlus" & cr & \ "blendMultiply" & cr & \ "blendScreen" & cr & \ "blendOverlay" & cr & \ "blendDarken" & cr & \ "blendLighten" & cr & \ "blendDodge" & cr & \ "blendBurn" & cr & \ "blendHardLight" & cr & \ "blendSoftLight" & cr & \ "blendDifference" & cr & \ "blendExclusion" else return "blendClear" & cr & \ "blendSrc" & cr & \ "blendDst" & cr & \ "blendSrcOver" & cr & \ "blendDstOver" & cr & \ "blendSrcIn" & cr & \ "blendDstIn" & cr & \ "blendSrcOut" & cr & \ "blendDstOut" & cr & \ "blendSrcAtop" & cr & \ "blendDstAtop" & cr & \ "blendXor" end if end inkNames Paul > On Aug 11, 2017, at 9:39 AM, Richmond Mathewson via use-livecode wrote: > > I can have a pullDown menu with this sort of script: > > put the fontNames into me > > how can I do the smae sort of thing for Ink? > > e.g. (pseudocode): put the inkNames into me > > Richmond. > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From waprothero at gmail.com Sat Aug 12 00:20:08 2017 From: waprothero at gmail.com (William Prothero) Date: Fri, 11 Aug 2017 21:20:08 -0700 Subject: LC 9.0.0 dp8 won't launch iOS simulator Message-ID: <16DEE27F-F8AD-491E-A42C-F379E73D4E27@gmail.com> Folks: I?m trying to work on a new app that will send an sms message in iOS. But, as it usually happens when I don?t use the simulator and XCode for a month or so, new version come along and chaos seems to ensue. I had all of this working in LC 8.1.4. I?ve been working with LC 8.2.6 and LC9.0.0 (dp8) I downloaded XCode 8.3.3, but have XCode 8.3 and 8.2 installed. When I started, LC 8.2.6 would launch the simulator ok. But 9.0.0 wouldn?t. After fiddling around a bit, LC 8.2.6 would no longer launch the simulator. I get the following error message on all versions, no matter what I put into the LiveCode preferences for XCode: ?Unable to start simulator 634,0,0,notoolset 573,220,1,revPhoneSetSimulatorSDK I deleted the LC Preferences files and it didn?t fix anything. So?. I have 3 versions of XCode (8.2, 8.3, 8.3.3) in my application folder. These have been downloaded from the developer portal. Is it ok to have all of them in my applications folder, then enter them into the LC Preferences->mobile Support pane? Or will it mix up software from different versions of XCode in my app folder? Do I need to download additional tools for XCode? This is extremely frustrating. I did note that there was a red/green box in the LC mobile support pane in preferences, which should indicate the all the XCode support files are correct for the running version of LC. This doesn?t seem to be the case, though. It does respond to the version loaded, though, which is something. For me, this is the most frustrating part of livecode. Can?t more be done to check configurations and provide clear and complete error messages when things aren?t right? Best, Bill P William A. Prothero http://earthlearningsolution.org/ From merakosp at gmail.com Sat Aug 12 01:43:22 2017 From: merakosp at gmail.com (panagiotis merakos) Date: Sat, 12 Aug 2017 06:43:22 +0100 Subject: LC 9.0.0 dp8 won't launch iOS simulator In-Reply-To: <16DEE27F-F8AD-491E-A42C-F379E73D4E27@gmail.com> References: <16DEE27F-F8AD-491E-A42C-F379E73D4E27@gmail.com> Message-ID: Hi Bill, In LC 9dp7 (or dp8, not 100% sure), we removed support for 32bit simulators. This means that if your simulator is set to iPhone SE or iPhone5, the standalone will not launch. So you have to choose a 64bit simulator (iphone6 and above). Best regards, Panos On Aug 12, 2017 05:20, "William Prothero via use-livecode" < use-livecode at lists.runrev.com> wrote: > Folks: > I?m trying to work on a new app that will send an sms message in iOS. But, > as it usually happens when I don?t use the simulator and XCode for a month > or so, new version come along and chaos seems to ensue. I had all of this > working in LC 8.1.4. > > I?ve been working with LC 8.2.6 and LC9.0.0 (dp8) I downloaded XCode > 8.3.3, but have XCode 8.3 and 8.2 installed. When I started, LC 8.2.6 would > launch the simulator ok. But 9.0.0 wouldn?t. After fiddling around a bit, > LC 8.2.6 would no longer launch the simulator. I get the following error > message on all versions, no matter what I put into the LiveCode preferences > for XCode: > > ?Unable to start simulator 634,0,0,notoolset 573,220,1, > revPhoneSetSimulatorSDK > > I deleted the LC Preferences files and it didn?t fix anything. > > So?. I have 3 versions of XCode (8.2, 8.3, 8.3.3) in my application > folder. These have been downloaded from the developer portal. Is it ok to > have all of them in my applications folder, then enter them into the LC > Preferences->mobile Support pane? Or will it mix up software from different > versions of XCode in my app folder? > > Do I need to download additional tools for XCode? > > This is extremely frustrating. I did note that there was a red/green box > in the LC mobile support pane in preferences, which should indicate the all > the XCode support files are correct for the running version of LC. This > doesn?t seem to be the case, though. It does respond to the version loaded, > though, which is something. > > For me, this is the most frustrating part of livecode. Can?t more be done > to check configurations and provide clear and complete error messages when > things aren?t right? > > Best, > Bill P > > William A. Prothero > http://earthlearningsolution.org/ > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From waprothero at gmail.com Sat Aug 12 01:52:29 2017 From: waprothero at gmail.com (William Prothero) Date: Fri, 11 Aug 2017 22:52:29 -0700 Subject: LC 9.0.0 dp8 won't launch iOS simulator In-Reply-To: References: <16DEE27F-F8AD-491E-A42C-F379E73D4E27@gmail.com> Message-ID: <7E4CB901-3DE5-4BE2-9DFF-943088F381B2@gmail.com> Thanks for the ideas. I?ll do those things, Evergreen. I have been using iPhone 6 and above, but tomorrow, after a night?s sleep, I?ll follow the suggestions. Thanks! Bill P > On Aug 11, 2017, at 10:43 PM, panagiotis merakos via use-livecode wrote: > > Hi Bill, > > In LC 9dp7 (or dp8, not 100% sure), we removed support for 32bit > simulators. This means that if your simulator is set to iPhone SE or > iPhone5, the standalone will not launch. So you have to choose a 64bit > simulator (iphone6 and above). > > Best regards, > Panos > > > > On Aug 12, 2017 05:20, "William Prothero via use-livecode" < > use-livecode at lists.runrev.com> wrote: > >> Folks: >> I?m trying to work on a new app that will send an sms message in iOS. But, >> as it usually happens when I don?t use the simulator and XCode for a month >> or so, new version come along and chaos seems to ensue. I had all of this >> working in LC 8.1.4. >> >> I?ve been working with LC 8.2.6 and LC9.0.0 (dp8) I downloaded XCode >> 8.3.3, but have XCode 8.3 and 8.2 installed. When I started, LC 8.2.6 would >> launch the simulator ok. But 9.0.0 wouldn?t. After fiddling around a bit, >> LC 8.2.6 would no longer launch the simulator. I get the following error >> message on all versions, no matter what I put into the LiveCode preferences >> for XCode: >> >> ?Unable to start simulator 634,0,0,notoolset 573,220,1, >> revPhoneSetSimulatorSDK >> >> I deleted the LC Preferences files and it didn?t fix anything. >> >> So?. I have 3 versions of XCode (8.2, 8.3, 8.3.3) in my application >> folder. These have been downloaded from the developer portal. Is it ok to >> have all of them in my applications folder, then enter them into the LC >> Preferences->mobile Support pane? Or will it mix up software from different >> versions of XCode in my app folder? >> >> Do I need to download additional tools for XCode? >> >> This is extremely frustrating. I did note that there was a red/green box >> in the LC mobile support pane in preferences, which should indicate the all >> the XCode support files are correct for the running version of LC. This >> doesn?t seem to be the case, though. It does respond to the version loaded, >> though, which is something. >> >> For me, this is the most frustrating part of livecode. Can?t more be done >> to check configurations and provide clear and complete error messages when >> things aren?t right? >> >> Best, >> Bill P >> >> William A. Prothero >> http://earthlearningsolution.org/ >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From mark at livecode.com Sat Aug 12 05:26:03 2017 From: mark at livecode.com (Mark Waddingham) Date: Sat, 12 Aug 2017 11:26:03 +0200 Subject: Speed of control lookup (Was Re: Parent of Target) In-Reply-To: <831B7861-DDB4-4A1C-A40B-CFC5BE05194F@appisle.net> References: <831B7861-DDB4-4A1C-A40B-CFC5BE05194F@appisle.net> Message-ID: On 2017-08-11 23:58, Monte Goulding via use-livecode wrote: > That would mean speed improvements could be done on an object > reference that is relatively robust to changes in the object tree and > unless you are creating an IDE you would be very unlikely to need to > do the LCB object reference repository thing. I was pondering that whilst writing my 'experiment'. Whilst it says 'for strict long ids', its strictness is more in the string structure (all tokens lowercase, all integers 0 or start with 1, one space between tokens etc. - this is mainly where the speed comes from - the 'parser' in my experiment is basically an unrolled regular expression). It could be evolved to parse more general control chunk chains over time. Indeed, I was wondering whether 'minimal id' might be a reasonable name - however, whatever the name, there's still the choice of stack short name vs filename. I'd be happier about introducing a new id if we could solve the multiple mainstack with same name issue too (or at least get a step closer to it) - whilst it might be nice to think it could be done with more appropriate search order, given the move towards libraries and other such things I worry that no search order would ever solve the problem really; and would end up with issues appearing in complex circumstances which are hard to diagnose. However, certainly, it would mean that the LCB idea is only something you would need if you were writing a full IDE - as the problems the IDE has only really come about because arbitrary script runs within it which it can't control; in particular, locking messages around changes to stack names, control ids, or control ownership. Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From mark at livecode.com Sat Aug 12 06:57:11 2017 From: mark at livecode.com (Mark Waddingham) Date: Sat, 12 Aug 2017 11:57:11 +0100 Subject: [OT] Draconian computer company policies, was: Mobile LC Apps Downloading Stacks After installation In-Reply-To: <598E16DB.8080506@pair.com> References: <598E16DB.8080506@pair.com> Message-ID: <6FF2100D-66E4-498D-BD64-45BFD0FEFD4D@livecode.com> A very interesting read - thanks Curry :) I guess I was very much focused on the specific clauses on downloading executable code - which is no longer just an Apple thing - Google's is now very similar (i.e. Stricter than it used to be) and I suspect the other app stores on android will follow suit. I do think those clauses are about security (otherwise they seem to much of a blunt instrument) and from that point of view they can be considered reasonable (especially when the scale of the ecosystems is considered) - if incredibly irksome for us! Of course other aspects of Apple's policies (and the fact it is their AppStore or nothing) are a different matter entirely - as you eloquently point out. Warmest Regards, Mark. Sent from my iPhone > On 11 Aug 2017, at 21:43, Curry Kenworthy via use-livecode wrote: > > > Mark: > > > I think Johnathan made the best point here - if you want into the > > iOS world and the AppStore Apple provide you have to abide by their > > rules. However, if you don't care about the AppStore, then just > > jailbreak your phone and run free - no-one is stopping you. > > > It is entirely your choice :) > > No, it's not merely a personal matter by any stretch of the imagination. This is a social and tech reality that affects all of us, our technological environment. You are framing this as primarily a security matter to save the masses, with a handy personal jail break or xCode opt-out that solves the matter for any individual who feels differently. (No thanks on JB, nor do I generally recommend that to others. Nor is my interest mainly personal, but rather as a consultant and developer. I doubt most true end users feel comfy with xCode, assuming they even have a Mac.) Sorry, I tend to be a frame breaker! It's missing out on the bigger picture of Apple's system, and similarly the impact of tech trends, not only from Apple but other major players. > > Much more complex, and it affects us far beyond our own choices. While someone here is waxing poetic about the security benefits, at one time or another someone has likely iPhoned that person's own data around insecurely in ways that would alarm you! Perhaps it has happened to you too without your knowledge. I've seen it too many times, very widespread. Often by people working for a reputable company or providing a vital professional service, but clueless or careless. Neither is the data completely secure even with companies that are more careful - the masses don't realize that. At the same time people are desensitized to sharing more data than ever. That makes them - and through them, sometimes you - very vulnerable. > > Security goes way beyond malware. Security is an integral part of Apple's system, but it's not a system primarily for the sake of security. Fairly easy to have safe apps outside of a particular app store. One way would be setting up other download repositories that are checked. Another is using networked antivirus systems, which are already popular and advanced. > > Going beyond security - breaking that frame again - it's much bigger. Richmond already had some good points, so maybe I don't need to add any, but for example: Actual publishing standards and choices are not all about security, quality, decency, and good style as advertised. Marketing versus reality. What viewpoints, topics, or potentially beneficial technologies might be suppressed? That would not be a big deal when there are multiple venues, but when there is one.... > > The whole society is also affected by tech trends, and the circle goes around, consumer behavior and choices, how professionals use and sometimes misuse the tech (I'm seeing that too, it can be within the law but extremely harmful for consumers), data expectations and proliferation, over-availability or under-availability of information, control, ideology, intrusive or invasive trends, healthy awareness and ability versus dangerous dumbing down and complacency, more comprehensive security versus a sense of security or partial security, the effects of dependency on a single venue and its viewpoint and its quirks - in the end, everyone is touched. > > Perceiving how technology trends impact society, and in turn come back to impact each of us, is very valuable and all too easy to overlook as we rush to keep up with those trends and create new ones. Definitely worth a look for those who don't want to avoid one type of risk only to fall into another! Stay safe. Hope everyone is doing well -- I haven't been able to pop up much here in the list lately. > > Best wishes, > > Curry Kenworthy > > Custom Software Development > http://curryk.com/consulting/ > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From mark at livecode.com Sat Aug 12 08:51:52 2017 From: mark at livecode.com (Mark Waddingham) Date: Sat, 12 Aug 2017 13:51:52 +0100 Subject: Mobile LC Apps Downloading Stacks After installation In-Reply-To: References: <6C82BF40-3736-4B30-961F-2D0EC4F16D4C@hindu.org> <3aee2f40b156a12383e1c292515c0285@livecode.com> Message-ID: <09A9E943-F07F-4856-B9C1-D70B391D9494@livecode.com> That sounds like the best approach. Whilst it might seem 'annoying' to not use code in download files, I think LiveCode still makes it easier to not have to. It is just that you have to work a little bit harder to separate content from code - and parameterise the parts (using data) which you might have written directly in code if there wasn't such a restriction. Of course, as Richard points out, there are still areas where 'executable code' has to be allowed (expressions in spreadsheets are code after all - although admittedly side-effect free in some sense which *might* be the start of a line to draw) - however I think it wise to restrict those to things which are created by the user in their documents - and make sure they are heavily sandboxed / only allow very specific actions in line with the purpose the app. Warmest Regards, Mark. Sent from my iPhone > On 11 Aug 2017, at 20:21, Sannyasin Brahmanathaswami via use-livecode wrote: > > Mark, thanks for the thorough explanation. > > I would go on record to say that "vision" for our use of such post/sideloading option would fall well within th UI/UX of the existing app, since, from a design point of view our goals would want it to be virtually transparent. > > That said, the CMS can get a bit snakey over time, and possibly a better way to go, at least in our context of wanting to add on new modules, would be to bundle the LC binary/views/script into updates that would be reviewed and then post download only image-sounds-words-jsons-assets.gz bundles. unpack these and then binary uses them? > > This then allow us to add more to the app without adding more MB to the package size (since these LC binaries as pure view can be as small as 50 K) and then we just use side loading for what really *is* only *data* > > this would be playing it very safe, and in someways, guard against ad hoc dev CMS which is too easy to do with LC > > > BR > > On 8/10/17, 9:56 PM, "use-livecode on behalf of Mark Waddingham via use-livecode" wrote: > > Taken from this point of view, and looking at very successful Apps > (typically games) in the stores then you are probably fine if your > stackfiles have data/code in them which parameterize the *existing* > actions of the main app in reasonably limited ways. > > So, for example, providing levels to a game where some parts require > computations of expressions or triggering of particular events - as long > as those levels are consistent with 'what the game is meant to do' (i.e. > you don't make it do anything different from what it did with the levels > bundled with the original submitted app). This model applies to any sort > of 'content player' - language learning flash cards or lessons would be > similar - you just have to be careful to make sure you don't end up > expanding the ability of the main app in a way which is not directly > 'seeable' in the original submitted app. > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From mark at livecode.com Sat Aug 12 09:27:02 2017 From: mark at livecode.com (Mark Waddingham) Date: Sat, 12 Aug 2017 14:27:02 +0100 Subject: Livecode Mobile App in Background In-Reply-To: <15dd458aad8.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> References: <<61D753DA-F611-44F4-90D2-C5E1BFB42211@gmail.com> <008401d31313$359240c0$a0b6c240$@net> <15dd458aad8.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Message-ID: One of things the engine doesn't give you notifications on suspend and resume - it is something on the todo list, however the last time we tried it turned out to be considerably harder than we thought (although that could be that we were overthinking things...). In reality these kinds of notification are advisory at best, certainly under iOS they come with significant constraints which means that you have to be very careful what you do at those points. Indeed, the 'brutal' truth is that if your app is suspended it means it is but a hairs breadth from being forcibly expunged - so the best thing to do is to ensure that at suitable points during user interaction you save the state you need to come back to that point. This means that even if your suspend handler (when we add that to the engine) does get terminated prematurely (which is a matter of wall clock time spent in it) that doesn't matter. Indeed, working like that means that suspend and resume aren't really that relevant - the engine already turns off the things you need to when suspended and turns them back on when it resumes. Putting it another way, save state as your app runs - don't wait for a suspend or quit notification as you may not have time in those to actually save everything you might need to. Saving state incrementally whilst in the foreground is a much more reliable approach. Warmest Regards, Mark. Sent from my iPhone > On 12 Aug 2017, at 03:49, J. Landman Gay via use-livecode wrote: > > I think I remember that "wait" is a problem too. > > Meanwhile I know of no solution for Android. The OS controls what runs in the background and when it gets wiped from RAM. You'll never know when that happens either. It's an issue that causes trouble. > > If anyone knows of a solution before I talk about this in my presentation on Thursday, do tell. > > -- > Jacqueline Landman Gay | jacque at hyperactivesw.com > HyperActive Software | http://www.hyperactivesw.com > > > >> On August 11, 2017 9:34:41 PM Ralph DiMola via use-livecode wrote: >> >> There are a couple of hitches.. I believe that Mark said that timers going off while running in the background may not work or lock up the app. There are other issues but I have not had any problems. It's an option in v9 iOS standalone setting but it's a "use at your own risk" type of thing. >> >> Ralph DiMola >> IT Director >> Evergreen Information Services >> rdimola at evergreeninfo.net >> >> >> -----Original Message----- >> From: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] On Behalf Of Dan Friedman via use-livecode >> Sent: Friday, August 11, 2017 10:12 PM >> To: use-livecode at lists.runrev.com >> Cc: Dan Friedman >> Subject: Re: Livecode Mobile App in Background >> >> Ralph, >> >> Thank you for the detailed reply! I tried it and it seems to work great. One question? if it?s that simple, why hasn?t LiveCode offered this as a feature? Seems like it would take a few minutes to write this in? Is there a catch to using this method? >> >> -Dan >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode > > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From richmondmathewson at gmail.com Sat Aug 12 09:38:24 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Sat, 12 Aug 2017 16:38:24 +0300 Subject: Forum: Waves of Russian Nonsense Message-ID: The Forums are filling up quickly with a whole lot of nonsense about cars in Russian (althought, oddly enough it seems to be coming from the Ukraine). Richmond. From ahsoftware at sonic.net Sat Aug 12 12:13:15 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Sat, 12 Aug 2017 09:13:15 -0700 Subject: Speed of control lookup (Was Re: Parent of Target) In-Reply-To: References: <831B7861-DDB4-4A1C-A40B-CFC5BE05194F@appisle.net> Message-ID: On 08/12/2017 02:26 AM, Mark Waddingham via use-livecode wrote: > I'd be happier about introducing a new id if we could > solve the multiple mainstack with same name issue too Yes, please. -- Mark Wieder ahsoftware at gmail.com From jacque at hyperactivesw.com Sat Aug 12 14:44:43 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Sat, 12 Aug 2017 13:44:43 -0500 Subject: Livecode Mobile App in Background In-Reply-To: References: <<61D753DA-F611-44F4-90D2-C5E1BFB42211@gmail.com> <008401d31313$359240c0$a0b6c240$@net> <15dd458aad8.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Message-ID: <8981f3df-27be-e7b7-2d3c-ae615d658d0d@hyperactivesw.com> On 8/12/17 8:27 AM, Mark Waddingham via use-livecode wrote: > Indeed, working like that means that suspend and resume aren't really that relevant - the engine already turns off the things you need to when suspended and turns them back on when it resumes. There's a major problem if the user issues the "quit" command on Android. The engine removes all libraries in use when that happens, but the OS leaves the app in RAM. When the app next resumes, libraries aren't there and all calls to library functions silently abort. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com From richmondmathewson at gmail.com Sat Aug 12 14:48:50 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Sat, 12 Aug 2017 21:48:50 +0300 Subject: on-rev servers Message-ID: <8bb6eefe-a6cb-0bd3-3910-0b2a028f1e84@gmail.com> Are they dead, down, being maintained or otherwise as certainly unable to get here: http://andregarzia.on-rev.com Richmond. From dochawk at gmail.com Sat Aug 12 14:49:22 2017 From: dochawk at gmail.com (Dr. Hawkins) Date: Sat, 12 Aug 2017 11:49:22 -0700 Subject: Forum: Waves of Russian Nonsense In-Reply-To: References: Message-ID: On Sat, Aug 12, 2017 at 6:38 AM, Richmond Mathewson via use-livecode < use-livecode at lists.runrev.com> wrote: > The Forums are filling up quickly with a whole lot of nonsense about > cars in Russian > Maybe they mistook it for an election? :) -- Dr. Richard E. Hawkins, Esq. (702) 508-8462 From richmondmathewson at gmail.com Sat Aug 12 14:55:08 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Sat, 12 Aug 2017 21:55:08 +0300 Subject: Forum: Waves of Russian Nonsense In-Reply-To: References: Message-ID: Someone left the back door off the latch: bestdocs DilNeva and so it goes; and if everyone is "off" for their weekend it will keep going until we really are flooded. R. On 8/12/17 4:38 pm, Richmond Mathewson wrote: > The Forums are filling up quickly with a whole lot of nonsense about > cars in Russian (althought, oddly enough it seems to be coming from > the Ukraine). > > Richmond. From ambassador at fourthworld.com Sat Aug 12 15:34:05 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Sat, 12 Aug 2017 12:34:05 -0700 Subject: Mobile LC Apps Downloading Stacks After installation In-Reply-To: <3aee2f40b156a12383e1c292515c0285@livecode.com> References: <3aee2f40b156a12383e1c292515c0285@livecode.com> Message-ID: <7b74cb9d-aa50-ac2b-4b3f-09e9eb6a219c@fourthworld.com> Mark Waddingham wrote: > Okay so the thread from which this post came has some glaringly large > and obvious incorrect statements in it so I think it wise I correct > them. Great post. Thanks. My apologies if anything I wrote was construed as misrepresenting your opinion. Not my intention. Perhaps I misinterpreted the meaning of "fine" here in your post from May in the thread about similar downloading policies on Android: If LCB FFI is not used, then everything is fine. If it is used, then it does open the door to being able to download non-native executable (LCB VM) code to be downloaded and extend the API access of an app. The following reflects only my own opinions; I am neither an attorney nor a representative of any company other than my own: In actionable terms, this discussion, like so many others in life, may be boiled down to four words: Don't be a jerk. No OS vendor wants to approve an app for distribution through their platform and have it later morph into something else. Downloading "executable code" is probably the least of concerns for most developers. Most OS vendors provide a long list of reasons they may remove your app and/or ban you from their distribution outlets, including content they deem objectionable, simply being one of a category they consider already overpopulated, being in their view too easily replicable in a web page, or just not looking good. Moreover, in addition to the explicit reasons they list, they also provide a catch-all for a potentially infinite variety of reasons not listed. iOS: 9. Amendment; Communication. Apple reserves the right, at its discretion, to modify this Agreement, including any rules and policies at any time. Android: 7. Google Takedowns ...other terms of service as may be updated by Google from time to time in its sole discretion; These rules are vague, but not arbitrary. All of them, including the "at its sole discretion" clauses, are there to protect interests of the company and/or their customers. We can explore "executable code" as long as we find the discussion enjoyable (I'll even indulge in a bit of that below), but the bottom line is that we don't want to build a reputation for ourselves as developers, or for LiveCode as a platform, as being a gang of rogue miscreants hellbent on testing the boundaries of acceptability. That would be jerkish. Don't be a jerk. Beyond "executable code", we want to try to adhere to all aspects of app safety and quality the distribution outlet vendors ask for. I think Mark's opening and closing comments sum this up well: > First of all being able to submit apps to the App Stores which exist > today is critically important to our ecosystem - those App Stores come > with rules about what is allowed and what is not - the players > involved here have demonstrated that they can and will change those > rules without consultation and also have budgets larger than you can > imagine so, no, you will not win a fight with them so I strongly > suggest not trying in the first place. (Also, remember these are > *their* gardens - they are not public - they are free to do what > they want and see fit!). > > From my perspective, there are numerous things we could do > technically to the engine in order to completely prevent any Apps > in our ecosystem violating the critical rules which seem to cause > a lot of confusion. I'd rather not do this as it would be a very > large blunt instrument based on a very strict interpretation of > said rules which would mean a lot of you would have to rewrite a > fair bit of code (e.g. We completely remove the ability to compile > code at runtime if the engine is running in the context of one of > those stores - no 'do' or variants, no ability to create objects > with any code attached etc). ... > Like other things in life, if you have to drill down too far in terms > of asking 'is it okay if I do this', then it probably isn't. On the > other hand, 'better to ask forgiveness than permission' - there are > *real* people behind App Store review processes, the above are > policies/guidelines. As long as you can demonstrate that what you are > doing is in keeping with the rules, and you have good reason to do > what you are doing, then you aren't hugely likely to encounter a > problem. Earnestness goes a long way in building trust. Make an earnest effort to deliver a high-quality user experience that's useful and enjoyable, and your chances of meeting with app removal will drop significantly. Those chances of removal will never be completely eliminated. Even if you don't download "executable code" and reasonably comply with the other stated terms, the "at its sole discretion" clause leaves open the possibility of removal and/or banning for reasons you cannot know in advance. Cases of useful, well-designed apps that conform to stated policies being removed are rare, but we've all read enough news stories about them to know that it happens. But thankfully, with the exception of iOS SDK TOS v4 Section 3.3.2 (later rescinded though never apologized for), most rules in most app stores make reasonable sense and can be anticipated by developers. In short, don't be a jerk. :) Jerks hurt not only themselves and their own company, but it might only take a few to build a bad reputation for LC as platform, which would then hurt all of us. Make great apps, do so with earnestness, and your chances of avoiding removal are high. --=================================================================-- Some semi-random thoughts on "executable code": Mark wrote: > So, first question - is script 'executable code'? Yes. Script is code > (they are essentially synonyms in our 'world'); Script is executable - > it is executable by the LiveCode engine. Let's be clear about this - > one can 'hypothesise' about the boundary between code and data but it > is pointless. Data is code if it can be executed and *is* executed - > i.e. cause a physical processor to execute instructions which is > parameterized by that data. (e.g. 'Machine code' is data until it is > put into an executable page and called - so even as data it is code, > if it is executed at some point). > > Second question - do stackfiles contain executable code? Only if you > put data in them which could be considered to be executable - script > is obviously covered here. Whether that script be set as the script > properties of buttons, or as strings which you then set as a script on > an existing object, or execute with 'do'. The means by which a script > is executed, or could be executed, is immaterial. If your app takes > data from a stackfile and causes the engine to execute steps > parameterized by that data, then your stackfile contains executable > code. I believe both of those comments are very valuable, first defining "executable code" in a broad sense of anything that triggers execution in the CPU, and then bringing it home in this LiveCode context to discuss some of the breadth of ways things may be considered "executable". They key question with regard to app stores is: Is thing you want to download the sort of "executable code" the OS vendor cares about? Some things that may be considered "executable code" seem obvious, others maybe less so. Consider fonts: In the olden days computers rendered fonts from bitmaps, and in the 1988 a US court rules that no copyright protection could be afforded them since their designs are derivative of common shapes and thus primarily utilitarian. But in 1992 the US Copyright Office revisited its 1988 decision, and determined that the latest digital outline fonts in fact had elements that could be protected as software, i.e. "executable code". Since that time, the Office has accepted registration of copyright for vector fonts, such as PostScript Type 1, TrueType, and OpenType format files under the category of Software Programs. Summary: Announcement of court ruling: Consider also spreadsheets: If you write a formula in C or Pascal, it's executable code. If you write that same formula in an interpreted language like Python or LiveCode, it's executable code, even if the context of execution is limited to a specific interpreter app. So if you write that formula in an interpreted language and that interpreter happens to be a spreadsheet or other app that allow end-user calculation and/or automation, are the instructions you typed any less executable? Consider visual programming languages: Is "executable code" limited specifically to typing? What if you use visual means of authoring the instructions that an interpreter will use to execute statements in a CPU? Are software programs made through point-and-click tools not software programs? To what degree does the specific set of input gestures and resulting symbols used to create "executable code" determine whether it is or is not "executable code"? How could arranging sequences of text glyphs by pressing buttons on a keyboard necessarily be "code" but arranging sequences of other symbols like boxes and triangles by pressing buttons on a mouse not be? Consider vector graphics: Vectors graphics are sets of instructions for rendering shapes and images. Just as fonts are "software programs" written for PostScript or TrueType interpreters, vector graphics are written for rendering interpreters like SVG, EPS, and others. Vector graphic instructions are often referred to as "op codes", but just because the symbols are often shorter, their scope more limited, and that they're most commonly produced through visual means rather than typing, are they any less a form of code? Consider stack files, or many other non-bitmap data formats: Even without typed scripts, a stack file is akin to a vector image, a collection of sequences of op codes which tell the interpreting engine how to render the objects on screen. They would seem to fit the general definition of sequences of symbols designed to affect the flow of execution through an interpreting engine every bit as much as fonts are instructions for those rendering interpreters. Consider ebooks: Modern ebooks often support a wide range of interactivity, allowing a non-linear traversal of the work which responds to unique user-generated events to determine execution paths. Are interactive ebooks and other interactive multimedia documents "executable code"? Consider game levels: See "ebooks". And for iOS, consider the "teaching" exclusion from the prohibition on downloading "code": 2.5.2 Apps should be self-contained in their bundles, and may not read or write data outside the designated container area, nor may they download, install, or execute code, including other apps. Apps designed to teach, develop, or test executable code may, in limited circumstances, download code provided that such code is not used for other purposes. Such apps must make the source code provided by the Application completely viewable and editable by the user. What exactly constitutes "teach, develop, or test", and what specifically are the "limited circumstances" allowed? Can we produce apps that allow end-user automation by editing scripts? Can they share those scripts with their friends? Given the scope of authoring and execution options available in modern computing, and the philosophical nature of legal interpretation, the definition of "executable code" is not well defined by any OS vendor, nor should we expect it to be. By leaving such rules vague, OS vendors allow for a broad range o earnest, reasonable use-cases from developers adding value to their platform, while protecting themselves and/or their customers from adverse possibilities they can't anticipate. I believe that if we do a reasonable job of anticipating and accommodating the interests of an app store owners and their customers, the likelihood of any particular practice causing removal of your app is greatly diminished. You might even be allowed to download fonts. :) -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From bonnmike at gmail.com Sat Aug 12 15:35:57 2017 From: bonnmike at gmail.com (Mike Bonner) Date: Sat, 12 Aug 2017 13:35:57 -0600 Subject: on-rev servers In-Reply-To: <8bb6eefe-a6cb-0bd3-3910-0b2a028f1e84@gmail.com> References: <8bb6eefe-a6cb-0bd3-3910-0b2a028f1e84@gmail.com> Message-ID: My sites are up on diesel. ( http://thomascustomlures.com/ ) and I can get to the main on-rev page, but it looks like andres site is either down, or on a different server. (the on-rev page was SLOW to load) On Sat, Aug 12, 2017 at 12:48 PM, Richmond Mathewson via use-livecode < use-livecode at lists.runrev.com> wrote: > Are they dead, down, being maintained or otherwise as certainly > unable to get here: > > http://andregarzia.on-rev.com > > Richmond. > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From m.schonewille at economy-x-talk.com Sat Aug 12 15:50:21 2017 From: m.schonewille at economy-x-talk.com (Mark Schonewille) Date: Sat, 12 Aug 2017 21:50:21 +0200 Subject: on-rev servers In-Reply-To: <8bb6eefe-a6cb-0bd3-3910-0b2a028f1e84@gmail.com> References: <8bb6eefe-a6cb-0bd3-3910-0b2a028f1e84@gmail.com> Message-ID: I can still see your website. http://andregarzia.on-rev.com/richmond/home.html I just can't see Andre's website. Kind regards, Mark Schonewille http://economy-x-talk.com https://www.facebook.com/marksch Buy the most extensive book on the LiveCode language: http://livecodebeginner.economy-x-talk.com Op 12-Aug-17 om 20:48 schreef Richmond Mathewson via use-livecode: > Are they dead, down, being maintained or otherwise as certainly > unable to get here: > > http://andregarzia.on-rev.com > > Richmond. > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From brian at milby7.com Sat Aug 12 15:50:48 2017 From: brian at milby7.com (Brian Milby) Date: Sat, 12 Aug 2017 14:50:48 -0500 Subject: Forum: Waves of Russian Nonsense Message-ID: I guess we can use the "foe" feature to hide their posts (turns them into a single line). I'll see what it does to the digest shortly. > > On Aug 12, 2017 at 1:55 PM, wrote: > > > > Someone left the back door off the latch: bestdocs DilNeva and so it goes; and if everyone is "off" for their weekend it will keep going until we really are flooded. R. On 8/12/17 4:38 pm, Richmond Mathewson wrote: > The Forums are filling up quickly with a whole lot of nonsense about > cars in Russian (althought, oddly enough it seems to be coming from > the Ukraine). > > Richmond. _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode > > From richmondmathewson at gmail.com Sat Aug 12 15:55:13 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Sat, 12 Aug 2017 22:55:13 +0300 Subject: Forum: Waves of Russian Nonsense In-Reply-To: References: Message-ID: I don't know whether to laugh or cry; the latest "TERenist" is flooding the Forum with links to the Ukrainian anti-corruption authorities! Richmond. On 8/12/17 10:50 pm, Brian Milby via use-livecode wrote: > > > > I guess we can use the "foe" feature to hide their posts (turns them into a single line). I'll see what it does to the digest shortly. > > > > > > > >> >> On Aug 12, 2017 at 1:55 PM, wrote: >> >> >> >> Someone left the back door off the latch: bestdocs DilNeva and so it goes; and if everyone is "off" for their weekend it will keep going until we really are flooded. R. On 8/12/17 4:38 pm, Richmond Mathewson wrote: > The Forums are filling up quickly with a whole lot of nonsense about > cars in Russian (althought, oddly enough it seems to be coming from > the Ukraine). > > Richmond. _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode >> >> > > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From ambassador at fourthworld.com Sat Aug 12 16:20:10 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Sat, 12 Aug 2017 13:20:10 -0700 Subject: common code patterns In-Reply-To: <99F68D5C-3832-4BEA-8017-0F21BC0F5F6C@clearvisiontech.com> References: <99F68D5C-3832-4BEA-8017-0F21BC0F5F6C@clearvisiontech.com> Message-ID: Dan Friedman wrote: > Here?s my silly contribution. How many times do we write something > like this: > > put ?Are you sure you want to delete the image? && quote & myImageName > & quote && ??? into tPrompt > > I have a simple q() function in all my projects: > > function q inData > return (quote & inData & quote) > end q > > Now, I can simply do this: > > put ?Are you sure you want to delete the image? && q(myImageName) & > ??? into tPrompt > > Tiny, but mighty. :) The q function is handy, but handier still would be to have JavaScript's support for interchangeable single- and double-quotes to allow nesting, e.g.: put 'Hello there, Teddy "Roughrider" Roosevelt!' -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From ambassador at fourthworld.com Sat Aug 12 16:26:20 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Sat, 12 Aug 2017 13:26:20 -0700 Subject: Forum: Waves of Russian Nonsense In-Reply-To: References: Message-ID: <202d971f-fd70-5481-84fc-42093d90c55a@fourthworld.com> Richmond Mathewson wrote: > The Forums are filling up quickly with a whole lot of nonsense about > cars in Russian (althought, oddly enough it seems to be coming from > the Ukraine). Thank you for the report. In the future, please use the "Report Post" link near the upper-right of each post. That will flag it for moderation, where it will normally be handled quickly as soon as the next moderator shows up and does our customary "New Posts" to review. In this case (and the copycat later today) I banned the user but did not remove the posts. There were too many. In the past I used to hunt down individual posts and delete them, because that's all my moderator privileges allowed. Since then I've used PHPBB on other sites where I have full privileges, and PHPBB provides an option to delete all posts from a given user, a much better use of time. I've written Support to let them decide whether to elevate my privileges to allow me to efficiently remove the spam posts, or to user their own powers to do so. Hopefully that will be addressed shortly. -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From ambassador at fourthworld.com Sat Aug 12 16:48:26 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Sat, 12 Aug 2017 13:48:26 -0700 Subject: [OT] Draconian computer company policies, was: Mobile LC Apps Downloading Stacks After installation In-Reply-To: References: Message-ID: <20662efd-a3d3-2e6a-0fa7-55eefddc2e1a@fourthworld.com> Richmond Mathewson wrote: > So, I wonder why there is not a way of putting one's iPad app onot the > web in a way (and I don't mean via Cydia) > that will allow people to download it onto their tablets > independently, as one can do on an Android device? Because China. And maybe Singapore, and a few others. Android has an inappropriate reputation for malware, mostly due to unscrupulous activities of some vendors in those regions. True, given is vastly larger market size, there are more malware *attempts* on Android than iOS. But in terms of actual exploits the numbers are very close: most devices exploited have been altered from the default settings Google and Apple ship with. Some carriers in Asia aren't shipping true Android phones. What they're shipping are "Android-compatible", but they are not using the OS images provided by Google. Android is open source so that's allowable, but to use the Android trademark they need to be a member of the Android Alliance, which requires following Google's security guidelines. In countries like China, where intellectual property enforcement is more or less nonexistent, some even claim to be authentic "Android" devices. Many of these have their own app stores, and they have the built-in protection against side-loading turned off so allow those custom apps stores to work easily. While Google provides at least seven layers of security for apps distributed through Google Play, most of those are beyond the reach of side-loaded apps through these hastily tossed-together third-party app stores. So on the rarer day when you see a tech journalist talking about actual exploits rather than number of mere attempts, if you read past the headlines you'll find that most of those exploits are occurring in Asian and other markets on non-authentic Android-compatible devices, where Google's security mechanisms have been bypassed. In an ideal world, we'd recognize that everything connected to the Internet is vulnerable to one degree or another, and cybersecurity basics would be a required course in public school. Beyond the reach of any OS vendor lie a nearly infinite variety of ways people can endanger their privacy, data security, or even physical safety through a mix of ignorance and a nearly complete lack of guidance from gadget vendors (ever see a smart car dealer discuss how to avoid having your car hijacked while you're driving it?). But we don't live in an ideal world, and the average person apparently has little interest in investing the time needed to use Internet-connected devices safely (observe the widespread use of Facebook by people announcing their going on vacation, thus signaling to burglars which houses to target). So for now vendors at least try to compensate for the public's apparent disinterest in their own safety. Those who care deeply about using devices they have complete control over have plenty to choose from. Linux has become the de facto standard for most forms of computing, and its license explicitly allows use for any purpose whatsoever without restriction of any kind, all the way down to guaranteeing source code availability. -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From ahsoftware at sonic.net Sat Aug 12 16:53:57 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Sat, 12 Aug 2017 13:53:57 -0700 Subject: common code patterns In-Reply-To: References: <99F68D5C-3832-4BEA-8017-0F21BC0F5F6C@clearvisiontech.com> Message-ID: <9cf5960e-b04c-2393-714a-17d79c51bd26@sonic.net> On 08/12/2017 01:20 PM, Richard Gaskin via use-livecode wrote: > The q function is handy, but handier still would be to have JavaScript's > support for interchangeable single- and double-quotes to allow nesting, > e.g.: > > put 'Hello there, Teddy "Roughrider" Roosevelt!' > http://quality.livecode.com/show_bug.cgi?id=16941 -- Mark Wieder ahsoftware at gmail.com From mark at livecode.com Sat Aug 12 17:47:08 2017 From: mark at livecode.com (Mark Waddingham) Date: Sat, 12 Aug 2017 22:47:08 +0100 Subject: Forum: Waves of Russian Nonsense In-Reply-To: <202d971f-fd70-5481-84fc-42093d90c55a@fourthworld.com> References: <202d971f-fd70-5481-84fc-42093d90c55a@fourthworld.com> Message-ID: Thank you - I'm sure there will be no issue with giving you the relevant privileges. I know Heather has to deal with things like this on a regular basis and having others who are willing to assist can only help. Warmest Regards, Mark. Sent from my iPhone > On 12 Aug 2017, at 21:26, Richard Gaskin via use-livecode wrote: > > Richmond Mathewson wrote: > > > The Forums are filling up quickly with a whole lot of nonsense about > > cars in Russian (althought, oddly enough it seems to be coming from > > the Ukraine). > > Thank you for the report. In the future, please use the "Report Post" link near the upper-right of each post. That will flag it for moderation, where it will normally be handled quickly as soon as the next moderator shows up and does our customary "New Posts" to review. > > In this case (and the copycat later today) I banned the user but did not remove the posts. There were too many. In the past I used to hunt down individual posts and delete them, because that's all my moderator privileges allowed. Since then I've used PHPBB on other sites where I have full privileges, and PHPBB provides an option to delete all posts from a given user, a much better use of time. > > I've written Support to let them decide whether to elevate my privileges to allow me to efficiently remove the spam posts, or to user their own powers to do so. Hopefully that will be addressed shortly. > > -- > Richard Gaskin > Fourth World Systems > Software Design and Development for the Desktop, Mobile, and the Web > ____________________________________________________________________ > Ambassador at FourthWorld.com http://www.FourthWorld.com > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From brahma at hindu.org Sat Aug 12 19:10:09 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Sat, 12 Aug 2017 23:10:09 +0000 Subject: common code patterns In-Reply-To: <5788CD65-C092-46E2-810B-8B96340B0BDE@appisle.net> References: <004501d311f5$592fc940$0b8f5bc0$@net> <765F1581-ADB6-4BE5-ADF5-BB616F2D489A@byu.edu> <005e01d311ff$7c4c6370$74e52a50$@net> <2e9c6011-fc00-fc63-1bfd-1b58427c40d2@sonic.net> <5788CD65-C092-46E2-810B-8B96340B0BDE@appisle.net> Message-ID: Monte, you request is a bit opaque to me.. but FWIW -- to stay away from globals -- to break up logical "areas of work/services" into separate scripts -- to be able trace back to the original script I find myself doing a lot more of this: I find myself doing a lot of this; behavior_Listen # parent of the stack "listen" # which is serving as the controller/model for all things having to do with playlists etc. on playlist_SetCurrent pList put pList into sTargetPlayList end playlist_SetCurrent function playlist_GetCurrent return sCurrentPlayListA["playListTitle"] end playlist_GetCurrent # so then in this script: behavior_ListenSelectPlay # behavior attached to the card in this stack # which is responsible for all things UI/UX related. i.e the "view manager" if you will I can at anytime do a kind of "reset" with put playlist_GetCurrent() into tPlaylist This architecture is all a bit new to me but turns out to be very functional and pretty transparent? so that "getter setter" thing? is that what you are looking for? On 8/10/17, 3:50 PM, "use-livecode on behalf of Monte Goulding via use-livecode" wrote: Basically anything where you follow a common pattern to do a thing but you can?t abstract away so you don?t have to write the pattern any more. From monte at appisle.net Sat Aug 12 19:23:29 2017 From: monte at appisle.net (Monte Goulding) Date: Sun, 13 Aug 2017 09:23:29 +1000 Subject: Speed of control lookup (Was Re: Parent of Target) In-Reply-To: References: <831B7861-DDB4-4A1C-A40B-CFC5BE05194F@appisle.net> Message-ID: <5B3BDE27-CF97-4025-AC43-3C7129BCC912@appisle.net> > On 12 Aug 2017, at 7:26 pm, Mark Waddingham via use-livecode wrote: > > I'd be happier about introducing a new id if we could solve the multiple mainstack with same name issue too (or at least get a step closer to it) Hmm? what about giving stacks a meaningful ID? stack ID is completely useless right now as far as I can tell. What is currently the stack ID could be just an internal thing to maintain the ID sequence and stacks could be assigned a read only session ID. I very much doubt such a change would break any code but I guess I could be wrong there? Perhaps better to make these references storable would be a UUID (ducks ;-). Maybe if _only_ stacks had a UUID they would be more palatable? Cheers Monte From scott at elementarysoftware.com Sat Aug 12 20:16:12 2017 From: scott at elementarysoftware.com (scott at elementarysoftware.com) Date: Sat, 12 Aug 2017 17:16:12 -0700 Subject: Android Virtual Device Application Binary Interface Message-ID: <96BE8EB0-DD3F-4891-AEB1-C4E030EC4325@elementarysoftware.com> When testing Android builds on a virtual device, is it necessary to use devices created with an ARM abi? Whenever I try a virtual device created with the default (much faster) x86 abi it results in an error when trying to load the .apk onto the virtual device. INSTALL_FAILED_NO_MATCHING_ABIS: Failed to extract native libraries, res=-113 LiveCode Business 8.1.6 Android Studio 2.3.3 Mac OSX 10.12.6 Sierra Scott Morrow Elementary Software (Now with 20% less chalk dust!) web http://elementarysoftware.com/ email scott at elementarysoftware.com office 1-800-615-0867 ------------------------------------------------------ From monte at appisle.net Sat Aug 12 22:07:37 2017 From: monte at appisle.net (Monte Goulding) Date: Sun, 13 Aug 2017 12:07:37 +1000 Subject: Android Virtual Device Application Binary Interface In-Reply-To: <96BE8EB0-DD3F-4891-AEB1-C4E030EC4325@elementarysoftware.com> References: <96BE8EB0-DD3F-4891-AEB1-C4E030EC4325@elementarysoftware.com> Message-ID: > On 13 Aug 2017, at 10:16 am, scott--- via use-livecode wrote: > > When testing Android builds on a virtual device, is it necessary to use devices created with an ARM abi? Yes Cheers Monte From bobsneidar at iotecdigital.com Sat Aug 12 22:45:00 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Sun, 13 Aug 2017 02:45:00 +0000 Subject: Parent of Target In-Reply-To: <861b4e0c-aa36-19d3-a79a-a7f528e52463@fourthworld.com> References: <861b4e0c-aa36-19d3-a79a-a7f528e52463@fourthworld.com> Message-ID: <9D23BF33-F4A3-4D66-8F28-7A53C648F00F@iotecdigital.com> AHH HAAH HAHAHAA ! I have often thought of pointing that out. :-) Bob S > On Aug 10, 2017, at 12:10 , Richard Gaskin via use-livecode wrote: > > Also "teh" is not a recognized token. :) From waprothero at gmail.com Sun Aug 13 00:57:13 2017 From: waprothero at gmail.com (William Prothero) Date: Sat, 12 Aug 2017 21:57:13 -0700 Subject: Background behavior use Message-ID: <6350F585-91FB-44FF-9F4D-9514DCCF442B@gmail.com> Folks: I?m working with LC 8.1.6 and trying to set a card element as a background behavior, so it appears on all cards. Is this capability gone? I can?t find how to set it. Tnx, Bill P William A. Prothero http://earthlearningsolution.org/ From waprothero at gmail.com Sun Aug 13 00:59:36 2017 From: waprothero at gmail.com (William Prothero) Date: Sat, 12 Aug 2017 21:59:36 -0700 Subject: LC 9.0.0 dp8 won't launch iOS simulator In-Reply-To: <562768b7-8027-4f5f-a456-82b9dbacb667@email.android.com> References: <562768b7-8027-4f5f-a456-82b9dbacb667@email.android.com> Message-ID: <2901DDDF-FDFC-46A3-B282-FAE8E0964275@gmail.com> This works! Very easy once you know the location of the alligators in the swamp. Best, Bill P > On Aug 11, 2017, at 10:11 PM, Evergreen Info wrote: > > I kept getting all sorts of weird Xcode related problems in until I started doing this. > > 1] Keep only one version of Xcode in the applications folder named Xcode.app. > 2] Create an OldXcodeVersions folder. > 3] When upgrading: > A] Move Xcode.app from applications folder to the OldXcodeVersions folder and rename it to Xcode.x.y.app. > B] Download the new Xcode from the developer portal. > C] Open up downloads and install Xcode into the applications folder.. > D] Open up the new Xcode.app > E] In the LC prefs select...add a new Xcode. > F] Add the Xcode that you just moved and renamed in A and B. This give you access to older SDKs and simulators. > 4] Never upgrade Xcode. > 5] Never install from App Store . > 6] Trash any versions of Xcode that were upgrades and redownload them fresh from developers portal. > 7] Open the Xcode versions one at a time named Xcode.app in the applications folder and then move to the OldXcodeVersions folder and rename. > > > 6 and 7 is pain but was worth it. > > The App store honks at you for a few days until it figures out you have the most recent version of Xcode installed. > > Your mileage may vary. > > On Aug 12, 2017 12:20 AM, William Prothero via use-livecode wrote: > Folks: > I?m trying to work on a new app that will send an sms message in iOS. But, as it usually happens when I don?t use the simulator and XCode for a month or so, new version come along and chaos seems to ensue. I had all of this working in LC 8.1.4. > > I?ve been working with LC 8.2.6 and LC9.0.0 (dp8) I downloaded XCode 8.3.3, but have XCode 8.3 and 8.2 installed. When I started, LC 8.2.6 would launch the simulator ok. But 9.0.0 wouldn?t. After fiddling around a bit, LC 8.2.6 would no longer launch the simulator. I get the following error message on all versions, no matter what I put into the LiveCode preferences for XCode: > > ?Unable to start simulator 634,0,0,notoolset 573,220,1,revPhoneSetSimulatorSDK > > I deleted the LC Preferences files and it didn?t fix anything. > > So?. I have 3 versions of XCode (8.2, 8.3, 8.3.3) in my application folder. These have been downloaded from the developer portal. Is it ok to have all of them in my applications folder, then enter them into the LC Preferences->mobile Support pane? Or will it mix up software from different versions of XCode in my app folder? > > Do I need to download additional tools for XCode? > > This is extremely frustrating. I did note that there was a red/green box in the LC mobile support pane in preferences, which should indicate the all the XCode support files are correct for the running version of LC. This doesn?t seem to be the case, though. It does respond to the version loaded, though, which is something. > > For me, this is the most frustrating part of livecode. Can?t more be done to check configurations and provide clear and complete error messages when things aren?t right? > > Best, > Bill P > > William A. Prothero > http://earthlearningsolution.org/ > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > > From ahsoftware at sonic.net Sun Aug 13 01:31:54 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Sat, 12 Aug 2017 22:31:54 -0700 Subject: Parent of Target In-Reply-To: <861b4e0c-aa36-19d3-a79a-a7f528e52463@fourthworld.com> References: <861b4e0c-aa36-19d3-a79a-a7f528e52463@fourthworld.com> Message-ID: <44c6e7ae-003c-3acf-ee5a-ee540895aad9@sonic.net> On 08/10/2017 12:10 PM, Richard Gaskin via use-livecode wrote: > Indeed - a very poor example on my part. Also "teh" is not a recognized > token. :) Yes, but if we're looking for common code patterns... -- Mark Wieder ahsoftware at gmail.com From tore.nilsen at me.com Sun Aug 13 05:54:48 2017 From: tore.nilsen at me.com (Tore Nilsen) Date: Sun, 13 Aug 2017 11:54:48 +0200 Subject: Background behavior use In-Reply-To: <6350F585-91FB-44FF-9F4D-9514DCCF442B@gmail.com> References: <6350F585-91FB-44FF-9F4D-9514DCCF442B@gmail.com> Message-ID: <2192E396-4A35-4790-8548-9850F9D1307B@me.com> You must make a group out of the element you would like to appear on all cards, then set the group to behave like a background. You can turn a single object into a group. Regards Tore Nilsen > 13. aug. 2017 kl. 06:57 skrev William Prothero via use-livecode : > > Folks: > I?m working with LC 8.1.6 and trying to set a card element as a background behavior, so it appears on all cards. Is this capability gone? I can?t find how to set it. > > Tnx, > Bill P > > > > William A. Prothero > http://earthlearningsolution.org/ > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From prothero at earthlearningsolutions.org Sun Aug 13 10:11:38 2017 From: prothero at earthlearningsolutions.org (prothero at earthlearningsolutions.org) Date: Sun, 13 Aug 2017 07:11:38 -0700 Subject: Background behavior use In-Reply-To: <2192E396-4A35-4790-8548-9850F9D1307B@me.com> References: <6350F585-91FB-44FF-9F4D-9514DCCF442B@gmail.com> <2192E396-4A35-4790-8548-9850F9D1307B@me.com> Message-ID: <978DB169-C6E0-49A7-A243-A4A54773D3C6@earthlearningsolutions.org> Thanks, Tor. I must be getting rusty. Best, Bill P William Prothero http://es.earthednet.org > On Aug 13, 2017, at 2:54 AM, Tore Nilsen via use-livecode wrote: > > You must make a group out of the element you would like to appear on all cards, then set the group to behave like a background. You can turn a single object into a group. > > Regards > Tore Nilsen > > >> 13. aug. 2017 kl. 06:57 skrev William Prothero via use-livecode : >> >> Folks: >> I?m working with LC 8.1.6 and trying to set a card element as a background behavior, so it appears on all cards. Is this capability gone? I can?t find how to set it. >> >> Tnx, >> Bill P >> >> >> >> William A. Prothero >> http://earthlearningsolution.org/ >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From klaus at major-k.de Sun Aug 13 11:35:47 2017 From: klaus at major-k.de (Klaus major-k) Date: Sun, 13 Aug 2017 17:35:47 +0200 Subject: Forum: Waves of Russian Nonsense In-Reply-To: References: <202d971f-fd70-5481-84fc-42093d90c55a@fourthworld.com> Message-ID: > Am 12.08.2017 um 23:47 schrieb Mark Waddingham via use-livecode : > > Thank you - I'm sure there will be no issue with giving you the relevant privileges. I had been asking for this a long time ago, but obviously the mothership did not want to trust a long time user (since 1999) who already has (limited) admin permissions for a couple of years on the forum, THAT far. So I deleted the 49 slavic spam postings manually a couple of minutes ago... > I know Heather has to deal with things like this on a regular basis and having others who are willing to assist can only help. > > Warmest Regards, > > Mark. > > Sent from my iPhone > >> On 12 Aug 2017, at 21:26, Richard Gaskin via use-livecode wrote: >> >> Richmond Mathewson wrote: >> >>> The Forums are filling up quickly with a whole lot of nonsense about >>> cars in Russian (althought, oddly enough it seems to be coming from >>> the Ukraine). >> >> Thank you for the report. In the future, please use the "Report Post" link near the upper-right of each post. That will flag it for moderation, where it will normally be handled quickly as soon as the next moderator shows up and does our customary "New Posts" to review. >> >> In this case (and the copycat later today) I banned the user but did not remove the posts. There were too many. In the past I used to hunt down individual posts and delete them, because that's all my moderator privileges allowed. Since then I've used PHPBB on other sites where I have full privileges, and PHPBB provides an option to delete all posts from a given user, a much better use of time. >> >> I've written Support to let them decide whether to elevate my privileges to allow me to efficiently remove the spam posts, or to user their own powers to do so. Hopefully that will be addressed shortly. >> >> -- >> Richard Gaskin >> Fourth World Systems >> Software Design and Development for the Desktop, Mobile, and the Web Best Klaus -- Klaus Major http://www.major-k.de klaus at major-k.de From dan at clearvisiontech.com Sun Aug 13 11:45:34 2017 From: dan at clearvisiontech.com (Dan Friedman) Date: Sun, 13 Aug 2017 15:45:34 +0000 Subject: Android App Woes Message-ID: <6FBEB883-F9E0-4E3E-9794-8C39E86B47BD@clearvisiontech.com> I have built my android app with LC 8.1.5. It runs fine on the device. You then hit the home button to return to the OS. Tap the app icon again and you get ?Unfortunatly, [appName] has stopped.?. Tap the icon again and it does a complete reboot of the app. Apps made in LC 7 did not have this issue, they stayed running in the background ? like an app should. Is there a trick to getting an Android app from LC 8.1.5 to behave like it should? I can?t deliver an app to my client that (a) doesn?t stay alive in the background, and (b) crashes every other launch. Anyone have any insight on this?? -Dan From jacque at hyperactivesw.com Sun Aug 13 12:20:59 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Sun, 13 Aug 2017 11:20:59 -0500 Subject: Android App Woes In-Reply-To: <6FBEB883-F9E0-4E3E-9794-8C39E86B47BD@clearvisiontech.com> References: <6FBEB883-F9E0-4E3E-9794-8C39E86B47BD@clearvisiontech.com> Message-ID: <15ddc65fe10.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Probably related : http://quality.livecode.com/show_bug.cgi?id=19420 -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com On August 13, 2017 10:47:27 AM Dan Friedman via use-livecode wrote: > I have built my android app with LC 8.1.5. It runs fine on the device. > You then hit the home button to return to the OS. Tap the app icon again > and you get ?Unfortunatly, [appName] has stopped.?. Tap the icon again and > it does a complete reboot of the app. Apps made in LC 7 did not have this > issue, they stayed running in the background ? like an app should. Is > there a trick to getting an Android app from LC 8.1.5 to behave like it should? > > I can?t deliver an app to my client that (a) doesn?t stay alive in the > background, and (b) crashes every other launch. > > Anyone have any insight on this?? > > -Dan > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From rdimola at evergreeninfo.net Sun Aug 13 12:49:34 2017 From: rdimola at evergreeninfo.net (Ralph DiMola) Date: Sun, 13 Aug 2017 12:49:34 -0400 Subject: LC 9.0.0 dp8 won't launch iOS simulator In-Reply-To: <2901DDDF-FDFC-46A3-B282-FAE8E0964275@gmail.com> References: <562768b7-8027-4f5f-a456-82b9dbacb667@email.android.com> <2901DDDF-FDFC-46A3-B282-FAE8E0964275@gmail.com> Message-ID: <003801d31454$24fc76d0$6ef56470$@net> Bill, Great!. I just noticed that the original did not hit the use list. I composed that on my phone and it seems that email account will not post to the lists anymore. I'll get Heather to fix that. One addition... The alligator (OldXcodeVersions folder) should be nowhere near the applications folder. Preferably "in a galaxy far far away". My First stab was as a sub-folder in applications. I had a problem (could/could not have been related). I moved OldXcodeVersions folder to the desktop and there it stays. Ralph DiMola IT Director Evergreen Information Services rdimola at evergreeninfo.net -----Original Message----- From: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] On Behalf Of William Prothero via use-livecode Sent: Sunday, August 13, 2017 1:00 AM To: Use-livecode Use-livecode Cc: William Prothero Subject: Re: LC 9.0.0 dp8 won't launch iOS simulator This works! Very easy once you know the location of the alligators in the swamp. Best, Bill P > On Aug 11, 2017, at 10:11 PM, Evergreen Info wrote: > > I kept getting all sorts of weird Xcode related problems in until I started doing this. > > 1] Keep only one version of Xcode in the applications folder named Xcode.app. > 2] Create an OldXcodeVersions folder. > 3] When upgrading: > A] Move Xcode.app from applications folder to the OldXcodeVersions folder and rename it to Xcode.x.y.app. > B] Download the new Xcode from the developer portal. > C] Open up downloads and install Xcode into the applications folder.. > D] Open up the new Xcode.app > E] In the LC prefs select...add a new Xcode. > F] Add the Xcode that you just moved and renamed in A and B. This give you access to older SDKs and simulators. > 4] Never upgrade Xcode. > 5] Never install from App Store . > 6] Trash any versions of Xcode that were upgrades and redownload them fresh from developers portal. > 7] Open the Xcode versions one at a time named Xcode.app in the applications folder and then move to the OldXcodeVersions folder and rename. > > > 6 and 7 is pain but was worth it. > > The App store honks at you for a few days until it figures out you have the most recent version of Xcode installed. > > Your mileage may vary. > > On Aug 12, 2017 12:20 AM, William Prothero via use-livecode wrote: > Folks: > I?m trying to work on a new app that will send an sms message in iOS. But, as it usually happens when I don?t use the simulator and XCode for a month or so, new version come along and chaos seems to ensue. I had all of this working in LC 8.1.4. > > I?ve been working with LC 8.2.6 and LC9.0.0 (dp8) I downloaded XCode 8.3.3, but have XCode 8.3 and 8.2 installed. When I started, LC 8.2.6 would launch the simulator ok. But 9.0.0 wouldn?t. After fiddling around a bit, LC 8.2.6 would no longer launch the simulator. I get the following error message on all versions, no matter what I put into the LiveCode preferences for XCode: > > ?Unable to start simulator 634,0,0,notoolset 573,220,1,revPhoneSetSimulatorSDK > > I deleted the LC Preferences files and it didn?t fix anything. > > So?. I have 3 versions of XCode (8.2, 8.3, 8.3.3) in my application folder. These have been downloaded from the developer portal. Is it ok to have all of them in my applications folder, then enter them into the LC Preferences->mobile Support pane? Or will it mix up software from different versions of XCode in my app folder? > > Do I need to download additional tools for XCode? > > This is extremely frustrating. I did note that there was a red/green box in the LC mobile support pane in preferences, which should indicate the all the XCode support files are correct for the running version of LC. This doesn?t seem to be the case, though. It does respond to the version loaded, though, which is something. > > For me, this is the most frustrating part of livecode. Can?t more be done to check configurations and provide clear and complete error messages when things aren?t right? > > Best, > Bill P > > William A. Prothero > http://earthlearningsolution.org/ > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > > _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode From rdimola at evergreeninfo.net Sun Aug 13 12:57:56 2017 From: rdimola at evergreeninfo.net (Ralph DiMola) Date: Sun, 13 Aug 2017 12:57:56 -0400 Subject: Android App Woes In-Reply-To: <15ddc65fe10.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> References: <6FBEB883-F9E0-4E3E-9794-8C39E86B47BD@clearvisiontech.com> <15ddc65fe10.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Message-ID: <003901d31455$4fcac1e0$ef6045a0$@net> The LC team does a good job at triaging the bug reports but a repeatable 3 line stack that crashes should be near if not in the front of the queue. Ralph DiMola IT Director Evergreen Information Services rdimola at evergreeninfo.net -----Original Message----- From: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] On Behalf Of J. Landman Gay via use-livecode Sent: Sunday, August 13, 2017 12:21 PM To: How to use LiveCode Cc: J. Landman Gay Subject: Re: Android App Woes Probably related : http://quality.livecode.com/show_bug.cgi?id=19420 -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com On August 13, 2017 10:47:27 AM Dan Friedman via use-livecode wrote: > I have built my android app with LC 8.1.5. It runs fine on the device. > You then hit the home button to return to the OS. Tap the app icon > again and you get ?Unfortunatly, [appName] has stopped.?. Tap the icon again and > it does a complete reboot of the app. Apps made in LC 7 did not have this > issue, they stayed running in the background ? like an app should. Is > there a trick to getting an Android app from LC 8.1.5 to behave like it should? > > I can?t deliver an app to my client that (a) doesn?t stay alive in the > background, and (b) crashes every other launch. > > Anyone have any insight on this?? > > -Dan > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode From jacque at hyperactivesw.com Sun Aug 13 13:16:59 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Sun, 13 Aug 2017 12:16:59 -0500 Subject: Android App Woes In-Reply-To: <003901d31455$4fcac1e0$ef6045a0$@net> References: <6FBEB883-F9E0-4E3E-9794-8C39E86B47BD@clearvisiontech.com> <15ddc65fe10.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <003901d31455$4fcac1e0$ef6045a0$@net> Message-ID: <15ddc9946f8.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> There's more to it than just the script. I thought the problem was just in issuing the quit command but Dan can reproduce it using the Home key (and I bet the Recents key would do the same.) It looks like the engine is unloading libraries in all these cases and not restoring them on resume. I didn't test it but front and backscripts might behave the same way. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com On August 13, 2017 12:00:23 PM Ralph DiMola via use-livecode wrote: > The LC team does a good job at triaging the bug reports but a repeatable 3 > line stack that crashes should be near if not in the front of the queue. > > Ralph DiMola > IT Director > Evergreen Information Services > rdimola at evergreeninfo.net > > > -----Original Message----- > From: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] On Behalf > Of J. Landman Gay via use-livecode > Sent: Sunday, August 13, 2017 12:21 PM > To: How to use LiveCode > Cc: J. Landman Gay > Subject: Re: Android App Woes > > Probably related : > > http://quality.livecode.com/show_bug.cgi?id=19420 > > -- > Jacqueline Landman Gay | jacque at hyperactivesw.com > HyperActive Software | http://www.hyperactivesw.com > > > > On August 13, 2017 10:47:27 AM Dan Friedman via use-livecode > wrote: > >> I have built my android app with LC 8.1.5. It runs fine on the device. >> You then hit the home button to return to the OS. Tap the app icon >> again and you get ?Unfortunatly, [appName] has stopped.?. Tap the icon >> again and >> it does a complete reboot of the app. Apps made in LC 7 did not have this >> issue, they stayed running in the background ? like an app should. Is >> there a trick to getting an Android app from LC 8.1.5 to behave like it should? >> >> I can?t deliver an app to my client that (a) doesn?t stay alive in the >> background, and (b) crashes every other launch. >> >> Anyone have any insight on this?? >> >> -Dan >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode > > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From dan at clearvisiontech.com Sun Aug 13 14:05:15 2017 From: dan at clearvisiontech.com (Dan Friedman) Date: Sun, 13 Aug 2017 18:05:15 +0000 Subject: Android App Woes - Update In-Reply-To: <<15ddc65fe10.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com>> Message-ID: <02E6BD95-BEF8-4370-8969-E5F3F9A4AF8D@clearvisiontech.com> I took Ralph?s advice and made a 0 line stack to try to recreate the issue. To my astonishment, the app didn?t have the same problem! So, I went back to my project and started to trace what I have in my app that might be causing the problem. After a while, I discovered that if I do not enable acceleratedRendering, the app does not bail on suspend and stays in memory. Problem solved! Except that I can?t leave acceleratedRendering off. All the scrollers stutter horribly! I went back the test app and enabled acceleratedRendering. But, it doesn?t have the same problem. I am most puzzled. Help! -Dan > I have built my android app with LC 8.1.5. It runs fine on the device. > You then hit the home button to return to the OS. Tap the app icon > again and you get ?Unfortunatly, [appName] has stopped.?. Tap the icon again and > it does a complete reboot of the app. Apps made in LC 7 did not have this > issue, they stayed running in the background ? like an app should. Is > there a trick to getting an Android app from LC 8.1.5 to behave like it should? > > I can?t deliver an app to my client that (a) doesn?t stay alive in the > background, and (b) crashes every other launch. > > Anyone have any insight on this?? > > -Dan From jacque at hyperactivesw.com Sun Aug 13 15:18:00 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Sun, 13 Aug 2017 14:18:00 -0500 Subject: Android App Woes - Update In-Reply-To: <02E6BD95-BEF8-4370-8969-E5F3F9A4AF8D@clearvisiontech.com> References: <02E6BD95-BEF8-4370-8969-E5F3F9A4AF8D@clearvisiontech.com> Message-ID: <15ddd081240.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Please enter a bug report about this, it's a different issue than the one I wrote up. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com On August 13, 2017 1:07:12 PM Dan Friedman via use-livecode wrote: > I took Ralph?s advice and made a 0 line stack to try to recreate the issue. > To my astonishment, the app didn?t have the same problem! So, I went > back to my project and started to trace what I have in my app that might be > causing the problem. After a while, I discovered that if I do not enable > acceleratedRendering, the app does not bail on suspend and stays in memory. > Problem solved! Except that I can?t leave acceleratedRendering off. All > the scrollers stutter horribly! > > I went back the test app and enabled acceleratedRendering. But, it doesn?t > have the same problem. I am most puzzled. > > Help! > > -Dan > > > >> I have built my android app with LC 8.1.5. It runs fine on the device. >> You then hit the home button to return to the OS. Tap the app icon >> again and you get ?Unfortunatly, [appName] has stopped.?. Tap the icon >> again and >> it does a complete reboot of the app. Apps made in LC 7 did not have this >> issue, they stayed running in the background ? like an app should. Is >> there a trick to getting an Android app from LC 8.1.5 to behave like it should? >> >> I can?t deliver an app to my client that (a) doesn?t stay alive in the >> background, and (b) crashes every other launch. >> >> Anyone have any insight on this?? >> >> -Dan > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From brahma at hindu.org Sun Aug 13 16:33:13 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Sun, 13 Aug 2017 20:33:13 +0000 Subject: Android App Woes In-Reply-To: <15ddc9946f8.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> References: <6FBEB883-F9E0-4E3E-9794-8C39E86B47BD@clearvisiontech.com> <15ddc65fe10.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <003901d31455$4fcac1e0$ef6045a0$@net> <15ddc9946f8.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Message-ID: <9E732A80-8C25-422A-B071-F6938F3E4407@hindu.org> I also getting reports from from one Beta tester of Siva Siva app of the app stopping after hitting the home key. and also the square key (what is that on Android, some app switcher?) this is a but unclear? I need to talk to her.. but these are all related symptoms on Android: " I just tried opening the app again and it worked fine first time. I then went into listening, [BR: this is a stack dedicated to play audio] Gurudeva's 1970 course, and exited with "circle" back to my home screen. From my home screen I select the app page, then Siva Siva app and I get the stop message. The, going to "Listen" [stack], hit "square", do this email, square, select Siva sheet, stopped, then come back to it and it opens to pg where listening is a choice. It works to do this if I am at listening option pg vs actually listening to something. [BR: What this means is she is on a playlist screen, but has not actually tapped and no mobile player is yet created? so the above the app is crashing, in the above scenarios, when a mobile audio player is "up" Then later she writes' "I have been opening the Siva Siva app from my app collection. When I do this it doesn't open and it repeatedly tells me it has stopped but if I click ok on the message and then on the app again it opens just fine." Not being and android user I only just today try the "square" button and yup. the app crashes (stops) I will be pushing the latest to nightly tonite, and then asking HQ to look at it? but this is not a 3 line stack! But this all feels like it's in the same wheelhouse. BR From ahsoftware at sonic.net Sun Aug 13 16:50:37 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Sun, 13 Aug 2017 13:50:37 -0700 Subject: common code patterns In-Reply-To: References: <99F68D5C-3832-4BEA-8017-0F21BC0F5F6C@clearvisiontech.com> Message-ID: <128524a1-c62c-d82b-05e7-8df8dbf72178@sonic.net> On 08/12/2017 01:20 PM, Richard Gaskin via use-livecode wrote: > The q function is handy, but handier still would be to have JavaScript's > support for interchangeable single- and double-quotes to allow nesting, > e.g.: > > put 'Hello there, Teddy "Roughrider" Roosevelt!' > I realize it's not reviewed/accepted yet (and may not be), but Monte's done something impressive here: https://github.com/livecode/livecode/pull/5781#issuecomment-322065901 -- Mark Wieder ahsoftware at gmail.com From monte at appisle.net Sun Aug 13 17:26:52 2017 From: monte at appisle.net (Monte Goulding) Date: Mon, 14 Aug 2017 07:26:52 +1000 Subject: common code patterns In-Reply-To: <128524a1-c62c-d82b-05e7-8df8dbf72178@sonic.net> References: <99F68D5C-3832-4BEA-8017-0F21BC0F5F6C@clearvisiontech.com> <128524a1-c62c-d82b-05e7-8df8dbf72178@sonic.net> Message-ID: > On 14 Aug 2017, at 6:50 am, Mark Wieder via use-livecode wrote: > > I realize it's not reviewed/accepted yet (and may not be), but Monte's done something impressive here: > > https://github.com/livecode/livecode/pull/5781#issuecomment-322065901 Ha ?(and may not be)? should really be ?(and is really really unlikely to be)? but still it was an interesting thing to have a play with. Cheers Monte From rdimola at evergreeninfo.net Sun Aug 13 18:08:14 2017 From: rdimola at evergreeninfo.net (Ralph DiMola) Date: Sun, 13 Aug 2017 18:08:14 -0400 Subject: Android App Woes In-Reply-To: <9E732A80-8C25-422A-B071-F6938F3E4407@hindu.org> References: <6FBEB883-F9E0-4E3E-9794-8C39E86B47BD@clearvisiontech.com> <15ddc65fe10.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <003901d31455$4fcac1e0$ef6045a0$@net> <15ddc9946f8.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <9E732A80-8C25-422A-B071-F6938F3E4407@hindu.org> Message-ID: <001f01d31480$a96c1ac0$fc445040$@net> I think Dan's onto something with the accelerated rendering. I've done some testing and it's not conclusive yet. I think if you have accelerated rendering on AND you are on a card with a scrolling control(dynamic maybe?) That is when you can't resume without a crash. I will look closer when I get back to the office. Ralph DiMola IT Director Evergreen Information Services rdimola at evergreeninfo.net -----Original Message----- From: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] On Behalf Of Sannyasin Brahmanathaswami via use-livecode Sent: Sunday, August 13, 2017 4:33 PM To: How to use LiveCode Cc: Sannyasin Brahmanathaswami Subject: Re: Android App Woes I also getting reports from from one Beta tester of Siva Siva app of the app stopping after hitting the home key. and also the square key (what is that on Android, some app switcher?) this is a but unclear? I need to talk to her.. but these are all related symptoms on Android: " I just tried opening the app again and it worked fine first time. I then went into listening, [BR: this is a stack dedicated to play audio] Gurudeva's 1970 course, and exited with "circle" back to my home screen. From my home screen I select the app page, then Siva Siva app and I get the stop message. The, going to "Listen" [stack], hit "square", do this email, square, select Siva sheet, stopped, then come back to it and it opens to pg where listening is a choice. It works to do this if I am at listening option pg vs actually listening to something. [BR: What this means is she is on a playlist screen, but has not actually tapped and no mobile player is yet created? so the above the app is crashing, in the above scenarios, when a mobile audio player is "up" Then later she writes' "I have been opening the Siva Siva app from my app collection. When I do this it doesn't open and it repeatedly tells me it has stopped but if I click ok on the message and then on the app again it opens just fine." Not being and android user I only just today try the "square" button and yup. the app crashes (stops) I will be pushing the latest to nightly tonite, and then asking HQ to look at it? but this is not a 3 line stack! But this all feels like it's in the same wheelhouse. BR _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode From jacque at hyperactivesw.com Sun Aug 13 18:22:04 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Sun, 13 Aug 2017 17:22:04 -0500 Subject: Android App Woes In-Reply-To: <001f01d31480$a96c1ac0$fc445040$@net> References: <6FBEB883-F9E0-4E3E-9794-8C39E86B47BD@clearvisiontech.com> <15ddc65fe10.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <003901d31455$4fcac1e0$ef6045a0$@net> <15ddc9946f8.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <9E732A80-8C25-422A-B071-F6938F3E4407@hindu.org> <001f01d31480$a96c1ac0$fc445040$@net> Message-ID: <36781fce-3382-c7d1-e301-1affffe9833b@hyperactivesw.com> It might be accelerated rendering, but it could also be the bug where libraries are unloaded and not restored. That's the bug I linked to. There's no good workaround for it. Since the Siva app uses libraries almost exclusively, it would certainly be affected. BR: the "cicle" is the Home key and the "square" is the "recent apps" key (the app switcher.) Neither of these provide any messages, so you can't trap for them. Only the backKey sends a message. This is a problem we can't fix in scripts. The only solution is not to use libraries (or acceleratedRendering, apparently.) On 8/13/17 5:08 PM, Ralph DiMola via use-livecode wrote: > I think Dan's onto something with the accelerated rendering. > I've done some testing and it's not conclusive yet. I think if you have accelerated rendering on AND you are on a card with a scrolling control(dynamic maybe?) That is when you can't resume without a crash. I will look closer when I get back to the office. > > Ralph DiMola > IT Director > Evergreen Information Services > rdimola at evergreeninfo.net > > -----Original Message----- > From: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] On Behalf Of Sannyasin Brahmanathaswami via use-livecode > Sent: Sunday, August 13, 2017 4:33 PM > To: How to use LiveCode > Cc: Sannyasin Brahmanathaswami > Subject: Re: Android App Woes > > I also getting reports from from one Beta tester of Siva Siva app of the app stopping after hitting the home key. and also the square key (what is that on Android, some app switcher?) > > this is a but unclear? I need to talk to her.. but these are all related symptoms on Android: > > " I just tried opening the app again and it worked fine first time. > > I then went into listening, [BR: this is a stack dedicated to play audio] Gurudeva's 1970 course, and exited with "circle" back to my home screen. From my home screen I select the app page, then Siva Siva app and I get the stop message. > > The, going to "Listen" [stack], hit "square", do this email, square, select Siva sheet, stopped, then come back to it and it opens to pg where listening is a choice. > > It works to do this if I am at listening option pg vs actually listening to something. > [BR: What this means is she is on a playlist screen, but has not actually tapped and no mobile player is yet created? so the above the app is crashing, in the above scenarios, when a mobile audio player is "up" > > Then later she writes' > > "I have been opening the Siva Siva app from my app collection. When I do this it doesn't open and it repeatedly tells me it has stopped but if I click ok on the message and then on the app again it opens just fine." > > Not being and android user I only just today try the "square" button and yup. the app crashes (stops) > > > I will be pushing the latest to nightly tonite, and then asking HQ to look at it? but this is not a 3 line stack! But this all feels like it's in the same wheelhouse. > > BR > > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com From brahma at hindu.org Sun Aug 13 18:58:39 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Sun, 13 Aug 2017 22:58:39 +0000 Subject: Android App Woes In-Reply-To: <36781fce-3382-c7d1-e301-1affffe9833b@hyperactivesw.com> References: <6FBEB883-F9E0-4E3E-9794-8C39E86B47BD@clearvisiontech.com> <15ddc65fe10.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <003901d31455$4fcac1e0$ef6045a0$@net> <15ddc9946f8.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <9E732A80-8C25-422A-B071-F6938F3E4407@hindu.org> <001f01d31480$a96c1ac0$fc445040$@net> <36781fce-3382-c7d1-e301-1affffe9833b@hyperactivesw.com> Message-ID: <05D27E39-877E-4B0F-8C8A-2D3D894813A3@hindu.org> This is a problem we can't fix in scripts. The only solution is not to use libraries (or acceleratedRendering, apparently.) Ouch? seriously? Clearly "unacceptable" in a product that makes the deployment claims that LC does. Hopefully HQ will put this on the top priority. I'm going to the iOS app story this week, already getting "rave reviews" from our iOS beta testers. And the rest of the world (which is huge) will be clamoring for the Android version, so we have to hold off promotion until this is all working. Brahmanathaswami From dan at clearvisiontech.com Mon Aug 14 00:54:08 2017 From: dan at clearvisiontech.com (Dan Friedman) Date: Mon, 14 Aug 2017 04:54:08 +0000 Subject: Android App Woes In-Reply-To: <<15ddd081240.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com>> Message-ID: <11ED8AD0-2E29-42D0-9759-6DF13765EEA9@clearvisiontech.com> Jacque, I don?t think I can make a bug report yet. I don?t have it isolated outside my project; which LC will surely tell me to do! I?ll work on trying to isolate the issue. What I know is this: (1) My project runs perfectly with acceleratedRendering enabled ? except when the app is suspended, it crashes when brought to the foreground again. (2) I put a button in my app with one line, it simply disables acceleratedRendering. When I tap this button, the app no longer crashes when brought to the foreground after being suspended. I am not really sure where to go to try to isolate the issue. There is something definitely up with acceleratedRendering on Android. On iOS, I enable acceleratedRendering at the beginning of my startup routine. Works great. On Android, this makes the app hang. But, if I move the enabling of acceleratedRendering to the end of the startup routine, it works fine. I had a related issue with setting the textFont of the mainStack at startup (we?re using an external font). When I set the textFont of the stack after setting the acceleratedRendering, the app crashed. But, setting the textFont of the stack before setting the acceleratedRendering was fine. This is kind of a high-profile client and I?ve got about 1 week to get this resolved before I have to deliver the final app. This must get resolved this week! -Dan > Please enter a bug report about this, it's a different issue than the one I wrote up. > > -- > Jacqueline Landman On August 13, 2017 1:07:12 PM Dan Friedman via use-livecode > wrote: > I took Ralph?s advice and made a 0 line stack to try to recreate the issue. > To my astonishment, the app didn?t have the same problem! So, I went > back to my project and started to trace what I have in my app that might be > causing the problem. After a while, I discovered that if I do not enable > acceleratedRendering, the app does not bail on suspend and stays in memory. > Problem solved! Except that I can?t leave acceleratedRendering off. All > the scrollers stutter horribly! > > I went back the test app and enabled acceleratedRendering. But, it doesn?t > have the same problem. I am most puzzled. > > Help! > > -Dan > > > >> I have built my android app with LC 8.1.5. It runs fine on the device. >> You then hit the home button to return to the OS. Tap the app icon >> again and you get ?Unfortunatly, [appName] has stopped.?. Tap the icon >> again and >> it does a complete reboot of the app. Apps made in LC 7 did not have this >> issue, they stayed running in the background ? like an app should. Is >> there a trick to getting an Android app from LC 8.1.5 to behave like it should? >> >> I can?t deliver an app to my client that (a) doesn?t stay alive in the >> background, and (b) crashes every other launch. >> >> Anyone have any insight on this?? >> >> -Dan From mark at livecode.com Mon Aug 14 03:45:15 2017 From: mark at livecode.com (Mark Waddingham) Date: Mon, 14 Aug 2017 09:45:15 +0200 Subject: common code patterns In-Reply-To: References: <99F68D5C-3832-4BEA-8017-0F21BC0F5F6C@clearvisiontech.com> <128524a1-c62c-d82b-05e7-8df8dbf72178@sonic.net> Message-ID: On 2017-08-13 23:26, Monte Goulding via use-livecode wrote: > Ha ?(and may not be)? should really be ?(and is really really unlikely > to be)? but still it was an interesting thing to have a play with. In its current form - yes - it is unlikely. There are several (some orthogonal, some not) options with regards what we could with the way string literals can be represented in LiveCode. They all need to be considered in comparison as a whole in as unbiased a fashion as possible (when taking into account all the ramifications). Whilst I think most options have been mentioned we still haven't collected that into a more grokable form with the pros and cons of each which means any point of view will tend to be biased by what can be seen directly, rather than what could exist. (In this case this is particularly important for two reasons - some of the options to not meld together, it is one or the other and this changes the lexical structure of the language in a very key way). In particular, the provision for escaping chars in a string literal is orthogonal to that of allowing single and double quote bounded literals - so the merit of both of these things need to be evaluated separately. Indeed, 'de-escaping' is a function which runs on a string producing the *actual* string and from this point of view any token structure which allows escaped strings is actually syntactic sugar for a function application (if one that is done at compile-time - but that is just a special-case of simple constant folding, a mechanism for which would be universally applicable). [ In Monte's PR, 'X' => format("X") - abstractly at least - after the tokens have been converted to actual values. Since we already have a function which can de-escape (format), that requires some analysis first. Indeed, escaping / de-escaping is a simpler operation than 'format' so perhaps they need their own functions - which would be useful in their own right ]. To give an idea of the balancing act, one of the key motivations for having single-quote delimited strings (based on the most recent request) is to make constructing strings with double-quote in them easier for JavaScript, HTML and SQL (or any language which uses double-quote for string literals, in fact), as well as making it easier to have literals for control references (e.g. 'button "foo"') but that ability is also weakened by *also* having escapes. e.g. JS: "window.alert(\"Hello\nWorld!\")" -> Potential LC no escapes: 'window.alert("Hello\nWorld!")' -- no escapes Potential LC with escapes: 'window.alert("Hello\\nWorld!")' -- with escapes One thing which does need more thought is whether we *really* need escapes in single or double quoted literals at all? Is there other ways we could improve LiveCode Script so that they aren't really necessary and if not, then would it better that escaping require a little more than just "..." or '...' (at the moment you get the same effect as '...' in the PR by doing format("...") - or could, with some backwards-compatible changes to format(), at least). Certainly the PR suggests there are a few other things which should be done first, and separately. e.g. Sorting out what identifiers can hold (I think we can safely remove single-quote which is a pre-requisite for allowing single-quote delimited literals - but is it worth cleaving out others, if possible?) and looking and what escaped string structure makes the most sense (can we define one which is copy-paste compatible with as many other languages as possible?). Warmest Regards, Mark. P.S. There is another quote-like char which could be used for an implicitly merged / escaped string literal - back-quote - `...`. So that should be considered too - one option would be single-quote and double-quote delimited strings are the same beyond the quote char; but back-quote delimited strings do more work, i.e. de-escape and potentially interpolate. (Of course, this does add *more* symbols to the language - but one thing symbols are good for is readable bracketing, so maybe that's a good justification). -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From monte at appisle.net Mon Aug 14 04:38:49 2017 From: monte at appisle.net (Monte Goulding) Date: Mon, 14 Aug 2017 18:38:49 +1000 Subject: common code patterns In-Reply-To: References: <99F68D5C-3832-4BEA-8017-0F21BC0F5F6C@clearvisiontech.com> <128524a1-c62c-d82b-05e7-8df8dbf72178@sonic.net> Message-ID: <3D1DF6C9-974B-479B-AC8A-F823E1E1C9E5@appisle.net> > On 14 Aug 2017, at 5:45 pm, Mark Waddingham via use-livecode wrote: > > P.S. There is another quote-like char which could be used for an implicitly merged / escaped string literal - back-quote - `...`. So that should be considered too - one option would be single-quote and double-quote delimited strings are the same beyond the quote char; but back-quote delimited strings do more work, i.e. de-escape and potentially interpolate. (Of course, this does add *more* symbols to the language - but one thing symbols are good for is readable bracketing, so maybe that's a good justification). Haha? to quote you some 4 years ago after I suggested backtick: > Oh, please not backtick! The character is awkward to type (its one of the ones that moves around a lot on keyboard layouts) and difficult to read (and always makes me think something more is going on - e.g. as in bash scripts!). Mind you we have all written a _lot_ of markdown since then so backtick is probably much more palatable. I?m happy to change the PR to use backtick if that?s preferred and I can either drop the single quote thing or make it work but without escapes as an option for strings with double quotes. Cheers Monte From mark at livecode.com Mon Aug 14 04:46:38 2017 From: mark at livecode.com (Mark Waddingham) Date: Mon, 14 Aug 2017 10:46:38 +0200 Subject: common code patterns In-Reply-To: <3D1DF6C9-974B-479B-AC8A-F823E1E1C9E5@appisle.net> References: <99F68D5C-3832-4BEA-8017-0F21BC0F5F6C@clearvisiontech.com> <128524a1-c62c-d82b-05e7-8df8dbf72178@sonic.net> <3D1DF6C9-974B-479B-AC8A-F823E1E1C9E5@appisle.net> Message-ID: <9adcbc301153b8a81435c878cc695361@livecode.com> On 2017-08-14 10:38, Monte Goulding via use-livecode wrote: >> Oh, please not backtick! The character is awkward to type (its one of >> the ones that moves around a lot on keyboard layouts) and difficult to >> read (and always makes me think something more is going on - e.g. as >> in bash scripts!). Hehe, well, thoughts evolve as time goes by ;) The point here is that if we *were* to use back-tick then it would be worth considering making it escape capable *and* interpolate capable - i.e. there would be more going on. It would certainly solve one part of the balancing act in terms of what people may want to use ' and " delimited strings. (I'd suggest making it syntactic sugar for 'function("...")'). However, there are other options too - at the end of the day is 'format("...")' actually too onerous on occasions you want escaping? Something to think about, perhaps. > Mind you we have all written a _lot_ of markdown since then so > backtick is probably much more palatable. I?m happy to change the PR > to use backtick if that?s preferred and I can either drop the single > quote thing or make it work but without escapes as an option for > strings with double quotes. As I said in my previous email, there is more work to do here in terms of working out what needs to be done (as pre-requisites), and what is best before playing with any more code. There are too many options which have not been sufficiently compared and contrasted in detail - personal preference just isn't good enough here; we have to look carefully at what problems we need to solve, and work out the balance between power, balance and ergonomics. Warmest Regards, Mark. P.S. We should see if we can schedule some time in the next sprint to actually do that analysis properly and *then* garner feedback. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From jonathandlynch at gmail.com Mon Aug 14 05:02:35 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Mon, 14 Aug 2017 05:02:35 -0400 Subject: Android App Woes In-Reply-To: <11ED8AD0-2E29-42D0-9759-6DF13765EEA9@clearvisiontech.com> References: <11ED8AD0-2E29-42D0-9759-6DF13765EEA9@clearvisiontech.com> Message-ID: <16138504-09A3-47B7-A324-0D4042497DDA@gmail.com> For the moment, is it sufficient to move turning on accelerated rendering to the end of the startup routine? Sent from my iPhone > On Aug 14, 2017, at 12:54 AM, Dan Friedman via use-livecode wrote: > > Jacque, > > I don?t think I can make a bug report yet. I don?t have it isolated outside my project; which LC will surely tell me to do! I?ll work on trying to isolate the issue. > > What I know is this: > (1) My project runs perfectly with acceleratedRendering enabled ? except when the app is suspended, it crashes when brought to the foreground again. > (2) I put a button in my app with one line, it simply disables acceleratedRendering. When I tap this button, the app no longer crashes when brought to the foreground after being suspended. > > I am not really sure where to go to try to isolate the issue. There is something definitely up with acceleratedRendering on Android. On iOS, I enable acceleratedRendering at the beginning of my startup routine. Works great. On Android, this makes the app hang. But, if I move the enabling of acceleratedRendering to the end of the startup routine, it works fine. I had a related issue with setting the textFont of the mainStack at startup (we?re using an external font). When I set the textFont of the stack after setting the acceleratedRendering, the app crashed. But, setting the textFont of the stack before setting the acceleratedRendering was fine. > > This is kind of a high-profile client and I?ve got about 1 week to get this resolved before I have to deliver the final app. This must get resolved this week! > > -Dan > > > >> Please enter a bug report about this, it's a different issue than the one I wrote up. >> >> -- >> Jacqueline Landman > > > On August 13, 2017 1:07:12 PM Dan Friedman via use-livecode > > wrote: > >> I took Ralph?s advice and made a 0 line stack to try to recreate the issue. >> To my astonishment, the app didn?t have the same problem! So, I went >> back to my project and started to trace what I have in my app that might be >> causing the problem. After a while, I discovered that if I do not enable >> acceleratedRendering, the app does not bail on suspend and stays in memory. >> Problem solved! Except that I can?t leave acceleratedRendering off. All >> the scrollers stutter horribly! >> >> I went back the test app and enabled acceleratedRendering. But, it doesn?t >> have the same problem. I am most puzzled. >> >> Help! >> >> -Dan >> >> >> >>> I have built my android app with LC 8.1.5. It runs fine on the device. >>> You then hit the home button to return to the OS. Tap the app icon >>> again and you get ?Unfortunatly, [appName] has stopped.?. Tap the icon >>> again and >>> it does a complete reboot of the app. Apps made in LC 7 did not have this >>> issue, they stayed running in the background ? like an app should. Is >>> there a trick to getting an Android app from LC 8.1.5 to behave like it should? >>> >>> I can?t deliver an app to my client that (a) doesn?t stay alive in the >>> background, and (b) crashes every other launch. >>> >>> Anyone have any insight on this?? >>> >>> -Dan > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From monte at appisle.net Mon Aug 14 05:14:18 2017 From: monte at appisle.net (Monte Goulding) Date: Mon, 14 Aug 2017 19:14:18 +1000 Subject: common code patterns In-Reply-To: <9adcbc301153b8a81435c878cc695361@livecode.com> References: <99F68D5C-3832-4BEA-8017-0F21BC0F5F6C@clearvisiontech.com> <128524a1-c62c-d82b-05e7-8df8dbf72178@sonic.net> <3D1DF6C9-974B-479B-AC8A-F823E1E1C9E5@appisle.net> <9adcbc301153b8a81435c878cc695361@livecode.com> Message-ID: <027F339D-06BC-4BCE-B67D-85FD0B63B601@appisle.net> > The point here is that if we *were* to use back-tick then it would be worth considering making it escape capable *and* interpolate capable - i.e. there would be more going on. It would certainly solve one part of the balancing act in terms of what people may want to use ' and " delimited strings. (I'd suggest making it syntactic sugar for 'function("...")?). Hmm? so say merge(? string ?, resolve escapes) = ` string ` ? I?ve got to say I wasn?t thinking of interpolation as I thought that merge does that sufficiently well. > > However, there are other options too - at the end of the day is 'format("...")' actually too onerous on occasions you want escaping? Yes, unless you can use it in a constant or variable declaration which would be unusual and a bit too special casey for me: constant kSomething = format(?this\tis\todd?) > P.S. We should see if we can schedule some time in the next sprint to actually do that analysis properly and *then* garner feedback. Sure if you it?s a priority. The PR is only up there because I got interested in something on a rainy Sunday arvo. It?s not like we haven?t got other stuff to do and this bike shed seems to be rather large ;-) Cheers Monte From mark at livecode.com Mon Aug 14 05:35:16 2017 From: mark at livecode.com (Mark Waddingham) Date: Mon, 14 Aug 2017 11:35:16 +0200 Subject: common code patterns In-Reply-To: <027F339D-06BC-4BCE-B67D-85FD0B63B601@appisle.net> References: <99F68D5C-3832-4BEA-8017-0F21BC0F5F6C@clearvisiontech.com> <128524a1-c62c-d82b-05e7-8df8dbf72178@sonic.net> <3D1DF6C9-974B-479B-AC8A-F823E1E1C9E5@appisle.net> <9adcbc301153b8a81435c878cc695361@livecode.com> <027F339D-06BC-4BCE-B67D-85FD0B63B601@appisle.net> Message-ID: <498dccc1c6c5a652be241c66ace348f5@livecode.com> On 2017-08-14 11:14, Monte Goulding via use-livecode wrote: > Hmm? so say merge(? string ?, resolve escapes) = ` string ` ? I?ve got > to say I wasn?t thinking of interpolation as I thought that merge does > that sufficiently well. Seeing 'special tokens' as syntactic sugar is definitely the way to go I think - it means that these escaping / interpolation operations are available for direct use form code, as well as when they are embedded (as tokens) in code. Merge does do interpolation reasonably well, but it does not do escaping. In contrast format does escaping and formatting, but not interpolation. Escaping, formatting and interpolation are all part of a 'similar' idea - and they are unified into a single thing in many other languages so it would perhaps make sense for them to be so in LiveCode too. Of course, strictly speaking they are separate operations - interpolation requires more machinery than formatting which requires more machinery than escaping. However, cognitively, being able to do them all in a single unified string format does perhaps have a lot of value - and makes what is a 'slightly more complex' set of operations, 'slightly easier' to grok. [ Indeed, 'under the hood' the best way to look at it is that interpolation is transformed to format which then uses unescaping before filling in the placeholders ] >> >> However, there are other options too - at the end of the day is >> 'format("...")' actually too onerous on occasions you want escaping? > > Yes, unless you can use it in a constant or variable declaration which > would be unusual and a bit too special casey for me: > > constant kSomething = format(?this\tis\todd?) I'm not sure I see why it would be 'special-casey' in particular. The mechanism we need to do this is universal - i.e. would apply to constant inputs to any pure/constant function. There is of course (as always) a slight 'yak-shave' here with regards constants (http://quality.livecode.com/show_bug.cgi?id=19413) - as anything after an initializer is currently treated as a literal, and *not* an expression. The thought I'm having along this line is that 'easy things should be easy' and 'hard things should be possible'. i.e. The complexity of the syntax should reflect the complexity of the operation. There seems to be significant value in *just* having " and ' be plain strings - which suggests that perhaps escaping/interpolation should require slightly different syntax (and be perhaps slightly more verbose). > Sure if you it?s a priority. The PR is only up there because I got > interested in something on a rainy Sunday arvo. It?s not like we > haven?t got other stuff to do and this bike shed seems to be rather > large ;-) It is certainly 'important' as far as working out what the best approach is. After all, if we can break things down into small bite-sized chunks heading towards what a generally considered reasonable goal, then it means it is more likely to happen over time (particularly as each bite-sized chunk probably has other fringe benefits). The idea(s) and such have been hanging around for long enough, it would be good to actually figure out the whys and wherefores - and choose some colors for all the bike-sheds which don't cause anyone too much nausea! Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From alex at tweedly.net Mon Aug 14 06:28:11 2017 From: alex at tweedly.net (Alex Tweedly) Date: Mon, 14 Aug 2017 11:28:11 +0100 Subject: String delimiters [WAS Re: common code patterns] In-Reply-To: <498dccc1c6c5a652be241c66ace348f5@livecode.com> References: <99F68D5C-3832-4BEA-8017-0F21BC0F5F6C@clearvisiontech.com> <128524a1-c62c-d82b-05e7-8df8dbf72178@sonic.net> <3D1DF6C9-974B-479B-AC8A-F823E1E1C9E5@appisle.net> <9adcbc301153b8a81435c878cc695361@livecode.com> <027F339D-06BC-4BCE-B67D-85FD0B63B601@appisle.net> <498dccc1c6c5a652be241c66ace348f5@livecode.com> Message-ID: While we (i.e. you) are thinking about string delimiters, could we PLEASE have some decent way to do multi-line strings. Whether it's like Python's triple-quote, or Perl's heredoc, or .... just some way to do them without either escaped '\n's or non-embedded CRs. Thanks Alex. On 14/08/2017 10:35, Mark Waddingham via use-livecode wrote: > On 2017-08-14 11:14, Monte Goulding via use-livecode wrote: >> Hmm? so say merge(? string ?, resolve escapes) = ` string ` ? I?ve got >> to say I wasn?t thinking of interpolation as I thought that merge does >> that sufficiently well. > > Seeing 'special tokens' as syntactic sugar is definitely the way to go > I think - it means that these escaping / interpolation operations are > available for direct use form code, as well as when they are embedded > (as tokens) in code. > > Merge does do interpolation reasonably well, but it does not do > escaping. In contrast format does escaping and formatting, but not > interpolation. Escaping, formatting and interpolation are all part of > a 'similar' idea - and they are unified into a single thing in many > other languages so it would perhaps make sense for them to be so in > LiveCode too. > > Of course, strictly speaking they are separate operations - > interpolation requires more machinery than formatting which requires > more machinery than escaping. However, cognitively, being able to do > them all in a single unified string format does perhaps have a lot of > value - and makes what is a 'slightly more complex' set of operations, > 'slightly easier' to grok. > > [ Indeed, 'under the hood' the best way to look at it is that > interpolation is transformed to format which then uses unescaping > before filling in the placeholders ] > >>> >>> However, there are other options too - at the end of the day is >>> 'format("...")' actually too onerous on occasions you want escaping? >> >> Yes, unless you can use it in a constant or variable declaration which >> would be unusual and a bit too special casey for me: >> >> constant kSomething = format(?this\tis\todd?) > > I'm not sure I see why it would be 'special-casey' in particular. The > mechanism we need to do this is universal - i.e. would apply to > constant inputs to any pure/constant function. There is of course (as > always) a slight 'yak-shave' here with regards constants > (http://quality.livecode.com/show_bug.cgi?id=19413) - as anything > after an initializer is currently treated as a literal, and *not* an > expression. > > The thought I'm having along this line is that 'easy things should be > easy' and 'hard things should be possible'. i.e. The complexity of the > syntax should reflect the complexity of the operation. There seems to > be significant value in *just* having " and ' be plain strings - which > suggests that perhaps escaping/interpolation should require slightly > different syntax (and be perhaps slightly more verbose). > >> Sure if you it?s a priority. The PR is only up there because I got >> interested in something on a rainy Sunday arvo. It?s not like we >> haven?t got other stuff to do and this bike shed seems to be rather >> large ;-) > > It is certainly 'important' as far as working out what the best > approach is. After all, if we can break things down into small > bite-sized chunks heading towards what a generally considered > reasonable goal, then it means it is more likely to happen over time > (particularly as each bite-sized chunk probably has other fringe > benefits). The idea(s) and such have been hanging around for long > enough, it would be good to actually figure out the whys and > wherefores - and choose some colors for all the bike-sheds which don't > cause anyone too much nausea! > > Warmest Regards, > > Mark. > From panos.merakos at livecode.com Mon Aug 14 09:09:13 2017 From: panos.merakos at livecode.com (panagiotis merakos) Date: Mon, 14 Aug 2017 14:09:13 +0100 Subject: [ANN] This Week in LiveCode 95 Message-ID: Hi all, Read about new developments in LiveCode open source and the open source community in today's edition of the "This Week in LiveCode" newsletter! Read issue #95 here: https://goo.gl/Yo6tWn This is a weekly newsletter about LiveCode, focussing on what's been going on in and around the open source project. New issues will be released weekly on Mondays. We have a dedicated mailing list that will deliver each issue directly to you e-mail, so you don't miss any! If you have anything you'd like mentioned (a project, a discussion somewhere, an upcoming event) then please get in touch. -- Panagiotis Merakos LiveCode Software Developer Everyone Can Create Apps From bobsneidar at iotecdigital.com Mon Aug 14 10:47:28 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Mon, 14 Aug 2017 14:47:28 +0000 Subject: Bug 20255 - Simple Loop Labeling In-Reply-To: <15dcd8039d8.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> References: <7263A1F4-3913-4AB7-A621-7D313702FE1B@iotecdigital.com> <77a4c282-09c5-c8ab-d0b2-c0c3da28e71d@fourthworld.com> <15dcd8039d8.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Message-ID: <329DB983-ADD2-4ECB-92E2-3E7B46FD9A51@iotecdigital.com> Wait, you're saying that this is a win win, where everybody... WINS??? BAN it! ;-) Bob S > On Aug 10, 2017, at 11:55 , J. Landman Gay via use-livecode wrote: > > Well, you don't actually have to use the tooltip. It wouldn't interfere with your current method and would enhance the editor for those who don't want the clutter. > > Best of both worlds. > -- > Jacqueline Landman Gay | jacque at hyperactivesw.com > HyperActive Software | http://www.hyperactivesw.com From bobsneidar at iotecdigital.com Mon Aug 14 10:50:28 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Mon, 14 Aug 2017 14:50:28 +0000 Subject: Bug 20255 - Simple Loop Labeling In-Reply-To: <69585f01-f02a-455e-a02a-3ee58bd9f653@sonic.net> References: <7263A1F4-3913-4AB7-A621-7D313702FE1B@iotecdigital.com> <77a4c282-09c5-c8ab-d0b2-c0c3da28e71d@fourthworld.com> <15dcd8039d8.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <07F582EA-F787-4A89-BED6-A6D7659B1297@appisle.net> <69585f01-f02a-455e-a02a-3ee58bd9f653@sonic.net> Message-ID: <1460F3F6-A47A-453E-8F57-0C6D655629A7@iotecdigital.com> Ehm... some complicated condition might be 5 lines of code. Bob S > On Aug 10, 2017, at 18:38 , Mark Wieder via use-livecode wrote: > >> if some complicated condition then # I?m a makin? spaghetti >> ? spaghetti >> end if # I?m a makin' spaghetti > > I would actually argue against this. For me, the useful part would be > > end if # some complicated condition > > Otherwise, making the user come up with a comment that basically says "some complicated condition" anyway, and doing all the maintentance you've described above sounds like a lot of work for very little gain. > > -- > Mark Wieder > ahsoftware at gmail.com From bobsneidar at iotecdigital.com Mon Aug 14 10:58:34 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Mon, 14 Aug 2017 14:58:34 +0000 Subject: Bug 20255 - Simple Loop Labeling In-Reply-To: References: <7263A1F4-3913-4AB7-A621-7D313702FE1B@iotecdigital.com> <77a4c282-09c5-c8ab-d0b2-c0c3da28e71d@fourthworld.com> <15dcd8039d8.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <07F582EA-F787-4A89-BED6-A6D7659B1297@appisle.net> Message-ID: Why not? It's in the dictionary! au?to?mag?ic?al?ly ??d??maj?k(?)l?/ adverbinformal adverb: automagically ? (especially in relation to the operation of a computer process) automatically and in a way that seems ingenious, inexplicable, or magical. "just type in the name of what you want to listen to, and it automagically appears on your computer" Bob S > On Aug 11, 2017, at 09:12 , Dr. Hawkins via use-livecode wrote: > > Oooh, yes; automagical maintenance would be wonderful! (really? my > spellchecker recognizes "automagical" as a word?) From bobsneidar at iotecdigital.com Mon Aug 14 11:02:39 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Mon, 14 Aug 2017 15:02:39 +0000 Subject: common code patterns In-Reply-To: References: <99F68D5C-3832-4BEA-8017-0F21BC0F5F6C@clearvisiontech.com> Message-ID: <81136EE5-010F-47F3-8C42-2606BD1404C3@iotecdigital.com> put "Hello there, Teddy Roughrider Roosevelt!" into tText replace "Roughrider" with quote & "Roughrider" & quote in tText Bob S > On Aug 12, 2017, at 13:20 , Richard Gaskin via use-livecode wrote: > > The q function is handy, but handier still would be to have JavaScript's support for interchangeable single- and double-quotes to allow nesting, e.g.: > > put 'Hello there, Teddy "Roughrider" Roosevelt!' > > -- > Richard Gaskin From ahsoftware at sonic.net Mon Aug 14 12:00:25 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Mon, 14 Aug 2017 09:00:25 -0700 Subject: String delimiters [WAS Re: common code patterns] In-Reply-To: References: <99F68D5C-3832-4BEA-8017-0F21BC0F5F6C@clearvisiontech.com> <128524a1-c62c-d82b-05e7-8df8dbf72178@sonic.net> <3D1DF6C9-974B-479B-AC8A-F823E1E1C9E5@appisle.net> <9adcbc301153b8a81435c878cc695361@livecode.com> <027F339D-06BC-4BCE-B67D-85FD0B63B601@appisle.net> <498dccc1c6c5a652be241c66ace348f5@livecode.com> Message-ID: <59ef8b53-c48e-71d3-f5b4-161e7a9c9a64@sonic.net> On 08/14/2017 03:28 AM, Alex Tweedly via use-livecode wrote: > While we (i.e. you) are thinking about string delimiters, could we > PLEASE have some decent way to do multi-line strings. Yes, please. > > Whether it's like Python's triple-quote No, please. -- Mark Wieder ahsoftware at gmail.com From ahsoftware at sonic.net Mon Aug 14 12:03:32 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Mon, 14 Aug 2017 09:03:32 -0700 Subject: common code patterns In-Reply-To: <498dccc1c6c5a652be241c66ace348f5@livecode.com> References: <99F68D5C-3832-4BEA-8017-0F21BC0F5F6C@clearvisiontech.com> <128524a1-c62c-d82b-05e7-8df8dbf72178@sonic.net> <3D1DF6C9-974B-479B-AC8A-F823E1E1C9E5@appisle.net> <9adcbc301153b8a81435c878cc695361@livecode.com> <027F339D-06BC-4BCE-B67D-85FD0B63B601@appisle.net> <498dccc1c6c5a652be241c66ace348f5@livecode.com> Message-ID: <68cfb197-f7ce-0538-9ce4-777ed22028dd@sonic.net> On 08/14/2017 02:35 AM, Mark Waddingham via use-livecode wrote: > slight 'yak-shave' here with regards constants > (http://quality.livecode.com/show_bug.cgi?id=19413) - as anything after > an initializer is currently treated as a literal, and *not* an expression. ...and not just 19413. This request has been around since 2004. http://quality.livecode.com/show_bug.cgi?id=1241 > actually figure out the whys and wherefores - and choose some colors for > all the bike-sheds which don't cause anyone too much nausea! Metaphors aside, I like where this conversation is heading. -- Mark Wieder ahsoftware at gmail.com From ambassador at fourthworld.com Mon Aug 14 12:10:00 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Mon, 14 Aug 2017 09:10:00 -0700 Subject: common code patterns In-Reply-To: <3D1DF6C9-974B-479B-AC8A-F823E1E1C9E5@appisle.net> References: <3D1DF6C9-974B-479B-AC8A-F823E1E1C9E5@appisle.net> Message-ID: <4915b439-d5d4-5ea9-1f44-52f997dd0206@fourthworld.com> Monte Goulding wrote: >> On 14 Aug 2017, at 5:45 pm, Mark Waddingham wrote: >> >> P.S. There is another quote-like char which could be used for >> an implicitly merged / escaped string literal - back-quote - >> `...`. So that should be considered too - one option would be >> single-quote and double-quote delimited strings are the same >> beyond the quote char; but back-quote delimited strings do >> more work, i.e. de-escape and potentially interpolate. (Of >> course, this does add *more* symbols to the language - but >> one thing symbols are good for is readable bracketing, so maybe >> that's a good justification). > > Haha? to quote you some 4 years ago after I suggested backtick: > >> Oh, please not backtick! The character is awkward to type (its one >> of the ones that moves around a lot on keyboard layouts) and >> difficult to read (and always makes me think something more is >> going on - e.g. as in bash scripts!). > > Mind you we have all written a _lot_ of markdown since then so > backtick is probably much more palatable. But maybe not enough markdown to change how the human eye works. :) I agree with MW's original assessment. If we have a problem to solve for which no alternative is possible, I'd accept using backticks for some things. But at least as far as my original request, and anything else I can conceive of offhand, I would prefer to avoid them for the reasons MW noted. -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From MikeKerner at roadrunner.com Mon Aug 14 12:25:50 2017 From: MikeKerner at roadrunner.com (Mike Kerner) Date: Mon, 14 Aug 2017 12:25:50 -0400 Subject: String delimiters [WAS Re: common code patterns] In-Reply-To: <59ef8b53-c48e-71d3-f5b4-161e7a9c9a64@sonic.net> References: <99F68D5C-3832-4BEA-8017-0F21BC0F5F6C@clearvisiontech.com> <128524a1-c62c-d82b-05e7-8df8dbf72178@sonic.net> <3D1DF6C9-974B-479B-AC8A-F823E1E1C9E5@appisle.net> <9adcbc301153b8a81435c878cc695361@livecode.com> <027F339D-06BC-4BCE-B67D-85FD0B63B601@appisle.net> <498dccc1c6c5a652be241c66ace348f5@livecode.com> <59ef8b53-c48e-71d3-f5b4-161e7a9c9a64@sonic.net> Message-ID: So you don't like &CR& ? On Mon, Aug 14, 2017 at 12:00 PM, Mark Wieder via use-livecode < use-livecode at lists.runrev.com> wrote: > On 08/14/2017 03:28 AM, Alex Tweedly via use-livecode wrote: > >> While we (i.e. you) are thinking about string delimiters, could we PLEASE >> have some decent way to do multi-line strings. >> > > Yes, please. > > >> Whether it's like Python's triple-quote >> > > No, please. > > -- > Mark Wieder > ahsoftware at gmail.com > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > -- On the first day, God created the heavens and the Earth On the second day, God created the oceans. On the third day, God put the animals on hold for a few hours, and did a little diving. And God said, "This is good." From MikeKerner at roadrunner.com Mon Aug 14 12:27:02 2017 From: MikeKerner at roadrunner.com (Mike Kerner) Date: Mon, 14 Aug 2017 12:27:02 -0400 Subject: Forum: Waves of Russian Nonsense In-Reply-To: References: <202d971f-fd70-5481-84fc-42093d90c55a@fourthworld.com> Message-ID: Yeah, a few more community moderators would be welcome. On Sun, Aug 13, 2017 at 11:35 AM, Klaus major-k via use-livecode < use-livecode at lists.runrev.com> wrote: > > > Am 12.08.2017 um 23:47 schrieb Mark Waddingham via use-livecode < > use-livecode at lists.runrev.com>: > > > > Thank you - I'm sure there will be no issue with giving you the relevant > privileges. > > I had been asking for this a long time ago, but obviously the mothership > did not want to trust a long time user (since 1999) > who already has (limited) admin permissions for a couple of years on the > forum, THAT far. > > So I deleted the 49 slavic spam postings manually a couple of minutes > ago... > > > I know Heather has to deal with things like this on a regular basis and > having others who are willing to assist can only help. > > > > Warmest Regards, > > > > Mark. > > > > Sent from my iPhone > > > >> On 12 Aug 2017, at 21:26, Richard Gaskin via use-livecode < > use-livecode at lists.runrev.com> wrote: > >> > >> Richmond Mathewson wrote: > >> > >>> The Forums are filling up quickly with a whole lot of nonsense about > >>> cars in Russian (althought, oddly enough it seems to be coming from > >>> the Ukraine). > >> > >> Thank you for the report. In the future, please use the "Report Post" > link near the upper-right of each post. That will flag it for moderation, > where it will normally be handled quickly as soon as the next moderator > shows up and does our customary "New Posts" to review. > >> > >> In this case (and the copycat later today) I banned the user but did > not remove the posts. There were too many. In the past I used to hunt > down individual posts and delete them, because that's all my moderator > privileges allowed. Since then I've used PHPBB on other sites where I have > full privileges, and PHPBB provides an option to delete all posts from a > given user, a much better use of time. > >> > >> I've written Support to let them decide whether to elevate my > privileges to allow me to efficiently remove the spam posts, or to user > their own powers to do so. Hopefully that will be addressed shortly. > >> > >> -- > >> Richard Gaskin > >> Fourth World Systems > >> Software Design and Development for the Desktop, Mobile, and the Web > > Best > > Klaus > > -- > Klaus Major > http://www.major-k.de > klaus at major-k.de > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > -- On the first day, God created the heavens and the Earth On the second day, God created the oceans. On the third day, God put the animals on hold for a few hours, and did a little diving. And God said, "This is good." From dan at clearvisiontech.com Mon Aug 14 12:46:55 2017 From: dan at clearvisiontech.com (Dan Friedman) Date: Mon, 14 Aug 2017 16:46:55 +0000 Subject: Android App Woes In-Reply-To: <<16138504-09A3-47B7-A324-0D4042497DDA@gmail.com>> Message-ID: Ok? I found something! When my app launches, it opens a second stack. It?s this second stack that I enable acceleratedRendering. If this stack?s acceleratedRendering = true, then we crash on re-entry. On a whim, I thought, ?maybe there?s a problem in LC if there are multiple stacks open and their acceleratedRendering settings are not the same??. So, as a test, when I set the acceleratedRendering of stack B, I also set stack A to the same setting. BAM! It?s stopped crashing when the app is resumed. Can anyone confirm this behavior? If so, we?ll get it listed as a bug. And we?ll have a work-around until it?s fixed. -Dan > I have built my android app with LC 8.1.5. It runs fine on the device. > You then hit the home button to return to the OS. Tap the app icon > again and you get ?Unfortunatly, [appName] has stopped.?. Tap the icon again and > it does a complete reboot of the app. Apps made in LC 7 did not have this > issue, they stayed running in the background ? like an app should. Is > there a trick to getting an Android app from LC 8.1.5 to behave like it should? > > I can?t deliver an app to my client that (a) doesn?t stay alive in the > background, and (b) crashes every other launch. > > Anyone have any insight on this?? > > -Dan From ambassador at fourthworld.com Mon Aug 14 12:54:59 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Mon, 14 Aug 2017 09:54:59 -0700 Subject: Forum: Waves of Russian Nonsense In-Reply-To: References: Message-ID: More moderators may be helpful for some tasks, but the crux of this particular issue is the efficiency of the attacking bot, the sheer number of messages. I appreciate Klaus taking the time to delete those manually, and in the past I've ditched large batches myself. But since PHPBB provides a way to delete all of them at once, when Klaus and I and the other moderators get the ability to do that it'll make shortwork of a previously-onerous task. -- Richard Gaskin Fourth World Systems Mike Kerner wrote: > Yeah, a few more community moderators would be welcome. > > On Sun, Aug 13, 2017 at 11:35 AM, Klaus wrote: > >> > Am 12.08.2017 um 23:47 schrieb Mark Waddingham wrote: >> > Thank you - I'm sure there will be no issue with giving you the >> > relevant privileges. >> >> I had been asking for this a long time ago, but obviously the >> mothership did not want to trust a long time user (since 1999) >> who already has (limited) admin permissions for a couple of years >> on the forum, THAT far. >> >> So I deleted the 49 slavic spam postings manually a couple of minutes >> ago... >> >> I know Heather has to deal with things like this on a regular basis >> and having others who are willing to assist can only help. From bob at bobhall.net Mon Aug 14 12:56:12 2017 From: bob at bobhall.net (Bob Hall) Date: Mon, 14 Aug 2017 12:56:12 -0400 Subject: String delimiters [WAS Re: common code patterns] In-Reply-To: References: <99F68D5C-3832-4BEA-8017-0F21BC0F5F6C@clearvisiontech.com> <128524a1-c62c-d82b-05e7-8df8dbf72178@sonic.net> <3D1DF6C9-974B-479B-AC8A-F823E1E1C9E5@appisle.net> <9adcbc301153b8a81435c878cc695361@livecode.com> <027F339D-06BC-4BCE-B67D-85FD0B63B601@appisle.net> <498dccc1c6c5a652be241c66ace348f5@livecode.com> Message-ID: > On Aug 14, 2017, at 6:28 AM, Alex Tweedly via use-livecode wrote: > > While we (i.e. you) are thinking about string delimiters, could we PLEASE have some decent way to do multi-line strings. I find myself in many situations where multi-line strings would make my code so much more readable. I do a lot of database work and having a multi-line string for defining queries would be great. I used to put my queries in custom props (easier to read/modify) but I?m finding now that I?d rather have the definitions in script-only stacks and get them under source control. However, the current method of appending multi-line strings together makes the code difficult to work with and read. So I?ll +1 this request. I?d lean toward the triple-quote syntax for implementation. Bob Hall From ambassador at fourthworld.com Mon Aug 14 13:49:44 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Mon, 14 Aug 2017 10:49:44 -0700 Subject: String delimiters [WAS Re: common code patterns] In-Reply-To: References: Message-ID: <3baee0d3-9c6c-e285-0cae-0adacdf83971@fourthworld.com> Bob Hall wrote: >> On Aug 14, 2017, at 6:28 AM, Alex Tweedly wrote: >> >> While we (i.e. you) are thinking about string delimiters, could we >> PLEASE have some decent way to do multi-line strings. > > I find myself in many situations where multi-line strings would make > my code so much more readable. I do a lot of database work and having > a multi-line string for defining queries would be great. > > I used to put my queries in custom props (easier to read/modify) but > I?m finding now that I?d rather have the definitions in script-only > stacks and get them under source control. However, the current method > of appending multi-line strings together makes the code difficult to > work with and read. > > So I?ll +1 this request. I?d lean toward the triple-quote syntax for > implementation. A while back I proposed some form of bash's heredoc - I'm not enamored of the name, but the concept seems useful: http://quality.livecode.com/show_bug.cgi?id=17471 -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From jiml at netrin.com Mon Aug 14 14:50:31 2017 From: jiml at netrin.com (Jim Lambert) Date: Mon, 14 Aug 2017 11:50:31 -0700 Subject: Forum: Waves of Russian Nonsense In-Reply-To: References: Message-ID: <61D5F578-FFEF-43D3-9314-13742D39EA71@netrin.com> > Klaus wrote: > > I deleted the 49 slavic spam postings manually a couple of minutes ago? ??????? ;) Jim Lambert From prothero at earthlearningsolutions.org Mon Aug 14 15:19:35 2017 From: prothero at earthlearningsolutions.org (ELS prothero) Date: Mon, 14 Aug 2017 12:19:35 -0700 Subject: sms,MMS, and Push Notificstions Message-ID: I?m curious. Has anybody done much with push notifications on mobile? There is a lesson on the livecode web site which is quite detailed, but leaves out the server side of the equation. I have been thinking about an emergency alert app and am exploring how difficult it would be to implement various communication technologies. Texts seem pretty straighforward, but I was thinking that push notifications might get more attention. The goal is to get the information to the recipient?s brain. It can get to the device, but unless the last (weak link) is traversed, the alert is ineffective. The target time for this is 15 minutes. I?ve Googled the heck out of these topics and there are really nice expensive services that can do the job, but we don?t want to pay the high fees. Others are marketing oriented, not optimized for emergency services. A custom app could be ideal, especially with increasing wildfire activity worldwide. Ideas and info? Best, Bill William Prothero, PhD Professor Emeritus University of California, Santa Barbara http://earthlearningsolutions.org From alex at tweedly.net Mon Aug 14 15:22:05 2017 From: alex at tweedly.net (Alex Tweedly) Date: Mon, 14 Aug 2017 20:22:05 +0100 Subject: String delimiters [WAS Re: common code patterns] In-Reply-To: References: <99F68D5C-3832-4BEA-8017-0F21BC0F5F6C@clearvisiontech.com> <128524a1-c62c-d82b-05e7-8df8dbf72178@sonic.net> <3D1DF6C9-974B-479B-AC8A-F823E1E1C9E5@appisle.net> <9adcbc301153b8a81435c878cc695361@livecode.com> <027F339D-06BC-4BCE-B67D-85FD0B63B601@appisle.net> <498dccc1c6c5a652be241c66ace348f5@livecode.com> <59ef8b53-c48e-71d3-f5b4-161e7a9c9a64@sonic.net> Message-ID: <1dcb9bbb-75c3-5b60-62c1-5b2f03c005ce@tweedly.net> If you mean, do I think put \ "This is part of" &CR& \ "A multi-line string which" &CR& \ "I find much less readable." into temp is less preferable than put {{ That's better! A really readable and short version that I can deal with. }} into temp then, Yes - absolutely. To be honest, I don't much care whether it's triple-quote (not my favourite), or {{...}}, or < So you don't like &CR& ? Always make me think of K&R - and brings me out in a cold sweat :-) > > On Mon, Aug 14, 2017 at 12:00 PM, Mark Wieder via use-livecode < > use-livecode at lists.runrev.com> wrote: > >> On 08/14/2017 03:28 AM, Alex Tweedly via use-livecode wrote: >> >>> While we (i.e. you) are thinking about string delimiters, could we PLEASE >>> have some decent way to do multi-line strings. >>> >> Yes, please. >> >> >>> Whether it's like Python's triple-quote >>> >> No, please. >> >> -- >> Mark Wieder >> ahsoftware at gmail.com >> >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> > > From revolution at derbrill.de Mon Aug 14 15:42:34 2017 From: revolution at derbrill.de (Malte Pfaff-Brill) Date: Mon, 14 Aug 2017 21:42:34 +0200 Subject: Foreign Handlers - Builder? In-Reply-To: References: Message-ID: <46DEFD1A-F7D1-4EF7-A6E9-6C54614AFD79@derbrill.de> Hi all, I am in a situation where a LC desktop application needs to talk to an external USB device (a sophisticated card reader). Drivers for Win, Mac and Linux exists and are delivered without much of documentation with the device? Is it already possible to elevate the drivers methods to a liveCode app using builder? If so, what is a good place to get started with the hows? Cheers, Malte From rdimola at evergreeninfo.net Mon Aug 14 15:54:42 2017 From: rdimola at evergreeninfo.net (Ralph DiMola) Date: Mon, 14 Aug 2017 15:54:42 -0400 Subject: Message box And Password Protected Stacks In-Reply-To: <46DEFD1A-F7D1-4EF7-A6E9-6C54614AFD79@derbrill.de> References: <46DEFD1A-F7D1-4EF7-A6E9-6C54614AFD79@derbrill.de> Message-ID: <005001d31537$2c3c99f0$84b5cdd0$@net> Since when can't you call a command/function in the message box from a password protected stack until it is opened(using password) in the script editor once? Is this a regression or intended behavior? Ralph DiMola IT Director Evergreen Information Services rdimola at evergreeninfo.net From hello at simonsmith.co Mon Aug 14 16:42:07 2017 From: hello at simonsmith.co (Simon Smith) Date: Mon, 14 Aug 2017 22:42:07 +0200 Subject: sms,MMS, and Push Notificstions In-Reply-To: References: Message-ID: I would look at push notifications. onesignal.com looks quiet good, just not had a chance to play with it yet. I have found that SMS messages are too unreliable when it comes to emergency notifications, sometimes they come through, sometimes they don't and sometimes they come through an hour or so later. Simon Carpe diem *Simon Smith* m. +27 83 306 7862 On Mon, Aug 14, 2017 at 9:19 PM, ELS prothero via use-livecode < use-livecode at lists.runrev.com> wrote: > I?m curious. Has anybody done much with push notifications on mobile? > There is a lesson on the livecode web site which is quite detailed, but > leaves out the server side of the equation. I have been thinking about an > emergency alert app and am exploring how difficult it would be to implement > various communication technologies. Texts seem pretty straighforward, but I > was thinking that push notifications might get more attention. > > The goal is to get the information to the recipient?s brain. It can get to > the device, but unless the last (weak link) is traversed, the alert is > ineffective. The target time for this is 15 minutes. > > I?ve Googled the heck out of these topics and there are really nice > expensive services that can do the job, but we don?t want to pay the high > fees. Others are marketing oriented, not optimized for emergency services. > A custom app could be ideal, especially with increasing wildfire activity > worldwide. > > Ideas and info? > Best, > Bill > > William Prothero, PhD > Professor Emeritus > University of California, Santa Barbara > http://earthlearningsolutions.org > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From monte at appisle.net Mon Aug 14 16:44:45 2017 From: monte at appisle.net (Monte Goulding) Date: Tue, 15 Aug 2017 06:44:45 +1000 Subject: common code patterns In-Reply-To: <4915b439-d5d4-5ea9-1f44-52f997dd0206@fourthworld.com> References: <3D1DF6C9-974B-479B-AC8A-F823E1E1C9E5@appisle.net> <4915b439-d5d4-5ea9-1f44-52f997dd0206@fourthworld.com> Message-ID: <0F4FF6DC-68B7-4CDF-8411-231C101E1D03@appisle.net> > On 15 Aug 2017, at 2:10 am, Richard Gaskin via use-livecode wrote: > > But maybe not enough markdown to change how the human eye works. :) Sure, my preferable end goal does not include backticks but I?ll take anything if it?s the only way I can have a string with escapes ;-) The conclusion I came to on the bug report is we should have a goal of supporting escapes in all string forms (like JavaScript) but that we can?t do double quote yet due to backwards compatibility. That would come with open language which will have a script translation step and one of those steps can be ?\? -> ?\\? everywhere but format et al. For readability we would like a single quote delimited string so that it can include double quotes. If we add a single quote delimited string it can have escapes now because it?s something new. So we would have a few years of single quote delimited strings that process escape sequences and double quoted strings that don?t but eventually all would. As far as interpolation goes I think I can live with the merge function particularly if I can pass it a string with escape sequences: put ?Hello" into tFoo put ?World? into tBar put merge(?[[ tFoo ]]\n[[ tBar ]]!?) Cheers Monte From brahma at hindu.org Mon Aug 14 17:23:39 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Mon, 14 Aug 2017 21:23:39 +0000 Subject: Android App Woes In-Reply-To: References: <16138504-09A3-47B7-A324-0D4042497DDA@gmail.com> Message-ID: <57F5F939-106D-4C27-82A1-54FBB28A2E4D@hindu.org> Dan, I can confirm here that, yes, it does seem to be an issue on Android with the "state of accelerated Rendering" in our app, we need to keep the loader stack open all the time. This has a card with a background color and a PNG on top? called from assets/img/global-icons/SVG-Lingam.png Let's call this BKGND STACK A the app immediately opens a kind of index/TOC stack.. STACK B -- Navigation UI When you click on a row on the card.. this will trigger other "Modules" to open STACK C - Some ebook STACK D - Playlists for audio STACK E - Puzzle Game etc. Our earlier experiment we had Android "crashing" all over the place. unless we turned off accelerated rendering in stack C before going back to stack B (navigation UI) HQ suggested adding a small wait so after we added this to the behaviors attached to all these stacks: on preopenstack # may be fixed in recent versions Android crashed on stack swaps # this little wait helped wait 100 milliseconds with messages set the fullscreenmode of this stack to "showAll" mobile_SetAllowedOrientation "portrait" set the acceleratedRendering of this stack to "true" end preopenstack then things started working. So that would confirm your solution (perhaps) But now I have an interesting twist to this. If I set the accelerated rendering the STACKA background stack that never closes then the rendering of STACKS B,C,D,E Starts to break? so I had to turn that off on the background stack that stays open all the time? After turn that off again? so that accelerated rendering on "spins up and down" for every other stack? OK then things started working again.. I can go to any stack B, C E and click the HOME button or the App swither square button and the app does not die. so far so good. Even one of these is quite complex: the puzzle screen ask the users to turn her phone sideways.. even then we can click the home button or app switcher and the app holds up ? no problem?. but when I go to stack " D " stack "Listen" and click home button or app switcher, the app stops/crash. this stack also has the same start up script (as above) so something else is going on. I have yet to determine why, just when in this one this stack? There are two mobile controls 1) one mobile scroller (field) b) one mobile audio player (hidden) But thanks to this thread.. .I think I am closer? at least have narrowed it down to this one stack/card I have a business license and HQ will look into this also. In earlier bug reports with HQ we discovered that we need to very carefully On 8/14/17, 6:47 AM, "use-livecode on behalf of Dan Friedman via use-livecode" wrote: Ok? I found something! When my app launches, it opens a second stack. It?s this second stack that I enable acceleratedRendering. If this stack?s acceleratedRendering = true, then we crash on re-entry. On a whim, I thought, ?maybe there?s a problem in LC if there are multiple stacks open and their acceleratedRendering settings are not the same??. So, as a test, when I set the acceleratedRendering of stack B, I also set stack A to the same setting. BAM! It?s stopped crashing when the app is resumed. Can anyone confirm this behavior? If so, we?ll get it listed as a bug. And we?ll have a work-around until it?s fixed. -Dan From monte at appisle.net Mon Aug 14 17:33:12 2017 From: monte at appisle.net (Monte Goulding) Date: Tue, 15 Aug 2017 07:33:12 +1000 Subject: String delimiters [WAS Re: common code patterns] In-Reply-To: <1dcb9bbb-75c3-5b60-62c1-5b2f03c005ce@tweedly.net> References: <99F68D5C-3832-4BEA-8017-0F21BC0F5F6C@clearvisiontech.com> <128524a1-c62c-d82b-05e7-8df8dbf72178@sonic.net> <3D1DF6C9-974B-479B-AC8A-F823E1E1C9E5@appisle.net> <9adcbc301153b8a81435c878cc695361@livecode.com> <027F339D-06BC-4BCE-B67D-85FD0B63B601@appisle.net> <498dccc1c6c5a652be241c66ace348f5@livecode.com> <59ef8b53-c48e-71d3-f5b4-161e7a9c9a64@sonic.net> <1dcb9bbb-75c3-5b60-62c1-5b2f03c005ce@tweedly.net> Message-ID: <8F3347C8-3377-4C88-800E-59809DCDE420@appisle.net> > On 15 Aug 2017, at 5:22 am, Alex Tweedly via use-livecode wrote: > > put {{ > That's better! > A really readable and short > version that I can deal with. > }} into temp It?s really unlikely we would use { } because one day we will want to implement array literals. You know one time I messed with the server tag code in the parser so that reverse server tags could be used for this ;-) http://forums.livecode.com/viewtopic.php?f=66&t=25339 That of course would never pass the sniff test! Anyway, if I might propose an alternative of allowing the line continuation char (which happens to be escape) within strings. The sequence \ & return & would be replaced with just return in the string. Something like this: put ?foo\ bar? would put: foo bar Of course if you need leading whitespace then that?s a bit trickier but the above could be relatively easily implemented in both the script editor and the parser. Cheers Monte From waprothero at gmail.com Mon Aug 14 18:25:38 2017 From: waprothero at gmail.com (William Prothero) Date: Mon, 14 Aug 2017 15:25:38 -0700 Subject: sms,MMS, and Push Notificstions In-Reply-To: References: Message-ID: <0BE00531-93F1-4A00-85BC-7B1DDA36E45A@gmail.com> Thanks. Looks interesting. It also looks like I'd have to learn a lot to get it implemented. I?ve been using cURL to access an API for water meter readings, and it?s painful, but would probably get easier. This looks like a good provider, tho. Best, Bill P > On Aug 14, 2017, at 1:42 PM, Simon Smith via use-livecode wrote: > > I would look at push notifications. onesignal.com looks quiet good, just > not had a chance to play with it yet. > > I have found that SMS messages are too unreliable when it comes to > emergency notifications, sometimes they come through, sometimes they don't > and sometimes they come through an hour or so later. > > Simon > > > Carpe diem > > *Simon Smith* > m. +27 83 306 7862 > > On Mon, Aug 14, 2017 at 9:19 PM, ELS prothero via use-livecode < > use-livecode at lists.runrev.com> wrote: > >> I?m curious. Has anybody done much with push notifications on mobile? >> There is a lesson on the livecode web site which is quite detailed, but >> leaves out the server side of the equation. I have been thinking about an >> emergency alert app and am exploring how difficult it would be to implement >> various communication technologies. Texts seem pretty straighforward, but I >> was thinking that push notifications might get more attention. >> >> The goal is to get the information to the recipient?s brain. It can get to >> the device, but unless the last (weak link) is traversed, the alert is >> ineffective. The target time for this is 15 minutes. >> >> I?ve Googled the heck out of these topics and there are really nice >> expensive services that can do the job, but we don?t want to pay the high >> fees. Others are marketing oriented, not optimized for emergency services. >> A custom app could be ideal, especially with increasing wildfire activity >> worldwide. >> >> Ideas and info? >> Best, >> Bill >> >> William Prothero, PhD >> Professor Emeritus >> University of California, Santa Barbara >> http://earthlearningsolutions.org >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From monte at appisle.net Mon Aug 14 18:32:48 2017 From: monte at appisle.net (Monte Goulding) Date: Tue, 15 Aug 2017 08:32:48 +1000 Subject: String delimiters [WAS Re: common code patterns] In-Reply-To: <8F3347C8-3377-4C88-800E-59809DCDE420@appisle.net> References: <99F68D5C-3832-4BEA-8017-0F21BC0F5F6C@clearvisiontech.com> <128524a1-c62c-d82b-05e7-8df8dbf72178@sonic.net> <3D1DF6C9-974B-479B-AC8A-F823E1E1C9E5@appisle.net> <9adcbc301153b8a81435c878cc695361@livecode.com> <027F339D-06BC-4BCE-B67D-85FD0B63B601@appisle.net> <498dccc1c6c5a652be241c66ace348f5@livecode.com> <59ef8b53-c48e-71d3-f5b4-161e7a9c9a64@sonic.net> <1dcb9bbb-75c3-5b60-62c1-5b2f03c005ce@tweedly.net> <8F3347C8-3377-4C88-800E-59809DCDE420@appisle.net> Message-ID: > On 15 Aug 2017, at 7:33 am, Monte Goulding via use-livecode wrote: > > put ?foo\ > bar? > > would put: > > foo > bar I had a little play while munching my muesli this morning with adding this to my (probably won?t get in the engine) PR for escaped strings. It was only a few lines to add but I didn?t look at colorization yet. I put a gif up here https://github.com/livecode/livecode/pull/5781 Of course that is: put ?foo\ bar? Cheers Monte From stephen at barncard.com Mon Aug 14 19:18:38 2017 From: stephen at barncard.com (Stephen Barncard) Date: Mon, 14 Aug 2017 16:18:38 -0700 Subject: sms,MMS, and Push Notificstions In-Reply-To: <0BE00531-93F1-4A00-85BC-7B1DDA36E45A@gmail.com> References: <0BE00531-93F1-4A00-85BC-7B1DDA36E45A@gmail.com> Message-ID: If I were to create an emergency alert app, I'd make something that stayed alive and was always verifying the existence of a central entity - web site, server etc. and the fail safe is that the user would be alerted when out of range. An 'always on' executable that would have to be carefully crafted to not take up too much battery energy, yet ping headquarters for a change every few seconds, then go into alert mode when the latest check reveals the emergency. It would be part of the routine of the wearer (fireman, whatever) to 'check in' with the server and verify correct operation, then just keep it running all day. The data would be minimal and UDP packets have incredibly low latency - even a voice alert could be sent real time - VOIP. I have no idea how the power usage would be handled in that case - the continuous pinging could drain the battery too quickly depending on how it's done. But there is the challenge! -- Stephen Barncard - Sebastopol Ca. USA - mixstream.org On Mon, Aug 14, 2017 at 3:25 PM, William Prothero via use-livecode < use-livecode at lists.runrev.com> wrote: > Thanks. Looks interesting. It also looks like I'd have to learn a lot to > get it implemented. I?ve been using cURL to access an API for water meter > readings, and it?s painful, but would probably get easier. > > This looks like a good provider, tho. > Best, > Bill P > > > On Aug 14, 2017, at 1:42 PM, Simon Smith via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > > I would look at push notifications. onesignal.com looks quiet good, just > > not had a chance to play with it yet. > > > > I have found that SMS messages are too unreliable when it comes to > > emergency notifications, sometimes they come through, sometimes they > don't > > and sometimes they come through an hour or so later. > > > > Simon > > > > > > Carpe diem > > > > *Simon Smith* > > m. +27 83 306 7862 > > > > On Mon, Aug 14, 2017 at 9:19 PM, ELS prothero via use-livecode < > > use-livecode at lists.runrev.com> wrote: > > > >> I?m curious. Has anybody done much with push notifications on mobile? > >> There is a lesson on the livecode web site which is quite detailed, but > >> leaves out the server side of the equation. I have been thinking about > an > >> emergency alert app and am exploring how difficult it would be to > implement > >> various communication technologies. Texts seem pretty straighforward, > but I > >> was thinking that push notifications might get more attention. > >> > >> The goal is to get the information to the recipient?s brain. It can get > to > >> the device, but unless the last (weak link) is traversed, the alert is > >> ineffective. The target time for this is 15 minutes. > >> > >> I?ve Googled the heck out of these topics and there are really nice > >> expensive services that can do the job, but we don?t want to pay the > high > >> fees. Others are marketing oriented, not optimized for emergency > services. > >> A custom app could be ideal, especially with increasing wildfire > activity > >> worldwide. > >> > >> Ideas and info? > >> Best, > >> Bill > >> > >> William Prothero, PhD > >> Professor Emeritus > >> University of California, Santa Barbara > >> http://earthlearningsolutions.org > >> > >> _______________________________________________ > >> use-livecode mailing list > >> use-livecode at lists.runrev.com > >> Please visit this url to subscribe, unsubscribe and manage your > >> subscription preferences: > >> http://lists.runrev.com/mailman/listinfo/use-livecode > > _______________________________________________ > > use-livecode mailing list > > use-livecode at lists.runrev.com > > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > > http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From feed at smpcsupport.com Mon Aug 14 19:38:49 2017 From: feed at smpcsupport.com (RunRevPlanet) Date: Tue, 15 Aug 2017 09:38:49 +1000 Subject: $1,000 Bounty For LiveCode Bug 20240 Message-ID: <1502753929.5992348939b3d@www.server101.com> Hi, ? Over at LiveCode Quality Control Centre (QCC) there is a Bug 20240 has been a problem for me lately.? ? I understand that a significant effort has been put into finding a fix over the past years, but without success. The problem behaviour has been reported before, my report is simply the latest one. And since it cannot be reproduced on demand it is a tough one to solve. ? There is a video of it at QCC at that shows what happens, if you have not come across it yourself. ? To encourage more eyes to look at the code, I have put up a bounty of $1,000AUD to the individual who resolves the problem with a fix. ? More details are in the bug report here: ? http://quality.livecode.com/show_bug.cgi?id=20240 ? If you have any questions about the bug, or the bounty, I can answer them here. ? Note it is only Australian dollars, but depending on the exchange rate, or where you live that might be a bonus? ? Good luck! And I really hope to be able to reward someone with this money! -- Scott McDonald http://thelivecodelab.com/ From chipsm at themartinz.com Mon Aug 14 20:07:23 2017 From: chipsm at themartinz.com (** Clarence P Martin **) Date: Mon, 14 Aug 2017 17:07:23 -0700 Subject: $1,000 Bounty For LiveCode Bug 20240 In-Reply-To: <1502753929.5992348939b3d@www.server101.com> References: <1502753929.5992348939b3d@www.server101.com> Message-ID: <022a01d3155a$79707750$6c5165f0$@themartinz.com> The AVI is Blank. Sincerely, Clarence Martin Email: chipsm at themartinz.com Cell: 626 6965561 -----Original Message----- From: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] On Behalf Of RunRevPlanet via use-livecode Sent: Monday, August 14, 2017 4:39 PM To: Use LiveCode Cc: RunRevPlanet Subject: $1,000 Bounty For LiveCode Bug 20240 Hi, ? Over at LiveCode Quality Control Centre (QCC) there is a Bug 20240 has been a problem for me lately.? ? I understand that a significant effort has been put into finding a fix over the past years, but without success. The problem behaviour has been reported before, my report is simply the latest one. And since it cannot be reproduced on demand it is a tough one to solve. ? There is a video of it at QCC at that shows what happens, if you have not come across it yourself. ? To encourage more eyes to look at the code, I have put up a bounty of $1,000AUD to the individual who resolves the problem with a fix. ? More details are in the bug report here: ? http://quality.livecode.com/show_bug.cgi?id=20240 ? If you have any questions about the bug, or the bounty, I can answer them here. ? Note it is only Australian dollars, but depending on the exchange rate, or where you live that might be a bonus? ? Good luck! And I really hope to be able to reward someone with this money! -- Scott McDonald http://thelivecodelab.com/ _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode From colinholgate at gmail.com Mon Aug 14 20:12:49 2017 From: colinholgate at gmail.com (Colin Holgate) Date: Mon, 14 Aug 2017 20:12:49 -0400 Subject: $1,000 Bounty For LiveCode Bug 20240 In-Reply-To: <022a01d3155a$79707750$6c5165f0$@themartinz.com> References: <1502753929.5992348939b3d@www.server101.com> <022a01d3155a$79707750$6c5165f0$@themartinz.com> Message-ID: <420159A9-F0CB-4371-A1C1-396711245FDE@gmail.com> Ha! That was the bug all along! Just kidding. I noticed that too. I was going to upload an mp4 so that more people could check it out, but that required downloading the AVI. > On Aug 14, 2017, at 8:07 PM, ** Clarence P Martin ** via use-livecode wrote: > > The AVI is Blank. > > Sincerely, > > Clarence Martin > Email: chipsm at themartinz.com > Cell: 626 6965561 > > -----Original Message----- > From: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] On Behalf > Of RunRevPlanet via use-livecode > Sent: Monday, August 14, 2017 4:39 PM > To: Use LiveCode > Cc: RunRevPlanet > Subject: $1,000 Bounty For LiveCode Bug 20240 > > Hi, > > Over at LiveCode Quality Control Centre (QCC) there is a Bug 20240 has been > a problem for me lately. > > I understand that a significant effort has been put into finding a fix over > the past years, but without success. The problem behaviour has been reported > before, my report is simply the latest one. And since it cannot be > reproduced on demand it is a tough one to solve. > > There is a video of it at QCC at that shows what happens, if you have not > come across it yourself. > > To encourage more eyes to look at the code, I have put up a bounty of > $1,000AUD to the individual who resolves the problem with a fix. > > More details are in the bug report here: > > http://quality.livecode.com/show_bug.cgi?id=20240 > > If you have any questions about the bug, or the bounty, I can answer them > here. > > Note it is only Australian dollars, but depending on the exchange rate, or > where you live that might be a bonus? > > Good luck! And I really hope to be able to reward someone with this money! > -- > Scott McDonald > http://thelivecodelab.com/ > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription > preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From warren at warrensweb.us Mon Aug 14 20:19:09 2017 From: warren at warrensweb.us (Warren Samples) Date: Mon, 14 Aug 2017 19:19:09 -0500 Subject: $1,000 Bounty For LiveCode Bug 20240 In-Reply-To: <022a01d3155a$79707750$6c5165f0$@themartinz.com> References: <1502753929.5992348939b3d@www.server101.com> <022a01d3155a$79707750$6c5165f0$@themartinz.com> Message-ID: <58dbf448-a47b-001f-4428-20cab994bf2a@warrensweb.us> On 08/14/2017 07:07 PM, ** Clarence P Martin ** via use-livecode wrote: > The AVI is Blank. It works here. From chipsm at themartinz.com Mon Aug 14 20:24:37 2017 From: chipsm at themartinz.com (** Clarence P Martin **) Date: Mon, 14 Aug 2017 17:24:37 -0700 Subject: $1,000 Bounty For LiveCode Bug 20240 In-Reply-To: <420159A9-F0CB-4371-A1C1-396711245FDE@gmail.com> References: <1502753929.5992348939b3d@www.server101.com> <022a01d3155a$79707750$6c5165f0$@themartinz.com> <420159A9-F0CB-4371-A1C1-396711245FDE@gmail.com> Message-ID: <023801d3155c$e0afd2b0$a20f7810$@themartinz.com> Correction.... the AVI did download and apparently there is something playing but the screen is totally black. The file I about 33kb Sincerely, Clarence Martin Email: chipsm at themartinz.com Cell: 626 6965561 -----Original Message----- From: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] On Behalf Of Colin Holgate via use-livecode Sent: Monday, August 14, 2017 5:13 PM To: How to use LiveCode Cc: Colin Holgate Subject: Re: $1,000 Bounty For LiveCode Bug 20240 Ha! That was the bug all along! Just kidding. I noticed that too. I was going to upload an mp4 so that more people could check it out, but that required downloading the AVI. > On Aug 14, 2017, at 8:07 PM, ** Clarence P Martin ** via use-livecode wrote: > > The AVI is Blank. > > Sincerely, > > Clarence Martin > Email: chipsm at themartinz.com > Cell: 626 6965561 > > -----Original Message----- > From: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] On > Behalf Of RunRevPlanet via use-livecode > Sent: Monday, August 14, 2017 4:39 PM > To: Use LiveCode > Cc: RunRevPlanet > Subject: $1,000 Bounty For LiveCode Bug 20240 > > Hi, > > Over at LiveCode Quality Control Centre (QCC) there is a Bug 20240 has > been a problem for me lately. > > I understand that a significant effort has been put into finding a fix > over the past years, but without success. The problem behaviour has > been reported before, my report is simply the latest one. And since it > cannot be reproduced on demand it is a tough one to solve. > > There is a video of it at QCC at that shows what happens, if you have > not come across it yourself. > > To encourage more eyes to look at the code, I have put up a bounty of > $1,000AUD to the individual who resolves the problem with a fix. > > More details are in the bug report here: > > http://quality.livecode.com/show_bug.cgi?id=20240 > > If you have any questions about the bug, or the bounty, I can answer > them here. > > Note it is only Australian dollars, but depending on the exchange > rate, or where you live that might be a bonus? > > Good luck! And I really hope to be able to reward someone with this money! > -- > Scott McDonald > http://thelivecodelab.com/ > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription > preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode From warren at warrensweb.us Mon Aug 14 20:25:33 2017 From: warren at warrensweb.us (Warren Samples) Date: Mon, 14 Aug 2017 19:25:33 -0500 Subject: $1,000 Bounty For LiveCode Bug 20240 In-Reply-To: <58dbf448-a47b-001f-4428-20cab994bf2a@warrensweb.us> References: <1502753929.5992348939b3d@www.server101.com> <022a01d3155a$79707750$6c5165f0$@themartinz.com> <58dbf448-a47b-001f-4428-20cab994bf2a@warrensweb.us> Message-ID: <006a70b8-fdc2-c4ae-ed06-79e138fd3179@warrensweb.us> On 08/14/2017 07:19 PM, Warren Samples via use-livecode wrote: > On 08/14/2017 07:07 PM, ** Clarence P Martin ** via use-livecode wrote: >> The AVI is Blank. > > > It works here. > > _______________________________________________ I transcoded Scott's video to m4v and uploaded it for those who who interested and coudn't see it. From bobsneidar at iotecdigital.com Mon Aug 14 21:23:28 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Tue, 15 Aug 2017 01:23:28 +0000 Subject: Forum: Waves of Russian Nonsense In-Reply-To: <61D5F578-FFEF-43D3-9314-13742D39EA71@netrin.com> References: <61D5F578-FFEF-43D3-9314-13742D39EA71@netrin.com> Message-ID: <6F6FD849-0B0B-478D-83C1-35518C43B444@iotecdigital.com> Office 365 and Kaspersky and our router subscriptions seem to be working then. I got nothing. :-) Bob S > On Aug 14, 2017, at 11:50 , Jim Lambert via use-livecode wrote: > >> Klaus wrote: >> >> I deleted the 49 slavic spam postings manually a couple of minutes ago? > > ??????? ;) > > Jim Lambert From bobsneidar at iotecdigital.com Mon Aug 14 21:27:35 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Tue, 15 Aug 2017 01:27:35 +0000 Subject: String delimiters [WAS Re: common code patterns] In-Reply-To: <59ef8b53-c48e-71d3-f5b4-161e7a9c9a64@sonic.net> References: <99F68D5C-3832-4BEA-8017-0F21BC0F5F6C@clearvisiontech.com> <128524a1-c62c-d82b-05e7-8df8dbf72178@sonic.net> <3D1DF6C9-974B-479B-AC8A-F823E1E1C9E5@appisle.net> <9adcbc301153b8a81435c878cc695361@livecode.com> <027F339D-06BC-4BCE-B67D-85FD0B63B601@appisle.net> <498dccc1c6c5a652be241c66ace348f5@livecode.com> <59ef8b53-c48e-71d3-f5b4-161e7a9c9a64@sonic.net> Message-ID: I'm at a loss here. What do you mean by multi-line strings besides strings with multiple lines in them? Isn't this already possible?? Bob S > On Aug 14, 2017, at 09:00 , Mark Wieder via use-livecode wrote: > > On 08/14/2017 03:28 AM, Alex Tweedly via use-livecode wrote: >> While we (i.e. you) are thinking about string delimiters, could we PLEASE have some decent way to do multi-line strings. > > Yes, please. > >> Whether it's like Python's triple-quote > > No, please. > > -- > Mark Wieder > ahsoftware at gmail.com > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From bobsneidar at iotecdigital.com Mon Aug 14 21:32:19 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Tue, 15 Aug 2017 01:32:19 +0000 Subject: $1,000 Bounty For LiveCode Bug 20240 In-Reply-To: <1502753929.5992348939b3d@www.server101.com> References: <1502753929.5992348939b3d@www.server101.com> Message-ID: Yup I've seen that myself. I don't know what to do about it but close the script editor and reopen it. Seems to go away. Bob S > On Aug 14, 2017, at 16:38 , RunRevPlanet via use-livecode wrote: > > Hi, > > Over at LiveCode Quality Control Centre (QCC) there is a Bug 20240 has been a > problem for me lately. From feed at smpcsupport.com Mon Aug 14 21:58:54 2017 From: feed at smpcsupport.com (RunRevPlanet) Date: Tue, 15 Aug 2017 11:58:54 +1000 Subject: $1,000 Bounty For LiveCode Bug 20240 In-Reply-To: <006a70b8-fdc2-c4ae-ed06-79e138fd3179@warrensweb.us> References: <1502753929.5992348939b3d@www.server101.com> <022a01d3155a$79707750$6c5165f0$@themartinz.com> <58dbf448-a47b-001f-4428-20cab994bf2a@warrensweb.us> <006a70b8-fdc2-c4ae-ed06-79e138fd3179@warrensweb.us> Message-ID: <1502762334.5992555e49bcc@www.server101.com> > I transcoded Scott's video to m4v and uploaded it for those > who interested and coudn't see it. Thank you Warren. I use VLC for all my video playback needs. It generally handles anything thrown at it, so I wasn't aware that the encoding may not be compatible for everyone. -- Scott McDonald http://thelivecodelab.com/ From colinholgate at gmail.com Mon Aug 14 22:04:18 2017 From: colinholgate at gmail.com (Colin Holgate) Date: Mon, 14 Aug 2017 22:04:18 -0400 Subject: $1,000 Bounty For LiveCode Bug 20240 In-Reply-To: <1502762334.5992555e49bcc@www.server101.com> References: <1502753929.5992348939b3d@www.server101.com> <022a01d3155a$79707750$6c5165f0$@themartinz.com> <58dbf448-a47b-001f-4428-20cab994bf2a@warrensweb.us> <006a70b8-fdc2-c4ae-ed06-79e138fd3179@warrensweb.us> <1502762334.5992555e49bcc@www.server101.com> Message-ID: <3F1F2B79-BC35-4FB9-9B94-AAE0EFCC6772@gmail.com> VLC is great, but it only works if you get past the download stage. > On Aug 14, 2017, at 9:58 PM, RunRevPlanet via use-livecode wrote: > > >> I transcoded Scott's video to m4v and uploaded it for those >> who interested and coudn't see it. > > Thank you Warren. I use VLC for all my video playback needs. It generally > handles anything thrown at it, so I wasn't aware that the encoding may not be > compatible for everyone. > -- > Scott McDonald > http://thelivecodelab.com/ > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From jacque at hyperactivesw.com Mon Aug 14 22:06:48 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Mon, 14 Aug 2017 21:06:48 -0500 Subject: $1,000 Bounty For LiveCode Bug 20240 In-Reply-To: References: <1502753929.5992348939b3d@www.server101.com> Message-ID: <15de3a4b2c0.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> I think we've all seen it. It isn't necessary to close the editor though, I just reselect and it works the second time. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com On August 14, 2017 8:34:11 PM Bob Sneidar via use-livecode wrote: > Yup I've seen that myself. I don't know what to do about it but close the > script editor and reopen it. Seems to go away. > > Bob S > > >> On Aug 14, 2017, at 16:38 , RunRevPlanet via use-livecode >> wrote: >> >> Hi, >> >> Over at LiveCode Quality Control Centre (QCC) there is a Bug 20240 has been a >> problem for me lately. > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From terry.judd at unimelb.edu.au Mon Aug 14 22:36:18 2017 From: terry.judd at unimelb.edu.au (Terry Judd) Date: Tue, 15 Aug 2017 02:36:18 +0000 Subject: $1,000 Bounty For LiveCode Bug 20240 In-Reply-To: <15de3a4b2c0.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> References: <1502753929.5992348939b3d@www.server101.com> <15de3a4b2c0.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Message-ID: <90BEF6BA-8D53-4043-A405-A7EDB5468C81@unimelb.edu.au> Yeah, sometimes, but in my experience not always. I?ve had to resort to closing the affected tab at least. Terry... Terry Judd| Senior Lecturer in Medical Education Department of Medical Education The University of Melbourne M: 0435 961 594 | E: terry.judd at unimelb.edu.au Publications On 15/08/2017 12:06 pm, "use-livecode on behalf of J. Landman Gay via use-livecode" wrote: I think we've all seen it. It isn't necessary to close the editor though, I just reselect and it works the second time. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com On August 14, 2017 8:34:11 PM Bob Sneidar via use-livecode wrote: > Yup I've seen that myself. I don't know what to do about it but close the > script editor and reopen it. Seems to go away. > > Bob S > > >> On Aug 14, 2017, at 16:38 , RunRevPlanet via use-livecode >> wrote: >> >> Hi, >> >> Over at LiveCode Quality Control Centre (QCC) there is a Bug 20240 has been a >> problem for me lately. > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode From waprothero at gmail.com Mon Aug 14 23:01:32 2017 From: waprothero at gmail.com (William Prothero) Date: Mon, 14 Aug 2017 20:01:32 -0700 Subject: sms,MMS, and Push Notificstions In-Reply-To: References: <0BE00531-93F1-4A00-85BC-7B1DDA36E45A@gmail.com> Message-ID: <4729C992-BC5C-4F01-B412-3EE08291E269@gmail.com> Thanks, Stephen: What we are using as a preliminary solution is a mass sms and/or MMS texts and identical voice calls to our 49 numbers, initiated by one of several possible initiators who are called if a fire is observed. We are using eztexting.com for the texts and voiceshot.com for the voice messaging. It?s very inexpensive for voice $9/mo and 12c for each call. The texts are low cost too. We can enter several preset messages that we can choose from, depending on the immediacy of action that?s required. So, I figure that there are two tries per event and we should get most of the folks. I think another alert channel would be push notifications, but for now we?re sticking with voice and text. We expect the alerts to be very rare (we hope). I think a custom app that could initiate these actions more automatically would be quite nice, but the IT for it would take more of an investment than I?m willing to make, and there is no money in it unless it would take off in the app store, and if I made it general enough for most neighborhoods. For a bare bones, primitive system, text messages could be sent out and initiating a voice call to the group voice provider could be built in. It has to be easy and fast for the alert initiator, who would most likely be packing up for evacuation at the same time. Push notifications would be nice too. One problem is that the initiator?s phone number always appears in the voice call and text notification. If a more descriptive sender, like ?ALERT-XX?, it would be better, but that would most likely require setting up a dedicated alert server, and I don?t want to tackle that at this time. Best, Bill P. > On Aug 14, 2017, at 4:18 PM, Stephen Barncard via use-livecode wrote: > > If I were to create an emergency alert app, I'd make something that stayed > alive and was always verifying the existence of a central entity - web > site, server etc. and the fail safe is that the user would be alerted when > out of range. An 'always on' executable that would have to be carefully > crafted to not take up too much battery energy, yet ping headquarters for a > change every few seconds, then go into alert mode when the latest check > reveals the emergency. > > It would be part of the routine of the wearer (fireman, whatever) to 'check > in' with the server and verify correct operation, then just keep it running > all day. The data would be minimal and UDP packets have incredibly low > latency - even a voice alert could be sent real time - VOIP. > > I have no idea how the power usage would be handled in that case - the > continuous pinging could drain the battery too quickly depending on how > it's done. But there is the challenge! > > -- > Stephen Barncard - Sebastopol Ca. USA - > mixstream.org > > On Mon, Aug 14, 2017 at 3:25 PM, William Prothero via use-livecode < > use-livecode at lists.runrev.com> wrote: > >> Thanks. Looks interesting. It also looks like I'd have to learn a lot to >> get it implemented. I?ve been using cURL to access an API for water meter >> readings, and it?s painful, but would probably get easier. >> >> This looks like a good provider, tho. >> Best, >> Bill P >> >>> On Aug 14, 2017, at 1:42 PM, Simon Smith via use-livecode < >> use-livecode at lists.runrev.com> wrote: >>> >>> I would look at push notifications. onesignal.com looks quiet good, just >>> not had a chance to play with it yet. >>> >>> I have found that SMS messages are too unreliable when it comes to >>> emergency notifications, sometimes they come through, sometimes they >> don't >>> and sometimes they come through an hour or so later. >>> >>> Simon >>> >>> >>> Carpe diem >>> >>> *Simon Smith* >>> m. +27 83 306 7862 >>> >>> On Mon, Aug 14, 2017 at 9:19 PM, ELS prothero via use-livecode < >>> use-livecode at lists.runrev.com> wrote: >>> >>>> I?m curious. Has anybody done much with push notifications on mobile? >>>> There is a lesson on the livecode web site which is quite detailed, but >>>> leaves out the server side of the equation. I have been thinking about >> an >>>> emergency alert app and am exploring how difficult it would be to >> implement >>>> various communication technologies. Texts seem pretty straighforward, >> but I >>>> was thinking that push notifications might get more attention. >>>> >>>> The goal is to get the information to the recipient?s brain. It can get >> to >>>> the device, but unless the last (weak link) is traversed, the alert is >>>> ineffective. The target time for this is 15 minutes. >>>> >>>> I?ve Googled the heck out of these topics and there are really nice >>>> expensive services that can do the job, but we don?t want to pay the >> high >>>> fees. Others are marketing oriented, not optimized for emergency >> services. >>>> A custom app could be ideal, especially with increasing wildfire >> activity >>>> worldwide. >>>> >>>> Ideas and info? >>>> Best, >>>> Bill >>>> >>>> William Prothero, PhD >>>> Professor Emeritus >>>> University of California, Santa Barbara >>>> http://earthlearningsolutions.org >>>> >>>> _______________________________________________ >>>> use-livecode mailing list >>>> use-livecode at lists.runrev.com >>>> Please visit this url to subscribe, unsubscribe and manage your >>>> subscription preferences: >>>> http://lists.runrev.com/mailman/listinfo/use-livecode >>> _______________________________________________ >>> use-livecode mailing list >>> use-livecode at lists.runrev.com >>> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >>> http://lists.runrev.com/mailman/listinfo/use-livecode >> >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From ahsoftware at sonic.net Tue Aug 15 01:30:50 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Mon, 14 Aug 2017 22:30:50 -0700 Subject: Forum: Waves of Russian Nonsense In-Reply-To: References: <202d971f-fd70-5481-84fc-42093d90c55a@fourthworld.com> Message-ID: <66df7ead-becb-e549-fec9-1238b276626f@sonic.net> On 08/12/2017 02:47 PM, Mark Waddingham via use-livecode wrote: > Thank you - I'm sure there will be no issue with giving you the relevant privileges. > > I know Heather has to deal with things like this on a regular basis and having others who are willing to assist can only help. This is getting annoying. -- Mark Wieder ahsoftware at gmail.com From jonathandlynch at gmail.com Tue Aug 15 06:35:01 2017 From: jonathandlynch at gmail.com (Jonathan Lynch) Date: Tue, 15 Aug 2017 06:35:01 -0400 Subject: Weird thing I noticed with a graphics speed test In-Reply-To: <5EABFE7A-48CC-4AED-A26A-5C521D28D50A@gmail.com> References: <771F86B9-C043-4EA0-8374-9E6301004C72@gmail.com> <7F15AE57-993C-416C-ACCC-F3F4D5C85F41@gmail.com> <782e5f0f61f3d96c7ffd941ca15838ec@livecode.com> <5EABFE7A-48CC-4AED-A26A-5C521D28D50A@gmail.com> Message-ID: So, this is one of those moments where LiveCode is too good for my needs! You guys have done some optimizing to make LC handle graphics on Android, I think. My slow android device is almost as fast as my iPhone in this particular speed test. I know it does not have as much graphics processing power overall, so there must be some trick in the system to make it appear to work as fast. Which is great, but makes it hard to test. Since my problem has to do with the speed with which Web GL is processed in the web view, I think I am going to have to make a speed test based on web gl that runs in the browser widget. I was hoping to avoid that. Does anyone have any other ideas on how we can accurately test graphics processing power without using a browser widget? On Fri, Aug 11, 2017 at 6:26 AM, wrote: > This explains - thanks! So I need to compare performance between the > android and iOS devices to get a valid comparison. > > The group has 20 small images. I will turn them into large images to > increase the demand on pixel processing. > > Sent from my iPhone > > > On Aug 11, 2017, at 5:37 AM, Mark Waddingham via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > >> On 2017-08-10 03:38, Jonathan Lynch via use-livecode wrote: > >> Actually, I had forgotten to set the layermode of the group. > >> Now the number of passes on my Mac is 47 and on the android it is 31. > >> This still seems rather close. I expected the slow android device to > >> be like a quarter as fast. > > > > How many device pixels are there in your group when on your Mac compared > to on your slow android device? > > > > On Android and iOS, the engine uses OpenGLES to blit tiles to the screen > meaning that specific operation comes at virtually no cost. > > > > On Desktop it doesn't use OpenGL, so blitting is in software. On Mac, > there are two options CoreGraphics or software - I think the former tends > to be a bit quicker than the latter (particularly for larger numbers of > pixels). > > > > Generally (for simple cases, where no mutation beyond movement is > happening in your display) you should find that acceleratedRendering will > make something on iOS/Android about the same speed as you would get on > Desktop without acceleratedRendering turned on. > > > > Warmest Regards, > > > > Mark. > > > >> Sent from my iPhone > >>> On Aug 9, 2017, at 9:27 PM, jonathandlynch at gmail.com wrote: > >>> I created a group with ten buttons. I have a function that scrolls > this group as many times as it can in a second. > >>> With acceleratedrendering on, it can scroll 30 times on my Mac. My > very slow android device also scrolls it 30 times. > >>> With accelerated rendering off, it can scroll the group 87 times on > the Mac and 35 times on the android. > >>> Why would the scrolling be faster with accelerated rendering off? > >>> Why do both devices have the same speed with accelerated rendering on? > >>> I thought accelerated rendering used the graphics card? Shouldn't this > graphically slow android be slower? > >>> Sent from my iPhone > >> _______________________________________________ > >> use-livecode mailing list > >> use-livecode at lists.runrev.com > >> Please visit this url to subscribe, unsubscribe and manage your > >> subscription preferences: > >> http://lists.runrev.com/mailman/listinfo/use-livecode > > > > -- > > Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ > > LiveCode: Everyone can create apps > > > > _______________________________________________ > > use-livecode mailing list > > use-livecode at lists.runrev.com > > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > > http://lists.runrev.com/mailman/listinfo/use-livecode > -- Do all things with love From richmondmathewson at gmail.com Tue Aug 15 07:26:38 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Tue, 15 Aug 2017 14:26:38 +0300 Subject: lockscreen? Message-ID: So . . . owing to some oddities of my Devawriter Pro I have set up a new interface that automatically converts encoded documents from it original to another format; but that is implemented as an automation of one of the manual interfaces; so a series (hundreds, thousands) of mouseUp signals are despatched to images that function as buttons. This makes for an extremely pretty user feedback situation, but also means that things tend to be s . . . l . . . o . . . w . . . If I lock the screen (so these automations don't show up) will that speed things up? Richmond. From jonathandlynch at gmail.com Tue Aug 15 07:40:17 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Tue, 15 Aug 2017 07:40:17 -0400 Subject: lockscreen? In-Reply-To: References: Message-ID: If you use lock screen to have 1 screen update rather than hundreds or thousands of screen updates, it will be vastly faster. Sent from my iPhone > On Aug 15, 2017, at 7:26 AM, Richmond Mathewson via use-livecode wrote: > > So . . . owing to some oddities of my Devawriter Pro I have set up a new > interface that automatically converts encoded documents from it original > to another format; but that is implemented as an automation of one of > the manual interfaces; so a series (hundreds, thousands) of mouseUp > signals are despatched to images that function as buttons. > > This makes for an extremely pretty user feedback situation, but also > means that things tend to be s . . . l . . . o . . . w . . . > > If I lock the screen (so these automations don't show up) will that > speed things up? > > Richmond. > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From klaus at major-k.de Tue Aug 15 08:06:28 2017 From: klaus at major-k.de (Klaus major-k) Date: Tue, 15 Aug 2017 14:06:28 +0200 Subject: Forum: Waves of Russian Nonsense In-Reply-To: <66df7ead-becb-e549-fec9-1238b276626f@sonic.net> References: <202d971f-fd70-5481-84fc-42093d90c55a@fourthworld.com> <66df7ead-becb-e549-fec9-1238b276626f@sonic.net> Message-ID: > Am 15.08.2017 um 07:30 schrieb Mark Wieder via use-livecode : > > On 08/12/2017 02:47 PM, Mark Waddingham via use-livecode wrote: >> Thank you - I'm sure there will be no issue with giving you the relevant privileges. >> I know Heather has to deal with things like this on a regular basis and having others who are willing to assist can only help. > > This is getting annoying. I just deleted 71 slavic spam postings from the forum manually again, now THAT is getting annoying! > -- > Mark Wieder > ahsoftware at gmail.com Best Klaus -- Klaus Major http://www.major-k.de klaus at major-k.de From hh at hyperhh.de Tue Aug 15 08:26:47 2017 From: hh at hyperhh.de (hh) Date: Tue, 15 Aug 2017 14:26:47 +0200 Subject: Forum: Waves of Russian Nonsense Message-ID: <5B8EEF94-E36E-485A-94DD-FDEFD0D7F0BA@hyperhh.de> >> Mark wrote: >> This is getting annoying. > Klaus wrote: > I just deleted 71 slavic spam postings from the forum manually again, > now THAT is getting annoying! +71 for you. Thanks for that. But better stop manual deletion now. As long as you do that probably nothing will improve/change. It would be an action of 2 minutes to enable you and some others (Richard) to do that in a few seconds. From hh at hyperhh.de Tue Aug 15 08:30:48 2017 From: hh at hyperhh.de (hh) Date: Tue, 15 Aug 2017 14:30:48 +0200 Subject: lockscreen? Message-ID: <664F3675-D71D-4039-AE78-4A8404F0CD03@hyperhh.de> > Richmond wrote: > If I lock the screen (so these automations don't show up) will that > speed things up? lock screen; lock messages From mark at livecode.com Tue Aug 15 08:51:24 2017 From: mark at livecode.com (Mark Waddingham) Date: Tue, 15 Aug 2017 14:51:24 +0200 Subject: Forum: Waves of Russian Nonsense In-Reply-To: <5B8EEF94-E36E-485A-94DD-FDEFD0D7F0BA@hyperhh.de> References: <5B8EEF94-E36E-485A-94DD-FDEFD0D7F0BA@hyperhh.de> Message-ID: <5fbc7b156d44f90c0baa9b8d8d8571a6@livecode.com> On 2017-08-15 14:26, hh via use-livecode wrote: > But better stop manual deletion now. As long as you do that probably > nothing > will improve/change. It would be an action of 2 minutes to enable you > and some > others (Richard) to do that in a few seconds. I have asked Heather about this, but unfortunately our forum software has no admin level between the current ones we give to external moderators and complete administrative access. The latter is not something we can grant to external moderators as it gives you access to too much data and we'd start to fall foul of Data Protection laws in the UK. Also, apparantly it is really really easy to make an unrecoverable mistake with such an access level... Anyway, this has been on Heather's mind - hopefully she will come up with an alternate solution in due course. Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From iphonelagi at gmail.com Tue Aug 15 10:13:04 2017 From: iphonelagi at gmail.com (Lagi Pittas) Date: Tue, 15 Aug 2017 15:13:04 +0100 Subject: Forum: Waves of Russian Nonsense In-Reply-To: <5fbc7b156d44f90c0baa9b8d8d8571a6@livecode.com> References: <5B8EEF94-E36E-485A-94DD-FDEFD0D7F0BA@hyperhh.de> <5fbc7b156d44f90c0baa9b8d8d8571a6@livecode.com> Message-ID: If Klaus and Richard can't be given Admin rights then the world is doomed. If it is data protection then surely you must have the some way of allowing a new employee/current employee of the company to have admin rights. But some of these nanny state laws that are totally ignored by the very people that make them really p**s me off. Thewse are not bank/financial records and neither Richard or Klaus are Banksters - plus the fact I'm sure they won't peek - Trust them morte than I trust google or our governments.. my two pence/cents worth. Lagi On 15 August 2017 at 13:51, Mark Waddingham via use-livecode < use-livecode at lists.runrev.com> wrote: > On 2017-08-15 14:26, hh via use-livecode wrote: > >> But better stop manual deletion now. As long as you do that probably >> nothing >> will improve/change. It would be an action of 2 minutes to enable you and >> some >> others (Richard) to do that in a few seconds. >> > > I have asked Heather about this, but unfortunately our forum software has > no admin level between the current ones we give to external moderators and > complete administrative access. The latter is not something we can grant to > external moderators as it gives you access to too much data and we'd start > to fall foul of Data Protection laws in the UK. > > Also, apparantly it is really really easy to make an unrecoverable mistake > with such an access level... > > Anyway, this has been on Heather's mind - hopefully she will come up with > an alternate solution in due course. > > Warmest Regards, > > Mark. > > -- > Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ > LiveCode: Everyone can create apps > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From ambassador at fourthworld.com Tue Aug 15 10:25:10 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Tue, 15 Aug 2017 07:25:10 -0700 Subject: Forum: Waves of Russian Nonsense In-Reply-To: <5fbc7b156d44f90c0baa9b8d8d8571a6@livecode.com> References: <5fbc7b156d44f90c0baa9b8d8d8571a6@livecode.com> Message-ID: Mark Waddingham wrote: > I have asked Heather about this, but unfortunately our forum software > has no admin level between the current ones we give to external > moderators and complete administrative access. The latter is not > something we can grant to external moderators as it gives you access > to too much data and we'd start to fall foul of Data Protection laws > in the UK. I appreciate your looking into this. > Also, apparantly it is really really easy to make an unrecoverable > mistake with such an access level... Moderators already have the means of performing a wide range of tasks that make it easy to make unrecoverable errors. We're pretty careful. > Anyway, this has been on Heather's mind - hopefully she will come up > with an alternate solution in due course. If you find an internal resource to periodically monitor the forums you should be set. Two other items on the wish list: - Keep the PHPBB version up to date - Add SSL -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From MikeKerner at roadrunner.com Tue Aug 15 10:42:36 2017 From: MikeKerner at roadrunner.com (Mike Kerner) Date: Tue, 15 Aug 2017 10:42:36 -0400 Subject: sms,MMS, and Push Notificstions In-Reply-To: <4729C992-BC5C-4F01-B412-3EE08291E269@gmail.com> References: <0BE00531-93F1-4A00-85BC-7B1DDA36E45A@gmail.com> <4729C992-BC5C-4F01-B412-3EE08291E269@gmail.com> Message-ID: app push is pretty easy/straightforward in LC, but there are multiple QR's out to add features/fix things on them. On Mon, Aug 14, 2017 at 11:01 PM, William Prothero via use-livecode < use-livecode at lists.runrev.com> wrote: > Thanks, Stephen: > What we are using as a preliminary solution is a mass sms and/or MMS texts > and identical voice calls to our 49 numbers, initiated by one of several > possible initiators who are called if a fire is observed. We are using > eztexting.com for the texts and voiceshot.com < > http://voiceshot.com/> for the voice messaging. It?s very inexpensive for > voice $9/mo and 12c for each call. The texts are low cost too. We can enter > several preset messages that we can choose from, depending on the immediacy > of action that?s required. So, I figure that there are two tries per event > and we should get most of the folks. I think another alert channel would be > push notifications, but for now we?re sticking with voice and text. We > expect the alerts to be very rare (we hope). I think a custom app that > could initiate these actions more automatically would be quite nice, but > the IT for it would take more of an investment than I?m willing to make, > and there is no money in it unless it would take off in the app store, and > if I made it general enough for most neighborhoods. > > For a bare bones, primitive system, text messages could be sent out and > initiating a voice call to the group voice provider could be built in. It > has to be easy and fast for the alert initiator, who would most likely be > packing up for evacuation at the same time. Push notifications would be > nice too. One problem is that the initiator?s phone number always appears > in the voice call and text notification. If a more descriptive sender, like > ?ALERT-XX?, it would be better, but that would most likely require setting > up a dedicated alert server, and I don?t want to tackle that at this time. > > Best, > Bill P. > > > On Aug 14, 2017, at 4:18 PM, Stephen Barncard via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > > If I were to create an emergency alert app, I'd make something that > stayed > > alive and was always verifying the existence of a central entity - web > > site, server etc. and the fail safe is that the user would be alerted > when > > out of range. An 'always on' executable that would have to be carefully > > crafted to not take up too much battery energy, yet ping headquarters > for a > > change every few seconds, then go into alert mode when the latest check > > reveals the emergency. > > > > It would be part of the routine of the wearer (fireman, whatever) to > 'check > > in' with the server and verify correct operation, then just keep it > running > > all day. The data would be minimal and UDP packets have incredibly low > > latency - even a voice alert could be sent real time - VOIP. > > > > I have no idea how the power usage would be handled in that case - the > > continuous pinging could drain the battery too quickly depending on how > > it's done. But there is the challenge! > > > > -- > > Stephen Barncard - Sebastopol Ca. USA - > > mixstream.org > > > > On Mon, Aug 14, 2017 at 3:25 PM, William Prothero via use-livecode < > > use-livecode at lists.runrev.com> wrote: > > > >> Thanks. Looks interesting. It also looks like I'd have to learn a lot to > >> get it implemented. I?ve been using cURL to access an API for water > meter > >> readings, and it?s painful, but would probably get easier. > >> > >> This looks like a good provider, tho. > >> Best, > >> Bill P > >> > >>> On Aug 14, 2017, at 1:42 PM, Simon Smith via use-livecode < > >> use-livecode at lists.runrev.com> wrote: > >>> > >>> I would look at push notifications. onesignal.com looks quiet good, > just > >>> not had a chance to play with it yet. > >>> > >>> I have found that SMS messages are too unreliable when it comes to > >>> emergency notifications, sometimes they come through, sometimes they > >> don't > >>> and sometimes they come through an hour or so later. > >>> > >>> Simon > >>> > >>> > >>> Carpe diem > >>> > >>> *Simon Smith* > >>> m. +27 83 306 7862 > >>> > >>> On Mon, Aug 14, 2017 at 9:19 PM, ELS prothero via use-livecode < > >>> use-livecode at lists.runrev.com> wrote: > >>> > >>>> I?m curious. Has anybody done much with push notifications on mobile? > >>>> There is a lesson on the livecode web site which is quite detailed, > but > >>>> leaves out the server side of the equation. I have been thinking about > >> an > >>>> emergency alert app and am exploring how difficult it would be to > >> implement > >>>> various communication technologies. Texts seem pretty straighforward, > >> but I > >>>> was thinking that push notifications might get more attention. > >>>> > >>>> The goal is to get the information to the recipient?s brain. It can > get > >> to > >>>> the device, but unless the last (weak link) is traversed, the alert is > >>>> ineffective. The target time for this is 15 minutes. > >>>> > >>>> I?ve Googled the heck out of these topics and there are really nice > >>>> expensive services that can do the job, but we don?t want to pay the > >> high > >>>> fees. Others are marketing oriented, not optimized for emergency > >> services. > >>>> A custom app could be ideal, especially with increasing wildfire > >> activity > >>>> worldwide. > >>>> > >>>> Ideas and info? > >>>> Best, > >>>> Bill > >>>> > >>>> William Prothero, PhD > >>>> Professor Emeritus > >>>> University of California, Santa Barbara > >>>> http://earthlearningsolutions.org > >>>> > >>>> _______________________________________________ > >>>> use-livecode mailing list > >>>> use-livecode at lists.runrev.com > >>>> Please visit this url to subscribe, unsubscribe and manage your > >>>> subscription preferences: > >>>> http://lists.runrev.com/mailman/listinfo/use-livecode > >>> _______________________________________________ > >>> use-livecode mailing list > >>> use-livecode at lists.runrev.com > >>> Please visit this url to subscribe, unsubscribe and manage your > >> subscription preferences: > >>> http://lists.runrev.com/mailman/listinfo/use-livecode > >> > >> > >> _______________________________________________ > >> use-livecode mailing list > >> use-livecode at lists.runrev.com > >> Please visit this url to subscribe, unsubscribe and manage your > >> subscription preferences: > >> http://lists.runrev.com/mailman/listinfo/use-livecode > >> > > _______________________________________________ > > use-livecode mailing list > > use-livecode at lists.runrev.com > > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > > http://lists.runrev.com/mailman/listinfo/use-livecode > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > -- On the first day, God created the heavens and the Earth On the second day, God created the oceans. On the third day, God put the animals on hold for a few hours, and did a little diving. And God said, "This is good." From prothero at earthlearningsolutions.org Tue Aug 15 11:13:57 2017 From: prothero at earthlearningsolutions.org (prothero at earthlearningsolutions.org) Date: Tue, 15 Aug 2017 08:13:57 -0700 Subject: sms,MMS, and Push Notificstions In-Reply-To: References: <0BE00531-93F1-4A00-85BC-7B1DDA36E45A@gmail.com> <4729C992-BC5C-4F01-B412-3EE08291E269@gmail.com> Message-ID: <6755FABD-AC1E-462E-8D47-DFEE2D06F2D1@earthlearningsolutions.org> My big question at this point is what is required on the server side? I looked at onesignal, which looks like a really nice API provider, but I need to be able to allocate a load of time to learn the various ways of accessing it, like REST, cURL, etc. I'm stumbling around now with those technologies, but will have to make a more systematic learning effort if I am going to proceed in that direction. Best, Bill William Prothero http://es.earthednet.org > On Aug 15, 2017, at 7:42 AM, Mike Kerner via use-livecode wrote: > > app push is pretty easy/straightforward in LC, but there are multiple QR's > out to add features/fix things on them. > > On Mon, Aug 14, 2017 at 11:01 PM, William Prothero via use-livecode < > use-livecode at lists.runrev.com> wrote: > >> Thanks, Stephen: >> What we are using as a preliminary solution is a mass sms and/or MMS texts >> and identical voice calls to our 49 numbers, initiated by one of several >> possible initiators who are called if a fire is observed. We are using >> eztexting.com for the texts and voiceshot.com < >> http://voiceshot.com/> for the voice messaging. It?s very inexpensive for >> voice $9/mo and 12c for each call. The texts are low cost too. We can enter >> several preset messages that we can choose from, depending on the immediacy >> of action that?s required. So, I figure that there are two tries per event >> and we should get most of the folks. I think another alert channel would be >> push notifications, but for now we?re sticking with voice and text. We >> expect the alerts to be very rare (we hope). I think a custom app that >> could initiate these actions more automatically would be quite nice, but >> the IT for it would take more of an investment than I?m willing to make, >> and there is no money in it unless it would take off in the app store, and >> if I made it general enough for most neighborhoods. >> >> For a bare bones, primitive system, text messages could be sent out and >> initiating a voice call to the group voice provider could be built in. It >> has to be easy and fast for the alert initiator, who would most likely be >> packing up for evacuation at the same time. Push notifications would be >> nice too. One problem is that the initiator?s phone number always appears >> in the voice call and text notification. If a more descriptive sender, like >> ?ALERT-XX?, it would be better, but that would most likely require setting >> up a dedicated alert server, and I don?t want to tackle that at this time. >> >> Best, >> Bill P. >> >>> On Aug 14, 2017, at 4:18 PM, Stephen Barncard via use-livecode < >> use-livecode at lists.runrev.com> wrote: >>> >>> If I were to create an emergency alert app, I'd make something that >> stayed >>> alive and was always verifying the existence of a central entity - web >>> site, server etc. and the fail safe is that the user would be alerted >> when >>> out of range. An 'always on' executable that would have to be carefully >>> crafted to not take up too much battery energy, yet ping headquarters >> for a >>> change every few seconds, then go into alert mode when the latest check >>> reveals the emergency. >>> >>> It would be part of the routine of the wearer (fireman, whatever) to >> 'check >>> in' with the server and verify correct operation, then just keep it >> running >>> all day. The data would be minimal and UDP packets have incredibly low >>> latency - even a voice alert could be sent real time - VOIP. >>> >>> I have no idea how the power usage would be handled in that case - the >>> continuous pinging could drain the battery too quickly depending on how >>> it's done. But there is the challenge! >>> >>> -- >>> Stephen Barncard - Sebastopol Ca. USA - >>> mixstream.org >>> >>> On Mon, Aug 14, 2017 at 3:25 PM, William Prothero via use-livecode < >>> use-livecode at lists.runrev.com> wrote: >>> >>>> Thanks. Looks interesting. It also looks like I'd have to learn a lot to >>>> get it implemented. I?ve been using cURL to access an API for water >> meter >>>> readings, and it?s painful, but would probably get easier. >>>> >>>> This looks like a good provider, tho. >>>> Best, >>>> Bill P >>>> >>>>> On Aug 14, 2017, at 1:42 PM, Simon Smith via use-livecode < >>>> use-livecode at lists.runrev.com> wrote: >>>>> >>>>> I would look at push notifications. onesignal.com looks quiet good, >> just >>>>> not had a chance to play with it yet. >>>>> >>>>> I have found that SMS messages are too unreliable when it comes to >>>>> emergency notifications, sometimes they come through, sometimes they >>>> don't >>>>> and sometimes they come through an hour or so later. >>>>> >>>>> Simon >>>>> >>>>> >>>>> Carpe diem >>>>> >>>>> *Simon Smith* >>>>> m. +27 83 306 7862 >>>>> >>>>> On Mon, Aug 14, 2017 at 9:19 PM, ELS prothero via use-livecode < >>>>> use-livecode at lists.runrev.com> wrote: >>>>> >>>>>> I?m curious. Has anybody done much with push notifications on mobile? >>>>>> There is a lesson on the livecode web site which is quite detailed, >> but >>>>>> leaves out the server side of the equation. I have been thinking about >>>> an >>>>>> emergency alert app and am exploring how difficult it would be to >>>> implement >>>>>> various communication technologies. Texts seem pretty straighforward, >>>> but I >>>>>> was thinking that push notifications might get more attention. >>>>>> >>>>>> The goal is to get the information to the recipient?s brain. It can >> get >>>> to >>>>>> the device, but unless the last (weak link) is traversed, the alert is >>>>>> ineffective. The target time for this is 15 minutes. >>>>>> >>>>>> I?ve Googled the heck out of these topics and there are really nice >>>>>> expensive services that can do the job, but we don?t want to pay the >>>> high >>>>>> fees. Others are marketing oriented, not optimized for emergency >>>> services. >>>>>> A custom app could be ideal, especially with increasing wildfire >>>> activity >>>>>> worldwide. >>>>>> >>>>>> Ideas and info? >>>>>> Best, >>>>>> Bill >>>>>> >>>>>> William Prothero, PhD >>>>>> Professor Emeritus >>>>>> University of California, Santa Barbara >>>>>> http://earthlearningsolutions.org >>>>>> >>>>>> _______________________________________________ >>>>>> use-livecode mailing list >>>>>> use-livecode at lists.runrev.com >>>>>> Please visit this url to subscribe, unsubscribe and manage your >>>>>> subscription preferences: >>>>>> http://lists.runrev.com/mailman/listinfo/use-livecode >>>>> _______________________________________________ >>>>> use-livecode mailing list >>>>> use-livecode at lists.runrev.com >>>>> Please visit this url to subscribe, unsubscribe and manage your >>>> subscription preferences: >>>>> http://lists.runrev.com/mailman/listinfo/use-livecode >>>> >>>> >>>> _______________________________________________ >>>> use-livecode mailing list >>>> use-livecode at lists.runrev.com >>>> Please visit this url to subscribe, unsubscribe and manage your >>>> subscription preferences: >>>> http://lists.runrev.com/mailman/listinfo/use-livecode >>>> >>> _______________________________________________ >>> use-livecode mailing list >>> use-livecode at lists.runrev.com >>> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >>> http://lists.runrev.com/mailman/listinfo/use-livecode >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> > > > > -- > On the first day, God created the heavens and the Earth > On the second day, God created the oceans. > On the third day, God put the animals on hold for a few hours, > and did a little diving. > And God said, "This is good." > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From MikeKerner at roadrunner.com Tue Aug 15 11:28:24 2017 From: MikeKerner at roadrunner.com (Mike Kerner) Date: Tue, 15 Aug 2017 11:28:24 -0400 Subject: sms,MMS, and Push Notificstions In-Reply-To: <6755FABD-AC1E-462E-8D47-DFEE2D06F2D1@earthlearningsolutions.org> References: <0BE00531-93F1-4A00-85BC-7B1DDA36E45A@gmail.com> <4729C992-BC5C-4F01-B412-3EE08291E269@gmail.com> <6755FABD-AC1E-462E-8D47-DFEE2D06F2D1@earthlearningsolutions.org> Message-ID: There is a LC stack that John wrote that you can use. On Tue, Aug 15, 2017 at 11:13 AM, prothero--- via use-livecode < use-livecode at lists.runrev.com> wrote: > My big question at this point is what is required on the server side? I > looked at onesignal, which looks like a really nice API provider, but I > need to be able to allocate a load of time to learn the various ways of > accessing it, like REST, cURL, etc. I'm stumbling around now with those > technologies, but will have to make a more systematic learning effort if I > am going to proceed in that direction. > > Best, > Bill > > William Prothero > http://es.earthednet.org > > > On Aug 15, 2017, at 7:42 AM, Mike Kerner via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > > app push is pretty easy/straightforward in LC, but there are multiple > QR's > > out to add features/fix things on them. > > > > On Mon, Aug 14, 2017 at 11:01 PM, William Prothero via use-livecode < > > use-livecode at lists.runrev.com> wrote: > > > >> Thanks, Stephen: > >> What we are using as a preliminary solution is a mass sms and/or MMS > texts > >> and identical voice calls to our 49 numbers, initiated by one of several > >> possible initiators who are called if a fire is observed. We are using > >> eztexting.com for the texts and voiceshot.com < > >> http://voiceshot.com/> for the voice messaging. It?s very inexpensive > for > >> voice $9/mo and 12c for each call. The texts are low cost too. We can > enter > >> several preset messages that we can choose from, depending on the > immediacy > >> of action that?s required. So, I figure that there are two tries per > event > >> and we should get most of the folks. I think another alert channel > would be > >> push notifications, but for now we?re sticking with voice and text. We > >> expect the alerts to be very rare (we hope). I think a custom app that > >> could initiate these actions more automatically would be quite nice, but > >> the IT for it would take more of an investment than I?m willing to make, > >> and there is no money in it unless it would take off in the app store, > and > >> if I made it general enough for most neighborhoods. > >> > >> For a bare bones, primitive system, text messages could be sent out and > >> initiating a voice call to the group voice provider could be built in. > It > >> has to be easy and fast for the alert initiator, who would most likely > be > >> packing up for evacuation at the same time. Push notifications would be > >> nice too. One problem is that the initiator?s phone number always > appears > >> in the voice call and text notification. If a more descriptive sender, > like > >> ?ALERT-XX?, it would be better, but that would most likely require > setting > >> up a dedicated alert server, and I don?t want to tackle that at this > time. > >> > >> Best, > >> Bill P. > >> > >>> On Aug 14, 2017, at 4:18 PM, Stephen Barncard via use-livecode < > >> use-livecode at lists.runrev.com> wrote: > >>> > >>> If I were to create an emergency alert app, I'd make something that > >> stayed > >>> alive and was always verifying the existence of a central entity - web > >>> site, server etc. and the fail safe is that the user would be alerted > >> when > >>> out of range. An 'always on' executable that would have to be > carefully > >>> crafted to not take up too much battery energy, yet ping headquarters > >> for a > >>> change every few seconds, then go into alert mode when the latest check > >>> reveals the emergency. > >>> > >>> It would be part of the routine of the wearer (fireman, whatever) to > >> 'check > >>> in' with the server and verify correct operation, then just keep it > >> running > >>> all day. The data would be minimal and UDP packets have incredibly low > >>> latency - even a voice alert could be sent real time - VOIP. > >>> > >>> I have no idea how the power usage would be handled in that case - the > >>> continuous pinging could drain the battery too quickly depending on > how > >>> it's done. But there is the challenge! > >>> > >>> -- > >>> Stephen Barncard - Sebastopol Ca. USA - > >>> mixstream.org > >>> > >>> On Mon, Aug 14, 2017 at 3:25 PM, William Prothero via use-livecode < > >>> use-livecode at lists.runrev.com> wrote: > >>> > >>>> Thanks. Looks interesting. It also looks like I'd have to learn a lot > to > >>>> get it implemented. I?ve been using cURL to access an API for water > >> meter > >>>> readings, and it?s painful, but would probably get easier. > >>>> > >>>> This looks like a good provider, tho. > >>>> Best, > >>>> Bill P > >>>> > >>>>> On Aug 14, 2017, at 1:42 PM, Simon Smith via use-livecode < > >>>> use-livecode at lists.runrev.com> wrote: > >>>>> > >>>>> I would look at push notifications. onesignal.com looks quiet good, > >> just > >>>>> not had a chance to play with it yet. > >>>>> > >>>>> I have found that SMS messages are too unreliable when it comes to > >>>>> emergency notifications, sometimes they come through, sometimes they > >>>> don't > >>>>> and sometimes they come through an hour or so later. > >>>>> > >>>>> Simon > >>>>> > >>>>> > >>>>> Carpe diem > >>>>> > >>>>> *Simon Smith* > >>>>> m. +27 83 306 7862 > >>>>> > >>>>> On Mon, Aug 14, 2017 at 9:19 PM, ELS prothero via use-livecode < > >>>>> use-livecode at lists.runrev.com> wrote: > >>>>> > >>>>>> I?m curious. Has anybody done much with push notifications on > mobile? > >>>>>> There is a lesson on the livecode web site which is quite detailed, > >> but > >>>>>> leaves out the server side of the equation. I have been thinking > about > >>>> an > >>>>>> emergency alert app and am exploring how difficult it would be to > >>>> implement > >>>>>> various communication technologies. Texts seem pretty > straighforward, > >>>> but I > >>>>>> was thinking that push notifications might get more attention. > >>>>>> > >>>>>> The goal is to get the information to the recipient?s brain. It can > >> get > >>>> to > >>>>>> the device, but unless the last (weak link) is traversed, the alert > is > >>>>>> ineffective. The target time for this is 15 minutes. > >>>>>> > >>>>>> I?ve Googled the heck out of these topics and there are really nice > >>>>>> expensive services that can do the job, but we don?t want to pay the > >>>> high > >>>>>> fees. Others are marketing oriented, not optimized for emergency > >>>> services. > >>>>>> A custom app could be ideal, especially with increasing wildfire > >>>> activity > >>>>>> worldwide. > >>>>>> > >>>>>> Ideas and info? > >>>>>> Best, > >>>>>> Bill > >>>>>> > >>>>>> William Prothero, PhD > >>>>>> Professor Emeritus > >>>>>> University of California, Santa Barbara > >>>>>> http://earthlearningsolutions.org > >>>>>> > >>>>>> _______________________________________________ > >>>>>> use-livecode mailing list > >>>>>> use-livecode at lists.runrev.com > >>>>>> Please visit this url to subscribe, unsubscribe and manage your > >>>>>> subscription preferences: > >>>>>> http://lists.runrev.com/mailman/listinfo/use-livecode > >>>>> _______________________________________________ > >>>>> use-livecode mailing list > >>>>> use-livecode at lists.runrev.com > >>>>> Please visit this url to subscribe, unsubscribe and manage your > >>>> subscription preferences: > >>>>> http://lists.runrev.com/mailman/listinfo/use-livecode > >>>> > >>>> > >>>> _______________________________________________ > >>>> use-livecode mailing list > >>>> use-livecode at lists.runrev.com > >>>> Please visit this url to subscribe, unsubscribe and manage your > >>>> subscription preferences: > >>>> http://lists.runrev.com/mailman/listinfo/use-livecode > >>>> > >>> _______________________________________________ > >>> use-livecode mailing list > >>> use-livecode at lists.runrev.com > >>> Please visit this url to subscribe, unsubscribe and manage your > >> subscription preferences: > >>> http://lists.runrev.com/mailman/listinfo/use-livecode > >> > >> _______________________________________________ > >> use-livecode mailing list > >> use-livecode at lists.runrev.com > >> Please visit this url to subscribe, unsubscribe and manage your > >> subscription preferences: > >> http://lists.runrev.com/mailman/listinfo/use-livecode > >> > > > > > > > > -- > > On the first day, God created the heavens and the Earth > > On the second day, God created the oceans. > > On the third day, God put the animals on hold for a few hours, > > and did a little diving. > > And God said, "This is good." > > _______________________________________________ > > use-livecode mailing list > > use-livecode at lists.runrev.com > > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > > http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > -- On the first day, God created the heavens and the Earth On the second day, God created the oceans. On the third day, God put the animals on hold for a few hours, and did a little diving. And God said, "This is good." From ludovic.thebault at laposte.net Tue Aug 15 11:35:44 2017 From: ludovic.thebault at laposte.net (Ludovic THEBAULT) Date: Tue, 15 Aug 2017 17:35:44 +0200 Subject: Lineoffset work on message box but not in my script ?! Message-ID: Hello, Strange bug in Livecode : Here the script (in a repeat): put line (lineoffset("c_"&item tcpt of line 1 of thedatas,listmailleCentre)) of listcentre into tcoordline put tcoordline into temp ?> return the good value, ex : 5152 put lineoffset("%AI3",the tdatas of cd 1 of stack "yams",tcoordline+1) into temp2 ?> return 0 If i put this script on the message box : put 5152 into tcoordline put lineoffset("%AI3",the tdatas of cd 1 of stack "yams",tcoordline+1) ?> return a good value What?s going on ? I work with Livecode 8.16 indy on MacOS. I need to open a bug ? Thanks Ludovic From prothero at earthlearningsolutions.org Tue Aug 15 11:46:13 2017 From: prothero at earthlearningsolutions.org (prothero at earthlearningsolutions.org) Date: Tue, 15 Aug 2017 08:46:13 -0700 Subject: sms,MMS, and Push Notificstions In-Reply-To: References: <0BE00531-93F1-4A00-85BC-7B1DDA36E45A@gmail.com> <4729C992-BC5C-4F01-B412-3EE08291E269@gmail.com> <6755FABD-AC1E-462E-8D47-DFEE2D06F2D1@earthlearningsolutions.org> Message-ID: <07231A0D-AB10-4FC3-844A-C7C70326654A@earthlearningsolutions.org> I've checked out the very nice lesson that refers to John's stack. I'll check it out. Thanks for the reminder. The lesson rested the alert system by simulating the server, so I incorrectly got confused about the lack of info or reference to the server. Best, Bill P William Prothero http://es.earthednet.org > On Aug 15, 2017, at 8:28 AM, Mike Kerner via use-livecode wrote: > > There is a LC stack that John wrote that you can use. > > On Tue, Aug 15, 2017 at 11:13 AM, prothero--- via use-livecode < > use-livecode at lists.runrev.com> wrote: > >> My big question at this point is what is required on the server side? I >> looked at onesignal, which looks like a really nice API provider, but I >> need to be able to allocate a load of time to learn the various ways of >> accessing it, like REST, cURL, etc. I'm stumbling around now with those >> technologies, but will have to make a more systematic learning effort if I >> am going to proceed in that direction. >> >> Best, >> Bill >> >> William Prothero >> http://es.earthednet.org >> >>> On Aug 15, 2017, at 7:42 AM, Mike Kerner via use-livecode < >> use-livecode at lists.runrev.com> wrote: >>> >>> app push is pretty easy/straightforward in LC, but there are multiple >> QR's >>> out to add features/fix things on them. >>> >>> On Mon, Aug 14, 2017 at 11:01 PM, William Prothero via use-livecode < >>> use-livecode at lists.runrev.com> wrote: >>> >>>> Thanks, Stephen: >>>> What we are using as a preliminary solution is a mass sms and/or MMS >> texts >>>> and identical voice calls to our 49 numbers, initiated by one of several >>>> possible initiators who are called if a fire is observed. We are using >>>> eztexting.com for the texts and voiceshot.com < >>>> http://voiceshot.com/> for the voice messaging. It?s very inexpensive >> for >>>> voice $9/mo and 12c for each call. The texts are low cost too. We can >> enter >>>> several preset messages that we can choose from, depending on the >> immediacy >>>> of action that?s required. So, I figure that there are two tries per >> event >>>> and we should get most of the folks. I think another alert channel >> would be >>>> push notifications, but for now we?re sticking with voice and text. We >>>> expect the alerts to be very rare (we hope). I think a custom app that >>>> could initiate these actions more automatically would be quite nice, but >>>> the IT for it would take more of an investment than I?m willing to make, >>>> and there is no money in it unless it would take off in the app store, >> and >>>> if I made it general enough for most neighborhoods. >>>> >>>> For a bare bones, primitive system, text messages could be sent out and >>>> initiating a voice call to the group voice provider could be built in. >> It >>>> has to be easy and fast for the alert initiator, who would most likely >> be >>>> packing up for evacuation at the same time. Push notifications would be >>>> nice too. One problem is that the initiator?s phone number always >> appears >>>> in the voice call and text notification. If a more descriptive sender, >> like >>>> ?ALERT-XX?, it would be better, but that would most likely require >> setting >>>> up a dedicated alert server, and I don?t want to tackle that at this >> time. >>>> >>>> Best, >>>> Bill P. >>>> >>>>> On Aug 14, 2017, at 4:18 PM, Stephen Barncard via use-livecode < >>>> use-livecode at lists.runrev.com> wrote: >>>>> >>>>> If I were to create an emergency alert app, I'd make something that >>>> stayed >>>>> alive and was always verifying the existence of a central entity - web >>>>> site, server etc. and the fail safe is that the user would be alerted >>>> when >>>>> out of range. An 'always on' executable that would have to be >> carefully >>>>> crafted to not take up too much battery energy, yet ping headquarters >>>> for a >>>>> change every few seconds, then go into alert mode when the latest check >>>>> reveals the emergency. >>>>> >>>>> It would be part of the routine of the wearer (fireman, whatever) to >>>> 'check >>>>> in' with the server and verify correct operation, then just keep it >>>> running >>>>> all day. The data would be minimal and UDP packets have incredibly low >>>>> latency - even a voice alert could be sent real time - VOIP. >>>>> >>>>> I have no idea how the power usage would be handled in that case - the >>>>> continuous pinging could drain the battery too quickly depending on >> how >>>>> it's done. But there is the challenge! >>>>> >>>>> -- >>>>> Stephen Barncard - Sebastopol Ca. USA - >>>>> mixstream.org >>>>> >>>>> On Mon, Aug 14, 2017 at 3:25 PM, William Prothero via use-livecode < >>>>> use-livecode at lists.runrev.com> wrote: >>>>> >>>>>> Thanks. Looks interesting. It also looks like I'd have to learn a lot >> to >>>>>> get it implemented. I?ve been using cURL to access an API for water >>>> meter >>>>>> readings, and it?s painful, but would probably get easier. >>>>>> >>>>>> This looks like a good provider, tho. >>>>>> Best, >>>>>> Bill P >>>>>> >>>>>>> On Aug 14, 2017, at 1:42 PM, Simon Smith via use-livecode < >>>>>> use-livecode at lists.runrev.com> wrote: >>>>>>> >>>>>>> I would look at push notifications. onesignal.com looks quiet good, >>>> just >>>>>>> not had a chance to play with it yet. >>>>>>> >>>>>>> I have found that SMS messages are too unreliable when it comes to >>>>>>> emergency notifications, sometimes they come through, sometimes they >>>>>> don't >>>>>>> and sometimes they come through an hour or so later. >>>>>>> >>>>>>> Simon >>>>>>> >>>>>>> >>>>>>> Carpe diem >>>>>>> >>>>>>> *Simon Smith* >>>>>>> m. +27 83 306 7862 >>>>>>> >>>>>>> On Mon, Aug 14, 2017 at 9:19 PM, ELS prothero via use-livecode < >>>>>>> use-livecode at lists.runrev.com> wrote: >>>>>>> >>>>>>>> I?m curious. Has anybody done much with push notifications on >> mobile? >>>>>>>> There is a lesson on the livecode web site which is quite detailed, >>>> but >>>>>>>> leaves out the server side of the equation. I have been thinking >> about >>>>>> an >>>>>>>> emergency alert app and am exploring how difficult it would be to >>>>>> implement >>>>>>>> various communication technologies. Texts seem pretty >> straighforward, >>>>>> but I >>>>>>>> was thinking that push notifications might get more attention. >>>>>>>> >>>>>>>> The goal is to get the information to the recipient?s brain. It can >>>> get >>>>>> to >>>>>>>> the device, but unless the last (weak link) is traversed, the alert >> is >>>>>>>> ineffective. The target time for this is 15 minutes. >>>>>>>> >>>>>>>> I?ve Googled the heck out of these topics and there are really nice >>>>>>>> expensive services that can do the job, but we don?t want to pay the >>>>>> high >>>>>>>> fees. Others are marketing oriented, not optimized for emergency >>>>>> services. >>>>>>>> A custom app could be ideal, especially with increasing wildfire >>>>>> activity >>>>>>>> worldwide. >>>>>>>> >>>>>>>> Ideas and info? >>>>>>>> Best, >>>>>>>> Bill >>>>>>>> >>>>>>>> William Prothero, PhD >>>>>>>> Professor Emeritus >>>>>>>> University of California, Santa Barbara >>>>>>>> http://earthlearningsolutions.org >>>>>>>> >>>>>>>> _______________________________________________ >>>>>>>> use-livecode mailing list >>>>>>>> use-livecode at lists.runrev.com >>>>>>>> Please visit this url to subscribe, unsubscribe and manage your >>>>>>>> subscription preferences: >>>>>>>> http://lists.runrev.com/mailman/listinfo/use-livecode >>>>>>> _______________________________________________ >>>>>>> use-livecode mailing list >>>>>>> use-livecode at lists.runrev.com >>>>>>> Please visit this url to subscribe, unsubscribe and manage your >>>>>> subscription preferences: >>>>>>> http://lists.runrev.com/mailman/listinfo/use-livecode >>>>>> >>>>>> >>>>>> _______________________________________________ >>>>>> use-livecode mailing list >>>>>> use-livecode at lists.runrev.com >>>>>> Please visit this url to subscribe, unsubscribe and manage your >>>>>> subscription preferences: >>>>>> http://lists.runrev.com/mailman/listinfo/use-livecode >>>>>> >>>>> _______________________________________________ >>>>> use-livecode mailing list >>>>> use-livecode at lists.runrev.com >>>>> Please visit this url to subscribe, unsubscribe and manage your >>>> subscription preferences: >>>>> http://lists.runrev.com/mailman/listinfo/use-livecode >>>> >>>> _______________________________________________ >>>> use-livecode mailing list >>>> use-livecode at lists.runrev.com >>>> Please visit this url to subscribe, unsubscribe and manage your >>>> subscription preferences: >>>> http://lists.runrev.com/mailman/listinfo/use-livecode >>>> >>> >>> >>> >>> -- >>> On the first day, God created the heavens and the Earth >>> On the second day, God created the oceans. >>> On the third day, God put the animals on hold for a few hours, >>> and did a little diving. >>> And God said, "This is good." >>> _______________________________________________ >>> use-livecode mailing list >>> use-livecode at lists.runrev.com >>> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >>> http://lists.runrev.com/mailman/listinfo/use-livecode >> >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> > > > > -- > On the first day, God created the heavens and the Earth > On the second day, God created the oceans. > On the third day, God put the animals on hold for a few hours, > and did a little diving. > And God said, "This is good." > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From waprothero at gmail.com Tue Aug 15 12:20:43 2017 From: waprothero at gmail.com (William Prothero) Date: Tue, 15 Aug 2017 09:20:43 -0700 Subject: sms,MMS, and Push Notificstions In-Reply-To: References: <0BE00531-93F1-4A00-85BC-7B1DDA36E45A@gmail.com> <4729C992-BC5C-4F01-B412-3EE08291E269@gmail.com> <6755FABD-AC1E-462E-8D47-DFEE2D06F2D1@earthlearningsolutions.org> Message-ID: <93EF57AB-892E-46C7-925F-6EA6493CCEF7@gmail.com> Mike: Hmm? I downloaded APNsAssistant, which is linked to the lesson. Is this the one that you modified and re-posted to gitHub? A quick perusal of that stack, it looks like he uses a shell command to simulate the sending of an alert. Is that how a notification is intended to be sent, or is this method only for testing? If a notification could be initiated from the app, it would eliminate the need for a server, except to store the receiver information/tokens/whatever is needed. That would be preferable. But ?? So, sorry for seeming dense, but I?m confused over the role of the ?server?. Whether a service like onesignal is required to distribute push notifications, or whether the initiator app can just get the info from some database and send the notifications from the app directly without activating some network server api that does the sending. Best, Bill P > On Aug 15, 2017, at 8:28 AM, Mike Kerner via use-livecode wrote: > > There is a LC stack that John wrote that you can use. > > On Tue, Aug 15, 2017 at 11:13 AM, prothero--- via use-livecode < > use-livecode at lists.runrev.com> wrote: > >> My big question at this point is what is required on the server side? I >> looked at onesignal, which looks like a really nice API provider, but I >> need to be able to allocate a load of time to learn the various ways of >> accessing it, like REST, cURL, etc. I'm stumbling around now with those >> technologies, but will have to make a more systematic learning effort if I >> am going to proceed in that direction. >> >> Best, >> Bill >> >> William Prothero >> http://es.earthednet.org >> >>> On Aug 15, 2017, at 7:42 AM, Mike Kerner via use-livecode < >> use-livecode at lists.runrev.com> wrote: >>> >>> app push is pretty easy/straightforward in LC, but there are multiple >> QR's >>> out to add features/fix things on them. >>> >>> On Mon, Aug 14, 2017 at 11:01 PM, William Prothero via use-livecode < >>> use-livecode at lists.runrev.com> wrote: >>> >>>> Thanks, Stephen: >>>> What we are using as a preliminary solution is a mass sms and/or MMS >> texts >>>> and identical voice calls to our 49 numbers, initiated by one of several >>>> possible initiators who are called if a fire is observed. We are using >>>> eztexting.com for the texts and voiceshot.com < >>>> http://voiceshot.com/> for the voice messaging. It?s very inexpensive >> for >>>> voice $9/mo and 12c for each call. The texts are low cost too. We can >> enter >>>> several preset messages that we can choose from, depending on the >> immediacy >>>> of action that?s required. So, I figure that there are two tries per >> event >>>> and we should get most of the folks. I think another alert channel >> would be >>>> push notifications, but for now we?re sticking with voice and text. We >>>> expect the alerts to be very rare (we hope). I think a custom app that >>>> could initiate these actions more automatically would be quite nice, but >>>> the IT for it would take more of an investment than I?m willing to make, >>>> and there is no money in it unless it would take off in the app store, >> and >>>> if I made it general enough for most neighborhoods. >>>> >>>> For a bare bones, primitive system, text messages could be sent out and >>>> initiating a voice call to the group voice provider could be built in. >> It >>>> has to be easy and fast for the alert initiator, who would most likely >> be >>>> packing up for evacuation at the same time. Push notifications would be >>>> nice too. One problem is that the initiator?s phone number always >> appears >>>> in the voice call and text notification. If a more descriptive sender, >> like >>>> ?ALERT-XX?, it would be better, but that would most likely require >> setting >>>> up a dedicated alert server, and I don?t want to tackle that at this >> time. >>>> >>>> Best, >>>> Bill P. >>>> >>>>> On Aug 14, 2017, at 4:18 PM, Stephen Barncard via use-livecode < >>>> use-livecode at lists.runrev.com> wrote: >>>>> >>>>> If I were to create an emergency alert app, I'd make something that >>>> stayed >>>>> alive and was always verifying the existence of a central entity - web >>>>> site, server etc. and the fail safe is that the user would be alerted >>>> when >>>>> out of range. An 'always on' executable that would have to be >> carefully >>>>> crafted to not take up too much battery energy, yet ping headquarters >>>> for a >>>>> change every few seconds, then go into alert mode when the latest check >>>>> reveals the emergency. >>>>> >>>>> It would be part of the routine of the wearer (fireman, whatever) to >>>> 'check >>>>> in' with the server and verify correct operation, then just keep it >>>> running >>>>> all day. The data would be minimal and UDP packets have incredibly low >>>>> latency - even a voice alert could be sent real time - VOIP. >>>>> >>>>> I have no idea how the power usage would be handled in that case - the >>>>> continuous pinging could drain the battery too quickly depending on >> how >>>>> it's done. But there is the challenge! >>>>> >>>>> -- >>>>> Stephen Barncard - Sebastopol Ca. USA - >>>>> mixstream.org >>>>> >>>>> On Mon, Aug 14, 2017 at 3:25 PM, William Prothero via use-livecode < >>>>> use-livecode at lists.runrev.com> wrote: >>>>> >>>>>> Thanks. Looks interesting. It also looks like I'd have to learn a lot >> to >>>>>> get it implemented. I?ve been using cURL to access an API for water >>>> meter >>>>>> readings, and it?s painful, but would probably get easier. >>>>>> >>>>>> This looks like a good provider, tho. >>>>>> Best, >>>>>> Bill P >>>>>> >>>>>>> On Aug 14, 2017, at 1:42 PM, Simon Smith via use-livecode < >>>>>> use-livecode at lists.runrev.com> wrote: >>>>>>> >>>>>>> I would look at push notifications. onesignal.com looks quiet good, >>>> just >>>>>>> not had a chance to play with it yet. >>>>>>> >>>>>>> I have found that SMS messages are too unreliable when it comes to >>>>>>> emergency notifications, sometimes they come through, sometimes they >>>>>> don't >>>>>>> and sometimes they come through an hour or so later. >>>>>>> >>>>>>> Simon >>>>>>> >>>>>>> >>>>>>> Carpe diem >>>>>>> >>>>>>> *Simon Smith* >>>>>>> m. +27 83 306 7862 >>>>>>> >>>>>>> On Mon, Aug 14, 2017 at 9:19 PM, ELS prothero via use-livecode < >>>>>>> use-livecode at lists.runrev.com> wrote: >>>>>>> >>>>>>>> I?m curious. Has anybody done much with push notifications on >> mobile? >>>>>>>> There is a lesson on the livecode web site which is quite detailed, >>>> but >>>>>>>> leaves out the server side of the equation. I have been thinking >> about >>>>>> an >>>>>>>> emergency alert app and am exploring how difficult it would be to >>>>>> implement >>>>>>>> various communication technologies. Texts seem pretty >> straighforward, >>>>>> but I >>>>>>>> was thinking that push notifications might get more attention. >>>>>>>> >>>>>>>> The goal is to get the information to the recipient?s brain. It can >>>> get >>>>>> to >>>>>>>> the device, but unless the last (weak link) is traversed, the alert >> is >>>>>>>> ineffective. The target time for this is 15 minutes. >>>>>>>> >>>>>>>> I?ve Googled the heck out of these topics and there are really nice >>>>>>>> expensive services that can do the job, but we don?t want to pay the >>>>>> high >>>>>>>> fees. Others are marketing oriented, not optimized for emergency >>>>>> services. >>>>>>>> A custom app could be ideal, especially with increasing wildfire >>>>>> activity >>>>>>>> worldwide. >>>>>>>> >>>>>>>> Ideas and info? >>>>>>>> Best, >>>>>>>> Bill >>>>>>>> >>>>>>>> William Prothero, PhD >>>>>>>> Professor Emeritus >>>>>>>> University of California, Santa Barbara >>>>>>>> http://earthlearningsolutions.org >>>>>>>> >>>>>>>> _______________________________________________ >>>>>>>> use-livecode mailing list >>>>>>>> use-livecode at lists.runrev.com >>>>>>>> Please visit this url to subscribe, unsubscribe and manage your >>>>>>>> subscription preferences: >>>>>>>> http://lists.runrev.com/mailman/listinfo/use-livecode >>>>>>> _______________________________________________ >>>>>>> use-livecode mailing list >>>>>>> use-livecode at lists.runrev.com >>>>>>> Please visit this url to subscribe, unsubscribe and manage your >>>>>> subscription preferences: >>>>>>> http://lists.runrev.com/mailman/listinfo/use-livecode >>>>>> >>>>>> >>>>>> _______________________________________________ >>>>>> use-livecode mailing list >>>>>> use-livecode at lists.runrev.com >>>>>> Please visit this url to subscribe, unsubscribe and manage your >>>>>> subscription preferences: >>>>>> http://lists.runrev.com/mailman/listinfo/use-livecode >>>>>> >>>>> _______________________________________________ >>>>> use-livecode mailing list >>>>> use-livecode at lists.runrev.com >>>>> Please visit this url to subscribe, unsubscribe and manage your >>>> subscription preferences: >>>>> http://lists.runrev.com/mailman/listinfo/use-livecode >>>> >>>> _______________________________________________ >>>> use-livecode mailing list >>>> use-livecode at lists.runrev.com >>>> Please visit this url to subscribe, unsubscribe and manage your >>>> subscription preferences: >>>> http://lists.runrev.com/mailman/listinfo/use-livecode >>>> >>> >>> >>> >>> -- >>> On the first day, God created the heavens and the Earth >>> On the second day, God created the oceans. >>> On the third day, God put the animals on hold for a few hours, >>> and did a little diving. >>> And God said, "This is good." >>> _______________________________________________ >>> use-livecode mailing list >>> use-livecode at lists.runrev.com >>> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >>> http://lists.runrev.com/mailman/listinfo/use-livecode >> >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> > > > > -- > On the first day, God created the heavens and the Earth > On the second day, God created the oceans. > On the third day, God put the animals on hold for a few hours, > and did a little diving. > And God said, "This is good." > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From andrew at midwestcoastmedia.com Tue Aug 15 12:53:52 2017 From: andrew at midwestcoastmedia.com (andrew at midwestcoastmedia.com) Date: Tue, 15 Aug 2017 16:53:52 +0000 Subject: sms,MMS, and Push Notificstions In-Reply-To: Message-ID: <20170815165352.Horde.riD9uMYvdkdlg8kPH-W0kj8@ua850258.serversignin.com> I recently tackled push notifications for a client project that was WAY more in-depth than I imagined (and initially quoted for). Using the LC tutorials for push notifications with APNsAssistant and AnroidGCM I was able to add push notification sending from a standalone desktop app created entirely in LC to a mobile app also created entirely in LC. The most difficult element was collecting and maintaining all the unique push IDs from end users of the mobile app that is being communicated to. I have the mobile app "phone home" with that push id (pushNotificationReceived) and add an entry in a remote database on a LC server by way of the super-helpful API provided by HostM. The desktop app queries the database for unique IDs of users and looks at the length of the push ID to determine if it is iOS or Google (couldn't find definitive documentation on the format of these IDs, but iOS has < and > symbols and is considerably shorter than Android IDs) then references the appropriate code base to format and send the message (iOS has a header and payload, Android has a header and sub-header and playload). This is a shotgun approach that inevitably attempts to send more notifications than there are actual users because I have discovered that these IDs seem to change over time (not sure when or why). I see this as a no harm/no foul approach because each device can only have 1 unique ID per app, so some of the messages get transmitted but never received. Android returns an error message in the JSON for each attempt flagging it as successful or not, iOS does not. I was able to get Unicode emoji support in the messages, but have a real half-ass method of entering them right now that I intend to update at some point. Currently I have a browser widget that loads a third-party webpage of emojis (emojipedia.org) that needs to be copied and pasted into a text field... but the website uses a copy button to truly copy that doesn't work in my standalone so I have instructed my end-user to select the emoji from that browser widget and right-click/ctrl-click to copy to the clipboard and paste into the field. --Andrew Bell > Mike: > Hmm? I downloaded APNsAssistant, which is linked to the lesson. Is > this the one that you modified and re-posted to gitHub? > > A quick perusal of that stack, it looks like he uses a shell command > to simulate the sending of an alert. Is that how a notification is > intended to be sent, or is this method only for testing? If a > notification could be initiated from the app, it would eliminate the > need for a server, except to store the receiver > information/tokens/whatever is needed. That would be preferable. But > ?? > > So, sorry for seeming dense, but I?m confused over the role of the > ?server?. Whether a service like onesignal is required to distribute > push notifications, or whether the initiator app can just get the > info from some database and send the notifications from the app > directly without activating some network server api that does the > sending. > > Best, > Bill P From richmondmathewson at gmail.com Tue Aug 15 13:16:49 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Tue, 15 Aug 2017 20:16:49 +0300 Subject: lockscreen? In-Reply-To: <664F3675-D71D-4039-AE78-4A8404F0CD03@hyperhh.de> References: <664F3675-D71D-4039-AE78-4A8404F0CD03@hyperhh.de> Message-ID: Thanks both: sorted out a lot of my nonsense. Richmond. On 8/15/17 3:30 pm, hh via use-livecode wrote: >> Richmond wrote: >> If I lock the screen (so these automations don't show up) will that >> speed things up? > lock screen; lock messages > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From dochawk at gmail.com Tue Aug 15 13:43:22 2017 From: dochawk at gmail.com (Dr. Hawkins) Date: Tue, 15 Aug 2017 10:43:22 -0700 Subject: Forum: Waves of Russian Nonsense In-Reply-To: <5fbc7b156d44f90c0baa9b8d8d8571a6@livecode.com> References: <5B8EEF94-E36E-485A-94DD-FDEFD0D7F0BA@hyperhh.de> <5fbc7b156d44f90c0baa9b8d8d8571a6@livecode.com> Message-ID: On Tue, Aug 15, 2017 at 5:51 AM, Mark Waddingham via use-livecode < use-livecode at lists.runrev.com> wrote: > > > Anyway, this has been on Heather's mind - hopefully she will come up with > an alternate solution in due course. > I assume that the software uses either mySQL or postgreSQL? The direct command DELETE FROM theMessageDatasbase WHERE USER='thatScumbag'; should do the trick. -- Dr. Richard E. Hawkins, Esq. (702) 508-8462 From MikeKerner at roadrunner.com Tue Aug 15 13:52:51 2017 From: MikeKerner at roadrunner.com (Mike Kerner) Date: Tue, 15 Aug 2017 13:52:51 -0400 Subject: sms,MMS, and Push Notificstions In-Reply-To: <20170815165352.Horde.riD9uMYvdkdlg8kPH-W0kj8@ua850258.serversignin.com> References: <20170815165352.Horde.riD9uMYvdkdlg8kPH-W0kj8@ua850258.serversignin.com> Message-ID: You have to have the app phone home with its id. The id is determined by the device, and is a product of the device and the app running on it that is to receive notifications. You can phone home via a filesharing service, an online db, contacting a webserver, etc. For distinguishing between the platforms, you can embed "the environment" in your phone home message. The other thing you can do (which I do) is to store the id before sending it. Then with each launch of the app or after some other event, you check the old id and the new one, and if it changes, phone home, again, with the old id (presuming you don't have some other identifier tied to the app on each device. If you do, you can send that, instead) and the new id. On the desktop/server/whatever side, you update, accordingly. Your app can also check to see if it is receiving notifications, or if notifications are enabled, and act accordingly, including checking to see if it has received all the notifications, and if it needs to pull any other data, since there is no guarantee on either platform that a notification will be delivered. As of right now, silent notifications are not supported in LC so we have to make do with what we have. On Tue, Aug 15, 2017 at 12:53 PM, Andrew Bell via use-livecode < use-livecode at lists.runrev.com> wrote: > I recently tackled push notifications for a client project that was WAY > more in-depth than I imagined (and initially quoted for). Using the LC > tutorials for push notifications with APNsAssistant and AnroidGCM I was > able to add push notification sending from a standalone desktop app created > entirely in LC to a mobile app also created entirely in LC. > > The most difficult element was collecting and maintaining all the unique > push IDs from end users of the mobile app that is being communicated to. I > have the mobile app "phone home" with that push id > (pushNotificationReceived) and add an entry in a remote database on a LC > server by way of the super-helpful API provided by HostM. The desktop app > queries the database for unique IDs of users and looks at the length of the > push ID to determine if it is iOS or Google (couldn't find definitive > documentation on the format of these IDs, but iOS has < and > symbols > and is considerably shorter than Android IDs) then references the > appropriate code base to format and send the message (iOS has a header and > payload, Android has a header and sub-header and playload). > > This is a shotgun approach that inevitably attempts to send more > notifications than there are actual users because I have discovered that > these IDs seem to change over time (not sure when or why). I see this as a > no harm/no foul approach because each device can only have 1 unique ID per > app, so some of the messages get transmitted but never received. Android > returns an error message in the JSON for each attempt flagging it as > successful or not, iOS does not. > > I was able to get Unicode emoji support in the messages, but have a real > half-ass method of entering them right now that I intend to update at some > point. Currently I have a browser widget that loads a third-party webpage > of emojis (emojipedia.org) that needs to be copied and pasted into a text > field... but the website uses a copy button to truly copy that doesn't work > in my standalone so I have instructed my end-user to select the emoji from > that browser widget and right-click/ctrl-click to copy to the clipboard and > paste into the field. > > --Andrew Bell > > > Mike: >> Hmm? I downloaded APNsAssistant, which is linked to the lesson. Is this >> the one that you modified and re-posted to gitHub? >> >> A quick perusal of that stack, it looks like he uses a shell command to >> simulate the sending of an alert. Is that how a notification is intended to >> be sent, or is this method only for testing? If a notification could be >> initiated from the app, it would eliminate the need for a server, except to >> store the receiver information/tokens/whatever is needed. That would be >> preferable. But ?? >> >> So, sorry for seeming dense, but I?m confused over the role of the >> ?server?. Whether a service like onesignal is required to distribute push >> notifications, or whether the initiator app can just get the info from some >> database and send the notifications from the app directly without >> activating some network server api that does the sending. >> >> Best, >> Bill P >> > > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > -- On the first day, God created the heavens and the Earth On the second day, God created the oceans. On the third day, God put the animals on hold for a few hours, and did a little diving. And God said, "This is good." From MikeKerner at roadrunner.com Tue Aug 15 13:54:19 2017 From: MikeKerner at roadrunner.com (Mike Kerner) Date: Tue, 15 Aug 2017 13:54:19 -0400 Subject: sms,MMS, and Push Notificstions In-Reply-To: <20170815165352.Horde.riD9uMYvdkdlg8kPH-W0kj8@ua850258.serversignin.com> References: <20170815165352.Horde.riD9uMYvdkdlg8kPH-W0kj8@ua850258.serversignin.com> Message-ID: You have to have the app phone home with its id. The id is determined by the device, and is a product of the device and the app running on it that is to receive notifications. You can phone home via a filesharing service, an online db, contacting a webserver, etc. For distinguishing between the platforms, you can embed "the environment" in your phone home message. The other thing you can do (which I do) is to store the id before sending it. Then with each launch of the app or after some other event, you check the old id and the new one, and if it changes, phone home, again, with the old id (presuming you don't have some other identifier tied to the app on each device. If you do, you can send that, instead) and the new id. On the desktop/server/whatever side, you update, accordingly. Your app can also check to see if it is receiving notifications, or if notifications are enabled, and act accordingly, including checking to see if it has received all the notifications, and if it needs to pull any other data, since there is no guarantee on either platform that a notification will be delivered. As of right now, silent notifications are not supported in LC so we have to make do with what we have. From MikeKerner at roadrunner.com Tue Aug 15 13:57:04 2017 From: MikeKerner at roadrunner.com (Mike Kerner) Date: Tue, 15 Aug 2017 13:57:04 -0400 Subject: sms,MMS, and Push Notificstions In-Reply-To: References: <20170815165352.Horde.riD9uMYvdkdlg8kPH-W0kj8@ua850258.serversignin.com> Message-ID: I got a message that one of my other messages was moderated for being too large. I can't see if it got delivered, or not, so in response to Bill's question about the repo: If you mean having the mobile do it, I hadn't thought about that. It might be possible with tsnet. He is not simulating anything. The shell command is what is used to send the alerts. No, you don't need to use a third-party service, if you use this code. Instead, you have the code running on a machine that you control. I have never figured out to make the code work properly from a PC (I have never figured out how to get the session to end and therefore for APNS to send the message, but it does work from a Mac. I do exactly what you are proposing - I have the stack attached to a DB that has various device push id's. I load them up and fire off my messages from there. The repo that I built has the original stack, as well as the code broken out so it can be used as a library and therefore be submoduled, etc. with git. From hh at hyperhh.de Tue Aug 15 15:16:46 2017 From: hh at hyperhh.de (hh) Date: Tue, 15 Aug 2017 21:16:46 +0200 Subject: Simplify polygon Message-ID: <3E6B1D03-0F5E-4936-9BA1-D5E48548B13A@hyperhh.de> Today I implemented the Ramer-Douglas-Peucker algorithm for reducing the number of points of a polygon such that the "shape" of that polygon is preserved as good as possible, controlled by a tolerance parameter. This is known as "simplifying" of a polygon (is also done for polygon/ polyline paths in SVG, could be done in LC Builder). The algorithm is fast and very effective. May be interesting for some of you who work with map outlines ("coastlines") or auto traced outlines of images/graphics, signatures or freehand-drawings: http://forums.livecode.com/viewtopic.php?p=157049#p157049 (=Raspi stacks collection #103) From terry.judd at unimelb.edu.au Tue Aug 15 19:55:33 2017 From: terry.judd at unimelb.edu.au (Terry Judd) Date: Tue, 15 Aug 2017 23:55:33 +0000 Subject: Couple of questions about the browser widget Message-ID: <04FBA9F2-165B-47DF-8E14-DDA45D1D7345@unimelb.edu.au> I?m thinking about replacing a field object that contains text, inline images and simple tables with the browser widget but there are a couple of issues I?d need to work through first and would welcome any suggestions or ideas. The first one concerns displaying local images ? either stored (permanently or temporarily) within the stack itself or in the local documents/whatever folder. I?d like to set the htmlText of the browser rather than a url. If that?s the case, how do I refer to the image in order for it to be displayed? The second one is whether it is possible to get the ?formattedHeight? of the browser content. I?d ideally like to combine the browser with a couple of other grouped controls so that I can scroll them as a single object. Is that doable? Regards, Terry... From bonnmike at gmail.com Tue Aug 15 20:23:55 2017 From: bonnmike at gmail.com (Mike Bonner) Date: Tue, 15 Aug 2017 18:23:55 -0600 Subject: Couple of questions about the browser widget In-Reply-To: <04FBA9F2-165B-47DF-8E14-DDA45D1D7345@unimelb.edu.au> References: <04FBA9F2-165B-47DF-8E14-DDA45D1D7345@unimelb.edu.au> Message-ID: For the second question, if your htmltext contains a javascript function that returns document.body.scrollHeight you should be able to get the height that way. I'm not any good at javascript, but how it would probably work would be to have something like this.. window.onload = function(e){ livecode.myHeight('lcHeight",document.body.scrollHeight) } Then have an lcHeight handler defined in your stack to receive the message. command lcHeight pHeight -- do something with pHeight end lcheight Then of course you have to declare the handler.. set the javascripthandlers to "lcHeight" I haven't actually done this, but think the idea is close enough to get you there. On Tue, Aug 15, 2017 at 5:55 PM, Terry Judd via use-livecode < use-livecode at lists.runrev.com> wrote: > I?m thinking about replacing a field object that contains text, inline > images and simple tables with the browser widget but there are a couple of > issues I?d need to work through first and would welcome any suggestions or > ideas. > > The first one concerns displaying local images ? either stored > (permanently or temporarily) within the stack itself or in the local > documents/whatever folder. I?d like to set the htmlText of the browser > rather than a url. If that?s the case, how do I refer to the image in order > for it to be displayed? > > The second one is whether it is possible to get the ?formattedHeight? of > the browser content. I?d ideally like to combine the browser with a couple > of other grouped controls so that I can scroll them as a single object. Is > that doable? > > Regards, > > Terry... > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From terry.judd at unimelb.edu.au Tue Aug 15 20:34:04 2017 From: terry.judd at unimelb.edu.au (Terry Judd) Date: Wed, 16 Aug 2017 00:34:04 +0000 Subject: Couple of questions about the browser widget In-Reply-To: References: <04FBA9F2-165B-47DF-8E14-DDA45D1D7345@unimelb.edu.au> Message-ID: <2FD1F6D4-9264-41CD-99A8-F11679C3CE57@unimelb.edu.au> Thanks for your help Mike ? I?m no good at Javascript either ;) but thankfully there is plenty of stuff out there on the web written by people that are. I?ll give it a go and see if I can make it work. Regards, Terry... On 16/08/2017 10:23 am, "use-livecode on behalf of Mike Bonner via use-livecode" wrote: For the second question, if your htmltext contains a javascript function that returns document.body.scrollHeight you should be able to get the height that way. I'm not any good at javascript, but how it would probably work would be to have something like this.. window.onload = function(e){ livecode.myHeight('lcHeight",document.body.scrollHeight) } Then have an lcHeight handler defined in your stack to receive the message. command lcHeight pHeight -- do something with pHeight end lcheight Then of course you have to declare the handler.. set the javascripthandlers to "lcHeight" I haven't actually done this, but think the idea is close enough to get you there. On Tue, Aug 15, 2017 at 5:55 PM, Terry Judd via use-livecode < use-livecode at lists.runrev.com> wrote: > I?m thinking about replacing a field object that contains text, inline > images and simple tables with the browser widget but there are a couple of > issues I?d need to work through first and would welcome any suggestions or > ideas. > > The first one concerns displaying local images ? either stored > (permanently or temporarily) within the stack itself or in the local > documents/whatever folder. I?d like to set the htmlText of the browser > rather than a url. If that?s the case, how do I refer to the image in order > for it to be displayed? > > The second one is whether it is possible to get the ?formattedHeight? of > the browser content. I?d ideally like to combine the browser with a couple > of other grouped controls so that I can scroll them as a single object. Is > that doable? > > Regards, > > Terry... > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode From bonnmike at gmail.com Tue Aug 15 20:53:32 2017 From: bonnmike at gmail.com (Mike Bonner) Date: Tue, 15 Aug 2017 18:53:32 -0600 Subject: Couple of questions about the browser widget In-Reply-To: <2FD1F6D4-9264-41CD-99A8-F11679C3CE57@unimelb.edu.au> References: <04FBA9F2-165B-47DF-8E14-DDA45D1D7345@unimelb.edu.au> <2FD1F6D4-9264-41CD-99A8-F11679C3CE57@unimelb.edu.au> Message-ID: I haven't managed yet. (can't get it to fire, but hey.. did I mention i'm no good at javascript?) Also I noticed, setting the htmltext of the widget seems to run through a urlencode. (I had a sample page in a field and was setting the htmltext to it, but it got totally munged.. So I've been creating a temp file and setting the url which works..) To show an image you can use something like this.. (windows of course) Getting the javascripthandlers to work might take the input of another. I can't seem to make it go. (Note also, I looked in the dictionary for the browser widget and used the example code there for the "set the javascripthandlers..' part.. but the example needs to be fixed. You need to specify the widget. set the javascripthandlers of widget "mywidge" to "whatever* On Tue, Aug 15, 2017 at 6:34 PM, Terry Judd via use-livecode < use-livecode at lists.runrev.com> wrote: > Thanks for your help Mike ? I?m no good at Javascript either ;) but > thankfully there is plenty of stuff out there on the web written by people > that are. I?ll give it a go and see if I can make it work. > > Regards, > > Terry... > > On 16/08/2017 10:23 am, "use-livecode on behalf of Mike Bonner via > use-livecode" use-livecode at lists.runrev.com> wrote: > > For the second question, if your htmltext contains a javascript > function > that returns document.body.scrollHeight you should be able to get the > height that way. I'm not any good at javascript, but how it would > probably work would be to have something like this.. > > window.onload = function(e){ > livecode.myHeight('lcHeight",document.body.scrollHeight) > } > > Then have an lcHeight handler defined in your stack to receive the > message. > > command lcHeight pHeight > -- do something with pHeight > end lcheight > > Then of course you have to declare the handler.. > > set the javascripthandlers to "lcHeight" > > I haven't actually done this, but think the idea is close enough to > get you > there. > > On Tue, Aug 15, 2017 at 5:55 PM, Terry Judd via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > I?m thinking about replacing a field object that contains text, > inline > > images and simple tables with the browser widget but there are a > couple of > > issues I?d need to work through first and would welcome any > suggestions or > > ideas. > > > > The first one concerns displaying local images ? either stored > > (permanently or temporarily) within the stack itself or in the local > > documents/whatever folder. I?d like to set the htmlText of the > browser > > rather than a url. If that?s the case, how do I refer to the image > in order > > for it to be displayed? > > > > The second one is whether it is possible to get the > ?formattedHeight? of > > the browser content. I?d ideally like to combine the browser with a > couple > > of other grouped controls so that I can scroll them as a single > object. Is > > that doable? > > > > Regards, > > > > Terry... > > _______________________________________________ > > use-livecode mailing list > > use-livecode at lists.runrev.com > > Please visit this url to subscribe, unsubscribe and manage your > > subscription preferences: > > http://lists.runrev.com/mailman/listinfo/use-livecode > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From terry.judd at unimelb.edu.au Tue Aug 15 22:10:17 2017 From: terry.judd at unimelb.edu.au (Terry Judd) Date: Wed, 16 Aug 2017 02:10:17 +0000 Subject: Couple of questions about the browser widget In-Reply-To: References: <04FBA9F2-165B-47DF-8E14-DDA45D1D7345@unimelb.edu.au> <2FD1F6D4-9264-41CD-99A8-F11679C3CE57@unimelb.edu.au> Message-ID: Hi Mike ? yeah thanks, the temp file approach for setting the browser widget and getting an image to display works well so maybe easiest to go that way. I?m still steeling myself for a foray into javascript so haven?t tried anything on that front yet. I?ve got some Dropbox library related stuff to distract me first though. Regards, Terry... On 16/08/2017 10:53 am, "use-livecode on behalf of Mike Bonner via use-livecode" wrote: I haven't managed yet. (can't get it to fire, but hey.. did I mention i'm no good at javascript?) Also I noticed, setting the htmltext of the widget seems to run through a urlencode. (I had a sample page in a field and was setting the htmltext to it, but it got totally munged.. So I've been creating a temp file and setting the url which works..) To show an image you can use something like this.. (windows of course) Getting the javascripthandlers to work might take the input of another. I can't seem to make it go. (Note also, I looked in the dictionary for the browser widget and used the example code there for the "set the javascripthandlers..' part.. but the example needs to be fixed. You need to specify the widget. set the javascripthandlers of widget "mywidge" to "whatever* On Tue, Aug 15, 2017 at 6:34 PM, Terry Judd via use-livecode < use-livecode at lists.runrev.com> wrote: > Thanks for your help Mike ? I?m no good at Javascript either ;) but > thankfully there is plenty of stuff out there on the web written by people > that are. I?ll give it a go and see if I can make it work. > > Regards, > > Terry... > > On 16/08/2017 10:23 am, "use-livecode on behalf of Mike Bonner via > use-livecode" use-livecode at lists.runrev.com> wrote: > > For the second question, if your htmltext contains a javascript > function > that returns document.body.scrollHeight you should be able to get the > height that way. I'm not any good at javascript, but how it would > probably work would be to have something like this.. > > window.onload = function(e){ > livecode.myHeight('lcHeight",document.body.scrollHeight) > } > > Then have an lcHeight handler defined in your stack to receive the > message. > > command lcHeight pHeight > -- do something with pHeight > end lcheight > > Then of course you have to declare the handler.. > > set the javascripthandlers to "lcHeight" > > I haven't actually done this, but think the idea is close enough to > get you > there. > > On Tue, Aug 15, 2017 at 5:55 PM, Terry Judd via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > I?m thinking about replacing a field object that contains text, > inline > > images and simple tables with the browser widget but there are a > couple of > > issues I?d need to work through first and would welcome any > suggestions or > > ideas. > > > > The first one concerns displaying local images ? either stored > > (permanently or temporarily) within the stack itself or in the local > > documents/whatever folder. I?d like to set the htmlText of the > browser > > rather than a url. If that?s the case, how do I refer to the image > in order > > for it to be displayed? > > > > The second one is whether it is possible to get the > ?formattedHeight? of > > the browser content. I?d ideally like to combine the browser with a > couple > > of other grouped controls so that I can scroll them as a single > object. Is > > that doable? > > > > Regards, > > > > Terry... > > _______________________________________________ > > use-livecode mailing list > > use-livecode at lists.runrev.com > > Please visit this url to subscribe, unsubscribe and manage your > > subscription preferences: > > http://lists.runrev.com/mailman/listinfo/use-livecode > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode From waprothero at gmail.com Tue Aug 15 22:29:19 2017 From: waprothero at gmail.com (William Prothero) Date: Tue, 15 Aug 2017 19:29:19 -0700 Subject: sms,MMS, and Push Notificstions In-Reply-To: References: <20170815165352.Horde.riD9uMYvdkdlg8kPH-W0kj8@ua850258.serversignin.com> Message-ID: <533F6AFC-B6FD-46D4-BB47-1BA2EE2DE300@gmail.com> Thanks for all the info, Mike. I will most likely have more questions. Best, Bill Prothero William A. Prothero http://earthlearningsolution.org/ > On Aug 15, 2017, at 10:57 AM, Mike Kerner via use-livecode wrote: > > I got a message that one of my other messages was moderated for being too > large. I can't see if it got delivered, or not, so in response to Bill's > question about the repo: > > If you mean having the mobile do it, I hadn't thought about that. It might > be possible with tsnet. He is not simulating anything. The shell command > is what is used to send the alerts. No, you don't need to use a > third-party service, if you use this code. Instead, you have the code > running on a machine that you control. I have never figured out to make > the code work properly from a PC (I have never figured out how to get the > session to end and therefore for APNS to send the message, but it does work > from a Mac. > I do exactly what you are proposing - I have the stack attached to a DB > that has various device push id's. I load them up and fire off my messages > from there. > The repo that I built has the original stack, as well as the code broken > out so it can be used as a library and therefore be submoduled, etc. with > git. > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From brahma at hindu.org Tue Aug 15 23:01:21 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Wed, 16 Aug 2017 03:01:21 +0000 Subject: common code patterns In-Reply-To: <69CF1E79-81FC-4675-9F9F-CD2AB9C473A3@appisle.net> References: <8C6CB235-67B7-47BB-B6B6-A2586DEFBAE1@derbrill.de> <9b45dfb7-8869-3527-9982-c3936f47e9a9@tweedly.net> <69CF1E79-81FC-4675-9F9F-CD2AB9C473A3@appisle.net> Message-ID: <96C46D13-8D17-48C6-B693-FC19B336BF0B@hindu.org> Yes On 8/10/17, 2:42 PM, "use-livecode on behalf of Monte Goulding via use-livecode" wrote: local s command set p put p into s end set function get return s end get From jonathandlynch at gmail.com Wed Aug 16 06:44:11 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Wed, 16 Aug 2017 06:44:11 -0400 Subject: Couple of questions about the browser widget In-Reply-To: References: <04FBA9F2-165B-47DF-8E14-DDA45D1D7345@unimelb.edu.au> <2FD1F6D4-9264-41CD-99A8-F11679C3CE57@unimelb.edu.au> Message-ID: <74527493-70B7-4A74-887C-F67A0BF4CFD2@gmail.com> If you post the line that sends a message from JS to LC, we should be able to tell you what is wrong. The code looks like this: JS liveCode.myHandler('JSMessage','test'); LC On myHandler pMessage, pData If pMessage = "JSMessage" then Answer pData End if End myHandler This will produce an LC answer dialog that says "test" The keys to making this work: 1. the JS object is "liveCode" not "LiveCode" or "livecode" - JS is case sensitive. 2. The method, in this case "myHandler", becomes the LC handler, so make sure the LC handler is in the message path for the browser widget. 3. Make sure the JS script is firing - you can put in a line like "alert('hello');" to make sure JS is getting to that point in the script. Alert is like answer in LC. 4. Make sure your JS command lines end with a semicolon, but the structure lines do not, like this: function LCTest() { liveCode.myHandler('JSMessage','test'); } Also, you can find example stacks that demonstrate this stuff - the JS to LC stack on LiveCode Share shows how to get messages with data into and back out of the browser widget. For advanced image techniques, Hermann has posted many excellent stacks. Sent from my iPhone > On Aug 15, 2017, at 10:10 PM, Terry Judd via use-livecode wrote: > > Hi Mike ? yeah thanks, the temp file approach for setting the browser widget and getting an image to display works well so maybe easiest to go that way. I?m still steeling myself for a foray into javascript so haven?t tried anything on that front yet. I?ve got some Dropbox library related stuff to distract me first though. > > Regards, > > Terry... > > On 16/08/2017 10:53 am, "use-livecode on behalf of Mike Bonner via use-livecode" wrote: > > I haven't managed yet. (can't get it to fire, but hey.. did I mention i'm > no good at javascript?) > > Also I noticed, setting the htmltext of the widget seems to run through a > urlencode. (I had a sample page in a field and was setting the htmltext to > it, but it got totally munged.. So I've been creating a temp file and > setting the url which works..) > > To show an image you can use something like this.. > > > > (windows of course) Getting the javascripthandlers to work might take the > input of another. I can't seem to make it go. (Note also, I looked in the > dictionary for the browser widget and used the example code there for the > "set the javascripthandlers..' part.. but the example needs to be fixed. > You need to specify the widget. > set the javascripthandlers of widget "mywidge" to "whatever* > > > > On Tue, Aug 15, 2017 at 6:34 PM, Terry Judd via use-livecode < > use-livecode at lists.runrev.com> wrote: > >> Thanks for your help Mike ? I?m no good at Javascript either ;) but >> thankfully there is plenty of stuff out there on the web written by people >> that are. I?ll give it a go and see if I can make it work. >> >> Regards, >> >> Terry... >> >> On 16/08/2017 10:23 am, "use-livecode on behalf of Mike Bonner via >> use-livecode" > use-livecode at lists.runrev.com> wrote: >> >> For the second question, if your htmltext contains a javascript >> function >> that returns document.body.scrollHeight you should be able to get the >> height that way. I'm not any good at javascript, but how it would >> probably work would be to have something like this.. >> >> window.onload = function(e){ >> livecode.myHeight('lcHeight",document.body.scrollHeight) >> } >> >> Then have an lcHeight handler defined in your stack to receive the >> message. >> >> command lcHeight pHeight >> -- do something with pHeight >> end lcheight >> >> Then of course you have to declare the handler.. >> >> set the javascripthandlers to "lcHeight" >> >> I haven't actually done this, but think the idea is close enough to >> get you >> there. >> >> On Tue, Aug 15, 2017 at 5:55 PM, Terry Judd via use-livecode < >> use-livecode at lists.runrev.com> wrote: >> >>> I?m thinking about replacing a field object that contains text, >> inline >>> images and simple tables with the browser widget but there are a >> couple of >>> issues I?d need to work through first and would welcome any >> suggestions or >>> ideas. >>> >>> The first one concerns displaying local images ? either stored >>> (permanently or temporarily) within the stack itself or in the local >>> documents/whatever folder. I?d like to set the htmlText of the >> browser >>> rather than a url. If that?s the case, how do I refer to the image >> in order >>> for it to be displayed? >>> >>> The second one is whether it is possible to get the >> ?formattedHeight? of >>> the browser content. I?d ideally like to combine the browser with a >> couple >>> of other grouped controls so that I can scroll them as a single >> object. Is >>> that doable? >>> >>> Regards, >>> >>> Terry... >>> _______________________________________________ >>> use-livecode mailing list >>> use-livecode at lists.runrev.com >>> Please visit this url to subscribe, unsubscribe and manage your >>> subscription preferences: >>> http://lists.runrev.com/mailman/listinfo/use-livecode >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From hh at hyperhh.de Wed Aug 16 07:00:06 2017 From: hh at hyperhh.de (hh) Date: Wed, 16 Aug 2017 13:00:06 +0200 Subject: Couple of questions about the browser widget Message-ID: <89AC9827-1F7C-4790-BD0C-C97B4F21CE70@hyperhh.de> Additional to Jonathan's instructions. Basic: http://forums.livecode.com/viewtopic.php?f=7&t=29589 Medium: Get MouseEvents from browser widget http://forums.livecode.com/viewtopic.php?p=154496#p154496 and others there (7 Browser Widget usage examples) ... From terry.judd at unimelb.edu.au Wed Aug 16 08:42:52 2017 From: terry.judd at unimelb.edu.au (Terry Judd) Date: Wed, 16 Aug 2017 12:42:52 +0000 Subject: Couple of questions about the browser widget In-Reply-To: <89AC9827-1F7C-4790-BD0C-C97B4F21CE70@hyperhh.de> References: <89AC9827-1F7C-4790-BD0C-C97B4F21CE70@hyperhh.de> Message-ID: Thanks hh that's really helpful stuff. Thanks also to Jonathan and Mike. Regards, Terry... Sent from my iPad > On 16 Aug 2017, at 9:00 pm, hh via use-livecode wrote: > > Additional to Jonathan's instructions. > > Basic: > http://forums.livecode.com/viewtopic.php?f=7&t=29589 > > Medium: Get MouseEvents from browser widget > http://forums.livecode.com/viewtopic.php?p=154496#p154496 > > and others there (7 Browser Widget usage examples) ... > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From bonnmike at gmail.com Wed Aug 16 09:49:19 2017 From: bonnmike at gmail.com (Mike Bonner) Date: Wed, 16 Aug 2017 07:49:19 -0600 Subject: Couple of questions about the browser widget In-Reply-To: References: <89AC9827-1F7C-4790-BD0C-C97B4F21CE70@hyperhh.de> Message-ID: Ty HH and jonathan, its working now for me. Terry: I have this in my temporary file.. Hi! It loads my picture fine, and (now that i have capitalization right.. DOH) it sends a livecode message called lcHeight which is in the javascripthandlers for the widget it loads into. For the handler in LC I have this.. command lcHeight pHeight set the height of widget 1 to pHeight + 23 -- +23 because I have the horizontal scrollbar showing set the topleft of widget 1 to the topleft of this card end lcHeight On Wed, Aug 16, 2017 at 6:42 AM, Terry Judd via use-livecode < use-livecode at lists.runrev.com> wrote: > Thanks hh that's really helpful stuff. Thanks also to Jonathan and Mike. > > Regards, > > Terry... > > Sent from my iPad > > > On 16 Aug 2017, at 9:00 pm, hh via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > > Additional to Jonathan's instructions. > > > > Basic: > > http://forums.livecode.com/viewtopic.php?f=7&t=29589 > > > > Medium: Get MouseEvents from browser widget > > http://forums.livecode.com/viewtopic.php?p=154496#p154496 > > > > and others there (7 Browser Widget usage examples) ... > > > > _______________________________________________ > > use-livecode mailing list > > use-livecode at lists.runrev.com > > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > > http://lists.runrev.com/mailman/listinfo/use-livecode > > > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From benr_mc at cogapp.com Wed Aug 16 11:38:31 2017 From: benr_mc at cogapp.com (Ben Rubinstein) Date: Wed, 16 Aug 2017 16:38:31 +0100 Subject: sms,MMS, and Push Notificstions In-Reply-To: <533F6AFC-B6FD-46D4-BB47-1BA2EE2DE300@gmail.com> References: <20170815165352.Horde.riD9uMYvdkdlg8kPH-W0kj8@ua850258.serversignin.com> <533F6AFC-B6FD-46D4-BB47-1BA2EE2DE300@gmail.com> Message-ID: Just to add a +1 for OneSignal. We've used it for a couple of projects and it's great. In theory you could run your own push notification server, in practise as Andrew noted it's a ton of work, and unless your needs are very unusual probably not worth it. There are a number of commercial services, most of which actually end up quite expensive if you're dealing with substantial numbers of clients (but perhaps not so in your case); we were using one which was cheaper - until they closed their doors. Then we switched to OneSignal, which is free and so far has been excellent. They also have an API so they may be worth using as a piece of your solution even if you do have outr? needs - although I haven't actually worked with this yet. Good luck! Ben On 16/08/2017 03:29, William Prothero via use-livecode wrote: > Thanks for all the info, Mike. I will most likely have more questions. > Best, > Bill Prothero > > William A. Prothero > http://earthlearningsolution.org/ > >> On Aug 15, 2017, at 10:57 AM, Mike Kerner via use-livecode wrote: >> >> I got a message that one of my other messages was moderated for being too >> large. I can't see if it got delivered, or not, so in response to Bill's >> question about the repo: >> >> If you mean having the mobile do it, I hadn't thought about that. It might >> be possible with tsnet. He is not simulating anything. The shell command >> is what is used to send the alerts. No, you don't need to use a >> third-party service, if you use this code. Instead, you have the code >> running on a machine that you control. I have never figured out to make >> the code work properly from a PC (I have never figured out how to get the >> session to end and therefore for APNS to send the message, but it does work >> from a Mac. >> I do exactly what you are proposing - I have the stack attached to a DB >> that has various device push id's. I load them up and fire off my messages >> from there. >> The repo that I built has the original stack, as well as the code broken >> out so it can be used as a library and therefore be submoduled, etc. with >> git. >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From bobsneidar at iotecdigital.com Wed Aug 16 11:56:00 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Wed, 16 Aug 2017 15:56:00 +0000 Subject: sms,MMS, and Push Notificstions In-Reply-To: References: <20170815165352.Horde.riD9uMYvdkdlg8kPH-W0kj8@ua850258.serversignin.com> <533F6AFC-B6FD-46D4-BB47-1BA2EE2DE300@gmail.com> Message-ID: <9DAAA570-6A07-49B1-BED1-FA344BA1710B@iotecdigital.com> erm... nothing is free. They must be getting something out of it. Ads at least. Harvesting phone numbers likely. IMHO it is a really bad idea to use free services in commercial projects. Even if they are innocuous, there is no guarantee a free service will always be there. Bob S > On Aug 16, 2017, at 08:38 , Ben Rubinstein via use-livecode wrote: > > Then we switched to OneSignal, which is free From MikeKerner at roadrunner.com Wed Aug 16 12:21:36 2017 From: MikeKerner at roadrunner.com (Mike Kerner) Date: Wed, 16 Aug 2017 12:21:36 -0400 Subject: sms,MMS, and Push Notificstions In-Reply-To: <9DAAA570-6A07-49B1-BED1-FA344BA1710B@iotecdigital.com> References: <20170815165352.Horde.riD9uMYvdkdlg8kPH-W0kj8@ua850258.serversignin.com> <533F6AFC-B6FD-46D4-BB47-1BA2EE2DE300@gmail.com> <9DAAA570-6A07-49B1-BED1-FA344BA1710B@iotecdigital.com> Message-ID: I disagree with Ben on the effort of rolling your own. The first one is probably some work, until you understand how push works, but after you understand, it is pretty easy. On Wed, Aug 16, 2017 at 11:56 AM, Bob Sneidar via use-livecode < use-livecode at lists.runrev.com> wrote: > erm... nothing is free. They must be getting something out of it. Ads at > least. Harvesting phone numbers likely. IMHO it is a really bad idea to use > free services in commercial projects. Even if they are innocuous, there is > no guarantee a free service will always be there. > > Bob S > > > > On Aug 16, 2017, at 08:38 , Ben Rubinstein via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > > Then we switched to OneSignal, which is free > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > -- On the first day, God created the heavens and the Earth On the second day, God created the oceans. On the third day, God put the animals on hold for a few hours, and did a little diving. And God said, "This is good." From ambassador at fourthworld.com Wed Aug 16 14:27:46 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Wed, 16 Aug 2017 11:27:46 -0700 Subject: sms,MMS, and Push Notificstions In-Reply-To: References: Message-ID: Mike Kerner wrote: > I disagree with Ben on the effort of rolling your own. The first one > is probably some work, until you understand how push works, but after > you understand, it is pretty easy. I don't mind learning new things, and I often prefer the control I get with my own private systems. What resources would you recommend for learning more about setting up a notification server? -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From matthias_livecode_150811 at m-r-d.de Wed Aug 16 14:42:51 2017 From: matthias_livecode_150811 at m-r-d.de (Matthias Rebbe) Date: Wed, 16 Aug 2017 20:42:51 +0200 Subject: sms,MMS, and Push Notificstions In-Reply-To: References: Message-ID: <5854129D-5B98-4881-B4AC-6ACC16A6D9F0@m-r-d.de> > Am 16.08.2017 um 20:27 schrieb Richard Gaskin via use-livecode >: > > Mike Kerner wrote: > > > I disagree with Ben on the effort of rolling your own. The first one > > is probably some work, until you understand how push works, but after > > you understand, it is pretty easy. > > I don't mind learning new things, and I often prefer the control I get with my own private systems. > > What resources would you recommend for learning more about setting up a notification server? It would be great to have a Livecode Server solution. Maybe this would be also a good topic for the LC Global conference? Matthias > > -- > Richard Gaskin > Fourth World Systems > Software Design and Development for the Desktop, Mobile, and the Web > ____________________________________________________________________ > Ambassador at FourthWorld.com http://www.FourthWorld.com > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From waprothero at gmail.com Wed Aug 16 14:49:49 2017 From: waprothero at gmail.com (William Prothero) Date: Wed, 16 Aug 2017 11:49:49 -0700 Subject: sms,MMS, and Push Notificstions In-Reply-To: References: Message-ID: Mike: Me too on Richard?s request. I think the livecode lesson is a good start, but yes, setting up the server is another issue entirely. Since you?ve been through this process, it would be very useful to hear which learning resources you found most useful. Here are a couple of promising links I found by Googling around. This youtube video looks quite promising. It shows how to set up a server and the push notifications are sent using a cron job. I would bet the php code could be easily modified to sent the notification from a command on an app or mobile device. https://youtu.be/x4swrHvBqEw More similar: https://webresourcesdepot.com/easy-apns-apple-push-notifications-with-php-and-mysql/ https://code.google.com/archive/p/php-apns/ I don?t know what would be required for sending notifications to Android mobile devices. Best, Bill P > On Aug 16, 2017, at 11:27 AM, Richard Gaskin via use-livecode wrote: > > Mike Kerner wrote: > > > I disagree with Ben on the effort of rolling your own. The first one > > is probably some work, until you understand how push works, but after > > you understand, it is pretty easy. > > I don't mind learning new things, and I often prefer the control I get with my own private systems. > > What resources would you recommend for learning more about setting up a notification server? > > -- > Richard Gaskin > Fourth World Systems > Software Design and Development for the Desktop, Mobile, and the Web > ____________________________________________________________________ > Ambassador at FourthWorld.com http://www.FourthWorld.com > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From jbv at souslelogo.com Wed Aug 16 15:07:52 2017 From: jbv at souslelogo.com (jbv) Date: Wed, 16 Aug 2017 21:07:52 +0200 Subject: answer with... Message-ID: Hi I have a blank... I need to use a prompt in the form of answer "Your choice" with "John" or "Mary" or "Cancel" the problem is that the number of options depends on the result of a DB request, and can vary from 2 to 6... I tried to put ("John" or "Mary" or "Cancel") in a string but (answer "Your choice" with myString) doesn't work as expected... Any idea ? Thanks in advance jbv From richmondmathewson at gmail.com Wed Aug 16 15:32:08 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Wed, 16 Aug 2017 22:32:08 +0300 Subject: answer with... In-Reply-To: References: Message-ID: This works: onmouseUp answer"your Choice" withfld "CHOIX" endmouseUp if fld "CHOIX" is a listField Richmond. On 8/16/17 10:07 pm, jbv via use-livecode wrote: > Hi > I have a blank... > I need to use a prompt in the form of > answer "Your choice" with "John" or "Mary" or "Cancel" > > the problem is that the number of options depends on the > result of a DB request, and can vary from 2 to 6... > I tried to put ("John" or "Mary" or "Cancel") in a string > but (answer "Your choice" with myString) doesn't work as > expected... > Any idea ? > > Thanks in advance > jbv > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From richmondmathewson at gmail.com Wed Aug 16 15:43:32 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Wed, 16 Aug 2017 22:43:32 +0300 Subject: answer with... In-Reply-To: References: Message-ID: <526761c0-5fd1-e21b-bce2-7c5e2dd7b618@gmail.com> http://forums.livecode.com/viewtopic.php?f=7&t=29638#p157100 Richmond. On 8/16/17 10:07 pm, jbv via use-livecode wrote: > Hi > I have a blank... > I need to use a prompt in the form of > answer "Your choice" with "John" or "Mary" or "Cancel" > > the problem is that the number of options depends on the > result of a DB request, and can vary from 2 to 6... > I tried to put ("John" or "Mary" or "Cancel") in a string > but (answer "Your choice" with myString) doesn't work as > expected... > Any idea ? > > Thanks in advance > jbv > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From klaus at major-k.de Wed Aug 16 15:54:14 2017 From: klaus at major-k.de (Klaus major-k) Date: Wed, 16 Aug 2017 21:54:14 +0200 Subject: answer with... In-Reply-To: References: Message-ID: <84E12214-37A1-4836-8D23-7B0D6E777B2A@major-k.de> Hi Richmond, > Am 16.08.2017 um 21:32 schrieb Richmond Mathewson via use-livecode : > > This works: > > on mouseUp > answer"your Choice" with fld "CHOIX" > end mouseUp > > if fld "CHOIX" is a listField WOW, now THIS is really cool! And also works with "normal" (editable) fields. Really did not know this, thank you, Sir. :-) > Richmond. > > On 8/16/17 10:07 pm, jbv via use-livecode wrote: >> Hi >> I have a blank... >> I need to use a prompt in the form of >> answer "Your choice" with "John" or "Mary" or "Cancel" >> >> the problem is that the number of options depends on the >> result of a DB request, and can vary from 2 to 6... >> I tried to put ("John" or "Mary" or "Cancel") in a string >> but (answer "Your choice" with myString) doesn't work as >> expected... >> Any idea ? >> >> Thanks in advance >> jbv Best Klaus -- Klaus Major http://www.major-k.de klaus at major-k.de From richmondmathewson at gmail.com Wed Aug 16 15:56:09 2017 From: richmondmathewson at gmail.com (Richmond Mathewson) Date: Wed, 16 Aug 2017 22:56:09 +0300 Subject: answer with... In-Reply-To: <84E12214-37A1-4836-8D23-7B0D6E777B2A@major-k.de> References: <84E12214-37A1-4836-8D23-7B0D6E777B2A@major-k.de> Message-ID: <2037a283-76cc-2470-44a2-cc3f775c5d60@gmail.com> Ha, Ha! I didn't know that either until I had a "mad" idea and tried it. Richmond. On 8/16/17 10:54 pm, Klaus major-k via use-livecode wrote: > Hi Richmond, > >> Am 16.08.2017 um 21:32 schrieb Richmond Mathewson via use-livecode : >> >> This works: >> >> on mouseUp >> answer"your Choice" with fld "CHOIX" >> end mouseUp >> >> if fld "CHOIX" is a listField > WOW, now THIS is really cool! > And also works with "normal" (editable) fields. > > Really did not know this, thank you, Sir. :-) > >> Richmond. >> >> On 8/16/17 10:07 pm, jbv via use-livecode wrote: >>> Hi >>> I have a blank... >>> I need to use a prompt in the form of >>> answer "Your choice" with "John" or "Mary" or "Cancel" >>> >>> the problem is that the number of options depends on the >>> result of a DB request, and can vary from 2 to 6... >>> I tried to put ("John" or "Mary" or "Cancel") in a string >>> but (answer "Your choice" with myString) doesn't work as >>> expected... >>> Any idea ? >>> >>> Thanks in advance >>> jbv > Best > > Klaus > > -- > Klaus Major > http://www.major-k.de > klaus at major-k.de > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From chipsm at themartinz.com Wed Aug 16 16:07:51 2017 From: chipsm at themartinz.com (** Clarence P Martin **) Date: Wed, 16 Aug 2017 13:07:51 -0700 Subject: answer with... In-Reply-To: <2037a283-76cc-2470-44a2-cc3f775c5d60@gmail.com> References: <84E12214-37A1-4836-8D23-7B0D6E777B2A@major-k.de> <2037a283-76cc-2470-44a2-cc3f775c5d60@gmail.com> Message-ID: <073801d316cb$5712fa30$0538ee90$@themartinz.com> Thanks! This is cool! I appreciate it when people contribute code snippets. I would have never thought of this. Sincerely, Clarence Martin Email: chipsm at themartinz.com Cell: 626 6965561 -----Original Message----- From: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] On Behalf Of Richmond Mathewson via use-livecode Sent: Wednesday, August 16, 2017 12:56 PM To: How to use LiveCode Cc: Richmond Mathewson Subject: Re: answer with... Ha, Ha! I didn't know that either until I had a "mad" idea and tried it. Richmond. On 8/16/17 10:54 pm, Klaus major-k via use-livecode wrote: > Hi Richmond, > >> Am 16.08.2017 um 21:32 schrieb Richmond Mathewson via use-livecode : >> >> This works: >> >> on mouseUp >> answer"your Choice" with fld "CHOIX" >> end mouseUp >> >> if fld "CHOIX" is a listField > WOW, now THIS is really cool! > And also works with "normal" (editable) fields. > > Really did not know this, thank you, Sir. :-) > >> Richmond. >> >> On 8/16/17 10:07 pm, jbv via use-livecode wrote: >>> Hi >>> I have a blank... >>> I need to use a prompt in the form of >>> answer "Your choice" with "John" or "Mary" or "Cancel" >>> >>> the problem is that the number of options depends on the result of a >>> DB request, and can vary from 2 to 6... >>> I tried to put ("John" or "Mary" or "Cancel") in a string but >>> (answer "Your choice" with myString) doesn't work as expected... >>> Any idea ? >>> >>> Thanks in advance >>> jbv > Best > > Klaus > > -- > Klaus Major > http://www.major-k.de > klaus at major-k.de > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode From ambassador at fourthworld.com Wed Aug 16 16:08:56 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Wed, 16 Aug 2017 13:08:56 -0700 Subject: answer with... In-Reply-To: References: Message-ID: <7465a836-fc64-e805-a4ea-358c333100c2@fourthworld.com> Richmond Mathewson wrote: > This works: > > on mouseUp > answer "your Choice" with fld "CHOIX" > end mouseUp Apparently that works with any return-delimited container, including variables. I couldn't find mention of this in the Dictionary entry for "answer". Any know offhand if there's a bug report for that? -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From rdimola at evergreeninfo.net Wed Aug 16 16:10:31 2017 From: rdimola at evergreeninfo.net (Ralph DiMola) Date: Wed, 16 Aug 2017 16:10:31 -0400 Subject: answer with... In-Reply-To: <7465a836-fc64-e805-a4ea-358c333100c2@fourthworld.com> References: <7465a836-fc64-e805-a4ea-358c333100c2@fourthworld.com> Message-ID: <007e01d316cb$b656a460$2303ed20$@net> Android Mobile is limited to 3. Ralph DiMola IT Director Evergreen Information Services rdimola at evergreeninfo.net From terry.judd at unimelb.edu.au Wed Aug 16 16:10:51 2017 From: terry.judd at unimelb.edu.au (Terry Judd) Date: Wed, 16 Aug 2017 20:10:51 +0000 Subject: Couple of questions about the browser widget In-Reply-To: References: <89AC9827-1F7C-4790-BD0C-C97B4F21CE70@hyperhh.de> Message-ID: <9E2E51FE-9810-4BA7-BCE1-5E1F61B20477@unimelb.edu.au> Perfect! Interesting about the hScrollbar setting ? I seem to be unable to deselect that (or vScrollbar) in the property editor ? or change them via script (both are stuck on true). Thanks, Terry... On 16/08/2017 11:49 pm, "use-livecode on behalf of Mike Bonner via use-livecode" wrote: Ty HH and jonathan, its working now for me. Terry: I have this in my temporary file.. Hi! It loads my picture fine, and (now that i have capitalization right.. DOH) it sends a livecode message called lcHeight which is in the javascripthandlers for the widget it loads into. For the handler in LC I have this.. command lcHeight pHeight set the height of widget 1 to pHeight + 23 -- +23 because I have the horizontal scrollbar showing set the topleft of widget 1 to the topleft of this card end lcHeight On Wed, Aug 16, 2017 at 6:42 AM, Terry Judd via use-livecode < use-livecode at lists.runrev.com> wrote: > Thanks hh that's really helpful stuff. Thanks also to Jonathan and Mike. > > Regards, > > Terry... > > Sent from my iPad > > > On 16 Aug 2017, at 9:00 pm, hh via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > > Additional to Jonathan's instructions. > > > > Basic: > > http://forums.livecode.com/viewtopic.php?f=7&t=29589 > > > > Medium: Get MouseEvents from browser widget > > http://forums.livecode.com/viewtopic.php?p=154496#p154496 > > > > and others there (7 Browser Widget usage examples) ... > > > > _______________________________________________ > > use-livecode mailing list > > use-livecode at lists.runrev.com > > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > > http://lists.runrev.com/mailman/listinfo/use-livecode > > > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode From jacque at hyperactivesw.com Wed Aug 16 16:13:04 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Wed, 16 Aug 2017 15:13:04 -0500 Subject: answer with... In-Reply-To: <2037a283-76cc-2470-44a2-cc3f775c5d60@gmail.com> References: <84E12214-37A1-4836-8D23-7B0D6E777B2A@major-k.de> <2037a283-76cc-2470-44a2-cc3f775c5d60@gmail.com> Message-ID: On 8/16/17 10:07 pm, jbv via use-livecode wrote: > I have a blank... > I need to use a prompt in the form of > answer "Your choice" with "John" or "Mary" or "Cancel" > > the problem is that the number of options depends on the > result of a DB request, and can vary from 2 to 6... I think the answer command has always accepted CR instead of "or" if I remember right. At any rate, if you don't want to use a field, you can just replace the commas with CR and use that. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com From MikeKerner at roadrunner.com Wed Aug 16 16:14:39 2017 From: MikeKerner at roadrunner.com (Mike Kerner) Date: Wed, 16 Aug 2017 16:14:39 -0400 Subject: sms,MMS, and Push Notificstions In-Reply-To: References: Message-ID: I've been threatening to build/working on an LC push server library, but it's on the back burner, right now, and probably will be until the end of the year, at the earliest. ? First, go to quality.livecode.com, and add yourself to the cc list for bug 10901 and 18692. Those are for various improvements in push support that will allow us to do things like silent push (push data to your app without your app having to do it while it is running, wasting the user's time). ? The piece that leaves the most to the imagination is handling the id reporting from the devices. On iOS, the only way to pull an app's push id on a device is inside of the app. So your app has to report its id to your server, somehow. "Somehow" can be a file drop (e.g. dropbox, since we talk about that service a lot), a special port or URL, a web db query, etc. ? Your app checks to see if it has already reported its push id. If it has not, it reports it (however, there isn't any harm in reporting it each time it launches). ? Perhaps your server implements a mechanism to notify your app that the push id was received (e.g. by sending a push notification back), so that the app does not notify the server, again, for this push id ? If your app notices that its push id has changed, it reports the old id and the new id (or if you have some other way of keeping track of a particular install on a particular device, you could report that with the new id, instead). ? Check, periodically, to see if the push server is reporting that some id or another is no longer active and should be taken out of service (I have never received such a report, but you are supposed to do this, anyway). On Wed, Aug 16, 2017 at 2:49 PM, William Prothero via use-livecode < use-livecode at lists.runrev.com> wrote: > Mike: > Me too on Richard?s request. I think the livecode lesson is a good start, > but yes, setting up the server is another issue entirely. Since you?ve been > through this process, it would be very useful to hear which learning > resources you found most useful. > > Here are a couple of promising links I found by Googling around. > > This youtube video looks quite promising. It shows how to set up a server > and the push notifications are sent using a cron job. I would bet the php > code could be easily modified to sent the notification from a command on an > app or mobile device. > https://youtu.be/x4swrHvBqEw > More similar: > https://webresourcesdepot.com/easy-apns-apple-push- > notifications-with-php-and-mysql/ com/easy-apns-apple-push-notifications-with-php-and-mysql/> > https://code.google.com/archive/p/php-apns/ archive/p/php-apns/> > I don?t know what would be required for sending notifications to Android > mobile devices. > > Best, > Bill P > > > > On Aug 16, 2017, at 11:27 AM, Richard Gaskin via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > > Mike Kerner wrote: > > > > > I disagree with Ben on the effort of rolling your own. The first one > > > is probably some work, until you understand how push works, but after > > > you understand, it is pretty easy. > > > > I don't mind learning new things, and I often prefer the control I get > with my own private systems. > > > > What resources would you recommend for learning more about setting up a > notification server? > > > > -- > > Richard Gaskin > > Fourth World Systems > > Software Design and Development for the Desktop, Mobile, and the Web > > ____________________________________________________________________ > > Ambassador at FourthWorld.com http://www.FourthWorld.com > > > > _______________________________________________ > > use-livecode mailing list > > use-livecode at lists.runrev.com > > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > > http://lists.runrev.com/mailman/listinfo/use-livecode > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > -- On the first day, God created the heavens and the Earth On the second day, God created the oceans. On the third day, God put the animals on hold for a few hours, and did a little diving. And God said, "This is good." From bonnmike at gmail.com Wed Aug 16 16:33:03 2017 From: bonnmike at gmail.com (Mike Bonner) Date: Wed, 16 Aug 2017 14:33:03 -0600 Subject: Couple of questions about the browser widget In-Reply-To: <9E2E51FE-9810-4BA7-BCE1-5E1F61B20477@unimelb.edu.au> References: <89AC9827-1F7C-4790-BD0C-C97B4F21CE70@hyperhh.de> <9E2E51FE-9810-4BA7-BCE1-5E1F61B20477@unimelb.edu.au> Message-ID: hmm. If the width of the page fits without need of a horizontal scrollbar, it should disappear, so maybe your code should check to see if its false first, then add the 23 pixels or not, depending. (I also can't test to see if its 23 on every platform at the moment) I'm wondering if you're just not allowed to set a bar to false when the content is too wide or high and vice versa. On Wed, Aug 16, 2017 at 2:10 PM, Terry Judd via use-livecode < use-livecode at lists.runrev.com> wrote: > Perfect! Interesting about the hScrollbar setting ? I seem to be unable to > deselect that (or vScrollbar) in the property editor ? or change them via > script (both are stuck on true). > > Thanks, > > Terry... > > On 16/08/2017 11:49 pm, "use-livecode on behalf of Mike Bonner via > use-livecode" use-livecode at lists.runrev.com> wrote: > > Ty HH and jonathan, its working now for me. > > Terry: > I have this in my temporary file.. > > Hi! > > > > > > It loads my picture fine, and (now that i have capitalization right.. > DOH) > it sends a livecode message called lcHeight which is in the > javascripthandlers for the widget it loads into. > > For the handler in LC I have this.. > > command lcHeight pHeight > set the height of widget 1 to pHeight + 23 -- +23 because I have > the > horizontal scrollbar showing > set the topleft of widget 1 to the topleft of this card > end lcHeight > > On Wed, Aug 16, 2017 at 6:42 AM, Terry Judd via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > Thanks hh that's really helpful stuff. Thanks also to Jonathan and > Mike. > > > > Regards, > > > > Terry... > > > > Sent from my iPad > > > > > On 16 Aug 2017, at 9:00 pm, hh via use-livecode < > > use-livecode at lists.runrev.com> wrote: > > > > > > Additional to Jonathan's instructions. > > > > > > Basic: > > > http://forums.livecode.com/viewtopic.php?f=7&t=29589 > > > > > > Medium: Get MouseEvents from browser widget > > > http://forums.livecode.com/viewtopic.php?p=154496#p154496 > > > > > > and others there (7 Browser Widget usage examples) ... > > > > > > _______________________________________________ > > > use-livecode mailing list > > > use-livecode at lists.runrev.com > > > Please visit this url to subscribe, unsubscribe and manage your > > subscription preferences: > > > http://lists.runrev.com/mailman/listinfo/use-livecode > > > > > > > > > _______________________________________________ > > use-livecode mailing list > > use-livecode at lists.runrev.com > > Please visit this url to subscribe, unsubscribe and manage your > > subscription preferences: > > http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From jbv at souslelogo.com Wed Aug 16 16:47:34 2017 From: jbv at souslelogo.com (jbv) Date: Wed, 16 Aug 2017 22:47:34 +0200 Subject: answer with... In-Reply-To: References: <84E12214-37A1-4836-8D23-7B0D6E777B2A@major-k.de> <2037a283-76cc-2470-44a2-cc3f775c5d60@gmail.com> Message-ID: <8a4656cc6e399b6e233d1a3e4584094a.squirrel@sage.on-rev.com> works like a charm... Thanks a lot. On Wed, August 16, 2017 10:13 pm, J. Landman Gay via use-livecode wrote: > On 8/16/17 10:07 pm, jbv via use-livecode wrote: > > >> I have a blank... >> I need to use a prompt in the form of >> answer "Your choice" with "John" or "Mary" or "Cancel" >> >> the problem is that the number of options depends on the result of a DB >> request, and can vary from 2 to 6... > > I think the answer command has always accepted CR instead of "or" if I > remember right. At any rate, if you don't want to use a field, you can just > replace the commas with CR and use that. > > -- > Jacqueline Landman Gay | jacque at hyperactivesw.com > HyperActive Software | http://www.hyperactivesw.com > > > _______________________________________________ > use-livecode mailing list use-livecode at lists.runrev.com Please visit this > url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > > From dochawk at gmail.com Wed Aug 16 16:49:44 2017 From: dochawk at gmail.com (Dr. Hawkins) Date: Wed, 16 Aug 2017 13:49:44 -0700 Subject: answer with... In-Reply-To: References: Message-ID: On Wed, Aug 16, 2017 at 12:07 PM, jbv via use-livecode < use-livecode at lists.runrev.com> wrote: > Hi > I have a blank... > I need to use a prompt in the form of > answer "Your choice" with "John" or "Mary" or "Cancel" > > the problem is that the number of options depends on the > result of a DB request, and can vary from 2 to 6... > put "answer " & quote & "Your Choice" "e & " with" into myCmd repeat for each word who in theLIst put who & " or " after myCmd end repeat delete char -4 to -1 of yCmd do myCmd -- Dr. Richard E. Hawkins, Esq. (702) 508-8462 From jonathandlynch at gmail.com Wed Aug 16 16:57:30 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Wed, 16 Aug 2017 16:57:30 -0400 Subject: Couple of questions about the browser widget In-Reply-To: References: <89AC9827-1F7C-4790-BD0C-C97B4F21CE70@hyperhh.de> <9E2E51FE-9810-4BA7-BCE1-5E1F61B20477@unimelb.edu.au> Message-ID: Maybe Try this: Also, the internal width or height of content in the browser is not necessarily the same as the width as measured by LC. Things like the screen pixel scale can have an effect. Sent from my iPhone > On Aug 16, 2017, at 4:33 PM, Mike Bonner via use-livecode wrote: > > hmm. If the width of the page fits without need of a horizontal scrollbar, > it should disappear, so maybe your code should check to see if its false > first, then add the 23 pixels or not, depending. (I also can't test to see > if its 23 on every platform at the moment) > > I'm wondering if you're just not allowed to set a bar to false when the > content is too wide or high and vice versa. > > On Wed, Aug 16, 2017 at 2:10 PM, Terry Judd via use-livecode < > use-livecode at lists.runrev.com> wrote: > >> Perfect! Interesting about the hScrollbar setting ? I seem to be unable to >> deselect that (or vScrollbar) in the property editor ? or change them via >> script (both are stuck on true). >> >> Thanks, >> >> Terry... >> >> On 16/08/2017 11:49 pm, "use-livecode on behalf of Mike Bonner via >> use-livecode" > use-livecode at lists.runrev.com> wrote: >> >> Ty HH and jonathan, its working now for me. >> >> Terry: >> I have this in my temporary file.. >> >> Hi! >> >> >> >> >> >> It loads my picture fine, and (now that i have capitalization right.. >> DOH) >> it sends a livecode message called lcHeight which is in the >> javascripthandlers for the widget it loads into. >> >> For the handler in LC I have this.. >> >> command lcHeight pHeight >> set the height of widget 1 to pHeight + 23 -- +23 because I have >> the >> horizontal scrollbar showing >> set the topleft of widget 1 to the topleft of this card >> end lcHeight >> >> On Wed, Aug 16, 2017 at 6:42 AM, Terry Judd via use-livecode < >> use-livecode at lists.runrev.com> wrote: >> >>> Thanks hh that's really helpful stuff. Thanks also to Jonathan and >> Mike. >>> >>> Regards, >>> >>> Terry... >>> >>> Sent from my iPad >>> >>>> On 16 Aug 2017, at 9:00 pm, hh via use-livecode < >>> use-livecode at lists.runrev.com> wrote: >>>> >>>> Additional to Jonathan's instructions. >>>> >>>> Basic: >>>> http://forums.livecode.com/viewtopic.php?f=7&t=29589 >>>> >>>> Medium: Get MouseEvents from browser widget >>>> http://forums.livecode.com/viewtopic.php?p=154496#p154496 >>>> >>>> and others there (7 Browser Widget usage examples) ... >>>> >>>> _______________________________________________ >>>> use-livecode mailing list >>>> use-livecode at lists.runrev.com >>>> Please visit this url to subscribe, unsubscribe and manage your >>> subscription preferences: >>>> http://lists.runrev.com/mailman/listinfo/use-livecode >>>> >>> >>> >>> _______________________________________________ >>> use-livecode mailing list >>> use-livecode at lists.runrev.com >>> Please visit this url to subscribe, unsubscribe and manage your >>> subscription preferences: >>> http://lists.runrev.com/mailman/listinfo/use-livecode >>> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> >> >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From beofonemind at gmail.com Wed Aug 16 17:47:48 2017 From: beofonemind at gmail.com (Tom Glod) Date: Wed, 16 Aug 2017 17:47:48 -0400 Subject: Taking quotes on building LC external for RethinkDB In-Reply-To: References: <0f99b2fd-8d16-531c-43e8-bac1600b1905@fourthworld.com> Message-ID: Hi Richard, thanks for sharing more thoughts on this subject... its interesting to hear about your experience with the IT departments. I am anticipating just about anything .... and your message reminded me to literally be ready for all kinds of things. Its the beautiful thing about a web app .... no installation..... no upgrade procedures...... but it comes with its own sore points that a desktop app does not come with. Though we absolutely had to make ours offline first..... we are definitely building a cloud service asap so that we can have the convenience of the web app with the power of a lc desktop app. the plan for cloud service is to still use desktop application, and only store files and databases on the server..... no seperate web interface. so we are lucky in that department.....aws will give us everything we'll need to host our customer's data i think that will give us the best of both worlds. Thanks again, you gave me some more food for thought as we ramp up to b2b sales here. On Wed, Aug 16, 2017 at 5:23 PM, Tom Glod wrote: > Hi Richard, thanks for sharing more thoughts on this subject... its > interesting to hear about your experience with the IT departments. I am > anticipating just about anything .... > and your message reminded me to literally be ready for all kinds of things. > > Its the beautiful thing about a web app .... no installation..... no > upgrade procedures...... but it comes with its own sore points that a > desktop app does not come with. > > Though we absolutely had to make ours offline first..... we are definitely > building a cloud service asap so that we can have the convenience of the > web app with the power of a lc desktop app. > > the plan for cloud service is to still use desktop application, and only > store files and databases on the server..... no seperate web interface. so > we are lucky in that department.....aws will give us everything we'll need > to host our customer's data > > i think that will give us the best of both worlds. > > Thanks again, you gave me some more food for thought as we ramp up to b2b > sales here. > > > > On Tue, Aug 8, 2017 at 1:31 PM, Richard Gaskin via use-livecode < > use-livecode at lists.runrev.com> wrote: > >> Tom Glod wrote: >> >> > The plan so far is to work with the IT dept (guy or gal) and help them >> > to set up safely and securely based on their particular requirements. >> >> No disrespect to IT staff keeping businesses running safely, but FWUW the >> main reason we ported one of our apps from native to web-only was to bypass >> IT departments. >> >> Many of my friends work in IT so I appreciate what they're up against, >> but man oh man the lengthy conversation we'd have with IT managers. We >> worked really hard to make the app as self-contained and firewall-friendly >> as possible, and our setup was so simple the one-page Installation Guide >> really only needed to be one sentence ("Copy this folder to a shared >> drive"). But no IT person would believe how easy it was so we padded it >> with extra verbage and a diagram. And even then we got countless requests >> for meetings and conference calls, questions about DLL requirements we >> didn't have, firewall settings we don't need, and more. >> >> Ultimately we found we were spending more time on the phone with IT than >> we were with customers. >> >> Moving the product to the web bypassed that conversation entirely, >> allowing much simpler conversations about features with prospects and about >> value with managers. Never had another IT conference call again. >> >> Not all products lend themselves to the web, of course. In our case the >> product was primarily content, with minimal interactivity, so it was a good >> fit. Good enough to eventually lead to acquisition of that company. >> >> I'm familiar with your app so I don't expect the web will be as easy an >> option, if practical at all. >> >> Just budget time for pre-sales support, and time spent on an Installation >> Guide for IT is probably time well spent (at least much better than not >> having a thorough one). Be willing to revise it regularly as you learn new >> concerns IT departments share. >> >> >> > Never considered providing our own boxes..... but i might think about >> > it now. >> > There'd be an increased cost, but decreased costs elsewhere. Decisions >> > Decisions..... >> > >> > thanks for suggestion. >> >> Appliances are probably a lot less attractive for businesses large enough >> to have dedicated IT staff. But for many SMBs they may be quite useful. >> >> The hardware needed for servers is usually much more modest than a client >> desktop needs, so hard cost is low (small form factor barebones can provide >> great value, not just in hardware cost but also in low energy consumption - >> lean green machines). >> >> The bigger expense is setup and testing, but if you set up a custom ISO >> with everything you need pre-installed you can cut that time tremendously. >> >> With remote admin you can keep it current and perform troubleshooting as >> needed, covered with a support subscription as a supplemental revenue >> stream. >> >> And of course a "virtual appliance" may be even better: AWS or Google >> Cloud instance set up and ready to go with no on-prem requirements (read, >> "No chance the customer's intern will accidentally pull the plug, but with >> the tradeoffs inherent in relying on public cloud services"). >> >> >> -- >> Richard Gaskin >> Fourth World Systems >> Software Design and Development for the Desktop, Mobile, and the Web >> ____________________________________________________________________ >> Ambassador at FourthWorld.com http://www.FourthWorld.com >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> > > From beofonemind at gmail.com Wed Aug 16 17:50:05 2017 From: beofonemind at gmail.com (Tom Glod) Date: Wed, 16 Aug 2017 17:50:05 -0400 Subject: Taking quotes on building LC external for RethinkDB In-Reply-To: References: <0f99b2fd-8d16-531c-43e8-bac1600b1905@fourthworld.com> Message-ID: Also.....for anyone who is interested...I received a very reasonable and fair quote from Livecode Inc. to develop the driver library. Its going into our spreadsheet and some meetings in September. will keep y'all posted. On Wed, Aug 16, 2017 at 5:47 PM, Tom Glod wrote: > Hi Richard, thanks for sharing more thoughts on this subject... its > interesting to hear about your experience with the IT departments. I am > anticipating just about anything .... > and your message reminded me to literally be ready for all kinds of things. > > Its the beautiful thing about a web app .... no installation..... no > upgrade procedures...... but it comes with its own sore points that a > desktop app does not come with. > > Though we absolutely had to make ours offline first..... we are definitely > building a cloud service asap so that we can have the convenience of the > web app with the power of a lc desktop app. > > the plan for cloud service is to still use desktop application, and only > store files and databases on the server..... no seperate web interface. so > we are lucky in that department.....aws will give us everything we'll need > to host our customer's data > > i think that will give us the best of both worlds. > > Thanks again, you gave me some more food for thought as we ramp up to b2b > sales here. > > On Wed, Aug 16, 2017 at 5:23 PM, Tom Glod wrote: > >> Hi Richard, thanks for sharing more thoughts on this subject... its >> interesting to hear about your experience with the IT departments. I am >> anticipating just about anything .... >> and your message reminded me to literally be ready for all kinds of >> things. >> >> Its the beautiful thing about a web app .... no installation..... no >> upgrade procedures...... but it comes with its own sore points that a >> desktop app does not come with. >> >> Though we absolutely had to make ours offline first..... we are >> definitely building a cloud service asap so that we can have the >> convenience of the web app with the power of a lc desktop app. >> >> the plan for cloud service is to still use desktop application, and only >> store files and databases on the server..... no seperate web interface. so >> we are lucky in that department.....aws will give us everything we'll need >> to host our customer's data >> >> i think that will give us the best of both worlds. >> >> Thanks again, you gave me some more food for thought as we ramp up to b2b >> sales here. >> >> >> >> On Tue, Aug 8, 2017 at 1:31 PM, Richard Gaskin via use-livecode < >> use-livecode at lists.runrev.com> wrote: >> >>> Tom Glod wrote: >>> >>> > The plan so far is to work with the IT dept (guy or gal) and help them >>> > to set up safely and securely based on their particular requirements. >>> >>> No disrespect to IT staff keeping businesses running safely, but FWUW >>> the main reason we ported one of our apps from native to web-only was to >>> bypass IT departments. >>> >>> Many of my friends work in IT so I appreciate what they're up against, >>> but man oh man the lengthy conversation we'd have with IT managers. We >>> worked really hard to make the app as self-contained and firewall-friendly >>> as possible, and our setup was so simple the one-page Installation Guide >>> really only needed to be one sentence ("Copy this folder to a shared >>> drive"). But no IT person would believe how easy it was so we padded it >>> with extra verbage and a diagram. And even then we got countless requests >>> for meetings and conference calls, questions about DLL requirements we >>> didn't have, firewall settings we don't need, and more. >>> >>> Ultimately we found we were spending more time on the phone with IT than >>> we were with customers. >>> >>> Moving the product to the web bypassed that conversation entirely, >>> allowing much simpler conversations about features with prospects and about >>> value with managers. Never had another IT conference call again. >>> >>> Not all products lend themselves to the web, of course. In our case the >>> product was primarily content, with minimal interactivity, so it was a good >>> fit. Good enough to eventually lead to acquisition of that company. >>> >>> I'm familiar with your app so I don't expect the web will be as easy an >>> option, if practical at all. >>> >>> Just budget time for pre-sales support, and time spent on an >>> Installation Guide for IT is probably time well spent (at least much better >>> than not having a thorough one). Be willing to revise it regularly as you >>> learn new concerns IT departments share. >>> >>> >>> > Never considered providing our own boxes..... but i might think about >>> > it now. >>> > There'd be an increased cost, but decreased costs elsewhere. Decisions >>> > Decisions..... >>> > >>> > thanks for suggestion. >>> >>> Appliances are probably a lot less attractive for businesses large >>> enough to have dedicated IT staff. But for many SMBs they may be quite >>> useful. >>> >>> The hardware needed for servers is usually much more modest than a >>> client desktop needs, so hard cost is low (small form factor barebones can >>> provide great value, not just in hardware cost but also in low energy >>> consumption - lean green machines). >>> >>> The bigger expense is setup and testing, but if you set up a custom ISO >>> with everything you need pre-installed you can cut that time tremendously. >>> >>> With remote admin you can keep it current and perform troubleshooting as >>> needed, covered with a support subscription as a supplemental revenue >>> stream. >>> >>> And of course a "virtual appliance" may be even better: AWS or Google >>> Cloud instance set up and ready to go with no on-prem requirements (read, >>> "No chance the customer's intern will accidentally pull the plug, but with >>> the tradeoffs inherent in relying on public cloud services"). >>> >>> >>> -- >>> Richard Gaskin >>> Fourth World Systems >>> Software Design and Development for the Desktop, Mobile, and the Web >>> ____________________________________________________________________ >>> Ambassador at FourthWorld.com http://www.FourthWorld.com >>> >>> _______________________________________________ >>> use-livecode mailing list >>> use-livecode at lists.runrev.com >>> Please visit this url to subscribe, unsubscribe and manage your >>> subscription preferences: >>> http://lists.runrev.com/mailman/listinfo/use-livecode >>> >> >> > From terry.judd at unimelb.edu.au Wed Aug 16 19:04:27 2017 From: terry.judd at unimelb.edu.au (Terry Judd) Date: Wed, 16 Aug 2017 23:04:27 +0000 Subject: Couple of questions about the browser widget In-Reply-To: References: <89AC9827-1F7C-4790-BD0C-C97B4F21CE70@hyperhh.de> <9E2E51FE-9810-4BA7-BCE1-5E1F61B20477@unimelb.edu.au> Message-ID: Hi Mike - I don?t think it?s an issue in my case. I?m displaying pretty simple pages ? just text and images, no columns or fancy layouts. Nothing that is displayed will be wider than the browser (images are resized before being loaded to ensure this) so no horizontal scrolling will be required under any circumstances. Anyway, you don?t seem to be able to toggle either scrollbar off either using the property inspector or via script, even when the browser widget has no content (no htmlText or url assigned). Given that I?m setting the height of the widget so that it doesn?t need to scroll vertically and horizontal scrolling is irrelevant then the inability to toggle these properties isn?t a problem. Still, it seems like a bug? Interestingly, under 8.1.4 both vScrollbar and hScrollbar are checked in the property inspector (and stuck like that) while on 8.1.6 they are both unchecked (and stuck like that). Regards, Terry... On 17/08/2017 6:33 am, "use-livecode on behalf of Mike Bonner via use-livecode" wrote: hmm. If the width of the page fits without need of a horizontal scrollbar, it should disappear, so maybe your code should check to see if its false first, then add the 23 pixels or not, depending. (I also can't test to see if its 23 on every platform at the moment) I'm wondering if you're just not allowed to set a bar to false when the content is too wide or high and vice versa. On Wed, Aug 16, 2017 at 2:10 PM, Terry Judd via use-livecode < use-livecode at lists.runrev.com> wrote: > Perfect! Interesting about the hScrollbar setting ? I seem to be unable to > deselect that (or vScrollbar) in the property editor ? or change them via > script (both are stuck on true). > > Thanks, > > Terry... > > On 16/08/2017 11:49 pm, "use-livecode on behalf of Mike Bonner via > use-livecode" use-livecode at lists.runrev.com> wrote: > > Ty HH and jonathan, its working now for me. > > Terry: > I have this in my temporary file.. > > Hi! > > > > > > It loads my picture fine, and (now that i have capitalization right.. > DOH) > it sends a livecode message called lcHeight which is in the > javascripthandlers for the widget it loads into. > > For the handler in LC I have this.. > > command lcHeight pHeight > set the height of widget 1 to pHeight + 23 -- +23 because I have > the > horizontal scrollbar showing > set the topleft of widget 1 to the topleft of this card > end lcHeight > > On Wed, Aug 16, 2017 at 6:42 AM, Terry Judd via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > Thanks hh that's really helpful stuff. Thanks also to Jonathan and > Mike. > > > > Regards, > > > > Terry... > > > > Sent from my iPad > > > > > On 16 Aug 2017, at 9:00 pm, hh via use-livecode < > > use-livecode at lists.runrev.com> wrote: > > > > > > Additional to Jonathan's instructions. > > > > > > Basic: > > > http://forums.livecode.com/viewtopic.php?f=7&t=29589 > > > > > > Medium: Get MouseEvents from browser widget > > > http://forums.livecode.com/viewtopic.php?p=154496#p154496 > > > > > > and others there (7 Browser Widget usage examples) ... > > > > > > _______________________________________________ > > > use-livecode mailing list > > > use-livecode at lists.runrev.com > > > Please visit this url to subscribe, unsubscribe and manage your > > subscription preferences: > > > http://lists.runrev.com/mailman/listinfo/use-livecode > > > > > > > > > _______________________________________________ > > use-livecode mailing list > > use-livecode at lists.runrev.com > > Please visit this url to subscribe, unsubscribe and manage your > > subscription preferences: > > http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode From bonnmike at gmail.com Wed Aug 16 19:23:49 2017 From: bonnmike at gmail.com (Mike Bonner) Date: Wed, 16 Aug 2017 17:23:49 -0600 Subject: Couple of questions about the browser widget In-Reply-To: References: <89AC9827-1F7C-4790-BD0C-C97B4F21CE70@hyperhh.de> <9E2E51FE-9810-4BA7-BCE1-5E1F61B20477@unimelb.edu.au> Message-ID: Strange. when I run my little test stack and set the height of the browser + the 23 extra pixels, the vertical scrollbar goes away on its own. Gotta get my other machines back up and running so I can test on them. Why there would be scrollbars for a page with nothing in it is beyond me. Out of curiosity.. If you nudge the width and height of the widget when empty, do the scrollbars go away? On my system (win 10, and lc 9 dp8) I have no control over whether the scrollbars appear or not either, other than sizing the widget to the point where all the content fits. But they do poof for me when the sizes are right. The checkboxes for me on 9 dp8 are checked. One can uncheck them but it doesn't take. I do think the widget just lets webkit handle it the default way.. Scrollbars as needed. But if that's the case, having check-boxes in the inspector that do nothing would be a bug of a type also. On Wed, Aug 16, 2017 at 5:04 PM, Terry Judd via use-livecode < use-livecode at lists.runrev.com> wrote: > Hi Mike - I don?t think it?s an issue in my case. I?m displaying pretty > simple pages ? just text and images, no columns or fancy layouts. Nothing > that is displayed will be wider than the browser (images are resized before > being loaded to ensure this) so no horizontal scrolling will be required > under any circumstances. > > Anyway, you don?t seem to be able to toggle either scrollbar off either > using the property inspector or via script, even when the browser widget > has no content (no htmlText or url assigned). Given that I?m setting the > height of the widget so that it doesn?t need to scroll vertically and > horizontal scrolling is irrelevant then the inability to toggle these > properties isn?t a problem. Still, it seems like a bug? Interestingly, > under 8.1.4 both vScrollbar and hScrollbar are checked in the property > inspector (and stuck like that) while on 8.1.6 they are both unchecked (and > stuck like that). > > Regards, > > Terry... > > On 17/08/2017 6:33 am, "use-livecode on behalf of Mike Bonner via > use-livecode" use-livecode at lists.runrev.com> wrote: > > hmm. If the width of the page fits without need of a horizontal > scrollbar, > it should disappear, so maybe your code should check to see if its > false > first, then add the 23 pixels or not, depending. (I also can't test to > see > if its 23 on every platform at the moment) > > I'm wondering if you're just not allowed to set a bar to false when the > content is too wide or high and vice versa. > > On Wed, Aug 16, 2017 at 2:10 PM, Terry Judd via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > Perfect! Interesting about the hScrollbar setting ? I seem to be > unable to > > deselect that (or vScrollbar) in the property editor ? or change > them via > > script (both are stuck on true). > > > > Thanks, > > > > Terry... > > > > On 16/08/2017 11:49 pm, "use-livecode on behalf of Mike Bonner via > > use-livecode" > use-livecode at lists.runrev.com> wrote: > > > > Ty HH and jonathan, its working now for me. > > > > Terry: > > I have this in my temporary file.. > > > > Hi! > > > > > > > > > > > > It loads my picture fine, and (now that i have capitalization > right.. > > DOH) > > it sends a livecode message called lcHeight which is in the > > javascripthandlers for the widget it loads into. > > > > For the handler in LC I have this.. > > > > command lcHeight pHeight > > set the height of widget 1 to pHeight + 23 -- +23 because I > have > > the > > horizontal scrollbar showing > > set the topleft of widget 1 to the topleft of this card > > end lcHeight > > > > On Wed, Aug 16, 2017 at 6:42 AM, Terry Judd via use-livecode < > > use-livecode at lists.runrev.com> wrote: > > > > > Thanks hh that's really helpful stuff. Thanks also to Jonathan > and > > Mike. > > > > > > Regards, > > > > > > Terry... > > > > > > Sent from my iPad > > > > > > > On 16 Aug 2017, at 9:00 pm, hh via use-livecode < > > > use-livecode at lists.runrev.com> wrote: > > > > > > > > Additional to Jonathan's instructions. > > > > > > > > Basic: > > > > http://forums.livecode.com/viewtopic.php?f=7&t=29589 > > > > > > > > Medium: Get MouseEvents from browser widget > > > > http://forums.livecode.com/viewtopic.php?p=154496#p154496 > > > > > > > > and others there (7 Browser Widget usage examples) ... > > > > > > > > _______________________________________________ > > > > use-livecode mailing list > > > > use-livecode at lists.runrev.com > > > > Please visit this url to subscribe, unsubscribe and manage > your > > > subscription preferences: > > > > http://lists.runrev.com/mailman/listinfo/use-livecode > > > > > > > > > > > > > _______________________________________________ > > > use-livecode mailing list > > > use-livecode at lists.runrev.com > > > Please visit this url to subscribe, unsubscribe and manage your > > > subscription preferences: > > > http://lists.runrev.com/mailman/listinfo/use-livecode > > > > > _______________________________________________ > > use-livecode mailing list > > use-livecode at lists.runrev.com > > Please visit this url to subscribe, unsubscribe and manage your > > subscription preferences: > > http://lists.runrev.com/mailman/listinfo/use-livecode > > > > > > > > _______________________________________________ > > use-livecode mailing list > > use-livecode at lists.runrev.com > > Please visit this url to subscribe, unsubscribe and manage your > > subscription preferences: > > http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From terry.judd at unimelb.edu.au Wed Aug 16 19:55:25 2017 From: terry.judd at unimelb.edu.au (Terry Judd) Date: Wed, 16 Aug 2017 23:55:25 +0000 Subject: Couple of questions about the browser widget In-Reply-To: References: <89AC9827-1F7C-4790-BD0C-C97B4F21CE70@hyperhh.de> <9E2E51FE-9810-4BA7-BCE1-5E1F61B20477@unimelb.edu.au> Message-ID: Yeah, there?s no problem with the browser display here either ? it sizes correctly and no scrollbars are displayed. The issue is purely to do with the checkboxes in the property inspector being non-responsive. I?ll bug report it when I have a bit of spare time tomorrow. Terry... On 17/08/2017 9:23 am, "use-livecode on behalf of Mike Bonner via use-livecode" wrote: Strange. when I run my little test stack and set the height of the browser + the 23 extra pixels, the vertical scrollbar goes away on its own. Gotta get my other machines back up and running so I can test on them. Why there would be scrollbars for a page with nothing in it is beyond me. Out of curiosity.. If you nudge the width and height of the widget when empty, do the scrollbars go away? On my system (win 10, and lc 9 dp8) I have no control over whether the scrollbars appear or not either, other than sizing the widget to the point where all the content fits. But they do poof for me when the sizes are right. The checkboxes for me on 9 dp8 are checked. One can uncheck them but it doesn't take. I do think the widget just lets webkit handle it the default way.. Scrollbars as needed. But if that's the case, having check-boxes in the inspector that do nothing would be a bug of a type also. On Wed, Aug 16, 2017 at 5:04 PM, Terry Judd via use-livecode < use-livecode at lists.runrev.com> wrote: > Hi Mike - I don?t think it?s an issue in my case. I?m displaying pretty > simple pages ? just text and images, no columns or fancy layouts. Nothing > that is displayed will be wider than the browser (images are resized before > being loaded to ensure this) so no horizontal scrolling will be required > under any circumstances. > > Anyway, you don?t seem to be able to toggle either scrollbar off either > using the property inspector or via script, even when the browser widget > has no content (no htmlText or url assigned). Given that I?m setting the > height of the widget so that it doesn?t need to scroll vertically and > horizontal scrolling is irrelevant then the inability to toggle these > properties isn?t a problem. Still, it seems like a bug? Interestingly, > under 8.1.4 both vScrollbar and hScrollbar are checked in the property > inspector (and stuck like that) while on 8.1.6 they are both unchecked (and > stuck like that). > > Regards, > > Terry... > > On 17/08/2017 6:33 am, "use-livecode on behalf of Mike Bonner via > use-livecode" use-livecode at lists.runrev.com> wrote: > > hmm. If the width of the page fits without need of a horizontal > scrollbar, > it should disappear, so maybe your code should check to see if its > false > first, then add the 23 pixels or not, depending. (I also can't test to > see > if its 23 on every platform at the moment) > > I'm wondering if you're just not allowed to set a bar to false when the > content is too wide or high and vice versa. > > On Wed, Aug 16, 2017 at 2:10 PM, Terry Judd via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > Perfect! Interesting about the hScrollbar setting ? I seem to be > unable to > > deselect that (or vScrollbar) in the property editor ? or change > them via > > script (both are stuck on true). > > > > Thanks, > > > > Terry... > > > > On 16/08/2017 11:49 pm, "use-livecode on behalf of Mike Bonner via > > use-livecode" > use-livecode at lists.runrev.com> wrote: > > > > Ty HH and jonathan, its working now for me. > > > > Terry: > > I have this in my temporary file.. > > > > Hi! > > > > > > > > > > > > It loads my picture fine, and (now that i have capitalization > right.. > > DOH) > > it sends a livecode message called lcHeight which is in the > > javascripthandlers for the widget it loads into. > > > > For the handler in LC I have this.. > > > > command lcHeight pHeight > > set the height of widget 1 to pHeight + 23 -- +23 because I > have > > the > > horizontal scrollbar showing > > set the topleft of widget 1 to the topleft of this card > > end lcHeight > > > > On Wed, Aug 16, 2017 at 6:42 AM, Terry Judd via use-livecode < > > use-livecode at lists.runrev.com> wrote: > > > > > Thanks hh that's really helpful stuff. Thanks also to Jonathan > and > > Mike. > > > > > > Regards, > > > > > > Terry... > > > > > > Sent from my iPad > > > > > > > On 16 Aug 2017, at 9:00 pm, hh via use-livecode < > > > use-livecode at lists.runrev.com> wrote: > > > > > > > > Additional to Jonathan's instructions. > > > > > > > > Basic: > > > > http://forums.livecode.com/viewtopic.php?f=7&t=29589 > > > > > > > > Medium: Get MouseEvents from browser widget > > > > http://forums.livecode.com/viewtopic.php?p=154496#p154496 > > > > > > > > and others there (7 Browser Widget usage examples) ... > > > > > > > > _______________________________________________ > > > > use-livecode mailing list > > > > use-livecode at lists.runrev.com > > > > Please visit this url to subscribe, unsubscribe and manage > your > > > subscription preferences: > > > > http://lists.runrev.com/mailman/listinfo/use-livecode > > > > > > > > > > > > > _______________________________________________ > > > use-livecode mailing list > > > use-livecode at lists.runrev.com > > > Please visit this url to subscribe, unsubscribe and manage your > > > subscription preferences: > > > http://lists.runrev.com/mailman/listinfo/use-livecode > > > > > _______________________________________________ > > use-livecode mailing list > > use-livecode at lists.runrev.com > > Please visit this url to subscribe, unsubscribe and manage your > > subscription preferences: > > http://lists.runrev.com/mailman/listinfo/use-livecode > > > > > > > > _______________________________________________ > > use-livecode mailing list > > use-livecode at lists.runrev.com > > Please visit this url to subscribe, unsubscribe and manage your > > subscription preferences: > > http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode From tfabacher at gmail.com Thu Aug 17 09:35:28 2017 From: tfabacher at gmail.com (Todd Fabacher) Date: Thu, 17 Aug 2017 09:35:28 -0400 Subject: Using Touch ID with Keychain and LocalAuthentication Message-ID: Hello Mark or Monte or any knowledgeable soul, We are working with the United Nations to create their first LMS mobile App. The problem is they are security freaks. It took their hackers about 4 hours to send me screen shots of the encryption key I scripted in LiveCode and compiled for iOS. Normally we don't put code like this in our apps, but they are insisting to use the LocalAuthentication with the TouchID to unlock the App. LocalAuthentication, does not actually store any values, it just validates that the fingerprint matches. The MergeExt mergLA http://mergext.com/home/mergla/ does the trick - well done. The problem is how do I store a unique key to retrieve the UN/PW on the server or even just store the values on the local device? I can use encryption, they can read the key from code and have said it is NOT an option. So, my good friends at the UN have suggested that I use the iOS Keychain functionality. They have provided a sample of what Apple is doing and suggest that LiveCode be able to do the same. Is there any way to utilize the Keychain functionality on the device? WDC session video and presentation: You will need Safri to watch the video: https://developer.apple.com/videos/play/wwdc2014/711/ Here is their Code: https://developer.apple.com/library/content/samplecode/KeychainTouchID/Introduction/Intro.html#//apple_ref/doc/uid/TP40014530-Intro-DontLinkElementID_2 So my goal is to store a token or UN/PW in the iOS Keychain to pull it out using LocalAuthentication. I think many of LC app developers must be facing the same problem. --Todd From MikeKerner at roadrunner.com Thu Aug 17 10:07:24 2017 From: MikeKerner at roadrunner.com (Mike Kerner) Date: Thu, 17 Aug 2017 10:07:24 -0400 Subject: Using Touch ID with Keychain and LocalAuthentication In-Reply-To: References: Message-ID: Why not open a session with your server and have it transmit a key that is unique to the device/user? On Thu, Aug 17, 2017 at 9:35 AM, Todd Fabacher via use-livecode < use-livecode at lists.runrev.com> wrote: > Hello Mark or Monte or any knowledgeable soul, > > > We are working with the United Nations to create their first LMS mobile > App. The problem is they are security freaks. It took their hackers about 4 > hours to send me screen shots of the encryption key I scripted in LiveCode > and compiled for iOS. Normally we don't put code like this in our apps, but > they are insisting to use the LocalAuthentication with the TouchID to > unlock the App. > > LocalAuthentication, does not actually store any values, it just validates > that the fingerprint matches. The MergeExt mergLA > http://mergext.com/home/mergla/ does the trick - well done. > > The problem is how do I store a unique key to retrieve the UN/PW on the > server or even just store the values on the local device? I can use > encryption, they can read the key from code and have said it is NOT an > option. So, my good friends at the UN have suggested that I use the iOS > Keychain functionality. > > They have provided a sample of what Apple is doing and suggest that > LiveCode be able to do the same. Is there any way to utilize the Keychain > functionality on the device? > > WDC session video and presentation: You will need Safri to watch the video: > https://developer.apple.com/videos/play/wwdc2014/711/ > > Here is their Code: > https://developer.apple.com/library/content/samplecode/ > KeychainTouchID/Introduction/Intro.html#//apple_ref/doc/ > uid/TP40014530-Intro-DontLinkElementID_2 > > So my goal is to store a token or UN/PW in the iOS Keychain to pull it out > using LocalAuthentication. I think many of LC app developers must be facing > the same problem. > > --Todd > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > -- On the first day, God created the heavens and the Earth On the second day, God created the oceans. On the third day, God put the animals on hold for a few hours, and did a little diving. And God said, "This is good." From monte at appisle.net Thu Aug 17 16:24:03 2017 From: monte at appisle.net (Monte Goulding) Date: Fri, 18 Aug 2017 06:24:03 +1000 Subject: Using Touch ID with Keychain and LocalAuthentication In-Reply-To: References: Message-ID: Hi Todd Reading and writing to the keychain is not very complicated but you will need an external or if you are using the latest versions of LC 9 then it can be done with the objective-c FFI from infinite LiveCode. Probably best to contact Business Services if you are in a hurry. Cheers Monte > On 17 Aug 2017, at 11:35 pm, Todd Fabacher via use-livecode wrote: > > Hello Mark or Monte or any knowledgeable soul, > > > We are working with the United Nations to create their first LMS mobile > App. The problem is they are security freaks. It took their hackers about 4 > hours to send me screen shots of the encryption key I scripted in LiveCode > and compiled for iOS. Normally we don't put code like this in our apps, but > they are insisting to use the LocalAuthentication with the TouchID to > unlock the App. > > LocalAuthentication, does not actually store any values, it just validates > that the fingerprint matches. The MergeExt mergLA > http://mergext.com/home/mergla/ does the trick - well done. > > The problem is how do I store a unique key to retrieve the UN/PW on the > server or even just store the values on the local device? I can use > encryption, they can read the key from code and have said it is NOT an > option. So, my good friends at the UN have suggested that I use the iOS > Keychain functionality. > > They have provided a sample of what Apple is doing and suggest that > LiveCode be able to do the same. Is there any way to utilize the Keychain > functionality on the device? > > WDC session video and presentation: You will need Safri to watch the video: > https://developer.apple.com/videos/play/wwdc2014/711/ > > Here is their Code: > https://developer.apple.com/library/content/samplecode/KeychainTouchID/Introduction/Intro.html#//apple_ref/doc/uid/TP40014530-Intro-DontLinkElementID_2 > > So my goal is to store a token or UN/PW in the iOS Keychain to pull it out > using LocalAuthentication. I think many of LC app developers must be facing > the same problem. > > --Todd > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From dan at clearvisiontech.com Thu Aug 17 18:43:09 2017 From: dan at clearvisiontech.com (Dan Friedman) Date: Thu, 17 Aug 2017 22:43:09 +0000 Subject: Mobile: Pinch to resize and rotate? Message-ID: <32014158-5D11-44E3-9D95-7D8DCAD79425@clearvisiontech.com> Howdy! Does anyone have a [mobile] routine that allows you to pinch to resize an image AND rotate it? If you do, would you like to share? :) Your would-be-ever-so-grateful buddy, -Dan From jonathandlynch at gmail.com Thu Aug 17 19:24:21 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Thu, 17 Aug 2017 19:24:21 -0400 Subject: Developing first on android Message-ID: <5E28F0C6-11ED-4241-9ADF-CF5E073739F1@gmail.com> I really appreciate something Jacqueline said in her presentation. If we start with Android deployment first, we can be pretty sure it will work on iOS. How do you guys feel about this? Sent from my iPhone From MikeKerner at roadrunner.com Thu Aug 17 21:31:50 2017 From: MikeKerner at roadrunner.com (Mike Kerner) Date: Thu, 17 Aug 2017 21:31:50 -0400 Subject: Developing first on android In-Reply-To: <5E28F0C6-11ED-4241-9ADF-CF5E073739F1@gmail.com> References: <5E28F0C6-11ED-4241-9ADF-CF5E073739F1@gmail.com> Message-ID: There might be another way to skin this cat. I liked what Pomegranate said, which would also be a way to make apps even more levure/git-friendly, and would, I think, solve some of the Android layout issues that she was discussing - every object is created by a script, instead of using the LC IDE to do it. I've been thinking of developing a deconstructor to use with Levure. The idea is that you would lay out the objects, but then the deconstructor would pull all the properties of each object, put them in a YML, JSON, or other similar file, and then they would be built in the app by script, when needed. That may give you additional flexibility when doing Android or ios because you could build your own geometry manager for mobile. The other thing that I've been thinking about was doing the layouts in a tool like Sketch (which would also mean that I could use some of the interface design service companies like uichest and pixelbuddha more easily). That might also make the Android interface simpler to build and manipulate, but I haven't played with the idea enough to really understand it, yet. On Thu, Aug 17, 2017 at 7:24 PM, Jonathan Lynch via use-livecode < use-livecode at lists.runrev.com> wrote: > I really appreciate something Jacqueline said in her presentation. If we > start with Android deployment first, we can be pretty sure it will work on > iOS. > > How do you guys feel about this? > > Sent from my iPhone > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > -- On the first day, God created the heavens and the Earth On the second day, God created the oceans. On the third day, God put the animals on hold for a few hours, and did a little diving. And God said, "This is good." From brahma at hindu.org Fri Aug 18 01:03:15 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Fri, 18 Aug 2017 05:03:15 +0000 Subject: Applescript Fails in Standalone on Mac Built with 8.1.6 Message-ID: OK got bit again by this one We do a lot of of in-house production tools that require our big server on the LAN to be mounted. For years I just kept a custom prop in these stacks uMountServer tell application "Finder" mount volume "afp://###ServerIP###/###Volume###" as user name "###ServerUser###" with password "###ServerPassword###" end tell different stacks will prompt users for IP, USER, PWD or in some cases I will hard wire these into the startup script. This *always* works in my old apps that were made with "only Gawd knows what old version of LC <7" standalones made long time ago. but now, in 8.1.6 I can set this up in the IDE, the serve ron the LAN mounts as expected, but when I make a standalone, it fails. I'm looking through all the inclusions and I don't see any external that I need to check for execution of do tScript as Applescript this, which, as said, works find in the IDE (actuall log in creds replaced here for security) on mountServer if not (there is a folder (the uServerPath of this stack)) then -- set the itemdel to "/" -- put item 3 of the uServerPath of this stack into tVolume ShowStatusMsg ("Mounting Server..."), true put the uMountServer of this stack into tScript replace "###ServerIP###" with (the uServerIP of this stack) in tScript replace "###Volume###" with "-------" in tScript replace "###ServerUser###" with "--------" in tScript replace "###ServerPassword###" with "-------" in tScript # put tScript -- check to see that we are getting the right login set up ? do tScript as applescript end if end mountServer From brahma at hindu.org Fri Aug 18 01:06:55 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Fri, 18 Aug 2017 05:06:55 +0000 Subject: Applescript Fails in Standalone on Mac Built with 8.1.6 In-Reply-To: References: Message-ID: <9CC41777-A581-4957-B06B-6598E3C599C2@hindu.org> I added some logging on the card and in the standalone we see this do tScript as applescript put the result into pMessage ShowStatusMsg pMessage, true, true returns "execution error" So, why does apple script return execution error when run from 8.1.6 standalones? On 8/17/17, 7:03 PM, "use-livecode on behalf of Sannyasin Brahmanathaswami via use-livecode" wrote: OK got bit again by this one We do a lot of of in-house production tools that require our big server on the LAN to be mounted. For years I just kept a custom prop in these stacks uMountServer tell application "Finder" mount volume "afp://###ServerIP###/###Volume###" as user name "###ServerUser###" with password "###ServerPassword###" end tell different stacks will prompt users for IP, USER, PWD or in some cases I will hard wire these into the startup script. This *always* works in my old apps that were made with "only Gawd knows what old version of LC <7" standalones made long time ago. but now, in 8.1.6 I can set this up in the IDE, the serve ron the LAN mounts as expected, but when I make a standalone, it fails. I'm looking through all the inclusions and I don't see any external that I need to check for execution of do tScript as Applescript this, which, as said, works find in the IDE (actuall log in creds replaced here for security) on mountServer if not (there is a folder (the uServerPath of this stack)) then -- set the itemdel to "/" -- put item 3 of the uServerPath of this stack into tVolume ShowStatusMsg ("Mounting Server..."), true put the uMountServer of this stack into tScript replace "###ServerIP###" with (the uServerIP of this stack) in tScript replace "###Volume###" with "-------" in tScript replace "###ServerUser###" with "--------" in tScript replace "###ServerPassword###" with "-------" in tScript # put tScript -- check to see that we are getting the right login set up ? do tScript as applescript end if end mountServer _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode From ahsoftware at sonic.net Fri Aug 18 01:42:48 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Thu, 17 Aug 2017 22:42:48 -0700 Subject: Applescript Fails in Standalone on Mac Built with 8.1.6 In-Reply-To: <9CC41777-A581-4957-B06B-6598E3C599C2@hindu.org> References: <9CC41777-A581-4957-B06B-6598E3C599C2@hindu.org> Message-ID: <0b7adf5b-5160-dd34-b8df-64d09d3f9347@sonic.net> On 08/17/2017 10:06 PM, Sannyasin Brahmanathaswami via use-livecode wrote: > So, why does apple script return execution error when run from 8.1.6 standalones? Looks like the bugfix is on the way: http://quality.livecode.com/show_bug.cgi?id=16029 -- Mark Wieder ahsoftware at gmail.com From jonathandlynch at gmail.com Fri Aug 18 06:22:37 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Fri, 18 Aug 2017 06:22:37 -0400 Subject: Developing first on android In-Reply-To: References: <5E28F0C6-11ED-4241-9ADF-CF5E073739F1@gmail.com> Message-ID: I am not too worried about layout. I make extensive setlayout scripts to adjust to all screen sizes. But it seems like Android is the pickiest platform for other reasons as well, so why not start there first? After I get Augmented Earth to work fully on Android, I think I am going to make future improvements starting on Android first. I got a lot of good tips from her presentation - so thank you Jacqueline:) Sent from my iPhone > On Aug 17, 2017, at 9:31 PM, Mike Kerner via use-livecode wrote: > > There might be another way to skin this cat. I liked what Pomegranate said, > which would also be a way to make apps even more levure/git-friendly, and > would, I think, solve some of the Android layout issues that she was > discussing - every object is created by a script, instead of using the LC > IDE to do it. I've been thinking of developing a deconstructor to use with > Levure. The idea is that you would lay out the objects, but then the > deconstructor would pull all the properties of each object, put them in a > YML, JSON, or other similar file, and then they would be built in the app > by script, when needed. That may give you additional flexibility when > doing Android or ios because you could build your own geometry manager for > mobile. > The other thing that I've been thinking about was doing the layouts in a > tool like Sketch (which would also mean that I could use some of the > interface design service companies like uichest and pixelbuddha more > easily). That might also make the Android interface simpler to build and > manipulate, but I haven't played with the idea enough to really > understand it, yet. > > On Thu, Aug 17, 2017 at 7:24 PM, Jonathan Lynch via use-livecode < > use-livecode at lists.runrev.com> wrote: > >> I really appreciate something Jacqueline said in her presentation. If we >> start with Android deployment first, we can be pretty sure it will work on >> iOS. >> >> How do you guys feel about this? >> >> Sent from my iPhone >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> > > > > -- > On the first day, God created the heavens and the Earth > On the second day, God created the oceans. > On the third day, God put the animals on hold for a few hours, > and did a little diving. > And God said, "This is good." > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From toolbook at kestner.de Fri Aug 18 07:58:01 2017 From: toolbook at kestner.de (Tiemo Hollmann TB) Date: Fri, 18 Aug 2017 13:58:01 +0200 Subject: htaccess rewrite rule to https let my apps stop working Message-ID: <000801d31819$3eda2890$bc8e79b0$@kestner.de> Hello, I attached a certificate to our domain and started switching our domain / web from http to https, because of the security alerts of some browsers saying that our site isn't safe. So far so good. Our web hoster recommended to put a rewrite rule into the htaccess to redirect all http calls on https. So far so good. That works fine with all URLs in a browser. BUT all of my LiveCode programs with http:// calls for php programs on my server don't work anymore. I get different errors. I am not good with what is happening behind the scenes of htaccess rewrite rules and have no idea if and what I could do, beside of changing all http calls in my LC programs to https. My thinking was, that the rewrite rule would just switch each http call to https on the server, but keeps finding all html and php files. That works obviously fine with all URLs in a browser. But why doesn't my LC program likes that rewriting? The PHP programs should be found the same with https and should return the wanted value as with http - or not? How is LiveCode affected by this rewrite? I can't just change all URLs in all my LC programs from http to https, because my customers have lots of old version of my programs out there, which are not anymore maintained, which were created with any very old LC version I don't know anymore, etc. Any light on what is going wrong to my LC URL calls and if there is anything I can do is highly appreciated. Tiemo From mark at livecode.com Fri Aug 18 08:15:11 2017 From: mark at livecode.com (Mark Waddingham) Date: Fri, 18 Aug 2017 14:15:11 +0200 Subject: htaccess rewrite rule to https let my apps stop working In-Reply-To: <000801d31819$3eda2890$bc8e79b0$@kestner.de> References: <000801d31819$3eda2890$bc8e79b0$@kestner.de> Message-ID: On 2017-08-18 13:58, Tiemo Hollmann TB via use-livecode wrote: > Hello, > > I attached a certificate to our domain and started switching our domain > / > web from http to https, because of the security alerts of some browsers > saying that our site isn't safe. So far so good. Our web hoster > recommended > to put a rewrite rule into the htaccess to redirect all http calls on > https. > So far so good. That works fine with all URLs in a browser. I wonder if using a URL redirect, rather than rewrite might work better: https://www.digitalocean.com/community/tutorials/how-to-create-temporary-and-permanent-redirects-with-apache-and-nginx I might be wrong here but I think rewriting just changes the path which apache uses to determine what to return; a redirect causes a 'Redirection' return value to the client so the client can refetch at the (redirected) URL. > I can't just change all URLs in all my LC programs from http to https, > because my customers have lots of old version of my programs out there, > which are not anymore maintained, which were created with any very old > LC > version I don't know anymore, etc. Unless the distributed versions built with old versions of LiveCode were built with HTTPS support built-in then they are very unlikely to work with either a redirect or rewrite. Even if you do a redirect/rewrite on the server, the client has to be able to handle the protocol which the server produces correctly. Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From matthias_livecode_150811 at m-r-d.de Fri Aug 18 08:25:54 2017 From: matthias_livecode_150811 at m-r-d.de (Matthias Rebbe) Date: Fri, 18 Aug 2017 14:25:54 +0200 Subject: htaccess rewrite rule to https let my apps stop working In-Reply-To: <000801d31819$3eda2890$bc8e79b0$@kestner.de> References: <000801d31819$3eda2890$bc8e79b0$@kestner.de> Message-ID: <8C15EE8E-9CFC-4713-BC1E-D5A6758C81D6@m-r-d.de> Hi Tiemo, we are using the following code in the htaccess to redirect http:// request (either with or without www) to https://www.multitronic.de RewriteEngine on RewriteCond %{HTTPS} off RewriteCond %{HTTP_HOST} ^yourdomain.com $ [NC,OR] RewriteCond %{HTTP_HOST} ^www.yourdomain.com $ [NC] RewriteRule (.*) https://www.yourdomain.com/$1 [R=301,L] RewriteCond %{HTTP_HOST} ^yourdomain.com $ [NC] RewriteRule (.*) https://www.yourdomain.com/$1 [R=301,L] if the sample code is mixed up then you?ll find it also here as text file for download https://dl.qck.nu//?dl=sample_htaccess.txt HTH Matthias > Am 18.08.2017 um 13:58 schrieb Tiemo Hollmann TB via use-livecode >: > > Hello, > > I attached a certificate to our domain and started switching our domain / > web from http to https, because of the security alerts of some browsers > saying that our site isn't safe. So far so good. Our web hoster recommended > to put a rewrite rule into the htaccess to redirect all http calls on https. > So far so good. That works fine with all URLs in a browser. > > BUT all of my LiveCode programs with http:// calls for php programs on my > server don't work anymore. I get different errors. > > I am not good with what is happening behind the scenes of htaccess rewrite > rules and have no idea if and what I could do, beside of changing all http > calls in my LC programs to https. My thinking was, that the rewrite rule > would just switch each http call to https on the server, but keeps finding > all html and php files. That works obviously fine with all URLs in a > browser. But why doesn't my LC program likes that rewriting? The PHP > programs should be found the same with https and should return the wanted > value as with http - or not? How is LiveCode affected by this rewrite? > > I can't just change all URLs in all my LC programs from http to https, > because my customers have lots of old version of my programs out there, > which are not anymore maintained, which were created with any very old LC > version I don't know anymore, etc. > > Any light on what is going wrong to my LC URL calls and if there is anything > I can do is highly appreciated. > > Tiemo > > > > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From matthias_livecode_150811 at m-r-d.de Fri Aug 18 08:42:03 2017 From: matthias_livecode_150811 at m-r-d.de (Matthias Rebbe) Date: Fri, 18 Aug 2017 14:42:03 +0200 Subject: htaccess rewrite rule to https let my apps stop working In-Reply-To: <8C15EE8E-9CFC-4713-BC1E-D5A6758C81D6@m-r-d.de> References: <000801d31819$3eda2890$bc8e79b0$@kestner.de> <8C15EE8E-9CFC-4713-BC1E-D5A6758C81D6@m-r-d.de> Message-ID: Hi Tiemo, it?s messed up. Please use the link https://dl.qck.nu//?dl=sample_htaccess.txt to download the textfile. I?ve forgot to mention that you have to replace yourdomain.com with your domain. Matthias > Am 18.08.2017 um 14:25 schrieb Matthias Rebbe via use-livecode >: > > Hi Tiemo, > > we are using the following code in the htaccess to redirect http:// request (either with or without www) to https://www.multitronic.de > > > RewriteEngine on > RewriteCond %{HTTPS} off > RewriteCond %{HTTP_HOST} ^yourdomain.com >$ [NC,OR] > RewriteCond %{HTTP_HOST} ^www.yourdomain.com >$ [NC] > RewriteRule (.*) https://www.yourdomain.com/$1 > [R=301,L] > RewriteCond %{HTTP_HOST} ^yourdomain.com >$ [NC] > RewriteRule (.*) https://www.yourdomain.com/$1 > [R=301,L] > > > if the sample code is mixed up then you?ll find it also here as text file for download > > https://dl.qck.nu//?dl=sample_htaccess.txt > > > > HTH > Matthias > From mark at livecode.com Fri Aug 18 09:15:19 2017 From: mark at livecode.com (Mark Waddingham) Date: Fri, 18 Aug 2017 15:15:19 +0200 Subject: Using '@' to mark pass-by-reference (was Re: synonyms) In-Reply-To: References: <7d93073a-6638-1e54-7323-e753649cc159@researchware.com> <545462d3-2e12-2b2c-c4ae-7fa14a0e9c6e@fourthworld.com> <05156f14-91fc-6868-8c60-9232dd47c237@sonic.net> <86c0b4a9-de0b-4ea5-2d9c-3dca12a43535@tweedly.net> <9fe5dd5d-f421-ff1e-4bfb-0168d05cb174@sonic.net> <0fd5c9dc6c47e910ce7777ca7202e69d@livecode.com> Message-ID: <788ebed80a165db133b5fafbf93c5b2c@livecode.com> On 2017-07-04 17:39, Ben Rubinstein via use-livecode wrote: > May I hijack this thread to have another go at promoting my feature > request for a bit of syntax sugar around parameters which I _think_ > would not have a very deep implementation requirement? > > http://quality.livecode.com/show_bug.cgi?id=8945 It is no longer a hijack - I've changed the name of the thread :) (Although I have hijacked your original post by rewriting the content slightly - I hope you don't mind too much!) The underlying problem here is that whether or not an argument passed to a handler is treated 'by value' or 'by reference' is determined by the handler at the point it is invoked - not at the point it is called (remember that the message path means that one call can end up invoking several handlers as it passes through the message path). This is the only way it can work at the moment because LiveCode Script does not require you to explicitly mark arguments that should be passed by reference - without that bit of information, the only thing you have to 'trust' is whether '@' is present in the signature of the parameter in the handler definition *when that handler is actually executed*. Ben's suggestion (which I think is a really good one - even though I've not commented on it at all up until now - including the original enhancement request) is that we use '@' as an explicit marker for whether an argument should be passed by reference. I can think of at least one other language which has a similar thing - C#. C# has both by-ref and by-value - and it requires 'ref' to be used on arguments to method parameters which are 'by-ref'. It requires this because C# allows method overloading - you can have two methods in a class with the same name as long as their parameters are different: class RefOverloadExample { public void SampleMethod(int i) { } public void SampleMethod(ref int i) { } } Because C# requires 'ref' on arguments it can disambiguate the call to 'SampleMethod' - SampleMethod(tFoo), SampleMethod(ref tFoo). [ For more details about this see https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/ref ] The weak form of the proposal would not require @ before arguments to reference parameters, but would require that it is not present before arguments to value parameters: command myHandler @xRef, pValue end myHandler myHandler tRefVar, tValueVar - fine myHandler @tRefVar, tValueVar - fine myHandler [@]tRefVar, @tValueVar - not fine: passing tValueVar by reference to by-value parameter The strong form of the proposal would require @ before arguments to reference parameters: command myHandler @xRef, pValue end myHandler myHandler tRefVar, tValueVar - not fine: passing tRefVar by value to by-ref parameter myHandler @tRefVar, tValueVar - fine The weak form would still allow you to make the 'accidentally passing the wrong argument to a reference parameter' coding fault, but at least if you used @ consistently then it would catch the 'passing the wrong argument to a value parameter' coding fault. The strong form would eliminate ref-parameter related coding faults entirely. Even in its weak form, there are a few other fringe benefits: - we could allow @ to mean: I know this is a by-ref parameter, but I don't care about what it gets changed to, I just want it to be on input - we could allow 'put x into param(y)' if the y'th argument was marked with '@' - if @ is used consistently then it solves the mismatched reference parameter markings in the message path problem: group: on myHandler @isRef card: on myHandler isRef -- oops, I forgot the '@' > There is a very low risk, in my view, of breaking backwards Ignoring lexical issues (i.e. @ being allowed in an identifier - which is only the case because of the way the parameter list of handlers is parsed - ick!), then the weak form has no backwards-compatibility issues as far as I can see. In terms of the lexical issue, then the change would mean that '@' would become a self-delimiting token - and not be allowed in identifiers. I can't imagine there is any reasonable code out there which uses '@' in identifiers, a bit like "'" is also allowed in identifiers - so changing that is probably 'completely' safe. Indeed, we are already considering removing various characters from the definition of identifier to allow a little more flexibility in the symbols we can use (not that I particularly want to add that many symbols, however I fear that adding a few more is unavoidable if we want to keep the language ergonomic). My general feeling is that the weak form is much better than we have now, but the strong form is actually how things should be. Indeed, as 'by-ref' is a more complicated concept in many ways than 'by-value' it seems fitting that it should be explicitly marked - especially as if we were able to move to the strong form, we would eliminate the by-ref related coding faults - at least insofar as getting a runtime error when we make a mistake (if not a compile-time error - which we could only do for private handlers due to the dynamic nature of the message path). Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From MikeKerner at roadrunner.com Fri Aug 18 09:21:02 2017 From: MikeKerner at roadrunner.com (Mike Kerner) Date: Fri, 18 Aug 2017 09:21:02 -0400 Subject: Using '@' to mark pass-by-reference (was Re: synonyms) In-Reply-To: <788ebed80a165db133b5fafbf93c5b2c@livecode.com> References: <7d93073a-6638-1e54-7323-e753649cc159@researchware.com> <545462d3-2e12-2b2c-c4ae-7fa14a0e9c6e@fourthworld.com> <05156f14-91fc-6868-8c60-9232dd47c237@sonic.net> <86c0b4a9-de0b-4ea5-2d9c-3dca12a43535@tweedly.net> <9fe5dd5d-f421-ff1e-4bfb-0168d05cb174@sonic.net> <0fd5c9dc6c47e910ce7777ca7202e69d@livecode.com> <788ebed80a165db133b5fafbf93c5b2c@livecode.com> Message-ID: So how about trying to make it a little easier to read, and using "->" instead (a 4D way of identifying pointers)? The position of the symbol indicates if we have are referencing or dereferencing. ->a is a reference to a (pointer to a), and a-> is dereferencing a (give me what a is pointing to). On Fri, Aug 18, 2017 at 9:15 AM, Mark Waddingham via use-livecode < use-livecode at lists.runrev.com> wrote: > On 2017-07-04 17:39, Ben Rubinstein via use-livecode wrote: > >> May I hijack this thread to have another go at promoting my feature >> request for a bit of syntax sugar around parameters which I _think_ >> would not have a very deep implementation requirement? >> >> http://quality.livecode.com/show_bug.cgi?id=8945 >> > > It is no longer a hijack - I've changed the name of the thread :) > > (Although I have hijacked your original post by rewriting the content > slightly - I hope you don't mind too much!) > > The underlying problem here is that whether or not an argument passed to a > handler is treated 'by value' or 'by reference' is determined by the > handler at the point it is invoked - not at the point it is called > (remember that the message path means that one call can end up invoking > several handlers as it passes through the message path). > > This is the only way it can work at the moment because LiveCode Script > does not require you to explicitly mark arguments that should be passed by > reference - without that bit of information, the only thing you have to > 'trust' is whether '@' is present in the signature of the parameter in the > handler definition *when that handler is actually executed*. > > Ben's suggestion (which I think is a really good one - even though I've > not commented on it at all up until now - including the original > enhancement request) is that we use '@' as an explicit marker for whether > an argument should be passed by reference. > > I can think of at least one other language which has a similar thing - C#. > C# has both by-ref and by-value - and it requires 'ref' to be used on > arguments to method parameters which are 'by-ref'. It requires this because > C# allows method overloading - you can have two methods in a class with the > same name as long as their parameters are different: > > class RefOverloadExample > { > public void SampleMethod(int i) { } > public void SampleMethod(ref int i) { } > } > > Because C# requires 'ref' on arguments it can disambiguate the call to > 'SampleMethod' - SampleMethod(tFoo), SampleMethod(ref tFoo). > > [ For more details about this see https://docs.microsoft.com/en- > us/dotnet/csharp/language-reference/keywords/ref ] > > The weak form of the proposal would not require @ before arguments to > reference parameters, but would require that it is not present before > arguments to value parameters: > > command myHandler @xRef, pValue > end myHandler > > myHandler tRefVar, tValueVar - fine > myHandler @tRefVar, tValueVar - fine > myHandler [@]tRefVar, @tValueVar - not fine: passing tValueVar by > reference to by-value parameter > > The strong form of the proposal would require @ before arguments to > reference parameters: > > command myHandler @xRef, pValue > end myHandler > > myHandler tRefVar, tValueVar - not fine: passing tRefVar by value to > by-ref parameter > myHandler @tRefVar, tValueVar - fine > > The weak form would still allow you to make the 'accidentally passing the > wrong argument to a reference parameter' coding fault, but at least if you > used @ consistently then it would catch the 'passing the wrong argument to > a value parameter' coding fault. The strong form would eliminate > ref-parameter related coding faults entirely. > > Even in its weak form, there are a few other fringe benefits: > > - we could allow @ to mean: I know this is a by-ref parameter, > but I don't care about what it gets changed to, I just want it to be > on input > - we could allow 'put x into param(y)' if the y'th argument was marked > with '@' > - if @ is used consistently then it solves the mismatched reference > parameter markings in the message path problem: > group: on myHandler @isRef > card: on myHandler isRef -- oops, I forgot the '@' > > There is a very low risk, in my view, of breaking backwards >> > > Ignoring lexical issues (i.e. @ being allowed in an identifier - which is > only the case because of the way the parameter list of handlers is parsed - > ick!), then the weak form has no backwards-compatibility issues as far as I > can see. > > In terms of the lexical issue, then the change would mean that '@' would > become a self-delimiting token - and not be allowed in identifiers. > > I can't imagine there is any reasonable code out there which uses '@' in > identifiers, a bit like "'" is also allowed in identifiers - so changing > that is probably 'completely' safe. Indeed, we are already considering > removing various characters from the definition of identifier to allow a > little more flexibility in the symbols we can use (not that I particularly > want to add that many symbols, however I fear that adding a few more is > unavoidable if we want to keep the language ergonomic). > > My general feeling is that the weak form is much better than we have now, > but the strong form is actually how things should be. Indeed, as 'by-ref' > is a more complicated concept in many ways than 'by-value' it seems fitting > that it should be explicitly marked - especially as if we were able to move > to the strong form, we would eliminate the by-ref related coding faults - > at least insofar as getting a runtime error when we make a mistake (if not > a compile-time error - which we could only do for private handlers due to > the dynamic nature of the message path). > > Warmest Regards, > > Mark. > > -- > Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ > LiveCode: Everyone can create apps > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > -- On the first day, God created the heavens and the Earth On the second day, God created the oceans. On the third day, God put the animals on hold for a few hours, and did a little diving. And God said, "This is good." From toolbook at kestner.de Fri Aug 18 09:23:53 2017 From: toolbook at kestner.de (Tiemo Hollmann TB) Date: Fri, 18 Aug 2017 15:23:53 +0200 Subject: AW: htaccess rewrite rule to https let my apps stop working In-Reply-To: References: <000801d31819$3eda2890$bc8e79b0$@kestner.de> Message-ID: <001a01d31825$3ce0ac10$b6a20430$@kestner.de> Hi Mark, I think the oldest version was build with LC 6.7. As far as I can see that version supports https. Is there any characteristic on the standalone, to identify the engine version used? I will give a redirect a try. Thanks for your ideas Tiemo -----Urspr?ngliche Nachricht----- Von: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] Im Auftrag von Mark Waddingham via use-livecode Gesendet: Freitag, 18. August 2017 14:15 An: How to use LiveCode Cc: Mark Waddingham Betreff: Re: htaccess rewrite rule to https let my apps stop working On 2017-08-18 13:58, Tiemo Hollmann TB via use-livecode wrote: > Hello, > > I attached a certificate to our domain and started switching our > domain / web from http to https, because of the security alerts of > some browsers saying that our site isn't safe. So far so good. Our web > hoster recommended to put a rewrite rule into the htaccess to redirect > all http calls on https. > So far so good. That works fine with all URLs in a browser. I wonder if using a URL redirect, rather than rewrite might work better: https://www.digitalocean.com/community/tutorials/how-to-create-temporary-and -permanent-redirects-with-apache-and-nginx I might be wrong here but I think rewriting just changes the path which apache uses to determine what to return; a redirect causes a 'Redirection' return value to the client so the client can refetch at the (redirected) URL. > I can't just change all URLs in all my LC programs from http to https, > because my customers have lots of old version of my programs out > there, which are not anymore maintained, which were created with any > very old LC version I don't know anymore, etc. Unless the distributed versions built with old versions of LiveCode were built with HTTPS support built-in then they are very unlikely to work with either a redirect or rewrite. Even if you do a redirect/rewrite on the server, the client has to be able to handle the protocol which the server produces correctly. Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode From toolbook at kestner.de Fri Aug 18 09:28:48 2017 From: toolbook at kestner.de (Tiemo Hollmann TB) Date: Fri, 18 Aug 2017 15:28:48 +0200 Subject: AW: htaccess rewrite rule to https let my apps stop working In-Reply-To: References: <000801d31819$3eda2890$bc8e79b0$@kestner.de> <8C15EE8E-9CFC-4713-BC1E-D5A6758C81D6@m-r-d.de> Message-ID: <001b01d31825$ecf56c80$c6e04580$@kestner.de> Hi Matthias, Thanks for your example, I'll give it a try using these Rewrite rules, you could stay with plain http:// URLs in your LC code? And LC doesn't notice the difference and everything works as before? Do you call PHPs on your server? Could there be a difference between html and php calls with return values? Tiemo -----Urspr?ngliche Nachricht----- Von: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] Im Auftrag von Matthias Rebbe via use-livecode Gesendet: Freitag, 18. August 2017 14:42 An: How to use LiveCode Cc: Matthias Rebbe Betreff: Re: htaccess rewrite rule to https let my apps stop working Hi Tiemo, it?s messed up. Please use the link https://dl.qck.nu//?dl=sample_htaccess.txt to download the textfile. I?ve forgot to mention that you have to replace yourdomain.com with your domain. Matthias > Am 18.08.2017 um 14:25 schrieb Matthias Rebbe via use-livecode >: > > Hi Tiemo, > > we are using the following code in the htaccess to redirect http:// > request (either with or without www) to https://www.multitronic.de > > > > RewriteEngine on > RewriteCond %{HTTPS} off > RewriteCond %{HTTP_HOST} ^yourdomain.com > >$ [NC,OR] RewriteCond > %{HTTP_HOST} ^www.yourdomain.com > >$ [NC] > RewriteRule (.*) https://www.yourdomain.com/$1 > > [R=301,L] RewriteCond %{HTTP_HOST} > ^yourdomain.com >$ [NC] RewriteRule (.*) > https://www.yourdomain.com/$1 > > > [R=301,L] > > > if the sample code is mixed up then you?ll find it also here as text > file for download > > https://dl.qck.nu//?dl=sample_htaccess.txt > > > > > > HTH > Matthias > _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode From mark at livecode.com Fri Aug 18 09:48:49 2017 From: mark at livecode.com (Mark Waddingham) Date: Fri, 18 Aug 2017 15:48:49 +0200 Subject: Using '@' to mark pass-by-reference (was Re: synonyms) In-Reply-To: References: <7d93073a-6638-1e54-7323-e753649cc159@researchware.com> <545462d3-2e12-2b2c-c4ae-7fa14a0e9c6e@fourthworld.com> <05156f14-91fc-6868-8c60-9232dd47c237@sonic.net> <86c0b4a9-de0b-4ea5-2d9c-3dca12a43535@tweedly.net> <9fe5dd5d-f421-ff1e-4bfb-0168d05cb174@sonic.net> <0fd5c9dc6c47e910ce7777ca7202e69d@livecode.com> <788ebed80a165db133b5fafbf93c5b2c@livecode.com> Message-ID: <5e44ea9da240d422d33f45919e4c6316@livecode.com> On 2017-08-18 15:21, Mike Kerner via use-livecode wrote: > So how about trying to make it a little easier to read, and using "->" > instead (a 4D way of identifying pointers)? The position of the symbol > indicates if we have are referencing or dereferencing. ->a is a > reference > to a (pointer to a), and a-> is dereferencing a (give me what a is > pointing > to). Two reasons not to: 1) By-Reference parameters are not the same as pointers - in particular, dereferencing is implicit, and referencing is only allowed in the context of passing the parameter. 2) We already have a symbol '@' for marking by-ref parameters in handler signatures, so surely it makes more sense to use that in its directly equivalent position (on sending, as well as receiving). General references (I don't think using the term 'pointer' is appropriate) are a whole different kettle of fish which come with dragons waiting to eat you all over the place... Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From MikeKerner at roadrunner.com Fri Aug 18 09:53:53 2017 From: MikeKerner at roadrunner.com (Mike Kerner) Date: Fri, 18 Aug 2017 09:53:53 -0400 Subject: Using '@' to mark pass-by-reference (was Re: synonyms) In-Reply-To: <5e44ea9da240d422d33f45919e4c6316@livecode.com> References: <7d93073a-6638-1e54-7323-e753649cc159@researchware.com> <545462d3-2e12-2b2c-c4ae-7fa14a0e9c6e@fourthworld.com> <05156f14-91fc-6868-8c60-9232dd47c237@sonic.net> <86c0b4a9-de0b-4ea5-2d9c-3dca12a43535@tweedly.net> <9fe5dd5d-f421-ff1e-4bfb-0168d05cb174@sonic.net> <0fd5c9dc6c47e910ce7777ca7202e69d@livecode.com> <788ebed80a165db133b5fafbf93c5b2c@livecode.com> <5e44ea9da240d422d33f45919e4c6316@livecode.com> Message-ID: I understand the difference. I'm just trying to help with the mental arithmetic. I, and others, I'm sure, will constantly forget where the "@" goes, for instance. On Fri, Aug 18, 2017 at 9:48 AM, Mark Waddingham via use-livecode < use-livecode at lists.runrev.com> wrote: > On 2017-08-18 15:21, Mike Kerner via use-livecode wrote: > >> So how about trying to make it a little easier to read, and using "->" >> instead (a 4D way of identifying pointers)? The position of the symbol >> indicates if we have are referencing or dereferencing. ->a is a reference >> to a (pointer to a), and a-> is dereferencing a (give me what a is >> pointing >> to). >> > > Two reasons not to: > > 1) By-Reference parameters are not the same as pointers - in particular, > dereferencing is implicit, and referencing is only allowed in the context > of passing the parameter. > > 2) We already have a symbol '@' for marking by-ref parameters in handler > signatures, so surely it makes more sense to use that in its directly > equivalent position (on sending, as well as receiving). > > General references (I don't think using the term 'pointer' is appropriate) > are a whole different kettle of fish which come with dragons waiting to eat > you all over the place... > > > Warmest Regards, > > Mark. > > -- > Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ > LiveCode: Everyone can create apps > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > -- On the first day, God created the heavens and the Earth On the second day, God created the oceans. On the third day, God put the animals on hold for a few hours, and did a little diving. And God said, "This is good." From matthias_livecode_150811 at m-r-d.de Fri Aug 18 10:41:12 2017 From: matthias_livecode_150811 at m-r-d.de (Matthias Rebbe) Date: Fri, 18 Aug 2017 16:41:12 +0200 Subject: htaccess rewrite rule to https let my apps stop working In-Reply-To: <001b01d31825$ecf56c80$c6e04580$@kestner.de> References: <000801d31819$3eda2890$bc8e79b0$@kestner.de> <8C15EE8E-9CFC-4713-BC1E-D5A6758C81D6@m-r-d.de> <001b01d31825$ecf56c80$c6e04580$@kestner.de> Message-ID: <80B02AB4-5DFF-4F5F-929B-E2F8A4BCDCE3@m-r-d.de> Hi Tiemo, although i was pretty sure that this works here i?ve checked again. From the message box i called an .lc script which exports db data. I used http:// as prefix and the data was returned w/o a problem. Calling the same url from browser works the same. It isautomatically redirected by the server and the data is returned. We are calling lc and php scripts on our server from our programs to fetch data and all is working. Btw.: Maybe this is of interest for the one or the other. Today we?ve created the first Rapidweaver page which uses a livecode server script for form processing and db access directly in a stack instead of showing that lc script in a frame. I?ve never have thought that this will work. It?s very simple to integrate. > Am 18.08.2017 um 15:28 schrieb Tiemo Hollmann TB via use-livecode : > > Hi Matthias, > Thanks for your example, I'll give it a try > using these Rewrite rules, you could stay with plain http:// URLs in your LC code? And LC doesn't notice the difference and everything works as before? Do you call PHPs on your server? Could there be a difference between html and php calls with return values? > Tiemo > > > -----Urspr?ngliche Nachricht----- > Von: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] Im Auftrag von Matthias Rebbe via use-livecode > Gesendet: Freitag, 18. August 2017 14:42 > An: How to use LiveCode > Cc: Matthias Rebbe > Betreff: Re: htaccess rewrite rule to https let my apps stop working > > Hi Tiemo, > > it?s messed up. > Please use the link > https://dl.qck.nu//?dl=sample_htaccess.txt > to download the textfile. > > I?ve forgot to mention that you have to replace yourdomain.com with your domain. > > Matthias >> Am 18.08.2017 um 14:25 schrieb Matthias Rebbe via use-livecode >: >> >> Hi Tiemo, >> >> we are using the following code in the htaccess to redirect http:// >> request (either with or without www) to https://www.multitronic.de >> > > >> >> RewriteEngine on >> RewriteCond %{HTTPS} off >> RewriteCond %{HTTP_HOST} ^yourdomain.com >> >$ [NC,OR] RewriteCond >> %{HTTP_HOST} ^www.yourdomain.com >> >$ [NC] >> RewriteRule (.*) https://www.yourdomain.com/$1 >> > > [R=301,L] RewriteCond %{HTTP_HOST} >> ^yourdomain.com > >$ [NC] RewriteRule (.*) >> https://www.yourdomain.com/$1 >> > >> [R=301,L] >> >> >> if the sample code is mixed up then you?ll find it also here as text >> file for download >> >> https://dl.qck.nu//?dl=sample_htaccess.txt >> >> > > >> >> >> HTH >> Matthias >> > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From bodine at bodinetraininggames.com Fri Aug 18 10:47:22 2017 From: bodine at bodinetraininggames.com (tbodine) Date: Fri, 18 Aug 2017 07:47:22 -0700 (PDT) Subject: AW: htaccess rewrite rule to https let my apps stop working In-Reply-To: <001a01d31825$3ce0ac10$b6a20430$@kestner.de> References: <000801d31819$3eda2890$bc8e79b0$@kestner.de> <001a01d31825$3ce0ac10$b6a20430$@kestner.de> Message-ID: <1503067642685-4718572.post@n4.nabble.com> T. Had a similar experience while migrating my site to https. What I found was my standalones were missing the revsecurity.dll external. After rebuilding those to include revsecurity.dll, the standalones were able to contact my site and access stacks and other files there without changing my links from http to https, since the htaccess was managing that. Notes: On Windows, that must be at the same level as the standalone exe itself rather than the externals folder. And codesign your externals as well as standalones. HTH, Tom B. -- View this message in context: http://runtime-revolution.278305.n4.nabble.com/htaccess-rewrite-rule-to-https-let-my-apps-stop-working-tp4718561p4718572.html Sent from the Revolution - User mailing list archive at Nabble.com. From ambassador at fourthworld.com Fri Aug 18 10:56:00 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Fri, 18 Aug 2017 07:56:00 -0700 Subject: Developing first on android In-Reply-To: References: Message-ID: Mike Kerner wrote: > There might be another way to skin this cat. I liked what Pomegranate > said, which would also be a way to make apps even more levure/git- > friendly, and would, I think, solve some of the Android layout issues > that she was discussing - every object is created by a script, instead > of using the LC IDE to do it. Who is "Pomegranate" and where was this message? In a quick search of recent posts here I was unable to turn up anything from that user. Was Jonathan's issue specific to layout? I had thought it was a reflection of a somewhat general sense that LC's feature set for Android is in some ways a subset of features found in LC's iOS engine. To the degree that's true, Jacque's suggestion is a great one, since the range of things we can do in Android that aren't available on LC's iOS engine does seem smaller than the other way around. If not limited to layout, how would the storage format of the objects affect that? Whether rebuilt on the fly each time from script or instantiated from op codes in the binary stack file, an object is an object. Even for layout, it seems the benefit of using Git-based workflows is for the benefits of using Git, in development, and would not seem to alter runtime behavior. Have I missed some feature unique to script-only stacks? The only downside I can think of to using any single OS for the majority of one's multi-platform development is to make sure you periodically run in each of the target OSes to ensure things look as they should. For example on mobile, a menu button row/widget appears at the top of the layour in Android (not a bad choice, given that people tend to perceive layouts in reading order, left to right and top to bottom), but on iOS that main navigation control is placed below the region it affects, at the bottom of the card. There aren't many things like that which differ so starkly, unless you get deeply into Android's Material Design. But if we want to avoid having our apps look like something that was obviously designed for some other OS and hastily ported we want to learn those differences and support them in our layout code. > I've been thinking of developing a deconstructor to use with Levure. > The idea is that you would lay out the objects, but then the > deconstructor would pull all the properties of each object, put them > in a YML, JSON, or other similar file, and then they would be built in > the app by script, when needed. That would be handy. I've considered making one, but the cost/benefit relative to other commitments here has prevented me from diving in. I appreciate your interest in this, and know you'll do a fine job with it. While it's understandable that Git can't handle LC's binary files, one of the strongest benefits of "The xTalk Way" is visual design. This is why so many of us have written libraries to automatically instantiate mobile-specific controls for us from LC-native objects, because it lets us enjoy the fluid development workflow that characterizes xTalks, rather than defining objects by typing long blocks of object definitions in scripts, which is a very C way of doing things. Automating use of Git through binary->script decomposers allows developers the full benefit of the best of both xTalk and lower-level workflows. -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From ambassador at fourthworld.com Fri Aug 18 10:58:50 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Fri, 18 Aug 2017 07:58:50 -0700 Subject: Applescript Fails in Standalone on Mac Built with 8.1.6 In-Reply-To: <0b7adf5b-5160-dd34-b8df-64d09d3f9347@sonic.net> References: <0b7adf5b-5160-dd34-b8df-64d09d3f9347@sonic.net> Message-ID: Mark Wieder wrote: > On 08/17/2017 10:06 PM, Sannyasin Brahmanathaswami wrote: > >> So, why does apple script return execution error when run from 8.1.6 >> standalones? > > Looks like the bugfix is on the way: > > http://quality.livecode.com/show_bug.cgi?id=16029 As far back as I can recall, at least 15 years, the AppleScript dictionary periodically falls out of the build process. Now and then we find yet another release where the AS Dict is missing, later reinstated, and later absent. Is there something about AS in the build process that makes that one resource uniquely difficult to include consistently? -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From bobsneidar at iotecdigital.com Fri Aug 18 11:04:44 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Fri, 18 Aug 2017 15:04:44 +0000 Subject: Developing first on android In-Reply-To: References: Message-ID: <5E77114E-F83D-4E09-B6FD-92CB2DE953AF@iotecdigital.com> I blame Spell Checker. Bob S > On Aug 18, 2017, at 07:56 , Richard Gaskin via use-livecode wrote: > > Who is "Pomegranate" and where was this message? In a quick search of recent posts here I was unable to turn up anything from that user. From mark at livecode.com Fri Aug 18 11:13:34 2017 From: mark at livecode.com (Mark Waddingham) Date: Fri, 18 Aug 2017 17:13:34 +0200 Subject: Using '@' to mark pass-by-reference (was Re: synonyms) In-Reply-To: References: <7d93073a-6638-1e54-7323-e753649cc159@researchware.com> <545462d3-2e12-2b2c-c4ae-7fa14a0e9c6e@fourthworld.com> <05156f14-91fc-6868-8c60-9232dd47c237@sonic.net> <86c0b4a9-de0b-4ea5-2d9c-3dca12a43535@tweedly.net> <9fe5dd5d-f421-ff1e-4bfb-0168d05cb174@sonic.net> <0fd5c9dc6c47e910ce7777ca7202e69d@livecode.com> <788ebed80a165db133b5fafbf93c5b2c@livecode.com> <5e44ea9da240d422d33f45919e4c6316@livecode.com> Message-ID: On 2017-08-18 15:53, Mike Kerner via use-livecode wrote: > I understand the difference. I'm just trying to help with the mental > arithmetic. I, and others, I'm sure, will constantly forget where the > "@" > goes, for instance. Okay so - the question to ask is - what would make you forget where to put the "@"? In this case, if you want a by-ref parameter you have to put '@' before it in the signature, the proposal is to allow '@' to also be placed before the argument in a handler call for by-ref parameters... So it is entirely symmetric: command myHandler @xFoo end myHandler myHandler @tFoo There is no 'de-referencing' operation as by-ref parameters implicitly de-reference on use - indeed, there's no need to have a de-reference operation because there is no such thing as a 'reference' which can be 'put into' a variable (that would be general references - which this isn't about). In fact, what is happening is aliasing of variables: myHandler @tFoo -- when tFoo is passed to myHandler, xFoo1 in myHandler is aliased to tFoo command myHandler @xFoo1 -- xFoo1 as a variable does not exist, it is an alias to the calling var myOtherHandler @xFoo -- xFoo *is* tFoo, we are passing by-ref again so use @ which 'passes the alias on' end myHandler command myOtherHandler @xFoo2 -- xFoo2 as a variable does not exist, it is an alias to the calling var answer xFoo2 -- xFoo2 *is* tFoo end myOtherHandler Perhaps I'm not explaining this very well - or there is something I'm missing... Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From MikeKerner at roadrunner.com Fri Aug 18 11:13:19 2017 From: MikeKerner at roadrunner.com (Mike Kerner) Date: Fri, 18 Aug 2017 11:13:19 -0400 Subject: [ot] Richardevm pollution Message-ID: We have another abuser on the forums Admins! Attack! -- On the first day, God created the heavens and the Earth On the second day, God created the oceans. On the third day, God put the animals on hold for a few hours, and did a little diving. And God said, "This is good." From bobsneidar at iotecdigital.com Fri Aug 18 11:14:09 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Fri, 18 Aug 2017 15:14:09 +0000 Subject: Using '@' to mark pass-by-reference (was Re: synonyms) In-Reply-To: <5e44ea9da240d422d33f45919e4c6316@livecode.com> References: <7d93073a-6638-1e54-7323-e753649cc159@researchware.com> <545462d3-2e12-2b2c-c4ae-7fa14a0e9c6e@fourthworld.com> <05156f14-91fc-6868-8c60-9232dd47c237@sonic.net> <86c0b4a9-de0b-4ea5-2d9c-3dca12a43535@tweedly.net> <9fe5dd5d-f421-ff1e-4bfb-0168d05cb174@sonic.net> <0fd5c9dc6c47e910ce7777ca7202e69d@livecode.com> <788ebed80a165db133b5fafbf93c5b2c@livecode.com> <5e44ea9da240d422d33f45919e4c6316@livecode.com> Message-ID: <32341A41-CAC0-4858-A28C-955499319ECC@iotecdigital.com> Not sure I understand this allegory. Do you mean that there might be dragons all over the place waiting to eat me? Or do you mean there may be dragons waiting to eat different bits of me in different places? Or do you mean they were about to eat the kettle of fish when a much more appetizing meal walked into the cave i.e. me? And how did a kettle of fish get into a dragon cave in the first place? Bob S > On Aug 18, 2017, at 06:48 , Mark Waddingham via use-livecode wrote: > > General references (I don't think using the term 'pointer' is appropriate) are a whole different kettle of fish which come with dragons waiting to eat you all over the place... From bobsneidar at iotecdigital.com Fri Aug 18 11:14:42 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Fri, 18 Aug 2017 15:14:42 +0000 Subject: Using '@' to mark pass-by-reference (was Re: synonyms) In-Reply-To: References: <7d93073a-6638-1e54-7323-e753649cc159@researchware.com> <545462d3-2e12-2b2c-c4ae-7fa14a0e9c6e@fourthworld.com> <05156f14-91fc-6868-8c60-9232dd47c237@sonic.net> <86c0b4a9-de0b-4ea5-2d9c-3dca12a43535@tweedly.net> <9fe5dd5d-f421-ff1e-4bfb-0168d05cb174@sonic.net> <0fd5c9dc6c47e910ce7777ca7202e69d@livecode.com> <788ebed80a165db133b5fafbf93c5b2c@livecode.com> <5e44ea9da240d422d33f45919e4c6316@livecode.com> Message-ID: <859434B8-D4F0-4443-B56C-DDBC016B6050@iotecdigital.com> I did once. After that it was pretty easy. Bob S > On Aug 18, 2017, at 06:53 , Mike Kerner via use-livecode wrote: > > I understand the difference. I'm just trying to help with the mental > arithmetic. I, and others, I'm sure, will constantly forget where the "@" > goes, for instance. From MikeKerner at roadrunner.com Fri Aug 18 11:15:07 2017 From: MikeKerner at roadrunner.com (Mike Kerner) Date: Fri, 18 Aug 2017 11:15:07 -0400 Subject: Developing first on android In-Reply-To: <5E77114E-F83D-4E09-B6FD-92CB2DE953AF@iotecdigital.com> References: <5E77114E-F83D-4E09-B6FD-92CB2DE953AF@iotecdigital.com> Message-ID: Sorry, I assumed everyone was at Global, yesterday. During the keynote, an interview with Digital Pomegranate was shown. During that interview, there was a lengthy explanation about building LC apps, and things that they do. On Fri, Aug 18, 2017 at 11:04 AM, Bob Sneidar via use-livecode < use-livecode at lists.runrev.com> wrote: > I blame Spell Checker. > > Bob S > > > > On Aug 18, 2017, at 07:56 , Richard Gaskin via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > > Who is "Pomegranate" and where was this message? In a quick search of > recent posts here I was unable to turn up anything from that user. > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > -- On the first day, God created the heavens and the Earth On the second day, God created the oceans. On the third day, God put the animals on hold for a few hours, and did a little diving. And God said, "This is good." From mark at livecode.com Fri Aug 18 11:17:17 2017 From: mark at livecode.com (Mark Waddingham) Date: Fri, 18 Aug 2017 17:17:17 +0200 Subject: Using '@' to mark pass-by-reference (was Re: synonyms) In-Reply-To: <32341A41-CAC0-4858-A28C-955499319ECC@iotecdigital.com> References: <7d93073a-6638-1e54-7323-e753649cc159@researchware.com> <545462d3-2e12-2b2c-c4ae-7fa14a0e9c6e@fourthworld.com> <05156f14-91fc-6868-8c60-9232dd47c237@sonic.net> <86c0b4a9-de0b-4ea5-2d9c-3dca12a43535@tweedly.net> <9fe5dd5d-f421-ff1e-4bfb-0168d05cb174@sonic.net> <0fd5c9dc6c47e910ce7777ca7202e69d@livecode.com> <788ebed80a165db133b5fafbf93c5b2c@livecode.com> <5e44ea9da240d422d33f45919e4c6316@livecode.com> <32341A41-CAC0-4858-A28C-955499319ECC@iotecdigital.com> Message-ID: <1f13d2f2f261276cb185fc81a25bb12f@livecode.com> On 2017-08-18 17:14, Bob Sneidar via use-livecode wrote: > Not sure I understand this allegory. Do you mean that there might be > dragons all over the place waiting to eat me? Or do you mean there may > be dragons waiting to eat different bits of me in different places? Or > do you mean they were about to eat the kettle of fish when a much more > appetizing meal walked into the cave i.e. me? And how did a kettle of > fish get into a dragon cave in the first place? Lol! Any and all of those things I think... Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From bobsneidar at iotecdigital.com Fri Aug 18 11:18:32 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Fri, 18 Aug 2017 15:18:32 +0000 Subject: Using '@' to mark pass-by-reference (was Re: synonyms) In-Reply-To: References: <7d93073a-6638-1e54-7323-e753649cc159@researchware.com> <545462d3-2e12-2b2c-c4ae-7fa14a0e9c6e@fourthworld.com> <05156f14-91fc-6868-8c60-9232dd47c237@sonic.net> <86c0b4a9-de0b-4ea5-2d9c-3dca12a43535@tweedly.net> <9fe5dd5d-f421-ff1e-4bfb-0168d05cb174@sonic.net> <0fd5c9dc6c47e910ce7777ca7202e69d@livecode.com> <788ebed80a165db133b5fafbf93c5b2c@livecode.com> <5e44ea9da240d422d33f45919e4c6316@livecode.com> Message-ID: That actually is a great explanation which solves a mystery I've often wondnered about, which is how a handler with a different variable name can contain the *actual* original variable. I thought the engine actually created a new variable and copied the incoming value to it, and then reversed this operation on return. Aliasing makes perfect sense. Bob S > On Aug 18, 2017, at 08:13 , Mark Waddingham via use-livecode wrote: > > In fact, what is happening is aliasing of variables: > > myHandler @tFoo -- when tFoo is passed to myHandler, xFoo1 in myHandler is aliased to tFoo > > command myHandler @xFoo1 -- xFoo1 as a variable does not exist, it is an alias to the calling var > myOtherHandler @xFoo -- xFoo *is* tFoo, we are passing by-ref again so use @ which 'passes the alias on' > end myHandler > > command myOtherHandler @xFoo2 -- xFoo2 as a variable does not exist, it is an alias to the calling var > answer xFoo2 -- xFoo2 *is* tFoo > end myOtherHandler > > Perhaps I'm not explaining this very well - or there is something I'm missing... > > Warmest Regards, > > Mark. > > -- > Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ > LiveCode: Everyone can create apps From klaus at major-k.de Fri Aug 18 11:18:29 2017 From: klaus at major-k.de (Klaus major-k) Date: Fri, 18 Aug 2017 17:18:29 +0200 Subject: [ot] Richardevm pollution In-Reply-To: References: Message-ID: <7C5B3970-F7BA-49C9-AC6A-9104C8743F9A@major-k.de> > Am 18.08.2017 um 17:13 schrieb Mike Kerner via use-livecode : > > We have another abuser on the forums > Admins! Attack! DONE! :-) > -- > On the first day, God created the heavens and the Earth > On the second day, God created the oceans. > On the third day, God put the animals on hold for a few hours, > and did a little diving. > And God said, "This is good." > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode -- Klaus Major http://www.major-k.de klaus at major-k.de From ambassador at fourthworld.com Fri Aug 18 11:33:46 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Fri, 18 Aug 2017 08:33:46 -0700 Subject: [ot] Richardevm pollution In-Reply-To: References: Message-ID: Mike Kerner wrote: > We have another abuser on the forums > Admins! Attack! The moderators that read this list regularly (Klaus and myself - are there others here?) tend to read the forums with the same frequency. So we'll see it there about as quickly as we see a note here. But our ability to handle it efficiently is limited, so unless we have a pile of free time on our hands we'll likely just send a note to the admins. The best way to reach forum admins is to send a support request to on-rev. If urgent, not that in the subject line. -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From mark at livecode.com Fri Aug 18 11:38:15 2017 From: mark at livecode.com (Mark Waddingham) Date: Fri, 18 Aug 2017 17:38:15 +0200 Subject: Using '@' to mark pass-by-reference (was Re: synonyms) In-Reply-To: References: <7d93073a-6638-1e54-7323-e753649cc159@researchware.com> <545462d3-2e12-2b2c-c4ae-7fa14a0e9c6e@fourthworld.com> <05156f14-91fc-6868-8c60-9232dd47c237@sonic.net> <86c0b4a9-de0b-4ea5-2d9c-3dca12a43535@tweedly.net> <9fe5dd5d-f421-ff1e-4bfb-0168d05cb174@sonic.net> <0fd5c9dc6c47e910ce7777ca7202e69d@livecode.com> <788ebed80a165db133b5fafbf93c5b2c@livecode.com> <5e44ea9da240d422d33f45919e4c6316@livecode.com> Message-ID: On 2017-08-18 17:18, Bob Sneidar via use-livecode wrote: > That actually is a great explanation which solves a mystery I've often > wondnered about, which is how a handler with a different variable name > can contain the *actual* original variable. I thought the engine > actually created a new variable and copied the incoming value to it, > and then reversed this operation on return. Aliasing makes perfect > sense. That's what would call 'inout' parameter mode. For most languages which exist today, the way you can specify to pass parameters to functions distills down into 4 types (generally these are called parameter 'modes'): - by-ref - by-value (also called 'in') - copy-out (generally called 'out') - copy-in-copy-out (generally called 'inout') Let us imagine we supported all these modes and we had a handler with signature: command myHandler @yRef, in pIn, out rOut, inout xInOut Called with myHandler tRef, tIn, tOut, tInOut The 'by-value'/'in' mode is what we are most familiar with. On entry to the handler the value in pIn is copied into the receiving variable tIn. The 'out' mode is similar to what you describe. On entry to the handler rOut contains nothing; on exit from the handler, the value in rOut is 'copied back' into the passed variable tOut. The 'inout' mode is a mixture of the two: on entry tInOut is copied into xInOut, and on exit xInOut is copied back into tInOut. In the 'by-ref' mode there is no copying at all - mutations to the receiving variable yRef are actually mutations to the passed variable tRef. i.e. yRef doesn't really exist at all. The by-ref mode can emulate all of the other modes - you just have to code with some rules: To use a by-ref parameter as 'in' - you must not change the value of the parameter in the handler being called. To use a by-ref parameter as 'out' - you must not read the parameter at all and only change the value of the parameter except just before you exit/return. To use a by-ref parameter as 'inout' - you can read the parameter at any point, but only change it just before you exit/return. In most languages, the 'copy-back' part of the 'out' and 'inout' modes only generally happen for normal handler exit - they don't happen if you throw an exception. Now, having said all of that - there is actually a fifth parameter mode 'call-by-name' which at least one language had - ALGOL. Basically this meant (IIRC) that you passed in the symbolic expression to the receiver so it acted as some kind of macro: foo(tArray[I]) - inside foo, any reference to that parameter would re-evaluate tArray[I] in the context of the caller. The reason I mention this is because the way LiveCode does by-ref parameters for array elements is *almost* like this - but not quite as unwieldy. When you do: command myHandler @xVar put 100 into xVar["baz"] end myHandler local tArray myHandler tArray[tIndex1][tIndex2] What actually happens is somewhat equivalent to the following: local tArrayPath put tIndex1 into tArrayPath[1] put tIndex2 into tArrayPath[2] myHandlerModified tArray, tArrayPath -- a second parameter has been added here With command myHandlerModified @xArray, pArrayPath put 100 into xArray[pArrayPath]["baz"] end myHandlerModified Basically, the 'path' is frozen before the call, but implicitly used within the call when mutating the by-ref variable. Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From brian at milby7.com Fri Aug 18 12:05:24 2017 From: brian at milby7.com (Brian Milby) Date: Fri, 18 Aug 2017 11:05:24 -0500 Subject: Developing first on android In-Reply-To: References: Message-ID: What about a non-binary stack file format? Something XML based and derived from the actual in-memory stack object (would need to be integrated with the IDE/engine to be really useful though - to allow seamless/native import/export). > Mike Kerner wrote: > > > I've been thinking of developing a deconstructor to use with Levure. > > The idea is that you would lay out the objects, but then the > > deconstructor would pull all the properties of each object, put them > > in a YML, JSON, or other similar file, and then they would be built in > > the app by script, when needed. > > That would be handy. I've considered making one, but the cost/benefit > relative to other commitments here has prevented me from diving in. I > appreciate your interest in this, and know you'll do a fine job with it. > > While it's understandable that Git can't handle LC's binary files, one of > the strongest benefits of "The xTalk Way" is visual design. > > This is why so many of us have written libraries to automatically > instantiate mobile-specific controls for us from LC-native objects, because > it lets us enjoy the fluid development workflow that characterizes xTalks, > rather than defining objects by typing long blocks of object definitions in > scripts, which is a very C way of doing things. > > Automating use of Git through binary->script decomposers allows developers > the full benefit of the best of both xTalk and lower-level workflows. > From brian at milby7.com Fri Aug 18 12:14:57 2017 From: brian at milby7.com (Brian Milby) Date: Fri, 18 Aug 2017 11:14:57 -0500 Subject: Applescript Fails in Standalone on Mac Built with 8.1.6 Message-ID: <0e75188e-8bf4-4087-a54a-58a1eb828125@Brian-Milbys-iPhone-6s-Plus> I'm so new I can't address the history but seeing where the fix was implemented it should not fall out unless the build process is significantly changed. It is in the same place all of the language localization files are specified. Thanks, Brian > > On Aug 18, 2017 at 9:58 AM, wrote: > > > > Mark Wieder wrote: > On 08/17/2017 10:06 PM, Sannyasin Brahmanathaswami wrote: > >> So, why does apple script return execution error when run from 8.1.6 >> standalones? > > Looks like the bugfix is on the way: > > http://quality.livecode.com/show_bug.cgi?id=16029 As far back as I can recall, at least 15 years, the AppleScript dictionary periodically falls out of the build process. Now and then we find yet another release where the AS Dict is missing, later reinstated, and later absent. Is there something about AS in the build process that makes that one resource uniquely difficult to include consistently? -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscr ibe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode > > From mark at livecode.com Fri Aug 18 12:56:59 2017 From: mark at livecode.com (Mark Waddingham) Date: Fri, 18 Aug 2017 18:56:59 +0200 Subject: Developing first on android In-Reply-To: References: Message-ID: <99c57b2124a6f23886fa747caf706805@livecode.com> On 2017-08-18 18:05, Brian Milby via use-livecode wrote: > What about a non-binary stack file format? Something XML based and > derived > from the actual in-memory stack object (would need to be integrated > with > the IDE/engine to be really useful though - to allow seamless/native > import/export). I think Monte's lcVCS might well be a good starting point for that - there's no real need to have engine support as long as we make sure all the things you need to know to deconstruct / reconstruct a stackfile are accessible from script (which is where the engine support kicks in). That being said, there is one piece of engine functionality which would make lcVCS and similar tools much simpler - the ability to ask the engine for a LiveCode array representing the actual persistent state of any LiveCode object. If you have an array which contains a faithful representation of the persistent state, then you can write serializers / deserializers to whatever text (or other!) format you like in LiveCode Script (which is a much much better place for such things to be!). There is a starting point here for this. In order to allow lcVCS to support widgets (which can have arbitrary persistent state), we added a new form to the 'export' and 'import' commands: export to array import from array We also added 'is strictly' operators which allow you to detect the actual dynamic type of a value, rather than what values it could be: put "100" is a number -- true put "100" is strictly a number -- false This allows lcVCS to create a faithful representation (in JSON) of the values in LiveCode variables - in particular, in those returned from export/import widget. The reason I mention this is that this ability really is the precursor to eliminating the engine's dependence on a bespoke binary stackfile format (which is actually a huge problem - for all kinds of reasons) - if we had a fully faithful (in the strict mathematical sense!) import/export array ability - a stackfile could just become an array which has been encoded with any hierarchical data encoding format (of which the arrayEncode format is one, JSON is another, BSON is another, YAML is another, ...). It might be that the part of lcVCS which does the JSON mapping might well be completely sufficient - perhaps Monte could chime in here to comment and remind me of the issues he had / faced with it. I can recall one significant issue - the properties we set on objects (or widgets - lamentably) are not necessarily reflective of the persistent state. What I mean by this is that, in some case, you cannot directly set one of the internal persistent state variables of an object directly by a property - it can only be done by setting a combination, or by other actions (I'd need to look through the engine code to remind myself where this occurs). However *that* is fixable - we make sure that there are suitably human understandable properties for all objects which ensure you can easily import and export them using just those properties. For widgets, it comes to down to imposing a simple rule: Any piece of state which is saved into the state array (on OnSave) *must* be accessible by a public property. This would actually simplify widget creation - as you wouldn't need an OnLoad / OnSave handler at all then. It would just be a case of serializing the properties which are marked as 'persistent'. This is one case where I modelled the engine's behavior, and shouldn't have done - I should have ignored how the engine did things and just gone with 'what made more sense'! Anyway, I'd suggest we start looking at lcVCS (in terms of its object import/export - not the VC related aspects) and see what issues it has; then look at starting to fix those issues in the engine; then look to start adding array import/export methods for all LiveCode objects... Assuming this is an interesting project someone (not looking at anyone in particular ;)) would like to take up... Warmest Regards, Mark. >> Mike Kerner wrote: >> >> > I've been thinking of developing a deconstructor to use with Levure. >> > The idea is that you would lay out the objects, but then the >> > deconstructor would pull all the properties of each object, put them >> > in a YML, JSON, or other similar file, and then they would be built in >> > the app by script, when needed. >> >> That would be handy. I've considered making one, but the cost/benefit >> relative to other commitments here has prevented me from diving in. I >> appreciate your interest in this, and know you'll do a fine job with >> it. >> >> While it's understandable that Git can't handle LC's binary files, one >> of >> the strongest benefits of "The xTalk Way" is visual design. >> >> This is why so many of us have written libraries to automatically >> instantiate mobile-specific controls for us from LC-native objects, >> because >> it lets us enjoy the fluid development workflow that characterizes >> xTalks, >> rather than defining objects by typing long blocks of object >> definitions in >> scripts, which is a very C way of doing things. >> >> Automating use of Git through binary->script decomposers allows >> developers >> the full benefit of the best of both xTalk and lower-level workflows. >> > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From mark at livecode.com Fri Aug 18 13:01:20 2017 From: mark at livecode.com (Mark Waddingham) Date: Fri, 18 Aug 2017 19:01:20 +0200 Subject: Applescript Fails in Standalone on Mac Built with 8.1.6 In-Reply-To: <0e75188e-8bf4-4087-a54a-58a1eb828125@Brian-Milbys-iPhone-6s-Plus> References: <0e75188e-8bf4-4087-a54a-58a1eb828125@Brian-Milbys-iPhone-6s-Plus> Message-ID: <8d54790d948f2ce78f1f9e3250498c43@livecode.com> On 2017-08-18 18:14, Brian Milby via use-livecode wrote: > I'm so new I can't address the history but seeing where the fix was > implemented it should not fall out unless the build process is > significantly changed. It is in the same place all of the language > localization files are specified. I can help fill in the history - yes we've broken it always accidentally on numerous occasions; and then fixed it, and the broken it again, or didn't really fix it properly or something (I can't make an excuse, or give a good reason here - other than it just seems to happen periodically!) The issue here is that we don't have a test for whether it is working in each built release - so that is the way to make sure it never happens again. @Brian: Would you be willing to write a test for this? It is going to be a little tricky as it requires IPC (unless you can use send apple event, to send one to the calling process), but there's an example of us doing that already in the private data clipboardData test: on TestClipboardPrivateKey set the clipboardData["private"] to "Hello World!" TestAssert "private key is present before external change", \ "private" is among the keys of the clipboardData local tHelperFilename set the itemDelimiter to slash put format("%s/_clipboard_private_setter.livecodescript", \ _TestPath()) into tHelperFilename if the environment is "command line" then TestRunStack "-ui", tHelperFilename else TestRunStack "", tHelperFilename end if TestAssert "helper changed clipboard externally", the result is 0 if the platform is "Linux" then TestAssertBroken "private key not present after external change", \ "private" is not among the keys of the clipboardData, \ "Bug 19117" else TestAssert "private key not present after external change", \ "private" is not among the keys of the clipboardData end if end TestClipboardPrivateKey This basically uses a sub-process to do something to the clipboard so that the test process can check whether the private key disappears in this case. Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From MikeKerner at roadrunner.com Fri Aug 18 14:44:42 2017 From: MikeKerner at roadrunner.com (Mike Kerner) Date: Fri, 18 Aug 2017 14:44:42 -0400 Subject: Using '@' to mark pass-by-reference (was Re: synonyms) In-Reply-To: References: <7d93073a-6638-1e54-7323-e753649cc159@researchware.com> <545462d3-2e12-2b2c-c4ae-7fa14a0e9c6e@fourthworld.com> <05156f14-91fc-6868-8c60-9232dd47c237@sonic.net> <86c0b4a9-de0b-4ea5-2d9c-3dca12a43535@tweedly.net> <9fe5dd5d-f421-ff1e-4bfb-0168d05cb174@sonic.net> <0fd5c9dc6c47e910ce7777ca7202e69d@livecode.com> <788ebed80a165db133b5fafbf93c5b2c@livecode.com> <5e44ea9da240d422d33f45919e4c6316@livecode.com> Message-ID: I was going to reply to something, but part way through the last message, my brain melted and I stated thinking in 8088 assembler. I HATE WHEN THAT HAPPENS! The reason for forgetting is because it is not something that I, at least, will be tempted to use very often, on the order of "this me" So if we're going to be stuck with "@", allowing the developer to put it in both places in order to make code clearer makes sense. What I meant was it would be nice if ithere was the option to put it on the leading or the trailing side of the name, because for as seldom as I use the syntax, I usually screw it up. The other thing that would be good for the purpose of making this jargonist is to talk about it as an alias instead of a reference in the docs and the dictionary, for the same reason that "container" was more commonly used in HC than "variable" for the first n years. On Fri, Aug 18, 2017 at 11:38 AM, Mark Waddingham via use-livecode < use-livecode at lists.runrev.com> wrote: > On 2017-08-18 17:18, Bob Sneidar via use-livecode wrote: > >> That actually is a great explanation which solves a mystery I've often >> wondnered about, which is how a handler with a different variable name >> can contain the *actual* original variable. I thought the engine >> actually created a new variable and copied the incoming value to it, >> and then reversed this operation on return. Aliasing makes perfect >> sense. >> > > That's what would call 'inout' parameter mode. > > For most languages which exist today, the way you can specify to pass > parameters to functions distills down into 4 types (generally these are > called parameter 'modes'): > > - by-ref > - by-value (also called 'in') > - copy-out (generally called 'out') > - copy-in-copy-out (generally called 'inout') > > Let us imagine we supported all these modes and we had a handler with > signature: > > command myHandler @yRef, in pIn, out rOut, inout xInOut > > Called with > > myHandler tRef, tIn, tOut, tInOut > > The 'by-value'/'in' mode is what we are most familiar with. On entry to > the handler the value in pIn is copied into the receiving variable tIn. > > The 'out' mode is similar to what you describe. On entry to the handler > rOut contains nothing; on exit from the handler, the value in rOut is > 'copied back' into the passed variable tOut. > > The 'inout' mode is a mixture of the two: on entry tInOut is copied into > xInOut, and on exit xInOut is copied back into tInOut. > > In the 'by-ref' mode there is no copying at all - mutations to the > receiving variable yRef are actually mutations to the passed variable tRef. > i.e. yRef doesn't really exist at all. > > The by-ref mode can emulate all of the other modes - you just have to code > with some rules: > > To use a by-ref parameter as 'in' - you must not change the value of the > parameter in the handler being called. > > To use a by-ref parameter as 'out' - you must not read the parameter at > all and only change the value of the parameter except just before you > exit/return. > > To use a by-ref parameter as 'inout' - you can read the parameter at any > point, but only change it just before you exit/return. > > In most languages, the 'copy-back' part of the 'out' and 'inout' modes > only generally happen for normal handler exit - they don't happen if you > throw an exception. > > Now, having said all of that - there is actually a fifth parameter mode > 'call-by-name' which at least one language had - ALGOL. Basically this > meant (IIRC) that you passed in the symbolic expression to the receiver so > it acted as some kind of macro: > > foo(tArray[I]) - inside foo, any reference to that parameter would > re-evaluate tArray[I] in the context of the caller. > > The reason I mention this is because the way LiveCode does by-ref > parameters for array elements is *almost* like this - but not quite as > unwieldy. When you do: > > command myHandler @xVar > put 100 into xVar["baz"] > end myHandler > > local tArray > myHandler tArray[tIndex1][tIndex2] > > What actually happens is somewhat equivalent to the following: > > local tArrayPath > put tIndex1 into tArrayPath[1] > put tIndex2 into tArrayPath[2] > myHandlerModified tArray, tArrayPath -- a second parameter has been > added here > > With > > command myHandlerModified @xArray, pArrayPath > put 100 into xArray[pArrayPath]["baz"] > end myHandlerModified > > Basically, the 'path' is frozen before the call, but implicitly used > within the call when mutating the by-ref variable. > > > Warmest Regards, > > Mark. > > -- > Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ > LiveCode: Everyone can create apps > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > -- On the first day, God created the heavens and the Earth On the second day, God created the oceans. On the third day, God put the animals on hold for a few hours, and did a little diving. And God said, "This is good." From MikeKerner at roadrunner.com Fri Aug 18 14:47:28 2017 From: MikeKerner at roadrunner.com (Mike Kerner) Date: Fri, 18 Aug 2017 14:47:28 -0400 Subject: [ot] Richardevm pollution In-Reply-To: References: Message-ID: Why not put a tag, note, etc. somewhere on the forums site, or in message footers to that effect so 15 weeks from now I don't have to try to remember that? 15 was also the number of forum posts that resulted in emails to me before the massacare, this morning. On Fri, Aug 18, 2017 at 11:33 AM, Richard Gaskin via use-livecode < use-livecode at lists.runrev.com> wrote: > Mike Kerner wrote: > > > We have another abuser on the forums > > Admins! Attack! > > The moderators that read this list regularly (Klaus and myself - are there > others here?) tend to read the forums with the same frequency. So we'll > see it there about as quickly as we see a note here. But our ability to > handle it efficiently is limited, so unless we have a pile of free time on > our hands we'll likely just send a note to the admins. > > The best way to reach forum admins is to send a support request to > on-rev. If urgent, not that in the subject line. > > -- > Richard Gaskin > Fourth World Systems > Software Design and Development for the Desktop, Mobile, and the Web > ____________________________________________________________________ > Ambassador at FourthWorld.com http://www.FourthWorld.com > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > -- On the first day, God created the heavens and the Earth On the second day, God created the oceans. On the third day, God put the animals on hold for a few hours, and did a little diving. And God said, "This is good." From ambassador at fourthworld.com Fri Aug 18 15:22:42 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Fri, 18 Aug 2017 12:22:42 -0700 Subject: [ot] Richardevm pollution In-Reply-To: References: Message-ID: <758002a6-4156-4b06-3e38-66b8c4471495@fourthworld.com> Mike Kerner wrote: >> Mike Kerner wrote: >> >> > We have another abuser on the forums >> > Admins! Attack! >> >> The moderators that read this list regularly (Klaus and myself - are >> there others here?) tend to read the forums with the same frequency. >> So we'll see it there about as quickly as we see a note here. But >> our ability to handle it efficiently is limited, so unless we have a >> pile of free time on our hands we'll likely just send a note to the >> admins. >> >> The best way to reach forum admins is to send a support request to >> on-rev. If urgent, not that in the subject line. >> >> -- >> Richard Gaskin >> Fourth World Systems > > Why not put a tag, note, etc. somewhere on the forums site, or in > message footers to that effect so 15 weeks from now I don't have > to try to remember that? Good idea. And now you have the address to submit it. :) There is one downside to posting it there: the same bots triggering the need for it can also pick it up. If that email account gets overwhelmed with spam we have another problem on our hands. In the meantime, most folks just use the "Report Post" icon in the upper-right of a post; flagging one is usually sufficient to get a moderator's attention if we haven't seen it already. Relatively speaking (given the number of bots slamming forums around the world all day) the amount of *visible* spam on the LC forums is relatively low, certainly lower than the amount of spam that happens. Klaus hits most nearly as fast as they come in (Klaus, do you sleep?), and I or others tend to kill them as soon as we see them; I tend to check the forums a few times most days. Most of the time we kill 'em before they get reported, sometimes probably before others even see them. -- Richard Gaskin Fourth World Systems From jacque at hyperactivesw.com Fri Aug 18 15:40:03 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Fri, 18 Aug 2017 14:40:03 -0500 Subject: Developing first on android In-Reply-To: References: <5E28F0C6-11ED-4241-9ADF-CF5E073739F1@gmail.com> Message-ID: <7e3285f6-d7c7-9035-5bbe-2cc775ee5578@hyperactivesw.com> On 8/17/17 8:31 PM, Mike Kerner via use-livecode wrote: > I liked what Pomegranate said, > which would also be a way to make apps even more levure/git-friendly, and > would, I think, solve some of the Android layout issues that she was > discussing - every object is created by a script, instead of using the LC > IDE to do it. This method also works well, and I've used it in a couple of projects. But being basically lazy, I like to follow the rule to "let the engine do it" whenever possible. If you aren't using git or your layouts aren't dynamic, it's much easier to let the engine do the resizing and scaling for you, and the tricks I mentioned are an easy way to overcome a few limitations. One other comment about my presentation: the problem with issuing the "quit" command was just fixed and is now awaiting merge. :) Now all we need is suspend/resume messages and the main Android issues will go away. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com From bobsneidar at iotecdigital.com Fri Aug 18 16:37:24 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Fri, 18 Aug 2017 20:37:24 +0000 Subject: lock screen gotcha revisited Message-ID: <952E58B6-358C-4044-89D3-E472E9FD2D4A@iotecdigital.com> Hi all. I have some screen updates I do that take time because I query a database first, and it may not be local. To keep the screen from progressively updating, I lock the screen. I then decided to put a status message field at the bottom of each "form" (meaning card in a stack) so I have a handler that I pass a message and a long card id to, and it sets the text of the field and the background color (for visual clue) so the user has some idea of what is going on. Now the first message I send works because I have not locked the screen yet. the SECOND message I send AFTER the screen is locked never appears, which is expected. So I have a script which checks for the lockscreen property and if true, unlocks the screen, waits 10 milliseconds (to make sure the screen updates) then relocks the screen. The problem is that it doesn't. Unlock the screen that is. I set a breakpoint in the condition that checks for the lockscreen property and it indeed DOES trigger, but without the breakpoint I never see the second status message. I even set the wait 10 milliseconds to 5 seconds and I STILL do not see the second message. Since the unlock screen is in a handler in a backscript, I do not think it is actually cancellign the lock set by the datagrid on the card. There was some discussion about this in the past, that not all lockscreens are created equal. Is there a way to tell how many screenlocks are current and who set the lock? I suppose I could track it in a property then send unlockscreen to everything that locked it, but I'd like to not have to do that. Better yet would be a global unlock screen that cleared all screen locks. I thought that wait would do it. I tried wait with messages. No dice. I also unlocked the screen 5 times in a row in case there were multiple screen locks (I didn't think it worked that way but it's cheap to test) still no luck. It seems one handler cannot unlock the screen when another locks it. Anyone? From bobsneidar at iotecdigital.com Fri Aug 18 16:54:17 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Fri, 18 Aug 2017 20:54:17 +0000 Subject: lock screen gotcha revisited In-Reply-To: <952E58B6-358C-4044-89D3-E472E9FD2D4A@iotecdigital.com> References: <952E58B6-358C-4044-89D3-E472E9FD2D4A@iotecdigital.com> Message-ID: <6F0B5437-DFB7-42A3-A844-4D5DFCB11F81@iotecdigital.com> okay after some testing it seems only the script that locked the screen, maybe only the actual handler can clear it's own lock. If this is not right I'd like to know it. Seems there ought to be an unlock all command or some such thing. Bob S > On Aug 18, 2017, at 13:37 , Bob Sneidar via use-livecode wrote: > > Hi all. > > I have some screen updates I do that take time because I query a database first, and it may not be local. To keep the screen from progressively updating, I lock the screen. From jacque at hyperactivesw.com Fri Aug 18 17:03:19 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Fri, 18 Aug 2017 16:03:19 -0500 Subject: lock screen gotcha revisited In-Reply-To: <6F0B5437-DFB7-42A3-A844-4D5DFCB11F81@iotecdigital.com> References: <952E58B6-358C-4044-89D3-E472E9FD2D4A@iotecdigital.com> <6F0B5437-DFB7-42A3-A844-4D5DFCB11F81@iotecdigital.com> Message-ID: That doesn't sound right, though I've seen issues with nested locks too. What happens if you call this handler: on unlockReally repeat until the lockscreen is false unlock screen end repeat end unlockReally On 8/18/17 3:54 PM, Bob Sneidar via use-livecode wrote: > okay after some testing it seems only the script that locked the screen, maybe only the actual handler can clear it's own lock. If this is not right I'd like to know it. Seems there ought to be an unlock all command or some such thing. > > Bob S > > >> On Aug 18, 2017, at 13:37 , Bob Sneidar via use-livecode wrote: >> >> Hi all. >> >> I have some screen updates I do that take time because I query a database first, and it may not be local. To keep the screen from progressively updating, I lock the screen. > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com From brian at milby7.com Fri Aug 18 18:12:37 2017 From: brian at milby7.com (Brian Milby) Date: Fri, 18 Aug 2017 17:12:37 -0500 Subject: Developing first on android In-Reply-To: <99c57b2124a6f23886fa747caf706805@livecode.com> References: <99c57b2124a6f23886fa747caf706805@livecode.com> Message-ID: If I'm understanding correctly, a capability to export a stack as an array (with the corresponding import) would get around the issue of the non-public properties though. The array would be the intermediate format that would be used by the engine to construct the stack in memory. LCS could be used to serialize into a suitable disk format. It would mean that the only way to get a full representation of the object would be to use the full import if there were properties like you described above (unless I'm missing something). I've actually been mulling something along these lines over for the past few weeks (but was thinking about a direct XML format). I briefly looked at the code to save a stack and noticed how it seems pretty straight forward. I'll take a look at the code for some of the objects this weekend and see what I think. Could be a good opportunity for the community to contribute a useful new feature. On Fri, Aug 18, 2017 at 11:56 AM, Mark Waddingham via use-livecode < use-livecode at lists.runrev.com> wrote: > On 2017-08-18 18:05, Brian Milby via use-livecode wrote: > >> What about a non-binary stack file format? Something XML based and >> derived >> from the actual in-memory stack object (would need to be integrated with >> the IDE/engine to be really useful though - to allow seamless/native >> import/export). >> > > I think Monte's lcVCS might well be a good starting point for that - > there's no real need to have engine support as long as we make sure all the > things you need to know to deconstruct / reconstruct a stackfile are > accessible from script (which is where the engine support kicks in). > > That being said, there is one piece of engine functionality which would > make lcVCS and similar tools much simpler - the ability to ask the engine > for a LiveCode array representing the actual persistent state of any > LiveCode object. If you have an array which contains a faithful > representation of the persistent state, then you can write serializers / > deserializers to whatever text (or other!) format you like in LiveCode > Script (which is a much much better place for such things to be!). > > There is a starting point here for this. In order to allow lcVCS to > support widgets (which can have arbitrary persistent state), we added a new > form to the 'export' and 'import' commands: > > export to array > import from array > > We also added 'is strictly' operators which allow you to detect the actual > dynamic type of a value, rather than what values it could be: > > put "100" is a number -- true > put "100" is strictly a number -- false > > This allows lcVCS to create a faithful representation (in JSON) of the > values in LiveCode variables - in particular, in those returned from > export/import widget. > > The reason I mention this is that this ability really is the precursor to > eliminating the engine's dependence on a bespoke binary stackfile format > (which is actually a huge problem - for all kinds of reasons) - if we had a > fully faithful (in the strict mathematical sense!) import/export array > ability - a stackfile could just become an array which has been encoded > with any hierarchical data encoding format (of which the arrayEncode format > is one, JSON is another, BSON is another, YAML is another, ...). > > It might be that the part of lcVCS which does the JSON mapping might well > be completely sufficient - perhaps Monte could chime in here to comment and > remind me of the issues he had / faced with it. > > I can recall one significant issue - the properties we set on objects (or > widgets - lamentably) are not necessarily reflective of the persistent > state. What I mean by this is that, in some case, you cannot directly set > one of the internal persistent state variables of an object directly by a > property - it can only be done by setting a combination, or by other > actions (I'd need to look through the engine code to remind myself where > this occurs). > > However *that* is fixable - we make sure that there are suitably human > understandable properties for all objects which ensure you can easily > import and export them using just those properties. For widgets, it comes > to down to imposing a simple rule: > > Any piece of state which is saved into the state array (on OnSave) *must* > be accessible by a public property. > > This would actually simplify widget creation - as you wouldn't need an > OnLoad / OnSave handler at all then. It would just be a case of serializing > the properties which are marked as 'persistent'. This is one case where I > modelled the engine's behavior, and shouldn't have done - I should have > ignored how the engine did things and just gone with 'what made more sense'! > > Anyway, I'd suggest we start looking at lcVCS (in terms of its object > import/export - not the VC related aspects) and see what issues it has; > then look at starting to fix those issues in the engine; then look to start > adding array import/export methods for all LiveCode objects... Assuming > this is an interesting project someone (not looking at anyone in particular > ;)) would like to take up... > > Warmest Regards, > > Mark. > > Mike Kerner wrote: >>> >>> > I've been thinking of developing a deconstructor to use with Levure. >>> > The idea is that you would lay out the objects, but then the >>> > deconstructor would pull all the properties of each object, put them >>> > in a YML, JSON, or other similar file, and then they would be built in >>> > the app by script, when needed. >>> >>> That would be handy. I've considered making one, but the cost/benefit >>> relative to other commitments here has prevented me from diving in. I >>> appreciate your interest in this, and know you'll do a fine job with it. >>> >>> While it's understandable that Git can't handle LC's binary files, one of >>> the strongest benefits of "The xTalk Way" is visual design. >>> >>> This is why so many of us have written libraries to automatically >>> instantiate mobile-specific controls for us from LC-native objects, >>> because >>> it lets us enjoy the fluid development workflow that characterizes >>> xTalks, >>> rather than defining objects by typing long blocks of object definitions >>> in >>> scripts, which is a very C way of doing things. >>> >>> Automating use of Git through binary->script decomposers allows >>> developers >>> the full benefit of the best of both xTalk and lower-level workflows. >>> >>> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> > > -- > Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ > LiveCode: Everyone can create apps > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From hh at hyperhh.de Fri Aug 18 18:47:05 2017 From: hh at hyperhh.de (hh) Date: Sat, 19 Aug 2017 00:47:05 +0200 Subject: textbanner widget Message-ID: Some of you may find this new widget useful. A textbanner widget that displays a text string, an "one-liner", as running text right to left (optionally left to right) or static. Has many documented options to set (font, size, colors, speed, ...). Ready to use via the extension manager in LC 8.1.6. For use in LC 9.0.0-dpx extract the lcb-file from the zip and build your own. Download from here (you'll also find a demo-stack there): http://forums.livecode.com/viewtopic.php?p=157192#p157192 From bobsneidar at iotecdigital.com Fri Aug 18 18:48:51 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Fri, 18 Aug 2017 22:48:51 +0000 Subject: Developing first on android In-Reply-To: References: <99c57b2124a6f23886fa747caf706805@livecode.com> Message-ID: I'll weigh in here. An array representation of a stack might be useful in ways, such as storing it as a property of another stack, or writing it as a binary file to disk as a backup of sorts after arrayEncoding it. Just so long as no one thinks they can do something like take the key that represents say a button and copy it to another stack array, or a different place in the first array, all will be well. All kinds of nasties happen with ID's and linked graphics and whatnot just copying a button with a linked graphic to another card. Bob S > On Aug 18, 2017, at 15:12 , Brian Milby via use-livecode wrote: > > If I'm understanding correctly, a capability to export a stack as an array > (with the corresponding import) would get around the issue of the > non-public properties though. The array would be the intermediate format > that would be used by the engine to construct the stack in memory. LCS > could be used to serialize into a suitable disk format. It would mean that > the only way to get a full representation of the object would be to use the > full import if there were properties like you described above (unless I'm > missing something). > > I've actually been mulling something along these lines over for the past > few weeks (but was thinking about a direct XML format). I briefly looked > at the code to save a stack and noticed how it seems pretty straight > forward. I'll take a look at the code for some of the objects this weekend > and see what I think. Could be a good opportunity for the community to > contribute a useful new feature. From bobsneidar at iotecdigital.com Fri Aug 18 18:50:49 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Fri, 18 Aug 2017 22:50:49 +0000 Subject: lock screen gotcha revisited In-Reply-To: References: <952E58B6-358C-4044-89D3-E472E9FD2D4A@iotecdigital.com> <6F0B5437-DFB7-42A3-A844-4D5DFCB11F81@iotecdigital.com> Message-ID: Hard to say. I'm almost done finding every place I lock the screen and adding an unlock screen in the same handler. Bob S > On Aug 18, 2017, at 14:03 , J. Landman Gay via use-livecode wrote: > > That doesn't sound right, though I've seen issues with nested locks too. What happens if you call this handler: > > on unlockReally > repeat until the lockscreen is false > unlock screen > end repeat > end unlockReally From nabble at mad.pink Fri Aug 18 19:36:53 2017 From: nabble at mad.pink (pink) Date: Fri, 18 Aug 2017 16:36:53 -0700 (PDT) Subject: Daybed 2.0 - A Library for Apache CouchDB Message-ID: <1503099413366-4718601.post@n4.nabble.com> Apache has released CouchDB 2.1 and Daybed is still compatible. The library is available at: https://github.com/madpink/couchdb4livecode This has been a big week for me... I had my talk about CouchDB for Livecode Global (that was fun) I was interviewd for the CouchDB blog where I did my best to plug Livecode: https://blog.couchdb.org/2017/08/15/a-couchdb-user-story-gregory-madpink-miller-shares-his-couchdb-udemy-course/ I've created a coupon code for my CouchDB Udemy course for anyone interested: https://www.udemy.com/understanding-couchdb/?couponCode=LIVECODE As of now the Daybed library includes: 1. The main functions for GET, PUT, POST and DELETE to CouchDB 2. "Quick functions" which save the basic info (URL, authentication, db name) and let you quickly access docs 3. Sync functions which save documents to a database created for the user and saves locally as a "save stack" To-Do list: -continue updating/adding to the quick functions -add option to save to a per app database instead of per user (this will help make sync compatible with Cloudant) -toying with other save options besides the stack (open to suggestions) ----- --- Greg (pink) Miller mad, pink and dangerous to code -- View this message in context: http://runtime-revolution.278305.n4.nabble.com/Daybed-2-0-A-Library-for-Apache-CouchDB-tp4718601.html Sent from the Revolution - User mailing list archive at Nabble.com. From ahsoftware at sonic.net Fri Aug 18 21:37:19 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Fri, 18 Aug 2017 18:37:19 -0700 Subject: lock screen gotcha revisited In-Reply-To: References: <952E58B6-358C-4044-89D3-E472E9FD2D4A@iotecdigital.com> <6F0B5437-DFB7-42A3-A844-4D5DFCB11F81@iotecdigital.com> Message-ID: <26d6f131-2092-06c4-8a4d-f730a04b1300@sonic.net> On 08/18/2017 03:50 PM, Bob Sneidar via use-livecode wrote: > Hard to say. I'm almost done finding every place I lock the screen and adding an unlock screen in the same handler. And that, of course, is the best procedure. Locking/unlocking the screen works on sort of a reference-counting approach. In general, locking the screen increments a counter, unlocking the screen decrements it. When the counter reaches zero, the screen is unlocked and all the pending updates take place. -- Mark Wieder ahsoftware at gmail.com From jacque at hyperactivesw.com Fri Aug 18 22:41:01 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Fri, 18 Aug 2017 21:41:01 -0500 Subject: lock screen gotcha revisited In-Reply-To: <26d6f131-2092-06c4-8a4d-f730a04b1300@sonic.net> References: <952E58B6-358C-4044-89D3-E472E9FD2D4A@iotecdigital.com> <6F0B5437-DFB7-42A3-A844-4D5DFCB11F81@iotecdigital.com> <26d6f131-2092-06c4-8a4d-f730a04b1300@sonic.net> Message-ID: <15df85cf560.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Except when it doesn't. There seems to be an override in the lock count if any unlock uses a visual effect. I'm not sure if that's on purpose or not. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com On August 18, 2017 8:39:34 PM Mark Wieder via use-livecode wrote: > On 08/18/2017 03:50 PM, Bob Sneidar via use-livecode wrote: >> Hard to say. I'm almost done finding every place I lock the screen and >> adding an unlock screen in the same handler. > > And that, of course, is the best procedure. Locking/unlocking the screen > works on sort of a reference-counting approach. In general, locking the > screen increments a counter, unlocking the screen decrements it. When > the counter reaches zero, the screen is unlocked and all the pending > updates take place. > > -- > Mark Wieder > ahsoftware at gmail.com > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From MikeKerner at roadrunner.com Fri Aug 18 22:51:44 2017 From: MikeKerner at roadrunner.com (Mike Kerner) Date: Fri, 18 Aug 2017 22:51:44 -0400 Subject: Daybed 2.0 - A Library for Apache CouchDB In-Reply-To: <1503099413366-4718601.post@n4.nabble.com> References: <1503099413366-4718601.post@n4.nabble.com> Message-ID: Greg, That was a really cool talk, yesterday. It got me thinking about Couch as a maybe a new go-to option for cloud db's. On Fri, Aug 18, 2017 at 7:36 PM, pink via use-livecode < use-livecode at lists.runrev.com> wrote: > Apache has released CouchDB 2.1 and Daybed is still compatible. > > The library is available at: https://github.com/madpink/couchdb4livecode > > This has been a big week for me... > I had my talk about CouchDB for Livecode Global (that was fun) > > I was interviewd for the CouchDB blog where I did my best to plug Livecode: > https://blog.couchdb.org/2017/08/15/a-couchdb-user-story- > gregory-madpink-miller-shares-his-couchdb-udemy-course/ > > I've created a coupon code for my CouchDB Udemy course for anyone > interested: > https://www.udemy.com/understanding-couchdb/?couponCode=LIVECODE > > As of now the Daybed library includes: > > 1. The main functions for GET, PUT, POST and DELETE to CouchDB > 2. "Quick functions" which save the basic info (URL, authentication, db > name) and let you quickly access docs > 3. Sync functions which save documents to a database created for the user > and saves locally as a "save stack" > > To-Do list: > -continue updating/adding to the quick functions > -add option to save to a per app database instead of per user (this will > help make sync compatible with Cloudant) > -toying with other save options besides the stack (open to suggestions) > > > > ----- > --- > Greg (pink) Miller > mad, pink and dangerous to code > -- > View this message in context: http://runtime-revolution. > 278305.n4.nabble.com/Daybed-2-0-A-Library-for-Apache- > CouchDB-tp4718601.html > Sent from the Revolution - User mailing list archive at Nabble.com. > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > -- On the first day, God created the heavens and the Earth On the second day, God created the oceans. On the third day, God put the animals on hold for a few hours, and did a little diving. And God said, "This is good." From ahsoftware at sonic.net Fri Aug 18 23:45:11 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Fri, 18 Aug 2017 20:45:11 -0700 Subject: lock screen gotcha revisited In-Reply-To: <15df85cf560.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> References: <952E58B6-358C-4044-89D3-E472E9FD2D4A@iotecdigital.com> <6F0B5437-DFB7-42A3-A844-4D5DFCB11F81@iotecdigital.com> <26d6f131-2092-06c4-8a4d-f730a04b1300@sonic.net> <15df85cf560.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Message-ID: <1b2d46f2-b50e-099c-7105-aff55c260e8f@sonic.net> On 08/18/2017 07:41 PM, J. Landman Gay via use-livecode wrote: > Except when it doesn't. There seems to be an override in the lock count > if any unlock uses a visual effect. I'm not sure if that's on purpose or > not. Thanks. Good to know. I've just been using the barebones lock. -- Mark Wieder ahsoftware at gmail.com From brian at milby7.com Sat Aug 19 00:25:10 2017 From: brian at milby7.com (Brian Milby) Date: Fri, 18 Aug 2017 23:25:10 -0500 Subject: Applescript Fails in Standalone on Mac Built with 8.1.6 In-Reply-To: <8d54790d948f2ce78f1f9e3250498c43@livecode.com> References: <0e75188e-8bf4-4087-a54a-58a1eb828125@Brian-Milbys-iPhone-6s-Plus> <8d54790d948f2ce78f1f9e3250498c43@livecode.com> Message-ID: I'll see if I can figure out a way to make a test like this work. On Fri, Aug 18, 2017 at 12:01 PM, Mark Waddingham via use-livecode < use-livecode at lists.runrev.com> wrote: > On 2017-08-18 18:14, Brian Milby via use-livecode wrote: > >> I'm so new I can't address the history but seeing where the fix was >> implemented it should not fall out unless the build process is >> significantly changed. It is in the same place all of the language >> localization files are specified. >> > > I can help fill in the history - yes we've broken it always accidentally > on numerous occasions; and then fixed it, and the broken it again, or > didn't really fix it properly or something (I can't make an excuse, or give > a good reason here - other than it just seems to happen periodically!) > > The issue here is that we don't have a test for whether it is working in > each built release - so that is the way to make sure it never happens again. > > @Brian: Would you be willing to write a test for this? It is going to be a > little tricky as it requires IPC (unless you can use send apple event, to > send one to the calling process), but there's an example of us doing that > already in the private data clipboardData test: > > on TestClipboardPrivateKey > set the clipboardData["private"] to "Hello World!" > > TestAssert "private key is present before external change", \ > "private" is among the keys of the clipboardData > > local tHelperFilename > set the itemDelimiter to slash > put format("%s/_clipboard_private_setter.livecodescript", \ > _TestPath()) into tHelperFilename > if the environment is "command line" then > TestRunStack "-ui", tHelperFilename > else > TestRunStack "", tHelperFilename > end if > > TestAssert "helper changed clipboard externally", the result is 0 > > if the platform is "Linux" then > TestAssertBroken "private key not present after external change", \ > "private" is not among the keys of the clipboardData, \ > "Bug 19117" > else > TestAssert "private key not present after external change", \ > "private" is not among the keys of the clipboardData > end if > end TestClipboardPrivateKey > > This basically uses a sub-process to do something to the clipboard so that > the test process can check whether the private key disappears in this case. > > Warmest Regards, > > Mark. > > -- > Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ > LiveCode: Everyone can create apps > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From brian at milby7.com Sat Aug 19 00:46:43 2017 From: brian at milby7.com (Brian Milby) Date: Fri, 18 Aug 2017 23:46:43 -0500 Subject: Developing first on android In-Reply-To: References: <99c57b2124a6f23886fa747caf706805@livecode.com> Message-ID: I can see that. If using the export as a way to track where you made changes, it would be good to have it in a text format. I've not gotten far enough into the object code to tell when/where it would be safe to edit such an array. This will need to be something considered when writing the import code. On Fri, Aug 18, 2017 at 5:48 PM, Bob Sneidar via use-livecode < use-livecode at lists.runrev.com> wrote: > I'll weigh in here. An array representation of a stack might be useful in > ways, such as storing it as a property of another stack, or writing it as a > binary file to disk as a backup of sorts after arrayEncoding it. > > Just so long as no one thinks they can do something like take the key that > represents say a button and copy it to another stack array, or a different > place in the first array, all will be well. All kinds of nasties happen > with ID's and linked graphics and whatnot just copying a button with a > linked graphic to another card. > > Bob S > > > > On Aug 18, 2017, at 15:12 , Brian Milby via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > > If I'm understanding correctly, a capability to export a stack as an > array > > (with the corresponding import) would get around the issue of the > > non-public properties though. The array would be the intermediate format > > that would be used by the engine to construct the stack in memory. LCS > > could be used to serialize into a suitable disk format. It would mean > that > > the only way to get a full representation of the object would be to use > the > > full import if there were properties like you described above (unless I'm > > missing something). > > > > I've actually been mulling something along these lines over for the past > > few weeks (but was thinking about a direct XML format). I briefly looked > > at the code to save a stack and noticed how it seems pretty straight > > forward. I'll take a look at the code for some of the objects this > weekend > > and see what I think. Could be a good opportunity for the community to > > contribute a useful new feature. > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From klaus at major-k.de Sat Aug 19 07:33:54 2017 From: klaus at major-k.de (Klaus major-k) Date: Sat, 19 Aug 2017 13:33:54 +0200 Subject: keeping keys of an array in the order they came in? Message-ID: <2028CE98-509B-498A-AEBD-F008425BFE96@major-k.de> Hi dfriends, need a little help, I am filling an array (to eliminate doublettes) and really need to keep the order of the keys as they came in. Example: ... put "60,30,40" into tK repeat for each item tItem in tK put "sdsdsdsddsd" into tArray[tItem] end repeat put the keys of tArray ... Now I would like to get: 60 30 40 This is just an example, I cannot control the content of tK. Know what I mean? Any hints very welcome, thank you! Best Klaus -- Klaus Major http://www.major-k.de klaus at major-k.de From jonathandlynch at gmail.com Sat Aug 19 08:09:11 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Sat, 19 Aug 2017 08:09:11 -0400 Subject: keeping keys of an array in the order they came in? In-Reply-To: <2028CE98-509B-498A-AEBD-F008425BFE96@major-k.de> References: <2028CE98-509B-498A-AEBD-F008425BFE96@major-k.de> Message-ID: <14827322-79CE-4B87-96C1-856DD110A7E2@gmail.com> Maybe a two-part array? Myarray[1,tk] You can control the first part of the array, keeping it in order, and thus not depend on how LC orders the tK part of the array. Sent from my iPhone > On Aug 19, 2017, at 7:33 AM, Klaus major-k via use-livecode wrote: > > Hi dfriends, > > need a little help, I am filling an array (to eliminate doublettes) > and really need to keep the order of the keys as they came in. > > Example: > ... > put "60,30,40" into tK > repeat for each item tItem in tK > put "sdsdsdsddsd" into tArray[tItem] > end repeat > put the keys of tArray > ... > Now I would like to get: > 60 > 30 > 40 > > This is just an example, I cannot control the content of tK. > Know what I mean? > > Any hints very welcome, thank you! > > > Best > > Klaus > > -- > Klaus Major > http://www.major-k.de > klaus at major-k.de > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From jbv at souslelogo.com Sat Aug 19 08:12:09 2017 From: jbv at souslelogo.com (jbv) Date: Sat, 19 Aug 2017 14:12:09 +0200 Subject: keeping keys of an array in the order they came in? In-Reply-To: <2028CE98-509B-498A-AEBD-F008425BFE96@major-k.de> References: <2028CE98-509B-498A-AEBD-F008425BFE96@major-k.de> Message-ID: <00e88e5e5dda778f7b3fabd6f4bc1530.squirrel@sage.on-rev.com> Hi Klaus I've been there and the only solution I found was to maintain a second array : put 0 into x put "abc" into array1[60] add 1 to x put 60 into array2[x] put "xyz" into array1[30] add 1 to x put 30 into array2[x] put the keys of array2 into tkeys sort lines of tkeys ascending numeric repeat for each line j in tkeys put array1[array2[j]] & return after myvar end repeat You can also use a two-dimentional array instead of 2 separate arrays... jbv On Sat, August 19, 2017 1:33 pm, Klaus major-k via use-livecode wrote: > Hi dfriends, > > > need a little help, I am filling an array (to eliminate doublettes) and > really need to keep the order of the keys as they came in. > > Example: > ... > put "60,30,40" into tK repeat for each item tItem in tK put "sdsdsdsddsd" > into tArray[tItem] end repeat put the keys of tArray ... > Now I would like to get: > 60 > 30 > 40 > > > This is just an example, I cannot control the content of tK. > Know what I mean? > > > Any hints very welcome, thank you! > > > > Best > > > Klaus > > > -- > Klaus Major > http://www.major-k.de > klaus at major-k.de > > > _______________________________________________ > use-livecode mailing list use-livecode at lists.runrev.com Please visit this > url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > > From jonathandlynch at gmail.com Sat Aug 19 08:22:08 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Sat, 19 Aug 2017 08:22:08 -0400 Subject: keeping keys of an array in the order they came in? In-Reply-To: <00e88e5e5dda778f7b3fabd6f4bc1530.squirrel@sage.on-rev.com> References: <2028CE98-509B-498A-AEBD-F008425BFE96@major-k.de> <00e88e5e5dda778f7b3fabd6f4bc1530.squirrel@sage.on-rev.com> Message-ID: <2BBD9B66-9DEC-484A-BF1E-C9E50AF9F3A7@gmail.com> You could alter the name of the elements... Put "X_" & tK into tArrayElement Put tData into myArray[tArrayElement] X would be created in a counting loop. That way, when you get the keys of the array, you can sort numeric by item 1 of each, using "_" as the itemdel. This will give you the original order with just 1 array dimension, and you can easily retrieve the value of tK. Sent from my iPhone > On Aug 19, 2017, at 8:12 AM, jbv via use-livecode wrote: > > Hi Klaus > I've been there and the only solution I found was to maintain > a second array : > > put 0 into x > put "abc" into array1[60] > add 1 to x > put 60 into array2[x] > put "xyz" into array1[30] > add 1 to x > put 30 into array2[x] > > put the keys of array2 into tkeys > sort lines of tkeys ascending numeric > repeat for each line j in tkeys > put array1[array2[j]] & return after myvar > end repeat > > You can also use a two-dimentional array instead > of 2 separate arrays... > > jbv > > >> On Sat, August 19, 2017 1:33 pm, Klaus major-k via use-livecode wrote: >> Hi dfriends, >> >> >> need a little help, I am filling an array (to eliminate doublettes) and >> really need to keep the order of the keys as they came in. >> >> Example: >> ... >> put "60,30,40" into tK repeat for each item tItem in tK put "sdsdsdsddsd" >> into tArray[tItem] end repeat put the keys of tArray ... >> Now I would like to get: >> 60 >> 30 >> 40 >> >> >> This is just an example, I cannot control the content of tK. >> Know what I mean? >> >> >> Any hints very welcome, thank you! >> >> >> >> Best >> >> >> Klaus >> >> >> -- >> Klaus Major >> http://www.major-k.de >> klaus at major-k.de >> >> >> _______________________________________________ >> use-livecode mailing list use-livecode at lists.runrev.com Please visit this >> url to subscribe, unsubscribe and manage your subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> >> > > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From klaus at major-k.de Sat Aug 19 08:28:02 2017 From: klaus at major-k.de (Klaus major-k) Date: Sat, 19 Aug 2017 14:28:02 +0200 Subject: keeping keys of an array in the order they came in? In-Reply-To: <2BBD9B66-9DEC-484A-BF1E-C9E50AF9F3A7@gmail.com> References: <2028CE98-509B-498A-AEBD-F008425BFE96@major-k.de> <00e88e5e5dda778f7b3fabd6f4bc1530.squirrel@sage.on-rev.com> <2BBD9B66-9DEC-484A-BF1E-C9E50AF9F3A7@gmail.com> Message-ID: <8DCB2027-7F59-4D4A-BB40-152C644BDA91@major-k.de> Hi Jonathan, > Am 19.08.2017 um 14:22 schrieb Jonathan Lynch via use-livecode : > > You could alter the name of the elements... > > Put "X_" & tK into tArrayElement > Put tData into myArray[tArrayElement] > X would be created in a counting loop. > > That way, when you get the keys of the array, you can sort numeric by item 1 of each, using "_" as the itemdel. This will give you the original order with just 1 array dimension, and you can easily retrieve the value of tK. not possible, I am doing something like this: ... put empty into tArray repeat for each line tLine in tData put item 2 of tLine into tKey if tKey = EMPTY then next repeat put tLine & CR after tArray[tKey] end repeat ... And item 2 are these said number, so I cannot control/name the key this way. > Sent from my iPhone > >> On Aug 19, 2017, at 8:12 AM, jbv via use-livecode wrote: >> >> Hi Klaus >> I've been there and the only solution I found was to maintain >> a second array : >> >> put 0 into x >> put "abc" into array1[60] >> add 1 to x >> put 60 into array2[x] >> put "xyz" into array1[30] >> add 1 to x >> put 30 into array2[x] >> >> put the keys of array2 into tkeys >> sort lines of tkeys ascending numeric >> repeat for each line j in tkeys >> put array1[array2[j]] & return after myvar >> end repeat Best Klaus -- Klaus Major http://www.major-k.de klaus at major-k.de From bonnmike at gmail.com Sat Aug 19 08:36:39 2017 From: bonnmike at gmail.com (Mike Bonner) Date: Sat, 19 Aug 2017 06:36:39 -0600 Subject: keeping keys of an array in the order they came in? In-Reply-To: <8DCB2027-7F59-4D4A-BB40-152C644BDA91@major-k.de> References: <2028CE98-509B-498A-AEBD-F008425BFE96@major-k.de> <00e88e5e5dda778f7b3fabd6f4bc1530.squirrel@sage.on-rev.com> <2BBD9B66-9DEC-484A-BF1E-C9E50AF9F3A7@gmail.com> <8DCB2027-7F59-4D4A-BB40-152C644BDA91@major-k.de> Message-ID: Have a separate list, or a special key that holds your list of keys. put empty into tArray repeat for each line tLine in tData put item 2 of tLine into tKey if tKey = EMPTY then next repeat put tLine & CR after tArray[tKey] put tKey & cr after tarray['myKeyList'] end repeat Then when you need to pull things back out, grab myKeyList and iterated through it. (delete the trailing cr after the repeat ends of course) On Sat, Aug 19, 2017 at 6:28 AM, Klaus major-k via use-livecode < use-livecode at lists.runrev.com> wrote: > Hi Jonathan, > > > Am 19.08.2017 um 14:22 schrieb Jonathan Lynch via use-livecode < > use-livecode at lists.runrev.com>: > > > > You could alter the name of the elements... > > > > Put "X_" & tK into tArrayElement > > Put tData into myArray[tArrayElement] > > X would be created in a counting loop. > > > > That way, when you get the keys of the array, you can sort numeric by > item 1 of each, using "_" as the itemdel. This will give you the original > order with just 1 array dimension, and you can easily retrieve the value of > tK. > > not possible, I am doing something like this: > ... > put empty into tArray > repeat for each line tLine in tData > put item 2 of tLine into tKey > if tKey = EMPTY then next repeat > put tLine & CR after tArray[tKey] > end repeat > ... > And item 2 are these said number, so I cannot control/name the key this > way. > > > Sent from my iPhone > > > >> On Aug 19, 2017, at 8:12 AM, jbv via use-livecode < > use-livecode at lists.runrev.com> wrote: > >> > >> Hi Klaus > >> I've been there and the only solution I found was to maintain > >> a second array : > >> > >> put 0 into x > >> put "abc" into array1[60] > >> add 1 to x > >> put 60 into array2[x] > >> put "xyz" into array1[30] > >> add 1 to x > >> put 30 into array2[x] > >> > >> put the keys of array2 into tkeys > >> sort lines of tkeys ascending numeric > >> repeat for each line j in tkeys > >> put array1[array2[j]] & return after myvar > >> end repeat > > Best > > Klaus > > -- > Klaus Major > http://www.major-k.de > klaus at major-k.de > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From klaus at major-k.de Sat Aug 19 09:12:23 2017 From: klaus at major-k.de (Klaus major-k) Date: Sat, 19 Aug 2017 15:12:23 +0200 Subject: keeping keys of an array in the order they came in? In-Reply-To: References: <2028CE98-509B-498A-AEBD-F008425BFE96@major-k.de> <00e88e5e5dda778f7b3fabd6f4bc1530.squirrel@sage.on-rev.com> <2BBD9B66-9DEC-484A-BF1E-C9E50AF9F3A7@gmail.com> <8DCB2027-7F59-4D4A-BB40-152C644BDA91@major-k.de> Message-ID: <5C8C4255-4DFC-4DC5-8EB1-C78FD4135B8B@major-k.de> Hi Mike, > Am 19.08.2017 um 14:36 schrieb Mike Bonner via use-livecode : > > Have a separate list, or a special key that holds your list of keys. > > put empty into tArray > repeat for each line tLine in tData > put item 2 of tLine into tKey > if tKey = EMPTY then next repeat > put tLine & CR after tArray[tKey] > put tKey & cr after tarray['myKeyList'] > end repeat > > Then when you need to pull things back out, grab myKeyList and iterated > through it. (delete the trailing cr after the repeat ends of course) thank you, will try this! > On Sat, Aug 19, 2017 at 6:28 AM, Klaus major-k via use-livecode < > use-livecode at lists.runrev.com> wrote: > >> Hi Jonathan, >> >>> Am 19.08.2017 um 14:22 schrieb Jonathan Lynch via use-livecode < >> use-livecode at lists.runrev.com>: >>> >>> You could alter the name of the elements... >>> >>> Put "X_" & tK into tArrayElement >>> Put tData into myArray[tArrayElement] >>> X would be created in a counting loop. >>> >>> That way, when you get the keys of the array, you can sort numeric by >> item 1 of each, using "_" as the itemdel. This will give you the original >> order with just 1 array dimension, and you can easily retrieve the value of >> tK. >> >> not possible, I am doing something like this: >> ... >> put empty into tArray >> repeat for each line tLine in tData >> put item 2 of tLine into tKey >> if tKey = EMPTY then next repeat >> put tLine & CR after tArray[tKey] >> end repeat >> ... >> And item 2 are these said number, so I cannot control/name the key this >> way. Best Klaus -- Klaus Major http://www.major-k.de klaus at major-k.de From nabble at mad.pink Sat Aug 19 09:20:32 2017 From: nabble at mad.pink (pink) Date: Sat, 19 Aug 2017 06:20:32 -0700 (PDT) Subject: Daybed 2.0 - A Library for Apache CouchDB In-Reply-To: References: <1503099413366-4718601.post@n4.nabble.com> Message-ID: <1503148832744-4718615.post@n4.nabble.com> For experimentation, you can setup a free account with IBM for Cloudant. The free account is for 1GB which is enough for around 2 million records/revisions Cloudant shares most of their code with Apache for CouchDB, the only major difference is how they setup users. The Daybed library will work with Cloudant except for the sync functions. ----- --- Greg (pink) Miller mad, pink and dangerous to code -- View this message in context: http://runtime-revolution.278305.n4.nabble.com/Daybed-2-0-A-Library-for-Apache-CouchDB-tp4718601p4718615.html Sent from the Revolution - User mailing list archive at Nabble.com. From klaus at major-k.de Sat Aug 19 09:44:11 2017 From: klaus at major-k.de (Klaus major-k) Date: Sat, 19 Aug 2017 15:44:11 +0200 Subject: keeping keys of an array in the order they came in? In-Reply-To: <5C8C4255-4DFC-4DC5-8EB1-C78FD4135B8B@major-k.de> References: <2028CE98-509B-498A-AEBD-F008425BFE96@major-k.de> <00e88e5e5dda778f7b3fabd6f4bc1530.squirrel@sage.on-rev.com> <2BBD9B66-9DEC-484A-BF1E-C9E50AF9F3A7@gmail.com> <8DCB2027-7F59-4D4A-BB40-152C644BDA91@major-k.de> <5C8C4255-4DFC-4DC5-8EB1-C78FD4135B8B@major-k.de> Message-ID: Hi Mike, I added a little IF THEN clause to avoid doublettes in the ney key, too, and now it does what I need, thanks again! > Am 19.08.2017 um 15:12 schrieb Klaus major-k via use-livecode : >> >> put empty into tArray >> repeat for each line tLine in tData >> put item 2 of tLine into tKey >> if tKey = EMPTY then next repeat >> put tLine & CR after tArray[tKey] if lineoffset(tKey,tArray["keylist"]) = 0 then put tKey & CR after tArray["keylist"] end if >> ## put tKey & cr after tarray['myKeyList'] >> end repeat Best Klaus -- Klaus Major http://www.major-k.de klaus at major-k.de From klaus at major-k.de Sat Aug 19 10:23:08 2017 From: klaus at major-k.de (Klaus major-k) Date: Sat, 19 Aug 2017 16:23:08 +0200 Subject: keeping keys of an array in the order they came in? In-Reply-To: References: <2028CE98-509B-498A-AEBD-F008425BFE96@major-k.de> <00e88e5e5dda778f7b3fabd6f4bc1530.squirrel@sage.on-rev.com> <2BBD9B66-9DEC-484A-BF1E-C9E50AF9F3A7@gmail.com> <8DCB2027-7F59-4D4A-BB40-152C644BDA91@major-k.de> <5C8C4255-4DFC-4DC5-8EB1-C78FD4135B8B@major-k.de> Message-ID: Little addition, thanks hermann: > Am 19.08.2017 um 15:44 schrieb Klaus major-k via use-livecode : > > Hi Mike, > > I added a little IF THEN clause to avoid doublettes in the ney key, too, > and now it does what I need, thanks again! > >> Am 19.08.2017 um 15:12 schrieb Klaus major-k via use-livecode : >>> >>> put empty into tArray ## To avoid surpises with LINEOFFSET: set the wholematches to TRUE >>> repeat for each line tLine in tData >>> put item 2 of tLine into tKey >>> if tKey = EMPTY then next repeat >>> put tLine & CR after tArray[tKey] ## So this will work as exspected: > > if lineoffset(tKey,tArray["keylist"]) = 0 then > put tKey & CR after tArray["keylist"] > end if > >>> ## put tKey & cr after tarray['myKeyList'] >>> end repeat Best Klaus -- Klaus Major http://www.major-k.de klaus at major-k.de From alex at tweedly.org Sat Aug 19 10:57:53 2017 From: alex at tweedly.org (Alex Tweedly) Date: Sat, 19 Aug 2017 15:57:53 +0100 Subject: keeping keys of an array in the order they came in? In-Reply-To: References: <2028CE98-509B-498A-AEBD-F008425BFE96@major-k.de> <00e88e5e5dda778f7b3fabd6f4bc1530.squirrel@sage.on-rev.com> <2BBD9B66-9DEC-484A-BF1E-C9E50AF9F3A7@gmail.com> <8DCB2027-7F59-4D4A-BB40-152C644BDA91@major-k.de> <5C8C4255-4DFC-4DC5-8EB1-C78FD4135B8B@major-k.de> Message-ID: Hmmm - you haven't mentioned how much data you're working with. Using lineoffset() to check for duplicated keys will make you (relatively) slow on large data sets, since it is O(n**2). Since you know that item 2 is not empty, you must also know that the whole line is not empty :-), so you can simply check for that. put empty into Array repeat for each line tLine in tData put item 2 of tLine into tKey if tKey = EMPTY then next repeat if tArray[tKey] is EMPTY then put tLine & CR after tArray[tKey] -- or would 'into' be even faster than 'after' ?? end if end repeat Alex. On 19/08/2017 15:23, Klaus major-k via use-livecode wrote: > Little addition, thanks hermann: > >> Am 19.08.2017 um 15:44 schrieb Klaus major-k via use-livecode : >> >> Hi Mike, >> >> I added a little IF THEN clause to avoid doublettes in the ney key, too, >> and now it does what I need, thanks again! >> >>> Am 19.08.2017 um 15:12 schrieb Klaus major-k via use-livecode : >>>> put empty into tArray > ## To avoid surpises with LINEOFFSET: > set the wholematches to TRUE > >>>> repeat for each line tLine in tData >>>> put item 2 of tLine into tKey >>>> if tKey = EMPTY then next repeat >>>> put tLine & CR after tArray[tKey] > ## So this will work as exspected: >> if lineoffset(tKey,tArray["keylist"]) = 0 then >> put tKey & CR after tArray["keylist"] >> end if >> >>>> ## put tKey & cr after tarray['myKeyList'] >>>> end repeat > Best > > Klaus > > -- > Klaus Major > http://www.major-k.de > klaus at major-k.de > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From klaus at major-k.de Sat Aug 19 11:04:19 2017 From: klaus at major-k.de (Klaus major-k) Date: Sat, 19 Aug 2017 17:04:19 +0200 Subject: keeping keys of an array in the order they came in? In-Reply-To: References: <2028CE98-509B-498A-AEBD-F008425BFE96@major-k.de> <00e88e5e5dda778f7b3fabd6f4bc1530.squirrel@sage.on-rev.com> <2BBD9B66-9DEC-484A-BF1E-C9E50AF9F3A7@gmail.com> <8DCB2027-7F59-4D4A-BB40-152C644BDA91@major-k.de> <5C8C4255-4DFC-4DC5-8EB1-C78FD4135B8B@major-k.de> Message-ID: <7B37C1D2-B682-4B2D-AD9B-E174BFBE6CD8@major-k.de> Hi Alex, > Am 19.08.2017 um 16:57 schrieb Alex Tweedly via use-livecode : > > Hmmm - you haven't mentioned how much data you're working with. not sure, but definitively less than 5000. > Using lineoffset() to check for duplicated keys will make you (relatively) slow on large data sets, since it is O(n**2). I made little test and it is fast enough for my purpose. :-) > Since you know that item 2 is not empty, you must also know that the whole line is not empty :-), > so you can simply check for that. > > put empty into Array > repeat for each line tLine in tData > put item 2 of tLine into tKey > if tKey = EMPTY then next repeat > # if tArray[tKey] is EMPTY then > put tLine & CR after tArray[tKey] -- or would 'into' be even faster than 'after' ?? ## I need AFTER, since I want to collect all lines with the same item 2 in that key. ## So no need for this IF clause in my case. > # end if > end repeat > > Alex. Best Klaus -- Klaus Major http://www.major-k.de klaus at major-k.de From tom at makeshyft.com Sat Aug 19 11:58:35 2017 From: tom at makeshyft.com (Tom Glod) Date: Sat, 19 Aug 2017 11:58:35 -0400 Subject: Daybed 2.0 - A Library for Apache CouchDB In-Reply-To: <1503148832744-4718615.post@n4.nabble.com> References: <1503099413366-4718601.post@n4.nabble.com> <1503148832744-4718615.post@n4.nabble.com> Message-ID: Great Job! thank you On Sat, Aug 19, 2017 at 9:20 AM, pink via use-livecode < use-livecode at lists.runrev.com> wrote: > For experimentation, you can setup a free account with IBM for Cloudant. > > The free account is for 1GB which is enough for around 2 million > records/revisions > > Cloudant shares most of their code with Apache for CouchDB, the only major > difference is how they setup users. The Daybed library will work with > Cloudant except for the sync functions. > > > > ----- > --- > Greg (pink) Miller > mad, pink and dangerous to code > -- > View this message in context: http://go.sparkpostmail1.com/f/a/-g-WTBLoY1fR-Y-tQF-yKQ~~/AAGp3AA~/RgRbeZPUP0EIACzK-qzwulVXA3NwY1gEAAAAAFkGc2hhcmVkYQhzdW5kYXlfMmAMNTIuMzcuMjA1LjI2QgoAAFRgmFmE7uZvUh11c2UtbGl2ZWNvZGVAbGlzdHMucnVucmV2LmNvbQlRBAAAAABEGWh0dHA6Ly9ydW50aW1lLXJldm9sdXRpb25HAnt9. > 278305.n4.nabble.com/Daybed-2-0-A-Library-for-Apache- > CouchDB-tp4718601p4718615.html > Sent from the Revolution - User mailing list archive at Nabble.com. > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://go.sparkpostmail1.com/f/a/sudM7oL0JXYgAmX-S3jjsA~~/AAGp3AA~/RgRbeZPUP0EIACzK-qzwulVXA3NwY1gEAAAAAFkGc2hhcmVkYQhzdW5kYXlfMmAMNTIuMzcuMjA1LjI2QgoAAFRgmFmE7uZvUh11c2UtbGl2ZWNvZGVAbGlzdHMucnVucmV2LmNvbQlRBAAAAABENWh0dHA6Ly9saXN0cy5ydW5yZXYuY29tL21haWxtYW4vbGlzdGluZm8vdXNlLWxpdmVjb2RlRwJ7fQ~~ > From bvlahos at mac.com Sat Aug 19 13:26:37 2017 From: bvlahos at mac.com (Bill Vlahos) Date: Sat, 19 Aug 2017 10:26:37 -0700 Subject: MacBook Pro Touch Bar support Message-ID: <86A465EE-F77D-45A3-AF48-28670A38F54D@mac.com> Has anyone been able to integrate the MacBook Pro Touch Bar in a LiveCode application? If so, how? Thank you, Bill Vlahos From brahma at hindu.org Sat Aug 19 14:06:32 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Sat, 19 Aug 2017 18:06:32 +0000 Subject: Filtering, Search and Fields on Mobile Message-ID: <74969A44-AFA7-4E65-93D5-C57402B2EF16@hindu.org> In our new app I just exposed *all* the audio on our web site in different playlists. you can now download and play off line. beta users begged me? done! YAY! Some some playlist (posted to a mobile scrolling field) are 900 lines long and you can't find anything BOO! Later I will implement more curated play lists ala Spotify.. but until then we I think just offering search is a quick fix for V1 since searching and filter is really something we will do everywhere, plan to create behavior_SearchNFilter.livecodescript that we can attach to any card or group on a card.. The scenarios I can see are pretty much always the same 1) search records which you have already fetcedh and all the data is in a local array? -- take some action with the results which is very often just: -- put results back into some list field (or later, datagrid) 2) filter the actual lines already in a field 3) search for something in the text of a field and do something like colorize all the found words and set their link text for some action. where we can use generalized commands functions that take generic params from the calling stack/card, like target, field, search string, set of filers for a pull down men?etc. To be worked out? but it seems like smart way to go rather than having search and filter be re-invented every time we need it. It will be easier, I think, if it is all in one script and if we need "extensions" for some new scenario/module(=stack in this framework) we just add it there and then it could be easily re-used somewhere whereelse, because typically the scenarios are very parallel for this kind "job" that the user needs to get done: "Make it easier to find and show what I want to see." OK so that's my plan, If any of you have any thoughts on it, please free free to comment? for now will just be attached to "search-filter" group on the playlist card in one stack I have two quick questions related to the "view" end of this: 1) how do we control when the mobile keyboard is opened. Sometimes I have left a field on a card with traversal on, and the mobile keyboard automatically open when you go to that card, even though the user hasn't actually tapped into the field (in this case a field for entering a search string) what has been "settled on" as best practice? OR how do you do it? 2) current scenarios create a field, then set the mobilescroller, but what about dynamically changing the contents of that field later? Can you just "Talk" to it like any other field in a regular LC environment. At What caveats are there on Mobile for taking lines of field, filtering and putting the results back in. I will go straight to work on this tomorrow, but was hoping to get some hints before I spend my usual hours "fumbling around" BR From matthias_livecode_150811 at m-r-d.de Sat Aug 19 16:07:49 2017 From: matthias_livecode_150811 at m-r-d.de (Matthias Rebbe) Date: Sat, 19 Aug 2017 22:07:49 +0200 Subject: Daybed 2.0 - A Library for Apache CouchDB In-Reply-To: References: <1503099413366-4718601.post@n4.nabble.com> Message-ID: <508EECAF-D385-4653-8682-F13E08AB1A6C@m-r-d.de> > Am 19.08.2017 um 04:51 schrieb Mike Kerner via use-livecode >: > > Greg, > That was a really cool talk, yesterday. I agree, but I have to admit that I have to watch the recording at least once. It was very good, but also very much input. ;) Matthias > It got me thinking abo > ut Couch as > a maybe a new go-to option for cloud db's. > > On Fri, Aug 18, 2017 at 7:36 PM, pink via use-livecode < > use-livecode at lists.runrev.com > wrote: > >> Apache has released CouchDB 2.1 and Daybed is still compatible. >> >> The library is available at: https://github.com/madpink/couchdb4livecode >> >> This has been a big week for me... >> I had my talk about CouchDB for Livecode Global (that was fun) >> >> I was interviewd for the CouchDB blog where I did my best to plug Livecode: >> https://blog.couchdb.org/2017/08/15/a-couchdb-user-story- >> gregory-madpink-miller-shares-his-couchdb-udemy-course/ >> >> I've created a coupon code for my CouchDB Udemy course for anyone >> interested: >> https://www.udemy.com/understanding-couchdb/?couponCode=LIVECODE >> >> As of now the Daybed library includes: >> >> 1. The main functions for GET, PUT, POST and DELETE to CouchDB >> 2. "Quick functions" which save the basic info (URL, authentication, db >> name) and let you quickly access docs >> 3. Sync functions which save documents to a database created for the user >> and saves locally as a "save stack" >> >> To-Do list: >> -continue updating/adding to the quick functions >> -add option to save to a per app database instead of per user (this will >> help make sync compatible with Cloudant) >> -toying with other save options besides the stack (open to suggestions) >> >> >> >> ----- >> --- >> Greg (pink) Miller >> mad, pink and dangerous to code >> -- >> View this message in context: http://runtime-revolution. >> 278305.n4.nabble.com/Daybed-2-0-A-Library-for-Apache- >> CouchDB-tp4718601.html >> Sent from the Revolution - User mailing list archive at Nabble.com. >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> > > > > -- > On the first day, God created the heavens and the Earth > On the second day, God created the oceans. > On the third day, God put the animals on hold for a few hours, > and did a little diving. > And God said, "This is good." > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode Matthias Rebbe +49 5741 310000 ?matthiasrebbe.eu ? From monte at appisle.net Sat Aug 19 23:13:11 2017 From: monte at appisle.net (Monte Goulding) Date: Sun, 20 Aug 2017 13:13:11 +1000 Subject: MacBook Pro Touch Bar support In-Reply-To: <86A465EE-F77D-45A3-AF48-28670A38F54D@mac.com> References: <86A465EE-F77D-45A3-AF48-28670A38F54D@mac.com> Message-ID: > On 20 Aug 2017, at 3:26 am, Bill Vlahos via use-livecode wrote: > > Has anyone been able to integrate the MacBook Pro Touch Bar in a LiveCode application? > > If so, how? I?m happy to do an external or LCB library if you send over a new macbook pro for me ;-) Cheers Monte From monte at appisle.net Sat Aug 19 23:58:11 2017 From: monte at appisle.net (Monte Goulding) Date: Sun, 20 Aug 2017 13:58:11 +1000 Subject: Developing first on android In-Reply-To: References: <99c57b2124a6f23886fa747caf706805@livecode.com> Message-ID: Hi Folks lcVCS was invented before script only stacks and for the most part script only stacks covers the use case much better. If you have a complicated stackFile then no matter what text representation we make of it you would get lost dealing with merge conflicts and diffs. If you don?t believe me try looking at an Xcode storyboard merge conflict? it?s no fun. You really are better off just being careful to avoid working on ui stuff on multiple branches. If you have a trivial UI then you can generate it on the fly as we do with some stacks in the IDE. If you have something a little bit too complicated for hand coding generation on the fly then you could use something like the scriptonlyUI library I experimented with one rainy day https://github.com/montegoulding/scriptonlyui . Anything more complicated is just as well off staying a binary file and using script only behaviors for scripts. Having said that there _are_ a couple of stack properties that we could add to script only stacks to make things work better and I don?t think it would be all that tricky to add something YAML like that the engine reads between the `script ??` header and the stack script. The properties that I would add are behavior and stackFiles so your script only stack would look like this: script ?StackName? --- behavior: stack ?ParentBehavior? stackFiles: - ParentBehavior: some/path.livecodescript --- command MyHandler -- code end MyHandler There could be some other properties that would be helpful but I think these are the critical ones causing issues for behavior hierarchies which are lost when saving so you need to script them. Perhaps even stackFiles isn?t that necessary as the stackFiles could be set on a binary stack elsewhere or the stack could be in a location the engine would find it. We would probably only want to add properties that we feel are causing issues which behavior definitely is. The less you add the less chance of a merge conflict on some change you didn?t intent. Of course once you add _any_ properties it?s suddenly _not_ a script only stack so? BTW if we only wanted to add behavior and only stack behaviors at that it might be nice to just include that in the header: script ?StackName? with behavior ?ParentBehavior? command MyHandler ? code end MyHandler I actually really like this option as it?s in keeping with the original faceless script object concept. Cheers Monte From lists at mangomultimedia.com Sun Aug 20 09:54:30 2017 From: lists at mangomultimedia.com (Trevor DeVore) Date: Sun, 20 Aug 2017 08:54:30 -0500 Subject: Levure update: Customizing builds Message-ID: Hi list, I made a screencast introducing a new features I've been working on for the Levure packager. Applications that are delivered to different target groups may have different distribution requirements. On macOS a common example is an application that is distributed through the developers website as well as the Mac App Store (MAS). Some of the files that are required for the MAS version are different than those required for the non-MAS version. The screencast introduces the `build profiles filter` and `platform filter` properties. These two properties help you customize the files included with different build profiles when packaging up a Levure application for distribution. While the example in the screencast looks at the needs for MAS/non-MAS the `build profiles filter` can also be used to customize which UI components, libraries, externals, extensions, etc. are included. Another potential example would be an app with different UIs for mobile and desktop. Your Levure application could include code and UI files for both platforms but only the relevant files would be included when packaging the app. Screencast: https://youtu.be/hnBlTtFmfoc -- Trevor DeVore ScreenSteps www.screensteps.com From lists at mangomultimedia.com Sun Aug 20 15:24:57 2017 From: lists at mangomultimedia.com (Trevor DeVore) Date: Sun, 20 Aug 2017 14:24:57 -0500 Subject: Levure update: Customizing builds Message-ID: Hi list, I made a screencast introducing a new features I've been working on for the Levure packager. Applications that are delivered to different target groups may have different distribution requirements. On macOS a common example is an application that is distributed through the developers website as well as the Mac App Store (MAS). Some of the files that are required for the MAS version are different than those required for the non-MAS version. The screencast introduces the `build profiles filter` and `platform filter` properties. These two properties help you customize the files included with different build profiles when packaging up a Levure application for distribution. While the example in the screencast looks at the needs for MAS/non-MAS the `build profiles filter` can also be used to customize which UI components, libraries, externals, extensions, etc. are included. Another potential example would be an app with different UIs for mobile and desktop. Your Levure application could include code and UI files for both platforms but only the relevant files would be included when packaging the app. Screencast: https://youtu.be/hnBlTtFmfoc -- Trevor DeVore ScreenSteps www.screensteps.com From brian at milby7.com Sun Aug 20 15:48:15 2017 From: brian at milby7.com (Brian Milby) Date: Sun, 20 Aug 2017 14:48:15 -0500 Subject: Developing first on android Message-ID: What about handlers? Stacks already call preOpenStack and related handlers. Adding handlers that get called automatically would leave it as script only but allow for post-load initialization. I haven't looked to see what is already processed though. > > On Aug 19, 2017 at 10:58 PM, wrote: > > > > Hi Folks lcVCS was invented before script only stacks and for the most part script only stacks covers the use case much better. If you have a complicated stackFile then no matter what text representation we make of it you would get lost dealing with merge conflicts and diffs. If you don?t believe me try looking at an Xcode storyboard merge conflict? it?s no fun. You really are better off just being careful to avoid working on ui stuff on multiple branches. If you have a trivial UI then you can generate it on the fly as we do with some stacks in the IDE. If you have something a little bit too complicated for hand coding generation on the fly then you could use something like the scriptonlyUI library I experimented with one rainy day https://github.com/montegoulding/scriptonlyui . Anything more complicated is just as well off staying a binary file and using script only behaviors for scripts. Having said that there _are_ a couple of stack properties that we could add to script only stacks to make things work better and I don?t think it would be all that tricky to add something YAML like that the engine reads between the `script ??` header and the stack script. The properties that I would add are behavior and stackFiles so your script only stack would look like this: script ?StackName? --- behavior: stack ?ParentBehavior? stackFiles: - ParentBehavior: some/path.livecodescript --- command MyHandler -- code end MyHandler There could be some other properties that would be helpful but I think these are the critical ones causing issues for behavior hierarchies which are lost when saving so you need to script them. Perhaps even stackFiles isn?t that necessary as the stackFiles could be set on a binary stack elsewhere or the stack could be in a location the engine would find it. We would probably only want to add properties that we feel are causing issues which behavior definitely is. The less you add the less chance of a merge conflict on some change you didn?t intent. Of course once you add _any_ properties it?s suddenly _not_ a script only stack so? BTW if we only wanted to add behavior and only stack behaviors at that it might be nice to just include that in the header: script ?StackName? with behavior ?ParentBehavior? command MyHandler ? code end MyHandler I actually really like this option as it?s in keeping with the original faceless script object concept. Cheers Monte _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode > > From brahma at hindu.org Sun Aug 20 16:26:31 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Sun, 20 Aug 2017 20:26:31 +0000 Subject: Filtering, Search and Fields on Mobile In-Reply-To: <74969A44-AFA7-4E65-93D5-C57402B2EF16@hindu.org> References: <74969A44-AFA7-4E65-93D5-C57402B2EF16@hindu.org> Message-ID: I got my answer for this from an earlier project coded by Jacque if # user is searching and you show the controls then focus on fld "searchString" --jg: force mobile keyboard select after fld "searchString" highlightSelectedTab "search" else -- hide it focus on nothing end if Another gem that I never knew about "focus on" On 8/19/17, 8:06 AM, "use-livecode on behalf of Sannyasin Brahmanathaswami via use-livecode" wrote: 1) how do we control when the mobile keyboard is opened. Sometimes I have left a field on a card with traversal on, and the mobile keyboard automatically open when you go to that card, even though the user hasn't actually tapped into the field (in this case a field for entering a search string) what has been "settled on" as best practice? OR how do you do it? From monte at appisle.net Sun Aug 20 16:51:24 2017 From: monte at appisle.net (Monte Goulding) Date: Mon, 21 Aug 2017 06:51:24 +1000 Subject: Developing first on android In-Reply-To: References: Message-ID: <46327829-1F4E-41C4-8644-7DC28B768682@appisle.net> > On 21 Aug 2017, at 5:48 am, Brian Milby via use-livecode wrote: > > What about handlers? Stacks already call preOpenStack and related handlers. Adding handlers that get called automatically would leave it as script only but allow for post-load initialization. I haven't looked to see what is already processed though. Hmm? I?m not sure what you mean here. Script only stacks are sent the same messages as binary stacks. Do you think they need something else? I have suggested a `loadStack` message here for when a stack is loaded into memory but that?s not specific to script only stacks either. http://quality.livecode.com/show_bug.cgi?id=18223 Cheers Monte From brian at milby7.com Sun Aug 20 19:22:21 2017 From: brian at milby7.com (Brian Milby) Date: Sun, 20 Aug 2017 18:22:21 -0500 Subject: Developing first on android Message-ID: Ok, in that case, would the following work: On openStack Set the behavior of me to stack "parent" Set the behavior of stack "child" to me End openStack There may be some need to check that referenced stacks are open, but just did some experimenting to verify that the calls work in the IDE. I'm guessing you would want to possibly have them only set in one direction though. Thanks, Brian > > On Aug 20, 2017 at 3:51 PM, wrote: > > > > > On 21 Aug 2017, at 5:48 am, Brian Milby via use-livecode wrote: > > What about handlers? Stacks already call preOpenStack and related handlers. Adding handlers that get called automatically would leave it as script only but allow for post-load initialization. I haven't looked to see what is already processed though. Hmm? I?m not sure what you mean here. Script only stacks are sent the same messages as binary stacks. Do you think they need something else? I have suggested a `loadStack` message here for when a stack is loaded into memory but that?s not specific to script only stacks either. http://quality.livecode.com/show_bug.cgi?id=18223 Cheers Monte _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode > > From monte at appisle.net Sun Aug 20 19:31:07 2017 From: monte at appisle.net (Monte Goulding) Date: Mon, 21 Aug 2017 09:31:07 +1000 Subject: Developing first on android In-Reply-To: References: Message-ID: > On 21 Aug 2017, at 9:22 am, Brian Milby via use-livecode wrote: > > > Ok, in that case, would the following work: > > > > On openStack > > Set the behavior of me to stack "parent" > > Set the behavior of stack "child" to me > > End openStack > > > > There may be some need to check that referenced stacks are open, but just did some experimenting to verify that the calls work in the IDE. I'm guessing you would want to possibly have them only set in one direction though. That is what we do now although as a behavior can be used but not opened you would need to do that in the stack that uses the behavior. So you have stack A. The stack that uses the behavior which is a binary stackFile. Stack B the script only behavior of stack A. Stack C the script only behavior of stack B. Right now you need to handle preOpenStack in stack A and setup the hierarchy because stack B does not retain the behavior property when saved and does not get any kind of message when used as a behavior. It may actually be a good idea to add a loadBehavior and unloadBehavior message sent to the object using the behavior so it can initialise its own heirarchy. Still I think saving the behavior property with the script only stack is a simpler solution. Cheers Monte From jonathandlynch at gmail.com Sun Aug 20 20:25:47 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Sun, 20 Aug 2017 20:25:47 -0400 Subject: Is tsnet always better? Message-ID: <78163DEF-26BB-4CD0-A899-C8AA6F262BF3@gmail.com> LC gives us multiple ways to connect to online databases. Is TSnet always the best performing method? Sent from my iPhone From jonathandlynch at gmail.com Sun Aug 20 21:53:26 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Sun, 20 Aug 2017 21:53:26 -0400 Subject: Sending a message to users that floats above everything Message-ID: What is the best way to send a message to users that floats above everything else, including browser widgets? I have been using "answer", "ask", and the mobile picker because they appear on top. However, these system dialogs are not always pretty, especially on Android. Is there another option? I tried using a browser widget, but that does not always layer on top of another browser widget, even if the layer in the widget is a higher number. Sent from my iPhone From brahma at hindu.org Sun Aug 20 23:21:44 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Mon, 21 Aug 2017 03:21:44 +0000 Subject: Sending a message to users that floats above everything In-Reply-To: References: Message-ID: <2B127343-D5F2-4E60-9204-84B84205DA12@hindu.org> Jonathan: I don't think it is even/ever possible to get something to "float"on top of a browser widget on Mobile. I wish/hope that I am wrong. On 8/20/17, 3:53 PM, "use-livecode on behalf of Jonathan Lynch via use-livecode" wrote: What is the best way to send a message to users that floats above everything else, including browser widgets? I have been using "answer", "ask", and the mobile picker because they appear on top. However, these system dialogs are not always pretty, especially on Android. Is there another option? I tried using a browser widget, but that does not always layer on top of another browser widget, even if the layer in the widget is a higher number. From jonathandlynch at gmail.com Sun Aug 20 23:45:47 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Sun, 20 Aug 2017 23:45:47 -0400 Subject: Sending a message to users that floats above everything In-Reply-To: <2B127343-D5F2-4E60-9204-84B84205DA12@hindu.org> References: <2B127343-D5F2-4E60-9204-84B84205DA12@hindu.org> Message-ID: <8CEE12C7-080B-43C6-9CEA-E4ADDF6FD7AC@gmail.com> Thanks Swami, I think you are right - but I really hate the way the answer dialog looks on Android. Sent from my iPhone > On Aug 20, 2017, at 11:21 PM, Sannyasin Brahmanathaswami via use-livecode wrote: > > Jonathan: > > I don't think it is even/ever possible to get something to "float"on top of a browser widget on Mobile. > > I wish/hope that I am wrong. > > On 8/20/17, 3:53 PM, "use-livecode on behalf of Jonathan Lynch via use-livecode" wrote: > > What is the best way to send a message to users that floats above everything else, including browser widgets? > > I have been using "answer", "ask", and the mobile picker because they appear on top. However, these system dialogs are not always pretty, especially on Android. Is there another option? I tried using a browser widget, but that does not always layer on top of another browser widget, even if the layer in the widget is a higher number. > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From brahma at hindu.org Sun Aug 20 23:51:59 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Mon, 21 Aug 2017 03:51:59 +0000 Subject: htaccess rewrite rule to https let my apps stop working In-Reply-To: <000801d31819$3eda2890$bc8e79b0$@kestner.de> References: <000801d31819$3eda2890$bc8e79b0$@kestner.de> Message-ID: <8E7DB88A-7F27-44C7-9E17-4AAC1BCE6ED8@hindu.org> T. Yes mod-rewrite is the way to go. What Matthias sent is how we are doing it. but for backwards compatibility in our apps I also include a function to replace http:// with https:// in any URL in our apps. BR From dave at applicationinsight.com Mon Aug 21 05:18:15 2017 From: dave at applicationinsight.com (Dave Kilroy) Date: Mon, 21 Aug 2017 10:18:15 +0100 Subject: Sending a message to users that floats above everything Message-ID: Jonathan - how about a toast? (on Android that is), I haven?t tested it but I would assume it would appear above a browser? Monte did an external some time ago (mergAndroid I think) that I?m pretty sure included support for toasting :) Kind regards Dave From mark at livecode.com Mon Aug 21 05:58:27 2017 From: mark at livecode.com (Mark Waddingham) Date: Mon, 21 Aug 2017 11:58:27 +0200 Subject: Array literals and script only stack initialization (was Re: Developing first on android) In-Reply-To: References: Message-ID: <4abdd6fd29b2807e9d57efb9b788a198@livecode.com> On 2017-08-21 01:31, Monte Goulding via use-livecode wrote: > Right now you need to handle preOpenStack in stack A and setup the > hierarchy because stack B does not retain the behavior property when > saved and does not get any kind of message when used as a behavior. It > may actually be a good idea to add a loadBehavior and unloadBehavior > message sent to the object using the behavior so it can initialise its > own heirarchy. Still I think saving the behavior property with the > script only stack is a simpler solution. I think its been suggested before that a 'loadStack' message might be quite useful (perhaps it should be 'createStack' - we have 'deleteStack' which is probably sufficient for the antonym) - allowing a stack to 'do something' when it is loaded into memory, and then unloaded (equivalent to OnCreate / OnDestroy in LCB) as loading/unloading is a slightly different part of the life-cycle compared to opening and closing. I can certainly see that it would be a 'simpler' solution in some ways to save the behavior property - however, then it isn't 'just' a script anymore - it is actually just a cut down object, so that leads us into having general properties / structures encoded in a 'script only stack'. I was playing about with prototyping something yesterday - array literals - it has been suggested before (indeed I thought there was a partial attempt by someone before - but I couldn't find it) but I thought it would be interesting to try it: https://github.com/livecode/livecode/pull/5824 Basically this patch adds JSON-like (which is LCB-like too!) syntax for sequence (numerically keyed array) and array (associative array) literals: put [ 1, 2, [ 3, 4, { "size" : the length of tOtherSeq } ] ] into tSeqVar put { "foo" : "bar", "baz" : tMyValue , tMyKey : [ 1, 2, 3 ] } into tArrVar The syntax is the same as in LCB - keys and values can be static or constant. The implementation has the nice property (well, the sequence version does - the array one isn't quite finished yet) that actual constant literals (those which have constant key/values which can be evaluated at compile time) will share the value. i.e. put [ 1, 2, 3 ] into tSeqVar1 put [ 1, 2, 3 ] into tSeqVar2 -- this will actually share the in-memory value with tSeqVar1 This means that you can explicitly write the same constant anywhere, as much as you like in script and still only have one instance of it. Indeed, the performance of using array literals compared to separate 'put' statements to construct them is quite encouraging: BenchmarkStartTiming "LegacyCreation" repeat kRepetitions times get empty put true into tLegacyLiteral[1] put 1 into tLegacyLiteral[2] put pi into tLegacyLiteral[3] put "Hello" into tLegacyLiteral[4] put false into tLegacyLiteral[5] put 2 into tLegacyLiteral[6] put pi into tLegacyLiteral[7] put "World!" into tLegacyLiteral[8] put it into tLegacyLiteral[9] end repeat BenchmarkStopTiming BenchmarkStartTiming "ConstantCreation" repeat kRepetitions times get [ true, 1, pi, "Hello", false, 2, pi, "World!", [ true, 1, pi, "Hello", false, 2, pi, "World!" ] ] end repeat BenchmarkStopTiming BenchmarkStartTiming "LegacyDynamicCreation" repeat kRepetitions times put empty into tLegacyLiteral put _Identity(true) into tLegacyLiteral[tOne] put _Identity(1) into tLegacyLiteral[tTwo] put _Identity(pi) into tLegacyLiteral[tThree] put _Identity("Hello") into tLegacyLiteral[tFour] end repeat BenchmarkStopTiming BenchmarkStartTiming "DynamicCreation" repeat kRepetitions times get [ _Identity(true), _Identity(1), _Identity(pi), _Identity("Hello") ] end repeat BenchmarkStopTiming Note: In the 'LegacyDynamicCreation' test variables holding actual numbers and not numeric literals are used as that is a fairer test with how things work at present (a technical detail - literals such as 1 are actually stored internally ready for being used as an array key; whereas dynamic creation has to create a key from the actual index 1). On my machine I get the following results: LegacyConstantCreation 3037 ms ConstantCreation 53 ms LegacyDynamicCreation 10330 ms DynamicCreation 6496 ms So there's certainly a significant performance advantage. My only concern is introducing more symbols. There is another option here using ( ) can also be made unambiguous: ( expr ) - grouped expr ( expr , ) - single element sequence ( expr : expr ) - single key/value However, I wonder if this is a bit too subtle - it would be all too easy to use ( expr ) for when you actually want a single element list - no amount of context can really help here. This also overlaps with recent discussions about strings. The syntax of literals above is the same as JSON (and can be made compatible with Python, just by allowing a trailing ',' in lists) *except* that LCS strings are not escaped so they aren't necessary copy/paste comparison. Therefore it does suggest that making "..." escaped strings as cross-compatible with other languages as possible is maybe something to seriously consider (if we wanted Python cross-compatibility '...' type strings would have to be too - although Python has about 6 variants of strings, you can use letter prefixes before the quote to change the interpretation of the string). Anyway, getting back to the original point of the original post... The reason this might be of interest to the problem of script only stacks is that with a suitable 'loadStack' type method, you could do something like: on loadStack set the properties of me to { \ ... key/value pairs of properties ... \ } end loadStack Indeed, if we had a better 'properties' property (i.e. as suggested by me in terms of import/export array - something allowing you to get/set the core persistent state of an object directly) then you could have script-only-stacks which *also* contain their state (and, by collorary, state of objects on the stack) - via having code which does it. Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From monte at appisle.net Mon Aug 21 06:06:26 2017 From: monte at appisle.net (Monte Goulding) Date: Mon, 21 Aug 2017 20:06:26 +1000 Subject: Array literals and script only stack initialization (was Re: Developing first on android) In-Reply-To: <4abdd6fd29b2807e9d57efb9b788a198@livecode.com> References: <4abdd6fd29b2807e9d57efb9b788a198@livecode.com> Message-ID: > On 21 Aug 2017, at 7:58 pm, Mark Waddingham via use-livecode wrote: > > I think its been suggested before that a 'loadStack' message might be quite useful (perhaps it should be 'createStack' - we have 'deleteStack' which is probably sufficient for the antonym) - allowing a stack to 'do something' when it is loaded into memory, and then unloaded (equivalent to OnCreate / OnDestroy in LCB) as loading/unloading is a slightly different part of the life-cycle compared to opening and closing. @LCMark I feel bad snipping discussion of the array literals because? AWESOME!!! but I actually only wanted to comment on `createStack` feelign a bit wrong if we also have `newStack` and the `create stack` command would send `newStack` not `createStack`.. or maybe it would send both but you can see why I have an issue with it ;-) Cheers Monte From mark at livecode.com Mon Aug 21 06:25:26 2017 From: mark at livecode.com (Mark Waddingham) Date: Mon, 21 Aug 2017 12:25:26 +0200 Subject: Array literals and script only stack initialization (was Re: Developing first on android) In-Reply-To: References: <4abdd6fd29b2807e9d57efb9b788a198@livecode.com> Message-ID: <791f8dc79d8dce3c4439ea1d57259510@livecode.com> On 2017-08-21 12:06, Monte Goulding via use-livecode wrote: >> On 21 Aug 2017, at 7:58 pm, Mark Waddingham via use-livecode >> wrote: >> >> I think its been suggested before that a 'loadStack' message might be >> quite useful (perhaps it should be 'createStack' - we have >> 'deleteStack' which is probably sufficient for the antonym) - allowing >> a stack to 'do something' when it is loaded into memory, and then >> unloaded (equivalent to OnCreate / OnDestroy in LCB) as >> loading/unloading is a slightly different part of the life-cycle >> compared to opening and closing. > > @LCMark I feel bad snipping discussion of the array literals because? > AWESOME!!! but I actually only wanted to comment on `createStack` > feelign a bit wrong if we also have `newStack` and the `create stack` > command would send `newStack` not `createStack`.. or maybe it would > send both but you can see why I have an issue with it ;-) Heh! That post was perhaps a bit 'thick' on content. The literals stuff probably should have got its own thread - they are pretty cool, the extra symbols needed are irksome but (just like with strings) I think resigning ourselves to the fact that different bracket types (in particular) are the best way to represent (in text) hierarchical data is just something we will have to do. Back to the point of your post... I see what you mean about 'newStack' / 'deleteStack' - I had a similar thought whilst writing the email. Too many messages and it will just get confusing, too few and its not flexible enough. However, it might be we do need a new pair of messages here, and clarify precisely what the existing and new ones are for. Of course, we also have the 'lock messages' issue - something which increasingly makes me wonder whether the message path is being 'overloaded' in use. It works very very well for events which you might want to 'bubble'; but I'm becoming increasingly convinced that is not quite right for (1) things which are related to a specific object (e.g. life-cycle messages); (2) libraries. [ There's a whole corollary here with being able to call methods 'inside' widgets here too - the 'do ... in widget' problem; it is a similar if not quite the same ]. Anyway, the latter is a somewhat large thought-project in and of itself. Certainly there are aspects of LCB which I think work better where the message path is very much a separate thing which widgets use (but aren't strictly a part of); but on the other hand there are issues still with integrating widgets into the message path (mouse messages and such). So, in the short term, if there is an extra message-path message which *would* help make script-only-stacks more flexible, then we should perhaps seriously consider it - if we can make it tasteful enough! Of course, another approach here is to keep script only stacks as they are (the header uses 'script' for a reason) - and then have a different form for objects which is a text serialization of *core* properties and script: stack "MyStack" set property behavior is ... set property title is ... on openStack end openStack Or something (I just came up with that off the top of my head - so needs 'reading between the lines' of the intent). With array properties, hierarchical properties could also be set. As with any text-based representation of stackfiles, custom properties cause a significant problem here which is why I suggest that only core persistent properties should be allowed. So, even with this kind of form you'd still need a way to init them, which takes us back to the adding a message which allows such init - and then the need for 'stack ...' type script only stacks reduces - it is entirely equivalent to just having code in that init message which uses literals to init properties. Anything like the above just becomes 'syntactic sugar'. In terms of language design, we need to be careful to ensure that anything you can do with 'syntactic sugar' does have a code-based equivalent - the latter coming first. The reason here is that it means that there is no engine 'magic', it can all be done in script; and the more engine 'magic' which is de-magicised, the more script can do. Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From mark at livecode.com Mon Aug 21 06:38:32 2017 From: mark at livecode.com (Mark Waddingham) Date: Mon, 21 Aug 2017 12:38:32 +0200 Subject: Is tsnet always =?UTF-8?Q?better=3F?= In-Reply-To: <78163DEF-26BB-4CD0-A899-C8AA6F262BF3@gmail.com> References: <78163DEF-26BB-4CD0-A899-C8AA6F262BF3@gmail.com> Message-ID: On 2017-08-21 02:25, Jonathan Lynch via use-livecode wrote: > LC gives us multiple ways to connect to online databases. Is TSnet > always the best performing method? Generally if you are accessing databases over the internet then fronting them with an HTTP-based gateway is by far the 'best' option - especially when considered from a security standpoint (that's not saying it completely replaces direct socket access - the latter just requires more IT infrastructure to ensure it is secure; which makes it less generally useful, and probably best to avoid entirely in a mobile/unlocked down over-internet access setting). So, I'd say tsNet is definitely the best way to access HTTP APIs - it is more efficient and has async (request with callback) for all HTTP method types (well, it will in 1.3.1 - there's a couple of HTTP methods missing in previous versions). Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From jonathandlynch at gmail.com Mon Aug 21 07:26:48 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Mon, 21 Aug 2017 07:26:48 -0400 Subject: Sending a message to users that floats above everything In-Reply-To: References: Message-ID: <950CE409-2C3E-46EB-A124-995658A30CEA@gmail.com> I will check that out - thanks Dave Sent from my iPhone > On Aug 21, 2017, at 5:18 AM, Dave Kilroy via use-livecode wrote: > > > Jonathan - how about a toast? (on Android that is), I haven?t tested it but I would assume it would appear above a browser? > > Monte did an external some time ago (mergAndroid I think) that I?m pretty sure included support for toasting :) > > Kind regards > > Dave > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From jonathandlynch at gmail.com Mon Aug 21 07:28:01 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Mon, 21 Aug 2017 07:28:01 -0400 Subject: Is tsnet always better? In-Reply-To: References: <78163DEF-26BB-4CD0-A899-C8AA6F262BF3@gmail.com> Message-ID: <55098B2D-C746-4E55-A511-EA718DD1495C@gmail.com> Thanks Mark Sent from my iPhone > On Aug 21, 2017, at 6:38 AM, Mark Waddingham via use-livecode wrote: > >> On 2017-08-21 02:25, Jonathan Lynch via use-livecode wrote: >> LC gives us multiple ways to connect to online databases. Is TSnet >> always the best performing method? > > Generally if you are accessing databases over the internet then fronting them with an HTTP-based gateway is by far the 'best' option - especially when considered from a security standpoint (that's not saying it completely replaces direct socket access - the latter just requires more IT infrastructure to ensure it is secure; which makes it less generally useful, and probably best to avoid entirely in a mobile/unlocked down over-internet access setting). > > So, I'd say tsNet is definitely the best way to access HTTP APIs - it is more efficient and has async (request with callback) for all HTTP method types (well, it will in 1.3.1 - there's a couple of HTTP methods missing in previous versions). > > Warmest Regards, > > Mark. > > -- > Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ > LiveCode: Everyone can create apps > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From toolbook at kestner.de Mon Aug 21 07:39:33 2017 From: toolbook at kestner.de (Tiemo Hollmann TB) Date: Mon, 21 Aug 2017 13:39:33 +0200 Subject: keys on keyboard return different characters Message-ID: <005301d31a72$29187920$7b496b60$@kestner.de> Hi, have you ever experienced the following phenomenon? A customer of me tells me that pressing a Umlaut key (???) on a German keyboard sometimes shows the correct Umlaut in my LiveCode program, but sometimes only hieroglyphs. Sometimes the correct char shows up after having hit multiple times / or harder the same key. I am using the old standard font Tahoma on stack level, inherited to all fields, which obviously is installed on the machine, otherwise the correct chars never would appear. Since this phenomenon only happens in my LiveCode (8.1.4) program, not in Word or any other program, it must be related to LiveCode. But how and what? Keyboard driver or foreign system font or language would affect all programs on this machine. Ever experienced anything similar? Tiemo From roger.e.eller at sealedair.com Mon Aug 21 08:19:32 2017 From: roger.e.eller at sealedair.com (Roger Eller) Date: Mon, 21 Aug 2017 08:19:32 -0400 Subject: Sending a message to users that floats above everything In-Reply-To: References: Message-ID: Does the browser -need- to be visible during the message? If not, hide it first. If so, display a temp screenshot of it during your message. ~Roger On Aug 20, 2017 9:53 PM, "Jonathan Lynch via use-livecode" < use-livecode at lists.runrev.com> wrote: What is the best way to send a message to users that floats above everything else, including browser widgets? I have been using "answer", "ask", and the mobile picker because they appear on top. However, these system dialogs are not always pretty, especially on Android. Is there another option? I tried using a browser widget, but that does not always layer on top of another browser widget, even if the layer in the widget is a higher number. Sent from my iPhone _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode From mark at livecode.com Mon Aug 21 08:24:08 2017 From: mark at livecode.com (Mark Waddingham) Date: Mon, 21 Aug 2017 14:24:08 +0200 Subject: Sending a message to users that floats above everything In-Reply-To: References: Message-ID: On 2017-08-21 03:53, Jonathan Lynch via use-livecode wrote: > I have been using "answer", "ask", and the mobile picker because they > appear on top. However, these system dialogs are not always pretty, > especially on Android. Is there another option? I tried using a > browser widget, but that does not always layer on top of another > browser widget, even if the layer in the widget is a higher number. The layering of widgets which have a native layer (of which the browser widget is one) *should* reflect the layer number. e.g. layer 1 - field (lc) layer 2 - browser 1 (native layer) layer 3 - button (lc) layer 4 - browser 2 (native layer) should be reflected as: field (bottom) button browser 1 browser 2 (top) So if this isn't the case, then it deserves a bug report :) Of course, browser views on android/iOS might be 'special' and causing the problem themselves but assuming that isn't the case, it should work as you described... Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From jonathandlynch at gmail.com Mon Aug 21 08:55:09 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Mon, 21 Aug 2017 08:55:09 -0400 Subject: Sending a message to users that floats above everything In-Reply-To: References: Message-ID: This mislayering is with browser widgets that are grouped into different groups. Would that make a difference? Sent from my iPhone > On Aug 21, 2017, at 8:24 AM, Mark Waddingham via use-livecode wrote: > >> On 2017-08-21 03:53, Jonathan Lynch via use-livecode wrote: >> I have been using "answer", "ask", and the mobile picker because they >> appear on top. However, these system dialogs are not always pretty, >> especially on Android. Is there another option? I tried using a >> browser widget, but that does not always layer on top of another >> browser widget, even if the layer in the widget is a higher number. > > The layering of widgets which have a native layer (of which the browser widget is one) *should* reflect the layer number. e.g. > > layer 1 - field (lc) > layer 2 - browser 1 (native layer) > layer 3 - button (lc) > layer 4 - browser 2 (native layer) > > should be reflected as: > > field (bottom) > button > browser 1 > browser 2 (top) > > So if this isn't the case, then it deserves a bug report :) > > Of course, browser views on android/iOS might be 'special' and causing the problem themselves but assuming that isn't the case, it should work as you described... > > Warmest Regards, > > Mark. > > -- > Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ > LiveCode: Everyone can create apps > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From mark at livecode.com Mon Aug 21 09:01:24 2017 From: mark at livecode.com (Mark Waddingham) Date: Mon, 21 Aug 2017 15:01:24 +0200 Subject: Sending a message to users that floats above everything In-Reply-To: References: Message-ID: On 2017-08-21 14:55, Jonathan Lynch via use-livecode wrote: > This mislayering is with browser widgets that are grouped into > different groups. Would that make a difference? Quite possibly! The engine does extra work to handle grouped widgets which use a native layer (it has to synthesize the equivalent native group layer) - are you able to distill it down to a simple stack? If so, please file a bug report and we'll take a look. Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From jonathandlynch at gmail.com Mon Aug 21 09:01:53 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Mon, 21 Aug 2017 09:01:53 -0400 Subject: keys on keyboard return different characters In-Reply-To: <005301d31a72$29187920$7b496b60$@kestner.de> References: <005301d31a72$29187920$7b496b60$@kestner.de> Message-ID: <82B86752-4A47-4EFF-8F9B-9F461B911162@gmail.com> Pressing the key harder makes a difference? How could that not be a hardware thing? Sent from my iPhone > On Aug 21, 2017, at 7:39 AM, Tiemo Hollmann TB via use-livecode wrote: > > Hi, have you ever experienced the following phenomenon? > > A customer of me tells me that pressing a Umlaut key (???) on a German > keyboard sometimes shows the correct Umlaut in my LiveCode program, but > sometimes only hieroglyphs. Sometimes the correct char shows up after having > hit multiple times / or harder the same key. I am using the old standard > font Tahoma on stack level, inherited to all fields, which obviously is > installed on the machine, otherwise the correct chars never would appear. > Since this phenomenon only happens in my LiveCode (8.1.4) program, not in > Word or any other program, it must be related to LiveCode. But how and what? > Keyboard driver or foreign system font or language would affect all programs > on this machine. > > Ever experienced anything similar? > > Tiemo > > > > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From jonathandlynch at gmail.com Mon Aug 21 09:07:01 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Mon, 21 Aug 2017 09:07:01 -0400 Subject: keys on keyboard return different characters In-Reply-To: <82B86752-4A47-4EFF-8F9B-9F461B911162@gmail.com> References: <005301d31a72$29187920$7b496b60$@kestner.de> <82B86752-4A47-4EFF-8F9B-9F461B911162@gmail.com> Message-ID: <1721DAD7-33F3-42A8-922E-6FB73098DBC6@gmail.com> If you get chartonum for these characters, are they also different? Sent from my iPhone > On Aug 21, 2017, at 9:01 AM, jonathandlynch at gmail.com wrote: > > Pressing the key harder makes a difference? How could that not be a hardware thing? > > Sent from my iPhone > >> On Aug 21, 2017, at 7:39 AM, Tiemo Hollmann TB via use-livecode wrote: >> >> Hi, have you ever experienced the following phenomenon? >> >> A customer of me tells me that pressing a Umlaut key (???) on a German >> keyboard sometimes shows the correct Umlaut in my LiveCode program, but >> sometimes only hieroglyphs. Sometimes the correct char shows up after having >> hit multiple times / or harder the same key. I am using the old standard >> font Tahoma on stack level, inherited to all fields, which obviously is >> installed on the machine, otherwise the correct chars never would appear. >> Since this phenomenon only happens in my LiveCode (8.1.4) program, not in >> Word or any other program, it must be related to LiveCode. But how and what? >> Keyboard driver or foreign system font or language would affect all programs >> on this machine. >> >> Ever experienced anything similar? >> >> Tiemo >> >> >> >> >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode From toolbook at kestner.de Mon Aug 21 10:00:30 2017 From: toolbook at kestner.de (Tiemo Hollmann TB) Date: Mon, 21 Aug 2017 16:00:30 +0200 Subject: AW: htaccess rewrite rule to https let my apps stop working Message-ID: <007201d31a85$da8e5590$8fab00b0$@kestner.de> I used the rewrite conditions to https from Matthias in the root of my domain and build a new LC 8.1.5 standalone including the revsecurity.dll. like Tom pointed out, but I still get an error. The return value of my php is surprisingly some garbage html code instead of my php return value and "the result" of my put URL statement is: " tsneterr: HTTP response code 401 returned from server". The only "special" thing I can see on my domain is, that I have another htaccess in the directory of my PHPs, with a password protection for this sub-dir, which works since years fine without this rewrite condition. The "401" error (authentication failed) points to this password protection in the sub-htaccess. But I don't see the relation of the rewrite condition in the root htaccess to this password authentication in the php directory. There is the end of my server knowledge. Can anybody shed some light on this? Thanks Tiemo -----Urspr?ngliche Nachricht----- Von: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] Im Auftrag von tbodine via use-livecode Gesendet: Freitag, 18. August 2017 16:47 An: use-revolution at lists.runrev.com Cc: tbodine Betreff: Re: AW: htaccess rewrite rule to https let my apps stop working T. Had a similar experience while migrating my site to https. What I found was my standalones were missing the revsecurity.dll external. After rebuilding those to include revsecurity.dll, the standalones were able to contact my site and access stacks and other files there without changing my links from http to https, since the htaccess was managing that. Notes: On Windows, that must be at the same level as the standalone exe itself rather than the externals folder. And codesign your externals as well as standalones. HTH, Tom B. -- View this message in context: http://runtime-revolution.278305.n4.nabble.com/htaccess-rewrite-rule-to-http s-let-my-apps-stop-working-tp4718561p4718572.html Sent from the Revolution - User mailing list archive at Nabble.com. _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode From bobsneidar at iotecdigital.com Mon Aug 21 11:08:12 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Mon, 21 Aug 2017 15:08:12 +0000 Subject: lock screen gotcha revisited In-Reply-To: <26d6f131-2092-06c4-8a4d-f730a04b1300@sonic.net> References: <952E58B6-358C-4044-89D3-E472E9FD2D4A@iotecdigital.com> <6F0B5437-DFB7-42A3-A844-4D5DFCB11F81@iotecdigital.com> <26d6f131-2092-06c4-8a4d-f730a04b1300@sonic.net> Message-ID: <0F460232-264C-4560-A1B1-5D94AEC24036@iotecdigital.com> Yup. My troubles came when I had a handler unlock the screen 5 times straight and I do not lock the screen to that many levels. It still did no unlock the screen, so now it may be that one handler cannot unlock another handler's lock screen, which I was unaware of. Bob S > On Aug 18, 2017, at 18:37 , Mark Wieder via use-livecode wrote: > > On 08/18/2017 03:50 PM, Bob Sneidar via use-livecode wrote: >> Hard to say. I'm almost done finding every place I lock the screen and adding an unlock screen in the same handler. > > And that, of course, is the best procedure. Locking/unlocking the screen works on sort of a reference-counting approach. In general, locking the screen increments a counter, unlocking the screen decrements it. When the counter reaches zero, the screen is unlocked and all the pending updates take place. > > -- > Mark Wieder > ahsoftware at gmail.com From jonathandlynch at gmail.com Mon Aug 21 11:15:01 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Mon, 21 Aug 2017 11:15:01 -0400 Subject: lock screen gotcha revisited In-Reply-To: <0F460232-264C-4560-A1B1-5D94AEC24036@iotecdigital.com> References: <952E58B6-358C-4044-89D3-E472E9FD2D4A@iotecdigital.com> <6F0B5437-DFB7-42A3-A844-4D5DFCB11F81@iotecdigital.com> <26d6f131-2092-06c4-8a4d-f730a04b1300@sonic.net> <0F460232-264C-4560-A1B1-5D94AEC24036@iotecdigital.com> Message-ID: Hi Bob - just an idea for a progress indicator - you could advance a progress indicator through a browser widget. This would work even when the screen is locked, allowing you to show progress while not having unlock and lock each time. The widget requires a fair bit of overhead, so that might not be ideal, but it would work perfectly. Sent from my iPhone > On Aug 21, 2017, at 11:08 AM, Bob Sneidar via use-livecode wrote: > > Yup. My troubles came when I had a handler unlock the screen 5 times straight and I do not lock the screen to that many levels. It still did no unlock the screen, so now it may be that one handler cannot unlock another handler's lock screen, which I was unaware of. > > Bob S > > >> On Aug 18, 2017, at 18:37 , Mark Wieder via use-livecode wrote: >> >> On 08/18/2017 03:50 PM, Bob Sneidar via use-livecode wrote: >>> Hard to say. I'm almost done finding every place I lock the screen and adding an unlock screen in the same handler. >> >> And that, of course, is the best procedure. Locking/unlocking the screen works on sort of a reference-counting approach. In general, locking the screen increments a counter, unlocking the screen decrements it. When the counter reaches zero, the screen is unlocked and all the pending updates take place. >> >> -- >> Mark Wieder >> ahsoftware at gmail.com > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From toolbook at kestner.de Mon Aug 21 11:16:53 2017 From: toolbook at kestner.de (Tiemo Hollmann TB) Date: Mon, 21 Aug 2017 17:16:53 +0200 Subject: OT: Anybody good in rewrite rules in htaccess? Message-ID: <007c01d31a90$85f90a60$91eb1f20$@kestner.de> Hello, I wanted to migrate my domain from http to https, but I fail with my Livecode programs, which communicate with some php programs in one directory on my domain (see my previous post). Since I am not able to combine the rewrite htaccess in my domain root with an authentication htaccess in my php directory, so that my LiveCode programs can call the PHPs, I got the idea to define the rewrite rules for all directories BESIDE of the directory with my PHPs. Is this possible in the main htaccess in the root of my domain (without putting an individual htaccess in each directory)? Has anybody perhaps an example on how to exclude a directory in the rewrite rules? Thanks Tiemo From jacque at hyperactivesw.com Mon Aug 21 11:41:05 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Mon, 21 Aug 2017 10:41:05 -0500 Subject: Sending a message to users that floats above everything In-Reply-To: <950CE409-2C3E-46EB-A124-995658A30CEA@gmail.com> References: <950CE409-2C3E-46EB-A124-995658A30CEA@gmail.com> Message-ID: <15e05745a68.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Monte's external works great on newer Android devices but seems to crash on older ones. That's why I had to replace it with a hacked up fake in my Android object library. There's a pull request in git for a native toast that is waiting for review and as soon as it's available I will switch to it. It's been waiting for a while, I hope it gets attention soon. Answer dialogs aren't appropriate for any OS any more. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com On August 21, 2017 6:28:54 AM Jonathan Lynch via use-livecode wrote: > I will check that out - thanks Dave > > Sent from my iPhone > >> On Aug 21, 2017, at 5:18 AM, Dave Kilroy via use-livecode >> wrote: >> >> >> Jonathan - how about a toast? (on Android that is), I haven?t tested it but >> I would assume it would appear above a browser? >> >> Monte did an external some time ago (mergAndroid I think) that I?m pretty >> sure included support for toasting :) >> >> Kind regards >> >> Dave >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From jacque at hyperactivesw.com Mon Aug 21 11:51:26 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Mon, 21 Aug 2017 10:51:26 -0500 Subject: lock screen gotcha revisited In-Reply-To: <0F460232-264C-4560-A1B1-5D94AEC24036@iotecdigital.com> References: <952E58B6-358C-4044-89D3-E472E9FD2D4A@iotecdigital.com> <6F0B5437-DFB7-42A3-A844-4D5DFCB11F81@iotecdigital.com> <26d6f131-2092-06c4-8a4d-f730a04b1300@sonic.net> <0F460232-264C-4560-A1B1-5D94AEC24036@iotecdigital.com> Message-ID: <15e057dd430.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> I was unaware of that too. It doesn't sound right. On August 21, 2017 10:10:27 AM Bob Sneidar via use-livecode wrote: > Yup. My troubles came when I had a handler unlock the screen 5 times > straight and I do not lock the screen to that many levels. It still did no > unlock the screen, so now it may be that one handler cannot unlock another > handler's lock screen, which I was unaware of. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com From brian at milby7.com Mon Aug 21 12:09:41 2017 From: brian at milby7.com (Brian Milby) Date: Mon, 21 Aug 2017 11:09:41 -0500 Subject: Array literals and script only stack initialization (was Re: Developing first on android) In-Reply-To: <4abdd6fd29b2807e9d57efb9b788a198@livecode.com> References: <4abdd6fd29b2807e9d57efb9b788a198@livecode.com> Message-ID: What about something like import into [objectRef] from array [arrayRef] OR update [objectRef] from array [arrayRef] where the array would be in the format of the export and the object would be an existing object. I've been looking at the code and think that it would be straightforward to take the save/load code and change it over to creating an array. Some of the complexity would go away since key existence could be checked directly instead of flags for example (on import mainly). All of the code specific to versions < 9 would not be needed. It would start with the MCObject and be needed everywhere else. The existing import/export code would then need to call appropriate handlers to take care of the object info if the key existed ([$object] as a suggestion). If the full specification of the object is in the export array, then the import could re-create an exact duplicate. There would need to be a check on the ID and altID to ensure a duplicate isn't being created (with appropriate/sensible handling of collisions). The import would be fully backwards compatible since if the object key is not present, then it would just work like it did before. The suggestions about support for inline arrays would actually make this interesting too. A single statement could be used to update multiple values/properties/settings of an object at once. I'm sure there are pretty big gotchas on that though since it would likely avoid proper messages from being dispatched (or the update could dispatch messages as updates performed or collect the messages that should be sent and dispatch them sequentially after all updates were completed to avoid duplicates). I haven't gotten that far in research yet, so not sure. Thanks, Brian On Mon, Aug 21, 2017 at 4:58 AM, Mark Waddingham via use-livecode < use-livecode at lists.runrev.com> wrote: > Indeed, if we had a better 'properties' property (i.e. as suggested by me > in terms of import/export array - something allowing you to get/set the > core persistent state of an object directly) then you could have > script-only-stacks which *also* contain their state (and, by collorary, > state of objects on the stack) - via having code which does it. > > Warmest Regards, > > Mark. > > -- > Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ > LiveCode: Everyone can create apps > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From bobsneidar at iotecdigital.com Mon Aug 21 12:32:05 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Mon, 21 Aug 2017 16:32:05 +0000 Subject: Sending a message to users that floats above everything In-Reply-To: <15e05745a68.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> References: <950CE409-2C3E-46EB-A124-995658A30CEA@gmail.com> <15e05745a68.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Message-ID: <3F7DF442-4870-41F0-9A99-3BB637974089@iotecdigital.com> Awww! Take it back! I use em all the time. Someone clicks the delete button, I ask them if they are sure that is what they want to do. Bob S > On Aug 21, 2017, at 08:41 , J. Landman Gay via use-livecode wrote: > > Answer dialogs aren't appropriate for any OS any more. > > -- > Jacqueline Landman Gay | jacque at hyperactivesw.com > HyperActive Software | http://www.hyperactivesw.com From bobsneidar at iotecdigital.com Mon Aug 21 12:34:22 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Mon, 21 Aug 2017 16:34:22 +0000 Subject: lock screen gotcha revisited In-Reply-To: <15e057dd430.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> References: <952E58B6-358C-4044-89D3-E472E9FD2D4A@iotecdigital.com> <6F0B5437-DFB7-42A3-A844-4D5DFCB11F81@iotecdigital.com> <26d6f131-2092-06c4-8a4d-f730a04b1300@sonic.net> <0F460232-264C-4560-A1B1-5D94AEC24036@iotecdigital.com> <15e057dd430.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Message-ID: <6C871B35-CBB3-4FA7-84AB-7CEF740A15B6@iotecdigital.com> I was hoping for a command that left the screen lock set but forced an update of the screen. That way I wouldn't have to unlock/relock and depend on there only being one screen lock pending. Bob S > On Aug 21, 2017, at 08:51 , J. Landman Gay via use-livecode wrote: > > I was unaware of that too. It doesn't sound right. > > > > On August 21, 2017 10:10:27 AM Bob Sneidar via use-livecode wrote: > >> Yup. My troubles came when I had a handler unlock the screen 5 times straight and I do not lock the screen to that many levels. It still did no unlock the screen, so now it may be that one handler cannot unlock another handler's lock screen, which I was unaware of. > > -- > Jacqueline Landman Gay From jonathandlynch at gmail.com Mon Aug 21 12:36:03 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Mon, 21 Aug 2017 12:36:03 -0400 Subject: Sending a message to users that floats above everything In-Reply-To: <3F7DF442-4870-41F0-9A99-3BB637974089@iotecdigital.com> References: <950CE409-2C3E-46EB-A124-995658A30CEA@gmail.com> <15e05745a68.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <3F7DF442-4870-41F0-9A99-3BB637974089@iotecdigital.com> Message-ID: <553DB861-467B-4444-805A-3E4BF2C65440@gmail.com> I like the dialogs on iOS. Simple, not offensive, clean. Sent from my iPhone > On Aug 21, 2017, at 12:32 PM, Bob Sneidar via use-livecode wrote: > > Awww! Take it back! I use em all the time. Someone clicks the delete button, I ask them if they are sure that is what they want to do. > > Bob S > > >> On Aug 21, 2017, at 08:41 , J. Landman Gay via use-livecode wrote: >> >> Answer dialogs aren't appropriate for any OS any more. >> >> -- >> Jacqueline Landman Gay | jacque at hyperactivesw.com >> HyperActive Software | http://www.hyperactivesw.com > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From bobsneidar at iotecdigital.com Mon Aug 21 12:41:53 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Mon, 21 Aug 2017 16:41:53 +0000 Subject: acceleratedRendering scope Message-ID: <3F9E5D10-ADF4-4C40-B1A4-62E84A62A591@iotecdigital.com> Hi all. Since acceleratedRendering is a stack property, does it only apply to a given stack, and not, for example to a sub stack? What would the advantage be of having it off? If none, why even have it? Bob S From bobsneidar at iotecdigital.com Mon Aug 21 12:43:19 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Mon, 21 Aug 2017 16:43:19 +0000 Subject: acceleratedRendering scope In-Reply-To: <3F9E5D10-ADF4-4C40-B1A4-62E84A62A591@iotecdigital.com> References: <3F9E5D10-ADF4-4C40-B1A4-62E84A62A591@iotecdigital.com> Message-ID: I meant to say, why not just have it on permanently? Bob S > On Aug 21, 2017, at 09:41 , Bob Sneidar via use-livecode wrote: > > Hi all. > > Since acceleratedRendering is a stack property, does it only apply to a given stack, and not, for example to a sub stack? What would the advantage be of having it off? If none, why even have it? > > Bob S From jonathandlynch at gmail.com Mon Aug 21 12:51:10 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Mon, 21 Aug 2017 12:51:10 -0400 Subject: acceleratedRendering scope In-Reply-To: References: <3F9E5D10-ADF4-4C40-B1A4-62E84A62A591@iotecdigital.com> Message-ID: Hi Bob- I can report that accelerated rendering "steals" resources from the browser widget. I have to turn it off when displaying a 3D map in the browser widget, then turn it back on for scrolling groups. Otherwise, the map renders in a very clunky way, with large sections very distorted. It has to do with overstressing the GPU. Sent from my iPhone > On Aug 21, 2017, at 12:43 PM, Bob Sneidar via use-livecode wrote: > > I meant to say, why not just have it on permanently? > > Bob S > > >> On Aug 21, 2017, at 09:41 , Bob Sneidar via use-livecode wrote: >> >> Hi all. >> >> Since acceleratedRendering is a stack property, does it only apply to a given stack, and not, for example to a sub stack? What would the advantage be of having it off? If none, why even have it? >> >> Bob S > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From mark at livecode.com Mon Aug 21 12:51:48 2017 From: mark at livecode.com (Mark Waddingham) Date: Mon, 21 Aug 2017 18:51:48 +0200 Subject: acceleratedRendering scope In-Reply-To: <3F9E5D10-ADF4-4C40-B1A4-62E84A62A591@iotecdigital.com> References: <3F9E5D10-ADF4-4C40-B1A4-62E84A62A591@iotecdigital.com> Message-ID: <48692f755e9cf686f1b8389edcca03c3@livecode.com> On 2017-08-21 18:41, Bob Sneidar via use-livecode wrote: > Hi all. > > Since acceleratedRendering is a stack property, does it only apply to > a given stack, and not, for example to a sub stack? What would the > advantage be of having it off? If none, why even have it? It is per stack, and not inherited. Whether you get a benefit or not from acceleratedRendering depends on your stack. If you don't set the layerMode property on anything, then it will generally cause a slight performance penalty (although this perhaps needs more direct measurement to compare - particularly between desktop and mobile which are very different graphics performance wise). The benefits of acceleratedRendering come out when you aren't changing how any object looks that often, and you have a lot of objects moving - or, indeed, when you are moving large objects around, but not changing very much of them as you do so. So, for example, if you emulating visual effects by moving large controls around periodically you might well find you get a better framerate (particularly on mobile) by turning accelRendering on, setting the layerMode of just the moving controls to dynamic, then turning it off again. If you are doing a game with lots of moving objects, then you will pretty much always gain advantage from making all the moving object's layerMode dynamic; and leaving the scenery / HUD type things as static. Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From mark at livecode.com Mon Aug 21 12:54:32 2017 From: mark at livecode.com (Mark Waddingham) Date: Mon, 21 Aug 2017 18:54:32 +0200 Subject: acceleratedRendering scope In-Reply-To: References: <3F9E5D10-ADF4-4C40-B1A4-62E84A62A591@iotecdigital.com> Message-ID: <7dc15d1ebdb2108db12a8a03b7c46645@livecode.com> On 2017-08-21 18:51, Jonathan Lynch via use-livecode wrote: > Hi Bob- I can report that accelerated rendering "steals" resources > from the browser widget. I have to turn it off when displaying a 3D > map in the browser widget, then turn it back on for scrolling groups. > Otherwise, the map renders in a very clunky way, with large sections > very distorted. Is this on iOS or Android or both? I'm not sure that's to do with any resource stealing - it's more to do with the fact that the mobile OSes don't like mixing OpenGL based views with non-OpenGL based views generally. You can limit the amount of texture RAM accelRendering uses by setting the compositorCacheLimit (I think that's the right property) which is the maximum number of bytes the engine will use for the cache of tiles at any one time. On iOS, in particular, putting a normal UIKit view (which the browser widget is) on top of an OpenGL view (which accel render mode uses) tends to make the OS not that happy. Of course, this might entirely depend on device too! Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From jonathandlynch at gmail.com Mon Aug 21 13:13:36 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Mon, 21 Aug 2017 13:13:36 -0400 Subject: acceleratedRendering scope In-Reply-To: <7dc15d1ebdb2108db12a8a03b7c46645@livecode.com> References: <3F9E5D10-ADF4-4C40-B1A4-62E84A62A591@iotecdigital.com> <7dc15d1ebdb2108db12a8a03b7c46645@livecode.com> Message-ID: <8820DA96-3441-4757-B84C-DEEAF8AB23CB@gmail.com> It is on iOS. Turning it on and off as needed has worked perfectly, so it is no problem. Thanks for explaining! Sent from my iPhone > On Aug 21, 2017, at 12:54 PM, Mark Waddingham via use-livecode wrote: > >> On 2017-08-21 18:51, Jonathan Lynch via use-livecode wrote: >> Hi Bob- I can report that accelerated rendering "steals" resources >> from the browser widget. I have to turn it off when displaying a 3D >> map in the browser widget, then turn it back on for scrolling groups. >> Otherwise, the map renders in a very clunky way, with large sections >> very distorted. > > Is this on iOS or Android or both? > > I'm not sure that's to do with any resource stealing - it's more to do with the fact that the mobile OSes don't like mixing OpenGL based views with non-OpenGL based views generally. You can limit the amount of texture RAM accelRendering uses by setting the compositorCacheLimit (I think that's the right property) which is the maximum number of bytes the engine will use for the cache of tiles at any one time. > > On iOS, in particular, putting a normal UIKit view (which the browser widget is) on top of an OpenGL view (which accel render mode uses) tends to make the OS not that happy. Of course, this might entirely depend on device too! > > Warmest Regards, > > Mark. > > -- > Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ > LiveCode: Everyone can create apps > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From mark at livecode.com Mon Aug 21 13:17:39 2017 From: mark at livecode.com (Mark Waddingham) Date: Mon, 21 Aug 2017 19:17:39 +0200 Subject: Array literals and script only stack initialization (was Re: Developing first on android) In-Reply-To: References: <4abdd6fd29b2807e9d57efb9b788a198@livecode.com> Message-ID: <7a91044cc13bf72018d78ef711f7d8c0@livecode.com> On 2017-08-21 18:09, Brian Milby via use-livecode wrote: > What about something like > import into [objectRef] from array [arrayRef] > OR > update [objectRef] from array [arrayRef] > where the array would be in the format of the export and the object > would > be an existing object. There are a few options - we have import/export array for widget, which naturally extends to any object type; so I'd be inclined to start there. That being said, in the first instance, it would be best to focus on just the core properties - rather than the hierarchical structure which perhaps means a variant of 'the properties' might be better (and more obvious). In any case, there's a fair bit of internal work to do before it can be exposed at the syntax level, so this doesn't have to be decided now. > I've been looking at the code and think that it would be > straightforward to > take the save/load code and change it over to creating an array. Some > of > the complexity would go away since key existence could be checked > directly > instead of flags for example (on import mainly). All of the code > specific > to versions < 9 would not be needed. It would start with the MCObject > and > be needed everywhere else. The existing import/export code would then > need > to call appropriate handlers to take care of the object info if the key > existed ([$object] as a suggestion). There's some work already done along these lines - I'll dig out the branch in due course. It was an attempt to abstract the internal structure a bit (using the currently-unused 'Record Type' which has long been languishing in libfoundation) - but work stopped on it when we reached a dead end with the dVCS 'stack dir' idea - based on ideas Monte developed in lcVCS. It might be a bit overkill for what we actually need though - as widget's already have a general form - and so its only the engine controls in C++ which need to be augmented with the ability; so once done, it isn't going to need more controls needing it. > If the full specification of the object is in the export array, then > the > import could re-create an exact duplicate. There would need to be a > check > on the ID and altID to ensure a duplicate isn't being created (with > appropriate/sensible handling of collisions). The import would be > fully > backwards compatible since if the object key is not present, then it > would > just work like it did before. Yes - we should export the id, and if the id does not exist then honor its setting in import. If it does exist, we can either ignore, or throw an error; forcing the code to delete the id from the array before importing and have the engine assign one. > The suggestions about support for inline arrays would actually make > this > interesting too. A single statement could be used to update multiple > values/properties/settings of an object at once. I'm sure there are > pretty > big gotchas on that though since it would likely avoid proper messages > from > being dispatched (or the update could dispatch messages as updates > performed or collect the messages that should be sent and dispatch them > sequentially after all updates were completed to avoid duplicates). I > haven't gotten that far in research yet, so not sure. Yes - there is a nice synergy here - particularly if we go for a property based mechanism (for existing controls at least) - although I'm still not 100% sure what would 'look best' here. I don't think there are any unpleasant 'gotchas' here with regards messages. The engine tends not to send any messages when properties are set (there are a couple of exceptions); and it certainly doesn't if it is loading / saving - so, particularly for import/export there isn't a problem. *Maybe* if we went down the update via a modified properties property then we might need to consider it (although, I can only think of the menuHistory and friends properties which do send a changed message off the top of my head as a result of a property setting by script). One thing though, it is always nice to have equivalences in terms of one feature being implemented via another means either for speed or for ergonomic reasons. If we were to go down the road and do this partly for the 'being able to set object state in a loadStack' type arrangement then we probably do want to vet the engine objects to make sure all internal properties can be reflected one-to-one in actual public properties; and nominate that set as being the 'core' properties (as I mentioned before). The reason to do this is that it would give an equivalence between: import object from array ... and create tArray["type"] set the prop1 to tArray[prop1] set the prop2 to tArray[prop2] ... From memory, one of the issues (which Monte patched the properties property to deal with) was that the order you set properties in matters; ideally it wouldn't - as long as you only set the core properties. (i.e. rect and not the individual parts or pairings there-of). Having a set of properties for each object (should it be possible) which act like that is beneficial for general use too - it means that you don't get hard to trace bugs in code due to mis-ordering mutations of internally interelated properties. Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From mark at livecode.com Mon Aug 21 13:19:47 2017 From: mark at livecode.com (Mark Waddingham) Date: Mon, 21 Aug 2017 19:19:47 +0200 Subject: acceleratedRendering scope In-Reply-To: <8820DA96-3441-4757-B84C-DEEAF8AB23CB@gmail.com> References: <3F9E5D10-ADF4-4C40-B1A4-62E84A62A591@iotecdigital.com> <7dc15d1ebdb2108db12a8a03b7c46645@livecode.com> <8820DA96-3441-4757-B84C-DEEAF8AB23CB@gmail.com> Message-ID: <075d3f560f7590774d8281bae180df61@livecode.com> On 2017-08-21 19:13, Jonathan Lynch via use-livecode wrote: > It is on iOS. Turning it on and off as needed has worked perfectly, so > it is no problem. Thanks for explaining! Okay - so obviously it hasn't 'got any better' since iOS4 which was when we added acceleratedRendering mode... This is slightly irksome! I do wonder if there must be a better way of doing what we need to do these days on iOS though - after all iOS has things like SpriteKit which (IIRC) work in a UIView, and I'd be surprised if they accepted there being issues if SpriteKit views were mixed in with normal UIKit views. Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From mark at livecode.com Mon Aug 21 13:25:59 2017 From: mark at livecode.com (Mark Waddingham) Date: Mon, 21 Aug 2017 19:25:59 +0200 Subject: Sending a message to users that floats above everything In-Reply-To: <15e05745a68.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> References: <950CE409-2C3E-46EB-A124-995658A30CEA@gmail.com> <15e05745a68.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Message-ID: <1c378f09289c8962f0faf192b448bf55@livecode.com> On 2017-08-21 17:41, J. Landman Gay via use-livecode wrote: > Monte's external works great on newer Android devices but seems to > crash on older ones. That's why I had to replace it with a hacked up > fake in my Android object library. There's a pull request in git for a > native toast that is waiting for review and as soon as it's available > I will switch to it. It's been waiting for a while, I hope it gets > attention soon. Answer dialogs aren't appropriate for any OS any more. Oops - that one slipped off our radar a bit (actually there's another PR from HedgeHao which has been languishing for a while fixing a bug in the browser widget... Sorry @HedgeHao). I'll see if I can get them sorted out tomorrow. I wonder whether the 'toast' one might make a nice example of using LCB though - there are only three calls needed to do it. So I might convert it to LCB as an exercise - it makes it easier for others to adapt; and is a lot lower overhead than having it in C++/Java in the engine. HedgeHao has already done the hard part of figuring out the APIs to use, and how to use them :) Warmest Regards, Mark. > -- > Jacqueline Landman Gay | jacque at hyperactivesw.com > HyperActive Software | http://www.hyperactivesw.com > > > > On August 21, 2017 6:28:54 AM Jonathan Lynch via use-livecode > wrote: > >> I will check that out - thanks Dave >> >> Sent from my iPhone >> >>> On Aug 21, 2017, at 5:18 AM, Dave Kilroy via use-livecode >>> wrote: >>> >>> >>> Jonathan - how about a toast? (on Android that is), I haven?t tested >>> it but I would assume it would appear above a browser? >>> >>> Monte did an external some time ago (mergAndroid I think) that I?m >>> pretty sure included support for toasting :) >>> >>> Kind regards >>> >>> Dave >>> _______________________________________________ >>> use-livecode mailing list >>> use-livecode at lists.runrev.com >>> Please visit this url to subscribe, unsubscribe and manage your >>> subscription preferences: >>> http://lists.runrev.com/mailman/listinfo/use-livecode >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode > > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From mark at livecode.com Mon Aug 21 13:28:33 2017 From: mark at livecode.com (Mark Waddingham) Date: Mon, 21 Aug 2017 19:28:33 +0200 Subject: lock screen gotcha revisited In-Reply-To: <15df85cf560.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> References: <952E58B6-358C-4044-89D3-E472E9FD2D4A@iotecdigital.com> <6F0B5437-DFB7-42A3-A844-4D5DFCB11F81@iotecdigital.com> <26d6f131-2092-06c4-8a4d-f730a04b1300@sonic.net> <15df85cf560.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Message-ID: On 2017-08-19 04:41, J. Landman Gay via use-livecode wrote: > Except when it doesn't. There seems to be an override in the lock > count if any unlock uses a visual effect. I'm not sure if that's on > purpose or not. Internally there is a counter - and only one - the engine uses it too when it needs to. The lock is dropped as soon as you get back to a wait with messages though (IIRC) (certainly the main runloop). Unbalanced lock screens can cause problems though - the IDE has had a fair few in the past - it might still... Do you have an example of the abberent behavior you've seen? It would be useful to know if there is an engine issue lurking here, or a misplaced lock/unlock screen in the IDE. Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From bobsneidar at iotecdigital.com Mon Aug 21 13:40:34 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Mon, 21 Aug 2017 17:40:34 +0000 Subject: lock screen gotcha revisited In-Reply-To: References: <952E58B6-358C-4044-89D3-E472E9FD2D4A@iotecdigital.com> <6F0B5437-DFB7-42A3-A844-4D5DFCB11F81@iotecdigital.com> <26d6f131-2092-06c4-8a4d-f730a04b1300@sonic.net> <15df85cf560.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Message-ID: I would have to recreate it as my production stack has already been gone through, and it seems to be working as advertised, which would argue against it being an engine issue. I'll see if I can create a sample stack in the next couple days. Right now I have a couple service calls to go out on and that will probably eat up the rest of my day. Bob S > On Aug 21, 2017, at 10:28 , Mark Waddingham via use-livecode wrote: > > On 2017-08-19 04:41, J. Landman Gay via use-livecode wrote: >> Except when it doesn't. There seems to be an override in the lock >> count if any unlock uses a visual effect. I'm not sure if that's on >> purpose or not. > > Internally there is a counter - and only one - the engine uses it too when it needs to. > > The lock is dropped as soon as you get back to a wait with messages though (IIRC) (certainly the main runloop). > > Unbalanced lock screens can cause problems though - the IDE has had a fair few in the past - it might still... Do you have an example of the abberent behavior you've seen? It would be useful to know if there is an engine issue lurking here, or a misplaced lock/unlock screen in the IDE. > > Warmest Regards, > > Mark. > > -- > Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ > LiveCode: Everyone can create apps From jacque at hyperactivesw.com Mon Aug 21 13:53:17 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Mon, 21 Aug 2017 12:53:17 -0500 Subject: Sending a message to users that floats above everything In-Reply-To: <3F7DF442-4870-41F0-9A99-3BB637974089@iotecdigital.com> References: <950CE409-2C3E-46EB-A124-995658A30CEA@gmail.com> <15e05745a68.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <3F7DF442-4870-41F0-9A99-3BB637974089@iotecdigital.com> Message-ID: <15e05ed62c8.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Yes, they're easy to implement, but they don't match the specs for any modern OS and they're very old school. If you want native appearance they are inappropriate. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com On August 21, 2017 11:34:20 AM Bob Sneidar via use-livecode wrote: > Awww! Take it back! I use em all the time. Someone clicks the delete > button, I ask them if they are sure that is what they want to do. > > Bob S > > >> On Aug 21, 2017, at 08:41 , J. Landman Gay via use-livecode >> wrote: >> >> Answer dialogs aren't appropriate for any OS any more. >> >> -- >> Jacqueline Landman Gay | jacque at hyperactivesw.com >> HyperActive Software | http://www.hyperactivesw.com > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From jacque at hyperactivesw.com Mon Aug 21 14:18:35 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Mon, 21 Aug 2017 13:18:35 -0500 Subject: lock screen gotcha revisited In-Reply-To: References: <952E58B6-358C-4044-89D3-E472E9FD2D4A@iotecdigital.com> <6F0B5437-DFB7-42A3-A844-4D5DFCB11F81@iotecdigital.com> <26d6f131-2092-06c4-8a4d-f730a04b1300@sonic.net> <15df85cf560.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Message-ID: <15e06048c78.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> I used to have an example, I struggled with the problem until I figured out the reason, and then I modified the script to work around it. It actually didn't happen in the IDE, only on Android. (I didn't test on iOS.) Now I can't remember what the original problem script was. But I'll see if I can reproduce it. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com On August 21, 2017 12:30:21 PM Mark Waddingham via use-livecode wrote: > On 2017-08-19 04:41, J. Landman Gay via use-livecode wrote: >> Except when it doesn't. There seems to be an override in the lock >> count if any unlock uses a visual effect. I'm not sure if that's on >> purpose or not. > > Internally there is a counter - and only one - the engine uses it too > when it needs to. > > The lock is dropped as soon as you get back to a wait with messages > though (IIRC) (certainly the main runloop). > > Unbalanced lock screens can cause problems though - the IDE has had a > fair few in the past - it might still... Do you have an example of the > abberent behavior you've seen? It would be useful to know if there is an > engine issue lurking here, or a misplaced lock/unlock screen in the IDE. > > Warmest Regards, > > Mark. > > -- > Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ > LiveCode: Everyone can create apps > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From prothero at earthlearningsolutions.org Mon Aug 21 14:19:48 2017 From: prothero at earthlearningsolutions.org (prothero at earthlearningsolutions.org) Date: Mon, 21 Aug 2017 11:19:48 -0700 Subject: lock screen gotcha revisited In-Reply-To: References: <952E58B6-358C-4044-89D3-E472E9FD2D4A@iotecdigital.com> <6F0B5437-DFB7-42A3-A844-4D5DFCB11F81@iotecdigital.com> <26d6f131-2092-06c4-8a4d-f730a04b1300@sonic.net> <15df85cf560.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Message-ID: Seems like it would be much simpler if lockscreen just kept the screen locked until unlockscreen was invoked, but there was an update screen command when forced updates were needed. No counters to keep track of. Best Bill William Prothero http://ed.earthednet.org > On Aug 21, 2017, at 10:40 AM, Bob Sneidar via use-livecode wrote: > > I would have to recreate it as my production stack has already been gone through, and it seems to be working as advertised, which would argue against it being an engine issue. I'll see if I can create a sample stack in the next couple days. Right now I have a couple service calls to go out on and that will probably eat up the rest of my day. > > Bob S > > >> On Aug 21, 2017, at 10:28 , Mark Waddingham via use-livecode wrote: >> >> On 2017-08-19 04:41, J. Landman Gay via use-livecode wrote: >>> Except when it doesn't. There seems to be an override in the lock >>> count if any unlock uses a visual effect. I'm not sure if that's on >>> purpose or not. >> >> Internally there is a counter - and only one - the engine uses it too when it needs to. >> >> The lock is dropped as soon as you get back to a wait with messages though (IIRC) (certainly the main runloop). >> >> Unbalanced lock screens can cause problems though - the IDE has had a fair few in the past - it might still... Do you have an example of the abberent behavior you've seen? It would be useful to know if there is an engine issue lurking here, or a misplaced lock/unlock screen in the IDE. >> >> Warmest Regards, >> >> Mark. >> >> -- >> Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ >> LiveCode: Everyone can create apps > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From jonathandlynch at gmail.com Mon Aug 21 14:28:27 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Mon, 21 Aug 2017 14:28:27 -0400 Subject: lock screen gotcha revisited In-Reply-To: References: <952E58B6-358C-4044-89D3-E472E9FD2D4A@iotecdigital.com> <6F0B5437-DFB7-42A3-A844-4D5DFCB11F81@iotecdigital.com> <26d6f131-2092-06c4-8a4d-f730a04b1300@sonic.net> <15df85cf560.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Message-ID: I agree with Bill. If you lock a door twice on a car, it is still just locked. One unlock will open it up. That seems more intuitive. Sent from my iPhone > On Aug 21, 2017, at 2:19 PM, prothero--- via use-livecode wrote: > > Seems like it would be much simpler if lockscreen just kept the screen locked until unlockscreen was invoked, but there was an update screen command when forced updates were needed. No counters to keep track of. > > Best > Bill > > William Prothero > http://ed.earthednet.org > >> On Aug 21, 2017, at 10:40 AM, Bob Sneidar via use-livecode wrote: >> >> I would have to recreate it as my production stack has already been gone through, and it seems to be working as advertised, which would argue against it being an engine issue. I'll see if I can create a sample stack in the next couple days. Right now I have a couple service calls to go out on and that will probably eat up the rest of my day. >> >> Bob S >> >> >>> On Aug 21, 2017, at 10:28 , Mark Waddingham via use-livecode wrote: >>> >>> On 2017-08-19 04:41, J. Landman Gay via use-livecode wrote: >>>> Except when it doesn't. There seems to be an override in the lock >>>> count if any unlock uses a visual effect. I'm not sure if that's on >>>> purpose or not. >>> >>> Internally there is a counter - and only one - the engine uses it too when it needs to. >>> >>> The lock is dropped as soon as you get back to a wait with messages though (IIRC) (certainly the main runloop). >>> >>> Unbalanced lock screens can cause problems though - the IDE has had a fair few in the past - it might still... Do you have an example of the abberent behavior you've seen? It would be useful to know if there is an engine issue lurking here, or a misplaced lock/unlock screen in the IDE. >>> >>> Warmest Regards, >>> >>> Mark. >>> >>> -- >>> Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ >>> LiveCode: Everyone can create apps >> >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From brahma at hindu.org Mon Aug 21 14:35:45 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Mon, 21 Aug 2017 18:35:45 +0000 Subject: Parent of Target In-Reply-To: <413fecbd6d6a0662306ddefd956e7ba3@livecode.com> References: <9FA2E439-5F28-4EC1-B087-142D3E2D24FF@hindu.org> <413fecbd6d6a0662306ddefd956e7ba3@livecode.com> Message-ID: <2C48F732-5695-4C46-98C6-DB15C702A6B8@hindu.org> Back at it here with attempst to make "generic" behaviors as text only stacks that can serve as slaves "all over the place" So this is all about the calling context/target. I wonder If I am working too hard here, may be useful to have the calling context ready for a dispatch, to parse the long owner? So this little array that could be stored as a local and then used later in the script to "do something different" based on the calling context. local sOwnerHierarchy on mouseup put the short name of the target into pTarget put the long owner of the target into sOwnerHierarchy split sOwnerHierarchy with " of " ------ ## test ## -------- put the number of lines of the keys of tOwner into tLevels repeat with x = 1 to tLevels put tOwner[x] & cr after tHierarchy end repeat put tHierarchy ------ ## end test ## -------- switch pTarget case "search" if fld "searchString" is empty then answer "Please enter a search string" with "OK" exit to top else runsearch pClass, pContent end if break end switch end mouseup command runSearch pClass, pContent # do different things based on calling context. ------------- I'm not sure I follow the underlying reasoning here - why not just use 'the long id of the target'?* The message path means that the message will hit the group/card/stack if not handled in the control (which it won't be, from what you are saying). From jacque at hyperactivesw.com Mon Aug 21 15:48:48 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Mon, 21 Aug 2017 14:48:48 -0500 Subject: lock screen gotcha revisited In-Reply-To: References: <952E58B6-358C-4044-89D3-E472E9FD2D4A@iotecdigital.com> <6F0B5437-DFB7-42A3-A844-4D5DFCB11F81@iotecdigital.com> <26d6f131-2092-06c4-8a4d-f730a04b1300@sonic.net> <15df85cf560.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Message-ID: On 8/21/17 1:28 PM, Jonathan Lynch via use-livecode wrote: > I agree with Bill. If you lock a door twice on a car, it is still just locked. One unlock will open it up. That seems more intuitive. Initially it's more intuitive, but if it were done this way you couldn't have handlers that manage locks both independently and when called from amother handler. For example: on updateThings lock screen set the rect of set the loc of updateAllButtonLabels unlock screen end updateThings on updateAllButtonLabels lock screen repeat with i = 1 to the number of btns set the label of btn i to the cDefaultLabel of btn i end repeat unlock screen end updateAllButtonLabels In this scenario, I can update only the buttons at any time, as well as updating them as part of a larger card update. In either case, the screen will remain locked until everything is done. This is what I was depending on when I noticed that an unlock with a visual effect didn't honor the lock count. I was getting unexpected visual results when the screen unlocked in a handler being called by a larger one that had already locked the screen. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com From jonathandlynch at gmail.com Mon Aug 21 15:53:04 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Mon, 21 Aug 2017 15:53:04 -0400 Subject: Completely OT - flat earth Message-ID: <3BABB60F-B009-4887-A98C-79D6B7587415@gmail.com> I just watched the eclipse where I live, while debating flat earth believers online. Some irony there, I suppose. It reminded me of the time another programmer told me LiveCode was a toy. Years later when asked by management to duplicate the functions of an app I created so that those functionalities could be incorporated into that team's main app, that same programmer concluded it would be impractical because my app did way more than they realized. The app saves that team about 2 hours a day of expensive staff time, which is quite a lot considering they have used it for 10 years. My point? The Earth is not flat. LC is great, even if some mainstream programmers are so entrenched, they cannot perceive its value. Sent from my iPhone From jacque at hyperactivesw.com Mon Aug 21 15:54:00 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Mon, 21 Aug 2017 14:54:00 -0500 Subject: Parent of Target In-Reply-To: <2C48F732-5695-4C46-98C6-DB15C702A6B8@hindu.org> References: <9FA2E439-5F28-4EC1-B087-142D3E2D24FF@hindu.org> <413fecbd6d6a0662306ddefd956e7ba3@livecode.com> <2C48F732-5695-4C46-98C6-DB15C702A6B8@hindu.org> Message-ID: <6fcd82a1-e234-1ddd-2f25-689c443db3c7@hyperactivesw.com> I don't understand quite what you're trying to do. If this is a behavior, the calling context is "me" or the "long name of me", isn't it? Also, why store it? It's always there. I'm likely missing something. On 8/21/17 1:35 PM, Sannyasin Brahmanathaswami via use-livecode wrote: > Back at it here with attempst to make "generic" behaviors as text only stacks that can serve as slaves "all over the place" > > So this is all about the calling context/target. > > I wonder If I am working too hard here, may be useful to have the calling context ready for a dispatch, to parse the long owner? > > So this little array that could be stored as a local and then used later in the script to "do something different" based on the calling context. > > local sOwnerHierarchy > on mouseup > put the short name of the target into pTarget > put the long owner of the target into sOwnerHierarchy > split sOwnerHierarchy with " of " > > ------ ## test ## -------- > put the number of lines of the keys of tOwner into tLevels > repeat with x = 1 to tLevels > put tOwner[x] & cr after tHierarchy > end repeat > put tHierarchy > ------ ## end test ## -------- > > switch pTarget > case "search" > if fld "searchString" is empty then > answer "Please enter a search string" with "OK" > exit to top > else > runsearch pClass, pContent > end if > break > end switch > end mouseup > > command runSearch pClass, pContent > > # do different things based on calling context. > > > ------------- > > > I'm not sure I follow the underlying reasoning here - why not just use > 'the long id of the target'?* > > The message path means that the message will hit the group/card/stack if > not handled in the control (which it won't be, from what you are > saying). > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com From jacque at hyperactivesw.com Mon Aug 21 16:17:14 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Mon, 21 Aug 2017 15:17:14 -0500 Subject: Completely OT - flat earth In-Reply-To: <3BABB60F-B009-4887-A98C-79D6B7587415@gmail.com> References: <3BABB60F-B009-4887-A98C-79D6B7587415@gmail.com> Message-ID: <74d2c7e8-b37b-6e49-4619-e812413ffabd@hyperactivesw.com> On 8/21/17 2:53 PM, Jonathan Lynch via use-livecode wrote: > I just watched the eclipse where I live, while debating flat earth believers online. Some irony there, I suppose. I watched it too, dropped everything to do it. Amazing. We didn't get totality here but it was about 80%. I read recently that the flat-earther movement is growing. That's amazing too. Some people will believe anything. > It reminded me of the time another programmer told me LiveCode was a toy. Years later when asked by management to duplicate the functions of an app I created so that those functionalities could be incorporated into that team's main app, that same programmer concluded it would be impractical because my app did way more than they realized. They said the same thing about HyperCard back in the day, and HC wasn't nearly as advanced as LC is now. Some people will believe anything... -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com From ahsoftware at sonic.net Mon Aug 21 16:35:36 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Mon, 21 Aug 2017 13:35:36 -0700 Subject: Parent of Target In-Reply-To: <6fcd82a1-e234-1ddd-2f25-689c443db3c7@hyperactivesw.com> References: <9FA2E439-5F28-4EC1-B087-142D3E2D24FF@hindu.org> <413fecbd6d6a0662306ddefd956e7ba3@livecode.com> <2C48F732-5695-4C46-98C6-DB15C702A6B8@hindu.org> <6fcd82a1-e234-1ddd-2f25-689c443db3c7@hyperactivesw.com> Message-ID: On 08/21/2017 12:54 PM, J. Landman Gay via use-livecode wrote: >> # do different things based on calling context. That's exactly the opposite of what behaviors are for. >> I'm not sure I follow the underlying reasoning here Thank you. That was my reaction as well. B- what problem are you trying to solve? -- Mark Wieder ahsoftware at gmail.com From monte at appisle.net Mon Aug 21 17:38:06 2017 From: monte at appisle.net (Monte Goulding) Date: Tue, 22 Aug 2017 07:38:06 +1000 Subject: Sending a message to users that floats above everything In-Reply-To: <15e05745a68.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> References: <950CE409-2C3E-46EB-A124-995658A30CEA@gmail.com> <15e05745a68.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Message-ID: <3FD59A31-DE40-4AC2-8B20-C110EC5A2240@appisle.net> > On 22 Aug 2017, at 1:41 am, J. Landman Gay via use-livecode wrote: > > Monte's external works great on newer Android devices but seems to crash on older ones. That's why I had to replace it with a hacked up fake in my Android object library. There's a pull request in git for a native toast that is waiting for review and as soon as it's available I will switch to it. It's been waiting for a while, I hope it gets attention soon. Answer dialogs aren't appropriate for any OS any more. Hmm? nobody told me about a crash? anyway, as Mark said it?s probably best done in LCB now. Cheers Monte From monte at appisle.net Mon Aug 21 18:23:10 2017 From: monte at appisle.net (Monte Goulding) Date: Tue, 22 Aug 2017 08:23:10 +1000 Subject: Array literals and script only stack initialization (was Re: Developing first on android) In-Reply-To: <7a91044cc13bf72018d78ef711f7d8c0@livecode.com> References: <4abdd6fd29b2807e9d57efb9b788a198@livecode.com> <7a91044cc13bf72018d78ef711f7d8c0@livecode.com> Message-ID: <78A7C61F-19B5-472D-900D-DC55952CE51E@appisle.net> > On 22 Aug 2017, at 3:17 am, Mark Waddingham via use-livecode wrote: > > work stopped on it when we reached a dead end with the dVCS 'stack dir' idea - based on ideas Monte developed in lcVCS. I can?t recall getting an explanation of what the dead end was but my guess is that it was fact that a merge conflict would be a nightmare to sort out and it is _very_ hard to write a non-lossy stack file format that won?t have a lot of merge conflicts If the goal of any array import/export of LC object is to create a mergeable file format then I wouldn?t bother. There?s just too much mingling of data and session state in LC objects. lcVCS just barely scrapes by if you have rigorous object cleaning scripts so that you don?t get merge conflicts on stuff like object sizes in a resizable stack. Not to mention the object ID merge conflict conundrum which needs a _lot_ of code to work around the fact we don?t have UUIDs. With script only stacks proving there?s significant utility in lossy file formats here I think the best solution would be something along the lines of the script only UI library I made where only a very limited subset of properties is supported, everything _must_ be uniquely named, no custom properties, no non-stack behaviors, only store the name of images used for icons etc. Just the absolute bare minimum to recreate the stack. Use something like YAML so it?s super easy to read and make it a single file so it?s not possible to get lost in an arcane directory structure. Cheers Monte From jacque at hyperactivesw.com Mon Aug 21 18:46:44 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Mon, 21 Aug 2017 17:46:44 -0500 Subject: Sending a message to users that floats above everything In-Reply-To: <3FD59A31-DE40-4AC2-8B20-C110EC5A2240@appisle.net> References: <950CE409-2C3E-46EB-A124-995658A30CEA@gmail.com> <15e05745a68.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <3FD59A31-DE40-4AC2-8B20-C110EC5A2240@appisle.net> Message-ID: <0751cc25-21b5-61da-5dbd-e81c871d0d3b@hyperactivesw.com> On 8/21/17 4:38 PM, Monte Goulding via use-livecode wrote: > >> On 22 Aug 2017, at 1:41 am, J. Landman Gay via use-livecode wrote: >> >> Monte's external works great on newer Android devices but seems to crash on older ones. That's why I had to replace it with a hacked up fake in my Android object library. There's a pull request in git for a native toast that is waiting for review and as soon as it's available I will switch to it. It's been waiting for a while, I hope it gets attention soon. Answer dialogs aren't appropriate for any OS any more. > > Hmm? nobody told me about a crash? anyway, as Mark said it?s probably best done in LCB now. Sorry, that was my fault. It was a pretty old Android phone running (I think) Lollipop. Our target audience would likely have newer phones so I didn't bother with it, especially after I saw there was a pull request in git. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com From prothero at earthlearningsolutions.org Mon Aug 21 18:47:16 2017 From: prothero at earthlearningsolutions.org (prothero at earthlearningsolutions.org) Date: Mon, 21 Aug 2017 15:47:16 -0700 Subject: lock screen gotcha revisited In-Reply-To: References: <952E58B6-358C-4044-89D3-E472E9FD2D4A@iotecdigital.com> <6F0B5437-DFB7-42A3-A844-4D5DFCB11F81@iotecdigital.com> <26d6f131-2092-06c4-8a4d-f730a04b1300@sonic.net> <15df85cf560.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Message-ID: <65ED1B62-31C9-4194-AE4F-BB78FD17E3FD@earthlearningsolutions.org> I didn't realize that the lockscreen command only applied to the handler that sets it. Does this mean that each script has to set lockscreen if it needs it? If lockscreen was either globally true or not, you could do: On doscreenstuff1 Set lockscreen to true Handler1 Handler2 Set lockscreen to false End doscreenstuff1 On handler1 --do screen stuff Updatescreen End handler1 On handler2 --do screen stuff Updatescreen End handler2 Lockscreen could be set or unset multiple times or tested and left on if it was already set when the handler was entered. I am not arguing the current system be changed though, but for me, my suggestion is way more intuitive. Trying to keep track of the lockscreen count seems prone to errors. My experience comes from past programming in Lingo (Director) but the lcs way may be more obvious to more long term lcs scripters, not to mention the breaking of older versions of apps. Best, Bill P William Prothero http://ed.earthednet.org > On Aug 21, 2017, at 12:48 PM, J. Landman Gay via use-livecode wrote: > >> On 8/21/17 1:28 PM, Jonathan Lynch via use-livecode wrote: >> I agree with Bill. If you lock a door twice on a car, it is still just locked. One unlock will open it up. That seems more intuitive. > > Initially it's more intuitive, but if it were done this way you couldn't have handlers that manage locks both independently and when called from amother handler. For example: > > on updateThings > lock screen > set the rect of > set the loc of > updateAllButtonLabels > unlock screen > end updateThings > > on updateAllButtonLabels > lock screen > repeat with i = 1 to the number of btns > set the label of btn i to the cDefaultLabel of btn i > end repeat > unlock screen > end updateAllButtonLabels > > In this scenario, I can update only the buttons at any time, as well as updating them as part of a larger card update. In either case, the screen will remain locked until everything is done. > > This is what I was depending on when I noticed that an unlock with a visual effect didn't honor the lock count. I was getting unexpected visual results when the screen unlocked in a handler being called by a larger one that had already locked the screen. > > -- > Jacqueline Landman Gay | jacque at hyperactivesw.com > HyperActive Software | http://www.hyperactivesw.com > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From jonathandlynch at gmail.com Mon Aug 21 19:13:41 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Mon, 21 Aug 2017 19:13:41 -0400 Subject: lock screen gotcha revisited In-Reply-To: <65ED1B62-31C9-4194-AE4F-BB78FD17E3FD@earthlearningsolutions.org> References: <952E58B6-358C-4044-89D3-E472E9FD2D4A@iotecdigital.com> <6F0B5437-DFB7-42A3-A844-4D5DFCB11F81@iotecdigital.com> <26d6f131-2092-06c4-8a4d-f730a04b1300@sonic.net> <15df85cf560.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <65ED1B62-31C9-4194-AE4F-BB78FD17E3FD@earthlearningsolutions.org> Message-ID: This exactly. Globally on or globally off. Just unlock and lock again to update. It is moot, but I would prefer it. Sent from my iPhone > On Aug 21, 2017, at 6:47 PM, prothero--- via use-livecode wrote: > > I didn't realize that the lockscreen command only applied to the handler that sets it. > > Does this mean that each script has to set lockscreen if it needs it? If lockscreen was either globally true or not, you could do: > > On doscreenstuff1 > Set lockscreen to true > Handler1 > Handler2 > Set lockscreen to false > End doscreenstuff1 > > On handler1 > --do screen stuff > Updatescreen > End handler1 > > On handler2 > --do screen stuff > Updatescreen > End handler2 > > Lockscreen could be set or unset multiple times or tested and left on if it was already set when the handler was entered. > > I am not arguing the current system be changed though, but for me, my suggestion is way more intuitive. Trying to keep track of the lockscreen count seems prone to errors. My experience comes from past programming in Lingo (Director) but the lcs way may be more obvious to more long term lcs scripters, not to mention the breaking of older versions of apps. > > Best, > Bill P > > William Prothero > http://ed.earthednet.org > >>> On Aug 21, 2017, at 12:48 PM, J. Landman Gay via use-livecode wrote: >>> >>> On 8/21/17 1:28 PM, Jonathan Lynch via use-livecode wrote: >>> I agree with Bill. If you lock a door twice on a car, it is still just locked. One unlock will open it up. That seems more intuitive. >> >> Initially it's more intuitive, but if it were done this way you couldn't have handlers that manage locks both independently and when called from amother handler. For example: >> >> on updateThings >> lock screen >> set the rect of >> set the loc of >> updateAllButtonLabels >> unlock screen >> end updateThings >> >> on updateAllButtonLabels >> lock screen >> repeat with i = 1 to the number of btns >> set the label of btn i to the cDefaultLabel of btn i >> end repeat >> unlock screen >> end updateAllButtonLabels >> >> In this scenario, I can update only the buttons at any time, as well as updating them as part of a larger card update. In either case, the screen will remain locked until everything is done. >> >> This is what I was depending on when I noticed that an unlock with a visual effect didn't honor the lock count. I was getting unexpected visual results when the screen unlocked in a handler being called by a larger one that had already locked the screen. >> >> -- >> Jacqueline Landman Gay | jacque at hyperactivesw.com >> HyperActive Software | http://www.hyperactivesw.com >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From jacque at hyperactivesw.com Mon Aug 21 19:13:48 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Mon, 21 Aug 2017 18:13:48 -0500 Subject: lock screen gotcha revisited In-Reply-To: <65ED1B62-31C9-4194-AE4F-BB78FD17E3FD@earthlearningsolutions.org> References: <952E58B6-358C-4044-89D3-E472E9FD2D4A@iotecdigital.com> <6F0B5437-DFB7-42A3-A844-4D5DFCB11F81@iotecdigital.com> <26d6f131-2092-06c4-8a4d-f730a04b1300@sonic.net> <15df85cf560.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <65ED1B62-31C9-4194-AE4F-BB78FD17E3FD@earthlearningsolutions.org> Message-ID: On 8/21/17 5:47 PM, prothero--- via use-livecode wrote: > I didn't realize that the lockscreen command only applied to the handler that sets it. No, it doesn't (or shouldn't) apply only to the handler that sets it. > > Does this mean that each script has to set lockscreen if it needs it? It's a global lock until either a handler unlocks the screen or an idle occurs. The engine automatically unlocks when it does housekeeping. > I am not arguing the current system be changed though, but for me, my suggestion is way more intuitive. Trying to keep track of the lockscreen count seems prone to errors. You don't need to keep a count (or shouldn't need to.) It's all internal and generally it works well. Lock the screen when you need it, unlock when you want to redraw the screen, and if you forget to unlock then the engine will do it for you when the next idle occurs. The only issue I've found (and still need to verify) is that unlocking with a visual effect can override the expected behavior, which is to keep the lock on either until you unlock it or no handlers are running. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com From ahsoftware at sonic.net Mon Aug 21 21:00:57 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Mon, 21 Aug 2017 18:00:57 -0700 Subject: lock screen gotcha revisited In-Reply-To: References: <952E58B6-358C-4044-89D3-E472E9FD2D4A@iotecdigital.com> <6F0B5437-DFB7-42A3-A844-4D5DFCB11F81@iotecdigital.com> <26d6f131-2092-06c4-8a4d-f730a04b1300@sonic.net> <15df85cf560.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Message-ID: <6bba8ef0-9496-a595-fa5b-55897f8ca41b@sonic.net> On 08/21/2017 10:28 AM, Mark Waddingham via use-livecode wrote: > On 2017-08-19 04:41, J. Landman Gay via use-livecode wrote: >> Except when it doesn't. There seems to be an override in the lock >> count if any unlock uses a visual effect. I'm not sure if that's on >> purpose or not. > > Internally there is a counter - and only one - the engine uses it too > when it needs to. > > The lock is dropped as soon as you get back to a wait with messages > though (IIRC) (certainly the main runloop). Does that mean temporarily unlocked or resetting the counter to zero? > > Unbalanced lock screens can cause problems though - the IDE has had a > fair few in the past - it might still... Do you have an example of the > abberent behavior you've seen? It would be useful to know if there is an > engine issue lurking here, or a misplaced lock/unlock screen in the IDE. can misplaced unlocks set the counter to < zero? -- Mark Wieder ahsoftware at gmail.com From hh at hyperhh.de Mon Aug 21 22:41:39 2017 From: hh at hyperhh.de (hh) Date: Tue, 22 Aug 2017 04:41:39 +0200 Subject: lock screen gotcha revisited Message-ID: <657F1D43-0603-4093-8039-90C6A7411EC1@hyperhh.de> The real interesting thing is now for me how to lock the screen in LC Builder? I couldn't find a way to do that. Who knows? This interacts with LC Script, timed widgets (clocks, animations) want their own screen updates ... From brian at milby7.com Tue Aug 22 00:58:00 2017 From: brian at milby7.com (Brian Milby) Date: Mon, 21 Aug 2017 23:58:00 -0500 Subject: Array literals and script only stack initialization (was Re: Developing first on android) Message-ID: <06542350-fcfa-47b3-936a-7559aa077989@Brian-Milbys-iPhone-6s-Plus> I think there may be a strategy to avoid a large part of the ID collision issue. Wouldn't need full on UUIDs, just assign a range to each developer working the UI. Upon import they could even be collapsed down to the natural order range or left as is. It would require the temporary setting of the stack ID and being able to revert (thinking the alt ID may be useful here). Dev A could start at 5001, Dev B at 6001, etc. Main stack would remain with the 1001 series. The idea would be that in the preopenstack handler that a check would be made for the dev environment and the developer. The alt ID would be set for the stack. When new objects are created, the engine would use the alt ID if set. There would be a corresponding call to clear the stack alt ID to go back to the normal series (say for the primary developer) and probably also go in the close stack handler. Custom properties could be used to track where each developer was in their sequence. Although the diffs may not be useful for coordinated development, don't you think they would be useful to compare snapshots? Using github, it would show a bunch of lines where data just changed which wouldn't be all that useful but being able to see the new objects which should be easily identifiable should be useful. I know that lcVCS did quite a bit of pruning, but that sort of activity could be built into the LCS code that processed the array before generating the JSON or XML. There could even be 2 or more levels defined to provide the ability to customize what data was retained. I guess my point is that if writing code to pull the native data structure out to an array, why stop at less than everything at that point. It would be easy to ignore parts of the array that were not needed. The good thing is that we could ignore the pieces that are no longer relevant (and would get created on the fly when saved as binary). If nothing else, it will be a fun learning experience for me. Thanks, Brian > > On Aug 21, 2017 at 5:23 PM, wrote: > > > > > On 22 Aug 2017, at 3:17 am, Mark Waddingham via use-livecode wrote: > > work stopped on it when we reached a dead end with the dVCS 'stack dir' idea - based on ideas Monte developed in lcVCS. I can?t recall getting an explanation of what the dead end was but my guess is that it was fact that a merge conflict would be a nightmare to sort out and it is _very_ hard to write a non-lossy stack file format that won?t have a lot of merge conflicts If the goal of any array import/export of LC object is to create a mergeable file format then I wouldn?t bother. There?s just too much mingling of data and session state in LC objects. lcVCS just barely scrapes by if you have rigorous object cleaning scripts so that you don?t get merge conflicts on stuff like object sizes in a resizable stack. Not to mention the object ID merge conflict conundrum which needs a _lot_ of code to work around the fact we don?t have UUIDs. With script only stacks proving there?s significant utility in lossy file formats here I think the best solution would be something along the lines of the script only UI library I made where only a very limited subset of properties is supported, everything _must_ be uniquely named, no custom properties, no non-stack behaviors, only store the name of images used for icons etc. Just the absolute bare minimum to recreate the stack. Use something like YAML so it?s super easy to read and make it a single file so it?s not possible to get lost in an arcane directory structure. Cheers Monte _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode > > From monte at appisle.net Tue Aug 22 01:40:44 2017 From: monte at appisle.net (Monte Goulding) Date: Tue, 22 Aug 2017 15:40:44 +1000 Subject: Array literals and script only stack initialization (was Re: Developing first on android) In-Reply-To: <06542350-fcfa-47b3-936a-7559aa077989@Brian-Milbys-iPhone-6s-Plus> References: <06542350-fcfa-47b3-936a-7559aa077989@Brian-Milbys-iPhone-6s-Plus> Message-ID: > On 22 Aug 2017, at 2:58 pm, Brian Milby via use-livecode wrote: > > > I think there may be a strategy to avoid a large part of the ID collision issue. Wouldn't need full on UUIDs, just assign a range to each developer working the UI. Upon import they could even be collapsed down to the natural order range or left as is. It would require the temporary setting of the stack ID and being able to revert (thinking the alt ID may be useful here). Dev A could start at 5001, Dev B at 6001, etc. Main stack would remain with the 1001 series. The idea would be that in the preopenstack handler that a check would be made for the dev environment and the developer. The alt ID would be set for the stack. When new objects are created, the engine would use the alt ID if set. There would be a corresponding call to clear the stack alt ID to go back to the normal series (say for the primary developer) and probably also go in the close stack handler. Custom properties could be used to track where each developer was in their sequence. The lcVCS approach was to assign everything a UUID and then translate ID properties (icon,pattern,behavior etc) to the UUIDs and then translate them back to the new UUIDs when the stack is being re-created. It works well enough but you do end up seeing UUIDs in diffs. Probably what would be better would be to require unique long names (at least for objects that need this translation) and translate to those. That way you would see something readable. > > Although the diffs may not be useful for coordinated development, don't you think they would be useful to compare snapshots? Using github, it would show a bunch of lines where data just changed which wouldn't be all that useful but being able to see the new objects which should be easily identifiable should be useful. Hehe? I think I?m perhaps a little jaded because I ended up creating a bit of a monster with lcVCS largely because of the UUIDs and the fact that it is a directory structure rather than a single file. Yes it would definitely be very helpful if we can get it right. JSON is also not very good for diffs unless you have a not very strict parser which allows comma at the end of the last element of an array or object. So? ideally we would have YAML <-> Array that is at least as fast as mergJSON and then a single file format that shmoozes the array before saving to remove unnecessary stuff. Working out what is unnecessary is fun too? I ended up with a plugin system in lcVCS so you could write a little bit of code for a custom control like a DataGrid to decide which custom properties to kill on save. It?s probably not necessary to start from scratch here. Disregarding the YAML bit for a second the other bits only require relatively small changes to lcVCS. Well dropping UUIDs would be a bit of work but not too bad. When array export is possible then that?s just a matter of swapping out use of the properties property for array export/import. Cheers Monte From mark at livecode.com Tue Aug 22 02:36:48 2017 From: mark at livecode.com (Mark Waddingham) Date: Tue, 22 Aug 2017 08:36:48 +0200 Subject: Array literals and script only stack initialization (was Re: Developing first on android) In-Reply-To: <78A7C61F-19B5-472D-900D-DC55952CE51E@appisle.net> References: <4abdd6fd29b2807e9d57efb9b788a198@livecode.com> <7a91044cc13bf72018d78ef711f7d8c0@livecode.com> <78A7C61F-19B5-472D-900D-DC55952CE51E@appisle.net> Message-ID: <19f70f5e800fa97679dd54194b0ab504@livecode.com> On 2017-08-22 00:23, Monte Goulding via use-livecode wrote: > I can?t recall getting an explanation of what the dead end was but my > guess is that it was fact that a merge conflict would be a nightmare > to sort out and it is _very_ hard to write a non-lossy stack file > format that won?t have a lot of merge conflicts I think we shelved that project before you joined LiveCode :) The 'dead-end' was more a realisation of the fact that we had been trying to solve the wrong problem. All the dVCSs which exist today are text-based - they are designed and built for allowing collaborative contribution to projects which are *naturally* text-based. Indeed, git was designed by Linus Torvalds to improve efficiency of contribution to the linux kernel - which is a purely C project. When you combine this with an extra constraint which was placed on the project - the ability to be able to 'naturally' interact with patches through GitHub or similar - you end up with the dead-end. The goal of trying to create a mergeable text format for stacks which should work naturally through GitHub and such was, I think, a mis-step. It just isn't possible, in full generality, to do in a way which does not involve significant amount of human effort to resolve conflicts at the text level (and conflict resolution can be hard - even in C and similar languages - for a hierarchical data-structure it can be a lot harder!). This means that merges require a tool, and if merges require a tool why do we care about the underlying format? The point here is that, with hindsight, we would have been better off ignoring the requirement for things to work 'in GitHub', and instead producing a merge-tool which could take two stacks (which had been instrumented appropriately) and produce a third after guided interaction to resolve the conflicts. Of course, text display of stackfile content would be useful in this - to help visualise the conflicts - but it wouldn't need to be total, or complete, or satisfy some impossible constraints around ensuring merge conflicts (detected with 3-way diff) were minimized. Morale of the story: don't expect an algorithm (diff) which is designed for giving you the differences for sequential data to work on hierarchical data - because it won't. > If the goal of any array import/export of LC object is to create a > mergeable file format then I wouldn?t bother. There?s just too much > mingling of data and session state in LC objects. lcVCS just barely > scrapes by if you have rigorous object cleaning scripts so that you > don?t get merge conflicts on stuff like object sizes in a resizable > stack. Not to mention the object ID merge conflict conundrum which > needs a _lot_ of code to work around the fact we don?t have UUIDs. From my point of view, array representation of core engine object's properties is a useful feature to have. It can be done now (lcVCS shows that), however, the code which does it is spread around several places which means maintenance is difficult. The thing which generates the array format should be a method of the object which produces it. I'd be wary of adding anything beyond *just* the core properties array export to the C++ part of the engine as the overhead in writing the C++ to do more than that is not justified - the construction of a full array of a stackfile would be better done as a LiveCode Script library. If there turn out to be performance issues with that approach which were critical *then* we look at how to make the script more performant, perhaps by adding engine functionality for the parts causing a problem. > With script only stacks proving there?s significant utility in lossy > file formats here I think the best solution would be something along > the lines of the script only UI library I made where only a very > limited subset of properties is supported, everything _must_ be > uniquely named, no custom properties, no non-stack behaviors, only > store the name of images used for icons etc. Just the absolute bare > minimum to recreate the stack. Use something like YAML so it?s super > easy to read and make it a single file so it?s not possible to get > lost in an arcane directory structure. The reason Levure works well is because it plays by the implicit rules which you need to follow if you want to use GitHub-like dVCS - your project must be a naturally text-based format, where naturally means designed to be written in text directly rather than rendered to text using some sort of algorithm. Indeed, more specifically, it also needs to follow implicit rules which ensure conflicts are minimised - one being unique naming of objects! Certainly YAML would make for quite a readable format - although it is unlikely it would be any better or worse, in terms of mergeability, than any of the other approaches that have been tried (unless generated in a specific canonical way, and the stacks rendered to it follow some very very strict rules - which is essentially, then, something like Levure). Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From mark at livecode.com Tue Aug 22 02:42:38 2017 From: mark at livecode.com (Mark Waddingham) Date: Tue, 22 Aug 2017 08:42:38 +0200 Subject: lock screen gotcha revisited In-Reply-To: <657F1D43-0603-4093-8039-90C6A7411EC1@hyperhh.de> References: <657F1D43-0603-4093-8039-90C6A7411EC1@hyperhh.de> Message-ID: On 2017-08-22 04:41, hh via use-livecode wrote: > The real interesting thing is now for me how to lock the screen > in LC Builder? I couldn't find a way to do that. Who knows? There isn't one - although you can use 'execute script' to use LCS's lock/unlock screen. Indeed, I should check whether LCB does currently use an implicit lock screen - it probably should as LCB handlers, when called from LCS, are meant to be 'atomic' in some sense. > This interacts with LC Script, timed widgets (clocks, animations) > want their own screen updates ... Screen updates of widgets only happen upon request from the widget - by using the 'redraw all' and 'redraw rect' commands. Any updates all fold into the update mechanism LCS uses and occur at a suitable point after returning from LCB to LCS - this is the same as calling any engine command / function. Can you elaborate on your use-case here, just so I can check there isn't something we are missing? :) Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From mark at livecode.com Tue Aug 22 02:50:23 2017 From: mark at livecode.com (Mark Waddingham) Date: Tue, 22 Aug 2017 08:50:23 +0200 Subject: Sending a message to users that floats above everything In-Reply-To: <3FD59A31-DE40-4AC2-8B20-C110EC5A2240@appisle.net> References: <950CE409-2C3E-46EB-A124-995658A30CEA@gmail.com> <15e05745a68.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <3FD59A31-DE40-4AC2-8B20-C110EC5A2240@appisle.net> Message-ID: <88a47a224064e255991b2e477293fcbc@livecode.com> On 2017-08-21 23:38, Monte Goulding via use-livecode wrote: > Hmm? nobody told me about a crash? anyway, as Mark said it?s probably > best done in LCB now. I wouldn't usually suggest duplicating effort / code - however the Toast function is too hard to resist in this case... If only to show a direct comparison between LCB vs C++! I think HedgeHao's patch adds a number of files, and has to modify the engine in several places to hook it in. In contrast, the LCB would probably be around 20-30 lines in a single file. Indeed, there's a lot of (specifically mobile commands/functions) C++ engine code which would be better replaced with LCB using FFI features - the C++ essentially for that kind of stuff ends up being 90% boilerplate and 10% functionality; LCB eliminates most of the boilerplate and so you end up just having the code which actually does something. Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From effendi at wanadoo.fr Tue Aug 22 08:03:56 2017 From: effendi at wanadoo.fr (Francis Nugent Dixon) Date: Tue, 22 Aug 2017 14:03:56 +0200 Subject: Completely OT - flat earth In-Reply-To: References: Message-ID: <30870775-3E73-4D40-B9A9-D59D25678DB7@wanadoo.fr> 11 August 1999 - We went out on our (Honda) bikes to find THE SPOT. It was somewhere North-East of Paris. The birds were so petrified, they stopped singing - A once in a lifetime experience (next one here is far enough away from today to not interest me, as I most definitely WILL NOT be there !!!) And for the second experience of a lifetime - LIVECODE ! All the way from the eighties, through Hypercard, etc, and now my daily bread. Screw the other languages (Google Go, iOS Swift, Hack, Rust, Julia, Scala, Dart). I have what I need, and I'm too old to spend a year (or even more) on investigating new languages, when LiveCode does what I want (and more !) I have my flat earth, and I will use Livecode to my last day ...... -Francis From toolbook at kestner.de Tue Aug 22 08:13:18 2017 From: toolbook at kestner.de (Tiemo Hollmann TB) Date: Tue, 22 Aug 2017 14:13:18 +0200 Subject: AW: Completely OT - flat earth In-Reply-To: <30870775-3E73-4D40-B9A9-D59D25678DB7@wanadoo.fr> References: <30870775-3E73-4D40-B9A9-D59D25678DB7@wanadoo.fr> Message-ID: <009401d31b40$0b253100$216f9300$@kestner.de> :) -----Urspr?ngliche Nachricht----- Von: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] Im Auftrag von Francis Nugent Dixon via use-livecode Gesendet: Dienstag, 22. August 2017 14:04 An: use-livecode at lists.runrev.com Cc: Francis Nugent Dixon Betreff: Completely OT - flat earth 11 August 1999 - We went out on our (Honda) bikes to find THE SPOT. It was somewhere North-East of Paris. The birds were so petrified, they stopped singing - A once in a lifetime experience (next one here is far enough away from today to not interest me, as I most definitely WILL NOT be there !!!) And for the second experience of a lifetime - LIVECODE ! All the way from the eighties, through Hypercard, etc, and now my daily bread. Screw the other languages (Google Go, iOS Swift, Hack, Rust, Julia, Scala, Dart). I have what I need, and I'm too old to spend a year (or even more) on investigating new languages, when LiveCode does what I want (and more !) I have my flat earth, and I will use Livecode to my last day ...... -Francis _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode From colinholgate at gmail.com Tue Aug 22 09:25:47 2017 From: colinholgate at gmail.com (Colin Holgate) Date: Tue, 22 Aug 2017 06:25:47 -0700 Subject: Completely OT - flat earth In-Reply-To: <30870775-3E73-4D40-B9A9-D59D25678DB7@wanadoo.fr> References: <30870775-3E73-4D40-B9A9-D59D25678DB7@wanadoo.fr> Message-ID: I was in the southwest of England that day. It was very dense cloud, so we didn?t see the sun at all. Here?s a time-lapse of what we saw: https://www.facebook.com/colin.holgate.5/videos/10159330354275694/ > On Aug 22, 2017, at 5:03 AM, Francis Nugent Dixon via use-livecode wrote: > > 11 August 1999 - We went out on our (Honda) bikes to find THE SPOT. > It was somewhere North-East of Paris. The birds were so petrified, they > stopped singing - A once in a lifetime experience (next one here is far > enough away from today to not interest me, as I most definitely WILL > NOT be there !!!) > And for the second experience of a lifetime - LIVECODE ! All the way from > the eighties, through Hypercard, etc, and now my daily bread. Screw the > other languages (Google Go, iOS Swift, Hack, Rust, Julia, Scala, Dart). I > have what I need, and I'm too old to spend a year (or even more) on > investigating new languages, when LiveCode does what I want (and > more !) > > I have my flat earth, and I will use Livecode to my last day ...... > > -Francis From jbv at souslelogo.com Tue Aug 22 09:34:23 2017 From: jbv at souslelogo.com (jbv) Date: Tue, 22 Aug 2017 15:34:23 +0200 Subject: Completely OT - flat earth In-Reply-To: <74d2c7e8-b37b-6e49-4619-e812413ffabd@hyperactivesw.com> References: <3BABB60F-B009-4887-A98C-79D6B7587415@gmail.com> <74d2c7e8-b37b-6e49-4619-e812413ffabd@hyperactivesw.com> Message-ID: <6d7ebe27b028cd192b3dc76a80c7628e.squirrel@sage.on-rev.com> On Mon, August 21, 2017 10:17 pm, J. Landman Gay via use-livecode wrote: > > I read recently that the flat-earther movement is growing. That's because of global warming : earth is slowly melting and will get 100% flat by the year 2100... From sean at pidigital.co.uk Tue Aug 22 09:50:18 2017 From: sean at pidigital.co.uk (Sean Cole (Pi)) Date: Tue, 22 Aug 2017 14:50:18 +0100 Subject: Completely OT - flat earth In-Reply-To: <74d2c7e8-b37b-6e49-4619-e812413ffabd@hyperactivesw.com> References: <3BABB60F-B009-4887-A98C-79D6B7587415@gmail.com> <74d2c7e8-b37b-6e49-4619-e812413ffabd@hyperactivesw.com> Message-ID: Have you ever met/heard-of a 'Flat-Earth' pilot? Or geologist? Or astrophysicist? Or plain physicist? Me neither. Sean Cole *Pi Digital Productions Ltd* www.pidigital.co.uk +44(1634)402193 +44(7702)116447 'Don't try to think outside the box. Just remember the truth: There is no box!' 'For then you realise it is not the box you are trying to look outside of, but it is yourself!' eMail Ts & Cs Pi Digital Productions Ltd is a UK registered limited company, no. 5255609 On 21 August 2017 at 21:17, J. Landman Gay via use-livecode < use-livecode at lists.runrev.com> wrote: > On 8/21/17 2:53 PM, Jonathan Lynch via use-livecode wrote: > >> I just watched the eclipse where I live, while debating flat earth >> believers online. Some irony there, I suppose. >> > > I watched it too, dropped everything to do it. Amazing. We didn't get > totality here but it was about 80%. > > I read recently that the flat-earther movement is growing. That's amazing > too. Some people will believe anything. > > > It reminded me of the time another programmer told me LiveCode was a toy. >> Years later when asked by management to duplicate the functions of an app I >> created so that those functionalities could be incorporated into that >> team's main app, that same programmer concluded it would be impractical >> because my app did way more than they realized. >> > > They said the same thing about HyperCard back in the day, and HC wasn't > nearly as advanced as LC is now. Some people will believe anything... > > -- > Jacqueline Landman Gay | jacque at hyperactivesw.com > HyperActive Software | http://www.hyperactivesw.com > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From colinholgate at gmail.com Tue Aug 22 10:09:14 2017 From: colinholgate at gmail.com (Colin Holgate) Date: Tue, 22 Aug 2017 07:09:14 -0700 Subject: Completely OT - flat earth In-Reply-To: References: <3BABB60F-B009-4887-A98C-79D6B7587415@gmail.com> <74d2c7e8-b37b-6e49-4619-e812413ffabd@hyperactivesw.com> Message-ID: Here?s a video I took from my plane seat yesterday: https://www.facebook.com/colin.holgate.5/videos/10159330358430694/ Unfortunately we crossed the eclipse path sooner than I hoped, and so only got around 75% eclipse. From prothero at earthlearningsolutions.org Tue Aug 22 10:39:28 2017 From: prothero at earthlearningsolutions.org (prothero at earthlearningsolutions.org) Date: Tue, 22 Aug 2017 07:39:28 -0700 Subject: Completely OT - flat earth In-Reply-To: References: <3BABB60F-B009-4887-A98C-79D6B7587415@gmail.com> <74d2c7e8-b37b-6e49-4619-e812413ffabd@hyperactivesw.com> Message-ID: Totality in Corvallis, Or, USA. Awesome! Bill P William Prothero http://es.earthednet.org > On Aug 22, 2017, at 7:09 AM, Colin Holgate via use-livecode wrote: > > Here?s a video I took from my plane seat yesterday: > > https://www.facebook.com/colin.holgate.5/videos/10159330358430694/ > > Unfortunately we crossed the eclipse path sooner than I hoped, and so only got around 75% eclipse. > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From mark at livecode.com Tue Aug 22 10:43:27 2017 From: mark at livecode.com (Mark Waddingham) Date: Tue, 22 Aug 2017 16:43:27 +0200 Subject: Paint tools and image creation Message-ID: <555e3fba881cea87774827e4ed499ba0@livecode.com> Hi all, We had an issue come into support about using the paint tools on a grouped image - this has come up before (years ago, at least). Basically, only the browser, pointer and help tools will recurse into groups - the paint tools will not. This means that if you use the paint tools over an image in a group, the grouped image will not get edited. Instead, if there is not a top-level image one will be created and that will be edited. The question is - is this behavior something which should: 1) Be considered a bug 2) Be considered correct behavior 3) Be considered an anomaly - i.e. something which is probably a bug, but too many people rely on to change without some sort of compatibility mechanism I realize this is an edge case; however, I thought it worth asking to see if anyone here relies on the fact that images in groups do not get affected by paint tools; or whether it would be far better than if did! Basically I'm trying to decide if it should be 'fixed' (assuming the current behavior is considered erroneous!), and if so whether it would be suitable for a maintenance release (it is, strictly speaking, a change in behavior), or only for a development release. The bug report is here: http://quality.livecode.com/show_bug.cgi?id=20286 Any feedback gratefully received. Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From bobsneidar at iotecdigital.com Tue Aug 22 10:54:05 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Tue, 22 Aug 2017 14:54:05 +0000 Subject: lock screen gotcha revisited In-Reply-To: <65ED1B62-31C9-4194-AE4F-BB78FD17E3FD@earthlearningsolutions.org> References: <952E58B6-358C-4044-89D3-E472E9FD2D4A@iotecdigital.com> <6F0B5437-DFB7-42A3-A844-4D5DFCB11F81@iotecdigital.com> <26d6f131-2092-06c4-8a4d-f730a04b1300@sonic.net> <15df85cf560.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <65ED1B62-31C9-4194-AE4F-BB78FD17E3FD@earthlearningsolutions.org> Message-ID: <21F734FE-75A0-439F-AD2A-F4E4D920B315@iotecdigital.com> The general consensus is that it doesn't. I think there was something else going on where my screen was not updating even after 5 successive screen unlocks, and I never figured out why, but I went through my app and every place there was a lock screen, I added an unlock screen to the end of the handler, EVEN IF it was the last line of code to execute. I also made sure that the first script to update the screen at all was the ONLY place I locked the screen, so that I did not have any nested locks. Now all works as advertised. My point was that a simple updateScreen command for a one time screen refresh whilst maintaining the lockScreen status and counter would be all that was needed to work around this oddity. That way there could be handlers that were sometimes called by handlers that had already locked the screen and some that hadn't, and it wouldn't matter because any time I needed to refresh the screen I could just force the issue. Not to be too long winded here, but imagine a handler that updated a datagrid and set the selection. Another handler that populated some fields based on that selection. There might be times when I only want to populate the fields because only the contents of the record changed. Other times I need to update the datagrid only, or the selection too. I ought to be able to put a lock screen in both handlers, and then no matter how many nested locks there were, have a command in my setStatusMsg that was able to refresh the screen to display the status message. It's not critical though. It just looks messy when 20 fields progressively update. The visual effect is a bit ugly. Bob S > On Aug 21, 2017, at 15:47 , prothero--- via use-livecode wrote: > > I didn't realize that the lockscreen command only applied to the handler that sets it. From bobsneidar at iotecdigital.com Tue Aug 22 11:01:07 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Tue, 22 Aug 2017 15:01:07 +0000 Subject: Paint tools and image creation In-Reply-To: <555e3fba881cea87774827e4ed499ba0@livecode.com> References: <555e3fba881cea87774827e4ed499ba0@livecode.com> Message-ID: In my mind a paint tool is a 2 dimensional function. I can see using the paint tool in a window displaying a single object that was not a group, kind of like Microsoft Word does it. I cannot imagine trying to paint an object inside a group as though an artist could reach his paintbrush 3 dimensionally into his painting and touch up a bush that was behind a tree! Now if someone wanted to see the effect his pain modification has on the whole, then switching between an edit mode and a preview mode would be the way to do that, kind of like Adobe Illustrator used to do. You could even have a modifier key toggle it. But I am reinventing the wheel here. Bob S > On Aug 22, 2017, at 07:43 , Mark Waddingham via use-livecode wrote: > > Hi all, > > We had an issue come into support about using the paint tools on a grouped image - this has come up before (years ago, at least). > > Basically, only the browser, pointer and help tools will recurse into groups - the paint tools will not. This means that if you use the paint tools over an image in a group, the grouped image will not get edited. Instead, if there is not a top-level image one will be created and that will be edited. > > The question is - is this behavior something which should: > > 1) Be considered a bug > > 2) Be considered correct behavior > > 3) Be considered an anomaly - i.e. something which is probably a bug, but too many people rely on to change without some sort of compatibility mechanism > From bobsneidar at iotecdigital.com Tue Aug 22 11:06:41 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Tue, 22 Aug 2017 15:06:41 +0000 Subject: Completely OT - flat earth In-Reply-To: <3BABB60F-B009-4887-A98C-79D6B7587415@gmail.com> References: <3BABB60F-B009-4887-A98C-79D6B7587415@gmail.com> Message-ID: <90E2DB18-ADD1-478E-8C94-4259670DD930@iotecdigital.com> Here's the problem though. Trying to convince those who have made their living teaching that the earth is flat, would have to admit that all those hard long days and nights and years spent refining their "science" was all for naught, a fools errand, and that indeed their entire life and reputation is now in jeopardy. All the higher education, all the respected colleagues, the money spent that maybe they are still paying back, all for nothing. And you expect them to be honestly engaged in adopting a better way? No, the flat earthers must be flat earthers for all posterity. They are all in. Allegorically speaking. Bob S > On Aug 21, 2017, at 12:53 , Jonathan Lynch via use-livecode wrote: > > I just watched the eclipse where I live, while debating flat earth believers online. Some irony there, I suppose. > > It reminded me of the time another programmer told me LiveCode was a toy. Years later when asked by management to duplicate the functions of an app I created so that those functionalities could be incorporated into that team's main app, that same programmer concluded it would be impractical because my app did way more than they realized. The app saves that team about 2 hours a day of expensive staff time, which is quite a lot considering they have used it for 10 years. > > My point? The Earth is not flat. LC is great, even if some mainstream programmers are so entrenched, they cannot perceive its value. > > Sent from my iPhone From bobsneidar at iotecdigital.com Tue Aug 22 11:10:24 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Tue, 22 Aug 2017 15:10:24 +0000 Subject: Sending a message to users that floats above everything In-Reply-To: <88a47a224064e255991b2e477293fcbc@livecode.com> References: <950CE409-2C3E-46EB-A124-995658A30CEA@gmail.com> <15e05745a68.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <3FD59A31-DE40-4AC2-8B20-C110EC5A2240@appisle.net> <88a47a224064e255991b2e477293fcbc@livecode.com> Message-ID: <2AC8A09C-874D-4BD4-8506-5E74FD170FB4@iotecdigital.com> Educate me, what is toast? Bob S > On Aug 21, 2017, at 23:50 , Mark Waddingham via use-livecode wrote: > > I wouldn't usually suggest duplicating effort / code - however the Toast function is too hard to resist in this case... If only to show a direct comparison between LCB vs C++! From jonathandlynch at gmail.com Tue Aug 22 11:12:48 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Tue, 22 Aug 2017 11:12:48 -0400 Subject: Paint tools and image creation In-Reply-To: References: <555e3fba881cea87774827e4ed499ba0@livecode.com> Message-ID: <14ED65B4-7C34-486B-B151-CC54FF2C8D6A@gmail.com> When I created Ready Wrigley Activities, I had to jump through all kinds of hoops to be able to draw inside a group. I think that drawing on a grouped image should be standard. Sent from my iPhone > On Aug 22, 2017, at 11:01 AM, Bob Sneidar via use-livecode wrote: > > In my mind a paint tool is a 2 dimensional function. I can see using the paint tool in a window displaying a single object that was not a group, kind of like Microsoft Word does it. I cannot imagine trying to paint an object inside a group as though an artist could reach his paintbrush 3 dimensionally into his painting and touch up a bush that was behind a tree! > > Now if someone wanted to see the effect his pain modification has on the whole, then switching between an edit mode and a preview mode would be the way to do that, kind of like Adobe Illustrator used to do. You could even have a modifier key toggle it. > > But I am reinventing the wheel here. > > Bob S > > >> On Aug 22, 2017, at 07:43 , Mark Waddingham via use-livecode wrote: >> >> Hi all, >> >> We had an issue come into support about using the paint tools on a grouped image - this has come up before (years ago, at least). >> >> Basically, only the browser, pointer and help tools will recurse into groups - the paint tools will not. This means that if you use the paint tools over an image in a group, the grouped image will not get edited. Instead, if there is not a top-level image one will be created and that will be edited. >> >> The question is - is this behavior something which should: >> >> 1) Be considered a bug >> >> 2) Be considered correct behavior >> >> 3) Be considered an anomaly - i.e. something which is probably a bug, but too many people rely on to change without some sort of compatibility mechanism >> > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From ahsoftware at sonic.net Tue Aug 22 11:14:34 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Tue, 22 Aug 2017 08:14:34 -0700 Subject: Completely OT - flat earth In-Reply-To: References: <30870775-3E73-4D40-B9A9-D59D25678DB7@wanadoo.fr> Message-ID: <1eaa03d9-5621-c744-29e1-3c3463fa052e@sonic.net> On 08/22/2017 06:25 AM, Colin Holgate via use-livecode wrote: > I was in the southwest of England that day. It was very dense cloud, so we didn?t see the sun at all. Here?s a time-lapse of what we saw: > > https://www.facebook.com/colin.holgate.5/videos/10159330354275694/ That's pretty annoying. Did you really post a one-second loop or did something mess up again? -- Mark Wieder ahsoftware at gmail.com From jonathandlynch at gmail.com Tue Aug 22 11:15:44 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Tue, 22 Aug 2017 11:15:44 -0400 Subject: Completely OT - flat earth In-Reply-To: <90E2DB18-ADD1-478E-8C94-4259670DD930@iotecdigital.com> References: <3BABB60F-B009-4887-A98C-79D6B7587415@gmail.com> <90E2DB18-ADD1-478E-8C94-4259670DD930@iotecdigital.com> Message-ID: They have described me as a "flat earth denier" and a "globetard" - so clearly they have constructed their own vocabulary and subculture. If they change their minds, they lose that feeling of belonging to a special club. Sent from my iPhone > On Aug 22, 2017, at 11:06 AM, Bob Sneidar via use-livecode wrote: > > Here's the problem though. Trying to convince those who have made their living teaching that the earth is flat, would have to admit that all those hard long days and nights and years spent refining their "science" was all for naught, a fools errand, and that indeed their entire life and reputation is now in jeopardy. All the higher education, all the respected colleagues, the money spent that maybe they are still paying back, all for nothing. And you expect them to be honestly engaged in adopting a better way? No, the flat earthers must be flat earthers for all posterity. They are all in. Allegorically speaking. > > Bob S > > >> On Aug 21, 2017, at 12:53 , Jonathan Lynch via use-livecode wrote: >> >> I just watched the eclipse where I live, while debating flat earth believers online. Some irony there, I suppose. >> >> It reminded me of the time another programmer told me LiveCode was a toy. Years later when asked by management to duplicate the functions of an app I created so that those functionalities could be incorporated into that team's main app, that same programmer concluded it would be impractical because my app did way more than they realized. The app saves that team about 2 hours a day of expensive staff time, which is quite a lot considering they have used it for 10 years. >> >> My point? The Earth is not flat. LC is great, even if some mainstream programmers are so entrenched, they cannot perceive its value. >> >> Sent from my iPhone > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From bobsneidar at iotecdigital.com Tue Aug 22 11:21:24 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Tue, 22 Aug 2017 15:21:24 +0000 Subject: Array literals and script only stack initialization (was Re: Developing first on android) In-Reply-To: <06542350-fcfa-47b3-936a-7559aa077989@Brian-Milbys-iPhone-6s-Plus> References: <06542350-fcfa-47b3-936a-7559aa077989@Brian-Milbys-iPhone-6s-Plus> Message-ID: <372F145A-3E7C-4018-A415-BD89859964B2@iotecdigital.com> Here's the problem. Any project with a datagrid is going to tear through those ID's in a heartbeat as you are testing. Bob S > On Aug 21, 2017, at 21:58 , Brian Milby via use-livecode wrote: > > I think there may be a strategy to avoid a large part of the ID collision issue. Wouldn't need full on UUIDs, just assign a range to each developer working the UI. Upon import they could even be collapsed down to the natural order range or left as is. It would require the temporary setting of the stack ID and being able to revert (thinking the alt ID may be useful here). Dev A could start at 5001, Dev B at 6001, etc. Main stack would remain with the 1001 series. The idea would be that in the preopenstack handler that a check would be made for the dev environment and the developer. The alt ID would be set for the stack. When new objects are created, the engine would use the alt ID if set. There would be a corresponding call to clear the stack alt ID to go back to the normal series (say for the primary developer) and probably also go in the close stack handler. Custom properties could be used to track where each developer was in their sequence. From colinholgate at gmail.com Tue Aug 22 11:21:32 2017 From: colinholgate at gmail.com (Colin Holgate) Date: Tue, 22 Aug 2017 08:21:32 -0700 Subject: Completely OT - flat earth In-Reply-To: <1eaa03d9-5621-c744-29e1-3c3463fa052e@sonic.net> References: <30870775-3E73-4D40-B9A9-D59D25678DB7@wanadoo.fr> <1eaa03d9-5621-c744-29e1-3c3463fa052e@sonic.net> Message-ID: It?s time-lapse. Can?t remember how many minutes it was over, but it wasn?t many pictures. > On Aug 22, 2017, at 8:14 AM, Mark Wieder via use-livecode wrote: > > On 08/22/2017 06:25 AM, Colin Holgate via use-livecode wrote: >> I was in the southwest of England that day. It was very dense cloud, so we didn?t see the sun at all. Here?s a time-lapse of what we saw: >> https://www.facebook.com/colin.holgate.5/videos/10159330354275694/ > > That's pretty annoying. > Did you really post a one-second loop or did something mess up again? > > -- > Mark Wieder > ahsoftware at gmail.com > From hh at hyperhh.de Tue Aug 22 11:31:03 2017 From: hh at hyperhh.de (hh) Date: Tue, 22 Aug 2017 17:31:03 +0200 Subject: lock screen gotcha revisited Message-ID: <3730D0A4-F07B-4445-A946-8A3CC3007E38@hyperhh.de> @Mark. Say I have 24 copies of the LC clock widget in order to display different time zones. How can I have them in "seconds-sync"? In LC Script, with LCS-clocks I would do a screenLock, update the clocks and then unlock. In LC Builder I even tried to make a composed widget, without improvement. Seems one has to make a grid of clocks in LCB, as one widget (with one single OnPaint)? Mark W. wrote: > Hermann H. wrote: > > The real interesting thing is now for me how to lock the screen > > in LC Builder? I couldn't find a way to do that. Who knows? > > There isn't one - although you can use 'execute script' to use LCS's > lock/unlock screen. > > Indeed, I should check whether LCB does currently use an implicit lock > screen - it probably should as LCB handlers, when called from LCS, are > meant to be 'atomic' in some sense. > > > This interacts with LC Script, timed widgets (clocks, animations) > > want their own screen updates ... > > Screen updates of widgets only happen upon request from the widget - by > using the 'redraw all' and 'redraw rect' commands. Any updates all fold > into the update mechanism LCS uses and occur at a suitable point after > returning from LCB to LCS - this is the same as calling any engine > command / function. > > Can you elaborate on your use-case here, just so I can check there isn't > something we are missing? :) From iphonelagi at gmail.com Tue Aug 22 12:30:51 2017 From: iphonelagi at gmail.com (Lagi Pittas) Date: Tue, 22 Aug 2017 17:30:51 +0100 Subject: Daybed 2.0 - A Library for Apache CouchDB In-Reply-To: <1503148832744-4718615.post@n4.nabble.com> References: <1503099413366-4718601.post@n4.nabble.com> <1503148832744-4718615.post@n4.nabble.com> Message-ID: HI Greg, I've just purchased your udemy course to say thank you. I'm sure somewhere down the line this will be very useful Thanks again lagi On 19 August 2017 at 14:20, pink via use-livecode < use-livecode at lists.runrev.com> wrote: > For experimentation, you can setup a free account with IBM for Cloudant. > > The free account is for 1GB which is enough for around 2 million > records/revisions > > Cloudant shares most of their code with Apache for CouchDB, the only major > difference is how they setup users. The Daybed library will work with > Cloudant except for the sync functions. > > > > ----- > --- > Greg (pink) Miller > mad, pink and dangerous to code > -- > View this message in context: http://runtime-revolution. > 278305.n4.nabble.com/Daybed-2-0-A-Library-for-Apache- > CouchDB-tp4718601p4718615.html > Sent from the Revolution - User mailing list archive at Nabble.com. > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From ahsoftware at sonic.net Tue Aug 22 13:36:04 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Tue, 22 Aug 2017 10:36:04 -0700 Subject: Completely OT - flat earth In-Reply-To: References: <30870775-3E73-4D40-B9A9-D59D25678DB7@wanadoo.fr> <1eaa03d9-5621-c744-29e1-3c3463fa052e@sonic.net> Message-ID: On 08/22/2017 08:21 AM, Colin Holgate via use-livecode wrote: > It?s time-lapse. Can?t remember how many minutes it was over, but it wasn?t many pictures. Ah, OK. I think it's probably just Facebook that's annoying. The video is only one second long, and FB keeps looping it. -- Mark Wieder ahsoftware at gmail.com From mark at livecode.com Tue Aug 22 13:36:32 2017 From: mark at livecode.com (Mark Waddingham) Date: Tue, 22 Aug 2017 19:36:32 +0200 Subject: lock screen gotcha revisited In-Reply-To: <3730D0A4-F07B-4445-A946-8A3CC3007E38@hyperhh.de> References: <3730D0A4-F07B-4445-A946-8A3CC3007E38@hyperhh.de> Message-ID: <24a094e4fc20bf1724df1f796274dce9@livecode.com> On 2017-08-22 17:31, hh via use-livecode wrote: > @Mark. > Say I have 24 copies of the LC clock widget in order to display > different time zones. > How can I have them in "seconds-sync"? > > In LC Script, with LCS-clocks I would do a screenLock, update the > clocks and then unlock. > In LC Builder I even tried to make a composed widget, without > improvement. > Seems one has to make a grid of clocks in LCB, as one widget (with one > single OnPaint)? Okay - so this is a slightly different problem. You would have the same issue in LCS if you implemented a clock in the same way the clock widget works. The clock widget uses the 'schedule timer' syntax to do the equivalent of 'send in time'. Indeed, this is implemented using the same mechanism as 'send in time' and so each pending message (timer, in this case) is dispatched separately, and not under a lock screen. I spent some time pondering whether there was anything we could do to the OnTimer mechanism in widgets to help here - e.g. quantize the delivery time, and then dispatch all timers which are quantized to the same time at the same time under lock screen... However, I quickly realized that this is perhaps not appropriate - the OnTimer mechanism is probably just the wrong abstraction for animation and is more appropriate for 'timed events in the future which don't need synchronization' - e.g. the timer which is needed to do an Android Toast with a suitable delay before closing it automatically. In this case, I think the clock widget's behavior is definitely an animation behavior. So we perhaps need an 'OnUpdate' mechanism. We could add a new event 'OnUpdate' which is dispatched inline with the frame-rate (suitably rate adjusted based on time taken to update a single frame). The event would have to be under the script-execution-lock (like OnPaint) as anything doing wait, or causing re-entrancy into the widget could cause problems. When a frame update occurs, all widgets would get an OnUpdate event, and this would all happen atomically under a lock screen. (Indeed, this mechanism would also make engine control UI animations and animated GIFs less CPU run-loop intensive - they are currently all implemented as separate pending messages). So, such a mechanism definitely works - we used in Galactic Gauntlet to great effect, and AnimationEngine does precisely this to make its animations as silky-smooth as possible. However, the 'clock' (in particular) poses another problem. In most cases animation is parameterized by the 'time since you started the animation' - i.e. it is relative. So, what you do is you have a 'master clock' which starts at 0 when the app starts, and increases as actual time does - it isn't based on the system clock as that can change arbitrarily (pesky users fettling with their system time settings!). When you start an animation, you store the 'time of the last frame update', and then on each update you use 'time of current frame update - stored frame time' to work out how far into the animation you are. However, in this case, the clock's animation is *actually* tied to the the system time which changes things slightly. It would be perfectly possible (if you had 24 clocks) that a frame update would start at 18:00-epsilon and take until 18:00+epsilon (for some small value epsilon). This means that the first 12 clocks would display 18:59, and the last 12 clocks would display 18:00 (all being equal) - all because the update *just* happened to start at an inappropriate time. The thing is that this seems like a very special case in the world of things you might want to animate. It seems a bit 'silly' to add an extra parameter ('synchronized actual time') to the OnUpdate message, when (in all likely-hood) displaying *real* clocks is maybe its only use (remember OnUpdate is about animation - nothing else). So, in actual fact, perhaps the clock is just doing things 'plain wrong' in this regard. All clocks should be being updated simultaneously with the same time. So we actually need a small 'clock-lib' with which all active clock widgets register, and the 'clock-lib's only purpose is to tell the time they should display - and *it* is the only thing which uses a pending message to check when a second goes by. I shall have to ponder what mechanisms we need to add (if any) to be able to do the latter... Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From mark at livecode.com Tue Aug 22 13:41:47 2017 From: mark at livecode.com (Mark Waddingham) Date: Tue, 22 Aug 2017 19:41:47 +0200 Subject: Sending a message to users that floats above everything In-Reply-To: <2AC8A09C-874D-4BD4-8506-5E74FD170FB4@iotecdigital.com> References: <950CE409-2C3E-46EB-A124-995658A30CEA@gmail.com> <15e05745a68.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <3FD59A31-DE40-4AC2-8B20-C110EC5A2240@appisle.net> <88a47a224064e255991b2e477293fcbc@livecode.com> <2AC8A09C-874D-4BD4-8506-5E74FD170FB4@iotecdigital.com> Message-ID: <59d76b3f5151ac25de3d481b2d31fafd@livecode.com> On 2017-08-22 17:10, Bob Sneidar via use-livecode wrote: > Educate me, what is toast? It pops up a small overlay on the screen with a message, which then fades away after a fixed period of time. A bit like notifications on Mac, and the small bubble that can appear above the taskbar on Windows. Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From bobsneidar at iotecdigital.com Tue Aug 22 13:49:42 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Tue, 22 Aug 2017 17:49:42 +0000 Subject: Sending a message to users that floats above everything In-Reply-To: <59d76b3f5151ac25de3d481b2d31fafd@livecode.com> References: <950CE409-2C3E-46EB-A124-995658A30CEA@gmail.com> <15e05745a68.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <3FD59A31-DE40-4AC2-8B20-C110EC5A2240@appisle.net> <88a47a224064e255991b2e477293fcbc@livecode.com> <2AC8A09C-874D-4BD4-8506-5E74FD170FB4@iotecdigital.com> <59d76b3f5151ac25de3d481b2d31fafd@livecode.com> Message-ID: Oooh I was thinking about toasting... err rolling my own! Bob S > On Aug 22, 2017, at 10:41 , Mark Waddingham via use-livecode wrote: > > On 2017-08-22 17:10, Bob Sneidar via use-livecode wrote: >> Educate me, what is toast? > > It pops up a small overlay on the screen with a message, which then fades away after a fixed period of time. A bit like notifications on Mac, and the small bubble that can appear above the taskbar on Windows. > > Warmest Regards, > > Mark. > > -- > Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ > LiveCode: Everyone can create apps From jonathandlynch at gmail.com Tue Aug 22 14:03:17 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Tue, 22 Aug 2017 14:03:17 -0400 Subject: Sending a message to users that floats above everything In-Reply-To: References: <950CE409-2C3E-46EB-A124-995658A30CEA@gmail.com> <15e05745a68.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <3FD59A31-DE40-4AC2-8B20-C110EC5A2240@appisle.net> <88a47a224064e255991b2e477293fcbc@livecode.com> <2AC8A09C-874D-4BD4-8506-5E74FD170FB4@iotecdigital.com> <59d76b3f5151ac25de3d481b2d31fafd@livecode.com> Message-ID: <91C5DFAC-11F8-4171-A578-E536823C45A3@gmail.com> It would really be great if we could pop over a substack on all platforms. Can that be done in LCB? Sent from my iPhone > On Aug 22, 2017, at 1:49 PM, Bob Sneidar via use-livecode wrote: > > Oooh I was thinking about toasting... err rolling my own! > > Bob S > > >> On Aug 22, 2017, at 10:41 , Mark Waddingham via use-livecode wrote: >> >> On 2017-08-22 17:10, Bob Sneidar via use-livecode wrote: >>> Educate me, what is toast? >> >> It pops up a small overlay on the screen with a message, which then fades away after a fixed period of time. A bit like notifications on Mac, and the small bubble that can appear above the taskbar on Windows. >> >> Warmest Regards, >> >> Mark. >> >> -- >> Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ >> LiveCode: Everyone can create apps > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From bonnmike at gmail.com Tue Aug 22 14:05:57 2017 From: bonnmike at gmail.com (Mike Bonner) Date: Tue, 22 Aug 2017 12:05:57 -0600 Subject: Completely OT - flat earth In-Reply-To: References: <3BABB60F-B009-4887-A98C-79D6B7587415@gmail.com> <90E2DB18-ADD1-478E-8C94-4259670DD930@iotecdigital.com> Message-ID: For some reason, I like this guys humor.. https://www.youtube.com/watch?v=KvAk9718Jo8&t=201s On Tue, Aug 22, 2017 at 9:15 AM, Jonathan Lynch via use-livecode < use-livecode at lists.runrev.com> wrote: > They have described me as a "flat earth denier" and a "globetard" - so > clearly they have constructed their own vocabulary and subculture. If they > change their minds, they lose that feeling of belonging to a special club. > > Sent from my iPhone > > > On Aug 22, 2017, at 11:06 AM, Bob Sneidar via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > > Here's the problem though. Trying to convince those who have made their > living teaching that the earth is flat, would have to admit that all those > hard long days and nights and years spent refining their "science" was all > for naught, a fools errand, and that indeed their entire life and > reputation is now in jeopardy. All the higher education, all the respected > colleagues, the money spent that maybe they are still paying back, all for > nothing. And you expect them to be honestly engaged in adopting a better > way? No, the flat earthers must be flat earthers for all posterity. They > are all in. Allegorically speaking. > > > > Bob S > > > > > >> On Aug 21, 2017, at 12:53 , Jonathan Lynch via use-livecode < > use-livecode at lists.runrev.com> wrote: > >> > >> I just watched the eclipse where I live, while debating flat earth > believers online. Some irony there, I suppose. > >> > >> It reminded me of the time another programmer told me LiveCode was a > toy. Years later when asked by management to duplicate the functions of an > app I created so that those functionalities could be incorporated into that > team's main app, that same programmer concluded it would be impractical > because my app did way more than they realized. The app saves that team > about 2 hours a day of expensive staff time, which is quite a lot > considering they have used it for 10 years. > >> > >> My point? The Earth is not flat. LC is great, even if some mainstream > programmers are so entrenched, they cannot perceive its value. > >> > >> Sent from my iPhone > > > > > > _______________________________________________ > > use-livecode mailing list > > use-livecode at lists.runrev.com > > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > > http://lists.runrev.com/mailman/listinfo/use-livecode > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From ambassador at fourthworld.com Tue Aug 22 14:21:05 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Tue, 22 Aug 2017 11:21:05 -0700 Subject: Paint tools and image creation In-Reply-To: References: Message-ID: Bob Sneidar wrote: > In my mind a paint tool is a 2 dimensional function. I can see using > the paint tool in a window displaying a single object that was not a > group, kind of like Microsoft Word does it. I cannot imagine trying to > paint an object inside a group as though an artist could reach his > paintbrush 3 dimensionally into his painting and touch up a bush that > was behind a tree! It's common for applications to have content regions larger than the window, accommodated with scrollbars. In LiveCode, that requires a group. -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From jonathandlynch at gmail.com Tue Aug 22 14:22:15 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Tue, 22 Aug 2017 14:22:15 -0400 Subject: Sending a message to users that floats above everything In-Reply-To: <91C5DFAC-11F8-4171-A578-E536823C45A3@gmail.com> References: <950CE409-2C3E-46EB-A124-995658A30CEA@gmail.com> <15e05745a68.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <3FD59A31-DE40-4AC2-8B20-C110EC5A2240@appisle.net> <88a47a224064e255991b2e477293fcbc@livecode.com> <2AC8A09C-874D-4BD4-8506-5E74FD170FB4@iotecdigital.com> <59d76b3f5151ac25de3d481b2d31fafd@livecode.com> <91C5DFAC-11F8-4171-A578-E536823C45A3@gmail.com> Message-ID: <7C832E9E-956B-449C-B662-2BBE10F344F1@gmail.com> Export a snapshot of the main stack and use it as the background for the top stack? That could work. Would need to test how fast it is and how well it works when a browser widget is up. Sent from my iPhone > On Aug 22, 2017, at 2:03 PM, jonathandlynch at gmail.com wrote: > > It would really be great if we could pop over a substack on all platforms. Can that be done in LCB? > > Sent from my iPhone > >> On Aug 22, 2017, at 1:49 PM, Bob Sneidar via use-livecode wrote: >> >> Oooh I was thinking about toasting... err rolling my own! >> >> Bob S >> >> >>> On Aug 22, 2017, at 10:41 , Mark Waddingham via use-livecode wrote: >>> >>> On 2017-08-22 17:10, Bob Sneidar via use-livecode wrote: >>>> Educate me, what is toast? >>> >>> It pops up a small overlay on the screen with a message, which then fades away after a fixed period of time. A bit like notifications on Mac, and the small bubble that can appear above the taskbar on Windows. >>> >>> Warmest Regards, >>> >>> Mark. >>> >>> -- >>> Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ >>> LiveCode: Everyone can create apps >> >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode From ambassador at fourthworld.com Tue Aug 22 14:27:16 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Tue, 22 Aug 2017 11:27:16 -0700 Subject: Sending a message to users that floats above everything In-Reply-To: <91C5DFAC-11F8-4171-A578-E536823C45A3@gmail.com> References: <91C5DFAC-11F8-4171-A578-E536823C45A3@gmail.com> Message-ID: jonathandlynch wrote: > It would really be great if we could pop over a substack on all > platforms. Can that be done in LCB? http://quality.livecode.com/show_bug.cgi?id=2786 -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From ambassador at fourthworld.com Tue Aug 22 14:31:06 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Tue, 22 Aug 2017 11:31:06 -0700 Subject: Paint tools and image creation In-Reply-To: <555e3fba881cea87774827e4ed499ba0@livecode.com> References: <555e3fba881cea87774827e4ed499ba0@livecode.com> Message-ID: Mark Waddingham wrote: > Basically, only the browser, pointer and help tools will recurse into > groups - the paint tools will not.... ...nor drawing tools or object tools (eg field or button). Any opportunity here to generalize the solution to accommodate this? tool property for groups/creating objects in groups interactively http://quality.livecode.com/show_bug.cgi?id=623 -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From jacque at hyperactivesw.com Tue Aug 22 14:49:46 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Tue, 22 Aug 2017 13:49:46 -0500 Subject: Completely OT - flat earth In-Reply-To: <6d7ebe27b028cd192b3dc76a80c7628e.squirrel@sage.on-rev.com> References: <3BABB60F-B009-4887-A98C-79D6B7587415@gmail.com> <74d2c7e8-b37b-6e49-4619-e812413ffabd@hyperactivesw.com> <6d7ebe27b028cd192b3dc76a80c7628e.squirrel@sage.on-rev.com> Message-ID: <1a9b6de9-10d0-bfe5-0c43-a82643e64696@hyperactivesw.com> On 8/22/17 8:34 AM, jbv via use-livecode wrote: > On Mon, August 21, 2017 10:17 pm, J. Landman Gay via use-livecode wrote: >> >> I read recently that the flat-earther movement is growing. > > That's because of global warming : earth is slowly melting and will get 100% > flat by the year 2100... Okay, I laughed. :) -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com From jacque at hyperactivesw.com Tue Aug 22 14:57:38 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Tue, 22 Aug 2017 13:57:38 -0500 Subject: Sending a message to users that floats above everything In-Reply-To: References: <950CE409-2C3E-46EB-A124-995658A30CEA@gmail.com> <15e05745a68.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <3FD59A31-DE40-4AC2-8B20-C110EC5A2240@appisle.net> <88a47a224064e255991b2e477293fcbc@livecode.com> <2AC8A09C-874D-4BD4-8506-5E74FD170FB4@iotecdigital.com> <59d76b3f5151ac25de3d481b2d31fafd@livecode.com> Message-ID: <99b311c0-3258-e2c5-797e-527f84b06382@hyperactivesw.com> I did roll my own but it isn't possible to get it quite right. It's called a "toast" because it pops up/slides up from the bottom of the screen and then slides back down again. Doing it in LCS requires visual effects which break the effect if there is anything under the sliding area; everything in that rectangle animates. The hack can only be used on a blank area of the card. A native toast is required, with the added benefit that it really does display on top of everything else without any layer-adjustments. BTW, if you're interested in Android terminology, a toast-like message that reaches from edge to edge on the screen is called a "snackbar". Go figure. Snackbars are like toasts except that they are dismissed by swiping and can provide buttons for user interaction. On 8/22/17 12:49 PM, Bob Sneidar via use-livecode wrote: > Oooh I was thinking about toasting... err rolling my own! > >> On 2017-08-22 17:10, Bob Sneidar via use-livecode wrote: >>> Educate me, what is toast? -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com From hh at hyperhh.de Tue Aug 22 15:01:30 2017 From: hh at hyperhh.de (hh) Date: Tue, 22 Aug 2017 21:01:30 +0200 Subject: lock screen gotcha revisited Message-ID: <6CA5B004-029E-4B05-A1F2-013C0D2C1BB9@hyperhh.de> Thanks for your fine explanation. And the future handlers sound very promising, both OnUpdate() and OnMarksPonder(). Graphics are meanwhile pretty fast in LCB. I timed such clock updates (in LCB): The OnPaint of a clock needs, also with a heavy loaded CPU, less than 4 millisecs. Even checking the time and updating only pathes that are changed doesn't make a significant difference. We look really forward to such new handlers. And the updates of LC in the 'SVG area' will push animating things also ... > Mark W, wrote: > ... > We could add a new event 'OnUpdate' which is dispatched inline with the > frame-rate (suitably rate adjusted based on time taken to update a > single frame). The event would have to be under the > script-execution-lock (like OnPaint) as anything doing wait, or causing > re-entrancy into the widget could cause problems. When a frame update > occurs, all widgets would get an OnUpdate event, and this would all > happen atomically under a lock screen. (Indeed, this mechanism would > also make engine control UI animations and animated GIFs less CPU > run-loop intensive - they are currently all implemented as separate > pending messages). > ... > However, the 'clock' (in particular) poses another problem. > ... > So, in actual fact, perhaps the clock is just doing things 'plain wrong' > in this regard. All clocks should be being updated simultaneously with > the same time. So we actually need a small 'clock-lib' with which all > active clock widgets register, and the 'clock-lib's only purpose is to > tell the time they should display - and *it* is the only thing which > uses a pending message to check when a second goes by. > > I shall have to ponder what mechanisms we need to add (if any) to be > able to do the latter... From colinholgate at gmail.com Tue Aug 22 15:10:04 2017 From: colinholgate at gmail.com (Colin Holgate) Date: Tue, 22 Aug 2017 12:10:04 -0700 Subject: Completely OT - flat earth In-Reply-To: References: <30870775-3E73-4D40-B9A9-D59D25678DB7@wanadoo.fr> <1eaa03d9-5621-c744-29e1-3c3463fa052e@sonic.net> Message-ID: <26355716-196D-4A4B-B61A-8EF99EECDB04@gmail.com> I manually fixed each picture to make them match, more or less: https://www.facebook.com/colin.holgate.5/videos/10159333252840694/ From dochawk at gmail.com Tue Aug 22 15:14:49 2017 From: dochawk at gmail.com (Dr. Hawkins) Date: Tue, 22 Aug 2017 12:14:49 -0700 Subject: Completely OT - flat earth In-Reply-To: References: <30870775-3E73-4D40-B9A9-D59D25678DB7@wanadoo.fr> Message-ID: On Tue, Aug 22, 2017 at 6:25 AM, Colin Holgate via use-livecode < use-livecode at lists.runrev.com> wrote: > I was in the southwest of England that day. It was very dense cloud, so we > didn?t see the sun at all. Here?s a time-lapse of what we saw: > > Same here: very heavy cloud cover and thunderstorms in las vegas, so it was too dark to see the eclipse :) By the time the sun threatened to come through, there wasn't enough left to be fascinating. In an unrelated oddity, this siamese cat that adopted us took his fascination with running water further, and watched out our screen door until the thunderstorm was over . . . -- Dr. Richard E. Hawkins, Esq. (702) 508-8462 From jacque at hyperactivesw.com Tue Aug 22 15:20:55 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Tue, 22 Aug 2017 14:20:55 -0500 Subject: Paint tools and image creation In-Reply-To: <555e3fba881cea87774827e4ed499ba0@livecode.com> References: <555e3fba881cea87774827e4ed499ba0@livecode.com> Message-ID: <35c80478-178a-490c-3a23-bb31750b6f5f@hyperactivesw.com> I added a comment to the bug report, but based on the amount of feedback so far (almost none) I'd say the change probably wouldn't affect many people. Whether it's a point-release change or a dev-release change is hard to say, but unless more people object I'd say it isn't a major shift and it could be implemented in any release. On 8/22/17 9:43 AM, Mark Waddingham via use-livecode wrote: > Hi all, > > We had an issue come into support about using the paint tools on a > grouped image - this has come up before (years ago, at least). > > Basically, only the browser, pointer and help tools will recurse into > groups - the paint tools will not. This means that if you use the paint > tools over an image in a group, the grouped image will not get edited. > Instead, if there is not a top-level image one will be created and that > will be edited. > > The question is - is this behavior something which should: > > ? 1) Be considered a bug > > ? 2) Be considered correct behavior > > ? 3) Be considered an anomaly - i.e. something which is probably a bug, > but too many people rely on to change without some sort of compatibility > mechanism > > I realize this is an edge case; however, I thought it worth asking to > see if anyone here relies on the fact that images in groups do not get > affected by paint tools; or whether it would be far better than if did! > > Basically I'm trying to decide if it should be 'fixed' (assuming the > current behavior is considered erroneous!), and if so whether it would > be suitable for a maintenance release (it is, strictly speaking, a > change in behavior), or only for a development release. > > The bug report is here: > > http://quality.livecode.com/show_bug.cgi?id=20286 > > Any feedback gratefully received. > > Warmest Regards, > > Mark. > -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com From jonathandlynch at gmail.com Tue Aug 22 15:28:34 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Tue, 22 Aug 2017 15:28:34 -0400 Subject: Paint tools and image creation In-Reply-To: <35c80478-178a-490c-3a23-bb31750b6f5f@hyperactivesw.com> References: <555e3fba881cea87774827e4ed499ba0@livecode.com> <35c80478-178a-490c-3a23-bb31750b6f5f@hyperactivesw.com> Message-ID: <658385C9-6756-42D6-9EE0-4D91BBE874C2@gmail.com> If this were 3 years ago, I would be begging for this change. It does not affect me right now, though. Sent from my iPhone > On Aug 22, 2017, at 3:20 PM, J. Landman Gay via use-livecode wrote: > > I added a comment to the bug report, but based on the amount of feedback so far (almost none) I'd say the change probably wouldn't affect many people. Whether it's a point-release change or a dev-release change is hard to say, but unless more people object I'd say it isn't a major shift and it could be implemented in any release. > >> On 8/22/17 9:43 AM, Mark Waddingham via use-livecode wrote: >> Hi all, >> We had an issue come into support about using the paint tools on a grouped image - this has come up before (years ago, at least). >> Basically, only the browser, pointer and help tools will recurse into groups - the paint tools will not. This means that if you use the paint tools over an image in a group, the grouped image will not get edited. Instead, if there is not a top-level image one will be created and that will be edited. >> The question is - is this behavior something which should: >> 1) Be considered a bug >> 2) Be considered correct behavior >> 3) Be considered an anomaly - i.e. something which is probably a bug, but too many people rely on to change without some sort of compatibility mechanism >> I realize this is an edge case; however, I thought it worth asking to see if anyone here relies on the fact that images in groups do not get affected by paint tools; or whether it would be far better than if did! >> Basically I'm trying to decide if it should be 'fixed' (assuming the current behavior is considered erroneous!), and if so whether it would be suitable for a maintenance release (it is, strictly speaking, a change in behavior), or only for a development release. >> The bug report is here: >> http://quality.livecode.com/show_bug.cgi?id=20286 >> Any feedback gratefully received. >> Warmest Regards, >> Mark. > > > -- > Jacqueline Landman Gay | jacque at hyperactivesw.com > HyperActive Software | http://www.hyperactivesw.com > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From brahma at hindu.org Tue Aug 22 15:53:01 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Tue, 22 Aug 2017 19:53:01 +0000 Subject: Parent of Target In-Reply-To: References: <9FA2E439-5F28-4EC1-B087-142D3E2D24FF@hindu.org> <413fecbd6d6a0662306ddefd956e7ba3@livecode.com> <2C48F732-5695-4C46-98C6-DB15C702A6B8@hindu.org> <6fcd82a1-e234-1ddd-2f25-689c443db3c7@hyperactivesw.com> Message-ID: <34CB10AC-416E-4923-8B12-D65FDBD90C37@hindu.org> Mark Wieder via use-livecode" wrote: >># do different things based on calling context. That's exactly the opposite of what behaviors are for. BR: ?? but a behavior may contain a script with a mouseup handler at that responds to different targets with different actions/results. >> I'm not sure I follow the underlying reasoning here Thank you. That was my reaction as well. B- what problem are you trying to solve? See earlier longer memo. I've waffled between From ahsoftware at sonic.net Tue Aug 22 16:22:37 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Tue, 22 Aug 2017 13:22:37 -0700 Subject: Parent of Target In-Reply-To: <34CB10AC-416E-4923-8B12-D65FDBD90C37@hindu.org> References: <9FA2E439-5F28-4EC1-B087-142D3E2D24FF@hindu.org> <413fecbd6d6a0662306ddefd956e7ba3@livecode.com> <2C48F732-5695-4C46-98C6-DB15C702A6B8@hindu.org> <6fcd82a1-e234-1ddd-2f25-689c443db3c7@hyperactivesw.com> <34CB10AC-416E-4923-8B12-D65FDBD90C37@hindu.org> Message-ID: <6ec58fdd-f719-f765-6505-006a9cd49bb6@sonic.net> On 08/22/2017 12:53 PM, Sannyasin Brahmanathaswami via use-livecode wrote: > Mark Wieder via use-livecode" wrote: > > >># do different things based on calling context. > > That's exactly the opposite of what behaviors are for. > > BR: ?? but a behavior may contain a script with a mouseup handler at that responds to different targets with different actions/results. I see two ways of dealing with this: 1. Override the mouseUp handler in the objects that need special handling. That way the behavior script will take care of the other objects, and you can still have specialized actions without having to test for the target. 2. If you need different mouseUp actions in every object that uses the behavior script, don't put the mouseUp handler in the behavior script. You're just creating extra work for yourself that you have to unwind later on. > B- what problem are you trying to solve? > > See earlier longer memo. Will dig through the archives when I have time. -- Mark Wieder ahsoftware at gmail.com From brahma at hindu.org Tue Aug 22 16:24:04 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Tue, 22 Aug 2017 20:24:04 +0000 Subject: Parent of Target Message-ID: <688060B9-7CAF-42D6-B2D5-871ECBC3A6B2@hindu.org> [ignore previous post? hit send prematurely] [@ Trevor if you have thoughts based on your experience with Levure? love to hear the ] Disclaimer: this my first time ever doing something with such a huge, modular architect, all previous experience to data has been in 1 Stack with Many Cards = 1 App This new frame work is Many text only libs/models/behaviors Many binary stacks which are -- content rich with many cards -- act as pure "view" containers -- a "customControls" with one custom control per card which again serves as a mini "view" anywhere at any time. Mark Wieder via use-livecode" wrote: >># do different things based on calling context. That's exactly the opposite of what behaviors are for. BR: ?? but a behavior may contain a script with a mouseup handler at that responds to different targets with different actions/results. >> I'm not sure I follow the underlying reasoning here Thank you. That was my reaction as well. B- what problem are you trying to solve? See earlier longer memo. USE CASE aka "Problem to Solve" is a frame work with multiple stacks/aka "modules" with content. Search will be a global requirement. I can identify, at least for now, three "classes" of content to be search in any given context/module 1) an array with the full data extract from our media metadata database. where one might want to search in the title, file name subtitle 2) a list (of song titles, or books, or chapters or whatever) = highly likely to be refactored to DataGrid 2 in many contexts when that is rolled out. 3) a field with text, typically chapter of a book aggregated text form different sources into one field. In all these stacks/modules, the UI/UX will want to offer search. so then, you are faced with 1) create code for each module in the behavior that runs that stack/card = you will be re-created the same scripts over and over again in dozens of places = be forced to add this every time a new module is added to the frame work. OR 2) Use a library that is always open and it is booted into the back script with start using on init. OR 3) create a behavior that is can be attached to a small group comprised of a searchstring field and a search button. You say "used all over the place" breaks the mandate for use of behaviors? my actual experience says otherwise When used in a library, you don't get "me" and "me" is very useful. e.g. in our customControls stack we have a "socialShare" group this is dynamically copied on demand to modules as needed. There is a behavior attached to this group. The local module/card has commands that insert the data to be share, in this context, to local var in behavior which is the card script, This card script has a function which returns that data function getShareData return sShareData end getShareData Now the behavior for the group ( has buttons for FB, Twitter and Email and perhaps more once we get Global Connect into this mix) just has to check the target, and getShareData() I don't remember exactly why today, but as I was developing that, I was working harder, writing more code when I tried is as a lib. But as a behavior, some how it was both easier to write and easier to debug? Anyway.. using a behavior as an "agent" to handle processes called from different context/stacks works pretty well . All I have to do is attached it to the search Button and it will server everywhere. Very easy to find, just edit the behavior of the search but (oh yeah, that was another advantage over libs. if functions/handlers are very unique to a given context, then doing it as a behavior means you have super easy access via the Inspector for the very obvious controls that would use it: vs, scanning through and clicking on the script for the library in the Project Browser. We had developed this framework (since about Feb of 2016) starting with libs, but over time behaviors are becoming more and more useful. Then I watched Trevor's Levure Video? and see that he's doing very much what we are, though I'm not sure where levure goes when we get to the "widget/custom-controls that will be used in many stacks/across many context" use case, and believe me, you will be there in no time at all. BR Who constantly faces "choice paralysis" because Livecode makes it too easy to do almost anything, any way you want, and without a lot of experience in module frameworks, its too easy to hack yourself into mess of spaghetti code: and having experienced this last year (a great deal of pain ove initial work done on the app) I'm constantly "over thinking what is the best way here?" From stephen at barncard.com Tue Aug 22 16:43:45 2017 From: stephen at barncard.com (Stephen Barncard) Date: Tue, 22 Aug 2017 13:43:45 -0700 Subject: Sending a message to users that floats above everything In-Reply-To: <99b311c0-3258-e2c5-797e-527f84b06382@hyperactivesw.com> References: <950CE409-2C3E-46EB-A124-995658A30CEA@gmail.com> <15e05745a68.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <3FD59A31-DE40-4AC2-8B20-C110EC5A2240@appisle.net> <88a47a224064e255991b2e477293fcbc@livecode.com> <2AC8A09C-874D-4BD4-8506-5E74FD170FB4@iotecdigital.com> <59d76b3f5151ac25de3d481b2d31fafd@livecode.com> <99b311c0-3258-e2c5-797e-527f84b06382@hyperactivesw.com> Message-ID: the Android world creeps me out. And those phones always seem to break. sqb -- Stephen Barncard - Sebastopol Ca. USA - mixstream.org On Tue, Aug 22, 2017 at 11:57 AM, J. Landman Gay via use-livecode < use-livecode at lists.runrev.com> wrote: > I did roll my own but it isn't possible to get it quite right. It's called > a "toast" because it pops up/slides up from the bottom of the screen and > then slides back down again. Doing it in LCS requires visual effects which > break the effect if there is anything under the sliding area; everything in > that rectangle animates. The hack can only be used on a blank area of the > card. > > A native toast is required, with the added benefit that it really does > display on top of everything else without any layer-adjustments. > > BTW, if you're interested in Android terminology, a toast-like message > that reaches from edge to edge on the screen is called a "snackbar". Go > figure. Snackbars are like toasts except that they are dismissed by swiping > and can provide buttons for user interaction. > > > On 8/22/17 12:49 PM, Bob Sneidar via use-livecode wrote: > >> Oooh I was thinking about toasting... err rolling my own! >> >> On 2017-08-22 17:10, Bob Sneidar via use-livecode wrote: >>> >>>> Educate me, what is toast? >>>> >>> > > -- > Jacqueline Landman Gay | jacque at hyperactivesw.com > HyperActive Software | http://www.hyperactivesw.com > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From ambassador at fourthworld.com Tue Aug 22 17:37:57 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Tue, 22 Aug 2017 14:37:57 -0700 Subject: Sending a message to users that floats above everything In-Reply-To: References: Message-ID: <590d68d3-e70d-73f9-89a3-7ba7b59fb0de@fourthworld.com> Stephen Barncard wrote: > the Android world creeps me out. My wife (definitely not a techie) says the same thing on the rare day when she has to use my iPad. There's no disputing taste. I prefer the ease of deploying my test builds to Android, and the customizability, and having three different hardware buttons for different common tasks rather than one that gets used for everything. But I also like many things about iOS. I think I just like software. Heck, I even like Gnome Shell. :) > And those phones always seem to break. In general, there's a relationship between build quality and price. Apple and Samsung keep running neck and neck in customer satisfaction because they both sell high-end phones. At least in the Android world we can also choose less impressive hardware if we like. I've never dropped any of my phones, so none of them have ever broken, regardless of brand or price. My neighbor is on his third iPhone because he dropped his first two. It'll be nice when Google Glass takes over so we don't have to fear dropping our glass fondleslabs. :) -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From dochawk at gmail.com Tue Aug 22 18:08:21 2017 From: dochawk at gmail.com (Dr. Hawkins) Date: Tue, 22 Aug 2017 15:08:21 -0700 Subject: attaching my group id to a control in a subgroup Message-ID: I have a uniqDna value for each datum in my data. This is used to store and retrieve it from a database. When I create an output group for one of these (and there are a great many different output groups), the group is labeled with these IDs. The output group will typically contain label fields and graphics, but gets its unDna set to the corresponding uniqDna. It also contains fields for output. When an output field is modified, the handler calls the seal routine, passing the field name, new value, and the unDna. I had made, for performance reasons, the strong assumption that the output fields would always be a top level member of the output group. I also designed output groups which, for organizational reasons, group the output fields . . . oops . . . The closeField handler follows the rule, and assumes that the unDna of the owner of the target is the uniqDna value it needs. This backfires when not true :( One obvious solution would be to simply ungroup the offending groups--but there are good reasons to want it have subgroups (such as sharing subgroups for maintenance of similar outputs with shared elements). At the moment, the three possibilities I see are, 1) recurse upwards until a group with a unDna is found (well, close; there are universal fields with no unDna) 2) check the owner of the owner of the target 3) redundantly set the uDna of every output field at group creation/copying time. I need this to be blindingly fast, too (although I doubt that this is a problem in 2017). Am I missing an obvious way to do this? -- Dr. Richard E. Hawkins, Esq. (702) 508-8462 From jacque at hyperactivesw.com Tue Aug 22 18:28:23 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Tue, 22 Aug 2017 17:28:23 -0500 Subject: Sending a message to users that floats above everything In-Reply-To: References: <950CE409-2C3E-46EB-A124-995658A30CEA@gmail.com> <15e05745a68.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <3FD59A31-DE40-4AC2-8B20-C110EC5A2240@appisle.net> <88a47a224064e255991b2e477293fcbc@livecode.com> <2AC8A09C-874D-4BD4-8506-5E74FD170FB4@iotecdigital.com> <59d76b3f5151ac25de3d481b2d31fafd@livecode.com> <99b311c0-3258-e2c5-797e-527f84b06382@hyperactivesw.com> Message-ID: <387c6049-5346-cf3f-ba70-9c4219fe4aaa@hyperactivesw.com> On 8/22/17 3:43 PM, Stephen Barncard via use-livecode wrote: > the Android world creeps me out. And those phones always seem to break. None of my phones are newer than 3 years old and they all work. I prefer Android because it's a real operating system with a file system where you can open files in any app that supports the format, has menus, a more intelligent AI, full customization of launch screen behavior and appearance, widgets (can't live without them), fine-grained control over the permissions per app, and lots more that make it a mini computer rather than a stripped down interface that only works the way Apple says it must. Suppose Apple demanded that your Mac's desktop was unchangeable, wouldn't support your document icons, had no shortcuts/aliases and only allowed apps to be displayed in rows? What if you couldn't ever turn off how much data an app has access to? IOS users accept these things because they don't know it can be different. Apple has copied much of Android, and I understand they are about to introduce a file system. All the "improvements" I read about in the latest OS are things Android has had for years. I think if you ever learned Android you'd have trouble going back to the simple, non-customizable iOS. Start the OS wars! -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com From jonathandlynch at gmail.com Tue Aug 22 18:28:42 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Tue, 22 Aug 2017 18:28:42 -0400 Subject: attaching my group id to a control in a subgroup In-Reply-To: References: Message-ID: Can you have a function in the appropriate group that returns its unDna? This way, it will not matter about any subgrouping. Function MyUnDna Return the unDna of me End MyUnDna Sent from my iPhone > On Aug 22, 2017, at 6:08 PM, Dr. Hawkins via use-livecode wrote: > > I have a uniqDna value for each datum in my data. This is used to store > and retrieve it from a database. > > When I create an output group for one of these (and there are a great many > different output groups), the group is labeled with these IDs. > > The output group will typically contain label fields and graphics, but gets > its unDna set to the corresponding uniqDna. It also contains fields for > output. > > When an output field is modified, the handler calls the seal routine, > passing the field name, new value, and the unDna. > > I had made, for performance reasons, the strong assumption that the output > fields would always be a top level member of the output group. I also > designed output groups which, for organizational reasons, group the output > fields . . . oops . . . > > The closeField handler follows the rule, and assumes that the unDna of the > owner of the target is the uniqDna value it needs. This backfires when not > true :( > > One obvious solution would be to simply ungroup the offending groups--but > there are good reasons to want it have subgroups (such as sharing subgroups > for maintenance of similar outputs with shared elements). > > At the moment, the three possibilities I see are, > 1) recurse upwards until a group with a unDna is found (well, close; there > are universal fields with no unDna) > 2) check the owner of the owner of the target > 3) redundantly set the uDna of every output field at group creation/copying > time. > > I need this to be blindingly fast, too (although I doubt that this is a > problem in 2017). > > Am I missing an obvious way to do this? > -- > Dr. Richard E. Hawkins, Esq. > (702) 508-8462 > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From bobsneidar at iotecdigital.com Tue Aug 22 18:33:25 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Tue, 22 Aug 2017 22:33:25 +0000 Subject: Sending a message to users that floats above everything In-Reply-To: <387c6049-5346-cf3f-ba70-9c4219fe4aaa@hyperactivesw.com> References: <950CE409-2C3E-46EB-A124-995658A30CEA@gmail.com> <15e05745a68.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <3FD59A31-DE40-4AC2-8B20-C110EC5A2240@appisle.net> <88a47a224064e255991b2e477293fcbc@livecode.com> <2AC8A09C-874D-4BD4-8506-5E74FD170FB4@iotecdigital.com> <59d76b3f5151ac25de3d481b2d31fafd@livecode.com> <99b311c0-3258-e2c5-797e-527f84b06382@hyperactivesw.com> <387c6049-5346-cf3f-ba70-9c4219fe4aaa@hyperactivesw.com> Message-ID: I suppose it depends on what your priorities are. If I could be virtually guaranteed that going to a web site wouldn't hijack my computer, and there were alternatives to having a native file system so that it wasn't nearly so important (the iOS does have a file system it's just sandboxed heavily) and there were apps that would do virtually everything I could commonly do on another OS, I might be tempted to take the hit. Bob S > On Aug 22, 2017, at 15:28 , J. Landman Gay via use-livecode wrote: > > Suppose Apple demanded that your Mac's desktop was unchangeable, wouldn't support your document icons, had no shortcuts/aliases and only allowed apps to be displayed in rows? What if you couldn't ever turn off how much data an app has access to? IOS users accept these things because they don't know it can be different. From lists at mangomultimedia.com Tue Aug 22 18:46:05 2017 From: lists at mangomultimedia.com (Trevor DeVore) Date: Tue, 22 Aug 2017 17:46:05 -0500 Subject: Parent of Target In-Reply-To: <688060B9-7CAF-42D6-B2D5-871ECBC3A6B2@hindu.org> References: <688060B9-7CAF-42D6-B2D5-871ECBC3A6B2@hindu.org> Message-ID: On Tue, Aug 22, 2017 at 3:24 PM, Sannyasin Brahmanathaswami via use-livecode wrote: > > See earlier longer memo. > USE CASE aka "Problem to Solve" > > is a frame work with multiple stacks/aka "modules" with content. > > Search will be a global requirement. > > I can identify, at least for now, three "classes" of content to be search > in any given context/module > Hi BR, Let's see if I understand the problem sufficiently. Below you will find my responses. If they seem way off then assume I didn't understand the question :-) You have multiple components that are involved with a basic search UI. At the very least you need the following: 1. The UI element that the user types the search term into. 2. The code that processes the search term entered and fetches the search results 3. The UI element that displays the search results. Here is how I design such things. The search UI element [1] is a custom control/widget in and of itself that can be reused multiple times your application. Because it involves text entry it will probably be a custom control and not just a widget. Make this custom control completely self contained. It should not need to know anything about what is going on outside of the custom control. The custom control should dispatch a message when the user does something that should trigger a search (e.g. types some number of characters or presses the return key). You might use a name like "SearchOnTerm" for the message name. The code that handles the "SearchOnTerm" message and searches using the search term [2] can go in a couple of different places. The lowest place I would but it (I think of messages as falling down) is the behavior script attached to the card the search UI element appears on. If your search widget is part of yet another custom control (let's call this SearchView) that also includes the UI element that displays the search results [3] AND you have a behavior attached to SearchView then I would handle "SearchOnTerm" there. The card or SearchView behaviors will do whatever needs to be done with the search term. Maybe this card searches an array. Maybe it queries a SQL database. Or maybe it makes a REST call. [1] and [2] don't need to know about what is going on. [1] sends a message, the card or SearchView behavior code processes and then displays it in [3]. Of course you can use libraries to contain handlers that help with searching. Perhaps you have a handler that parses a search phrase and breaks it up into a SQL query or REST request. The card or SearchView behavior scripts would call any library handlers as needed and then massage the search results into a format that can be displayed in the search results UI element [3]. Using the above approach your UI elements are self contained and can be reused. The behaviors attached to these UI elements should not use complicated branching. Just dispatch messages and let the "controllers" catch and process the messages. > We had developed this framework (since about Feb of 2016) starting with > libs, but over time behaviors are becoming more and more useful. Then I > watched Trevor's Levure Video? and see that he's doing very much what we > are, though I'm not sure where levure goes when we get to the > "widget/custom-controls that will be used in many stacks/across many > context" use case, and believe me, you will be there in no time at all. > There is nothing special that you have to do with widgets as they are single controls. If you ever update the widget code and recompile then the widget is updated in your entire application. Levure doesn't ship with a Helper (features are added to Levure using Helpers) that provides templates. I have one Levure app that has a template concept in it and one that doesn't. The general concept is that you use a card to layout a "view" that will be used in your application. You can then insert this "view" anywhere you want. Updating the "view" on the card will go through your app and update all instances of the "view". This type of functionality isn't directly connected to any particular framework, though a framework can make it easier to work with templates and package up the resulting application. -- Trevor DeVore ScreenSteps www.screensteps.com From ambassador at fourthworld.com Tue Aug 22 18:55:18 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Tue, 22 Aug 2017 15:55:18 -0700 Subject: Sending a message to users that floats above everything In-Reply-To: References: Message-ID: Bob Sneidar wrote: > I suppose it depends on what your priorities are. If I could be > virtually guaranteed that going to a web site wouldn't hijack my > computer, and there were alternatives to having a native file system > so that it wasn't nearly so important (the iOS does have a file system > it's just sandboxed heavily) and there were apps that would do > virtually everything I could commonly do on another OS, I might be > tempted to take the hit. Ultimately everything is hackable. Attempts on Android are high, but actual exploits in the wild much smaller, and mostly limited to Asian markets: Out of the box, iOS and Android are both pretty secure, nearly on par and both safer than just about any desktop OS, even macOS. It's the Chinese knock-offs who ship "Android-compatible" systems without Google's protections where things tend to go wrong. Same with jailbroken iPhones. Don't go out of your way to thwart built-in security, don't click links or attachments in strange emails, and don't visit strange web sites, and your odds of having your device infected, even a Windows PC, are pretty low. -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From brahma at hindu.org Tue Aug 22 19:02:11 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Tue, 22 Aug 2017 23:02:11 +0000 Subject: Paint tools and image creation In-Reply-To: <14ED65B4-7C34-486B-B151-CC54FF2C8D6A@gmail.com> References: <555e3fba881cea87774827e4ed499ba0@livecode.com> <14ED65B4-7C34-486B-B151-CC54FF2C8D6A@gmail.com> Message-ID: <75D1598E-F157-4454-B466-9AF665837275@hindu.org> This is important in our world. not sure if I follow exactly what the issues are, but I can tell you what users need. But first of all, the paint tools seem to be badly broken here in 8.1.6 if I draw an oval it , appears but selects the entire card rect as the enclosing rect/container instead of the actual oval itself. Attempting bring the area "down" to edge of the Oval, only causes it to shrink Test was going to be: make two separate oval objects on the card, group and test the paint bucket, I can't even do that today. But here goes with our requirements: if I have a coloring book and we have a mouse, an apple and a car. inside the frame/card/coloring area. in terms of handling the whole UX from the back end, I most certainly would want to be able to treat these with commands that talk to a group. hide grp "coloringImage " or (progressively reveals elements) show img 3 of grp "coloringImage" Then, from the "front user end" when the little girl chooses a color and the bucket tool, and wants to dump the color "pink" into the mouse's body (closed path bit map b/w outline) We need that to work, just like that. It fills the mouse only, and has no awareness of the containing group. In fact I can't even imagine a use case where you would want paint tools to address the whole canvas containing the group. Disclaimer: I don't follow well, perhaps this is the way it works, but can't test today because appears broken in 8.1.6 BR On 8/22/17, 5:13 AM, "use-livecode on behalf of Jonathan Lynch via use-livecode" wrote: I think that drawing on a grouped image should be standard. From dochawk at gmail.com Tue Aug 22 19:08:13 2017 From: dochawk at gmail.com (Dr. Hawkins) Date: Tue, 22 Aug 2017 16:08:13 -0700 Subject: attaching my group id to a control in a subgroup In-Reply-To: References: Message-ID: On Tue, Aug 22, 2017 at 3:28 PM, Jonathan Lynch via use-livecode < use-livecode at lists.runrev.com> wrote: > Can you have a function in the appropriate group that returns its unDna? > This way, it will not matter about any subgrouping. > > Function MyUnDna > Return the unDna of me > End MyUnDna > > It would need to be a group-level function, which isn't a problem. I'm always hesitant, though, to rely on "me" [and finding "me" in the dictionary is an adventure in itself . . . {now *Bug 20289* - "me" is nearly impossible to find in dictionary }] if I have the structure rawRow someGroup anotherGroup myControl and define in rawRow (actually, in it's behavior) on getProp uDna return the uDna of me end getProp will this do what I mean? Seems nice, clean, elegant and fast . . . and doesn't involve a bunch of redundant setting . . . -- Dr. Richard E. Hawkins, Esq. (702) 508-8462 From brahma at hindu.org Tue Aug 22 19:11:35 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Tue, 22 Aug 2017 23:11:35 +0000 Subject: Parent of Target In-Reply-To: References: <688060B9-7CAF-42D6-B2D5-871ECBC3A6B2@hindu.org> Message-ID: <96E23961-5C58-4D02-A1AD-1D93FA7C5AB1@hindu.org> Trevor I'm sorry I muddied the waters by using the word "widget" which I have carelessly tossed around in the past for "small group of objects that team up for a job" But really widgets are widgets now and what I mean is "custom Control" You understand me very well?. The card or SearchView behavior scripts would call any library handlers as needed and then massage the search results into a format that can be displayed in the search results UI element [3]. Using the above approach your UI elements are self contained and can be reused. The behaviors attached to these UI elements should not use complicated branching. Just dispatch messages and let the "controllers" catch and process the messages. exactly! in this case behavior_SearchAndFilter is attache to the searhView custom control yep I plan that simple dispatch hence my function to turn the long idea of the parent into a small array when can dispatch discretely to any object along the path of the target Brahmanathaswami From brahma at hindu.org Tue Aug 22 23:47:50 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Wed, 23 Aug 2017 03:47:50 +0000 Subject: Bad Crash on Attempt to Group Radio Buttons Message-ID: I had just now a really bad crash in 8.1.6 created custom control/group then I needed to create two groups of five @ radio buttons in that group. I layed out the radio buttons and then with selectedGroupedControls selected, I tried to group one set of radio buttons by selecting them and click "Group" but the IDE beeped at me. So that thought, well maybe I have to added the group before I can group any child controls So I went to the edit group in the menu bar, with those five controls still selected and LC crashed, "winked out" This is not the first time I've experience issues with sub groups of a parent group, but rarely has it completely bombed like this. fortunately no corrupt stack? Before I report? anyone seeing this or know this has been addressed in more recent versions. BR From brian at milby7.com Wed Aug 23 00:03:17 2017 From: brian at milby7.com (Brian Milby) Date: Tue, 22 Aug 2017 23:03:17 -0500 Subject: attaching my group id to a control in a subgroup In-Reply-To: References: Message-ID: > > > It would need to be a group-level function, which isn't a problem. I'm > always hesitant, though, to rely on "me" [and finding "me" in the > dictionary is an adventure in itself . . . {now *Bug 20289* > - "me" is nearly > impossible to find in dictionary }] > Search for "me\b" and it will magically appear at the top. " \bme\b" and it will be the only entry (leading space will be needed for DP9 due to the fix to allow searching for '\' without typing '\\'). Reason is that field in the dictionary is actually parsed as a regex (mostly... the code does add some things around each term) . From lists at mangomultimedia.com Wed Aug 23 00:42:20 2017 From: lists at mangomultimedia.com (Trevor DeVore) Date: Tue, 22 Aug 2017 23:42:20 -0500 Subject: Parent of Target In-Reply-To: <96E23961-5C58-4D02-A1AD-1D93FA7C5AB1@hindu.org> References: <688060B9-7CAF-42D6-B2D5-871ECBC3A6B2@hindu.org> <96E23961-5C58-4D02-A1AD-1D93FA7C5AB1@hindu.org> Message-ID: On Tue, Aug 22, 2017 at 6:11 PM, Sannyasin Brahmanathaswami via use-livecode wrote: > > > in this case behavior_SearchAndFilter is attache to the searhView custom > control > > yep I plan that simple dispatch > > hence my function to turn the long idea of the parent into a small array > > when can dispatch discretely to any object along the path of the target This is the part that I don't think I understand. Why do you need to turn the long id of the parent into a small array and dispatch to to any object along the path? From the search custom control I would just do the following: dispatch "behaviorSearchAndFilter" This sends the message down the normal message path starting at the object containing the script. You can then handle the message farther down in a group, card, or stack script. What is it you are trying to accomplish with the parent of the search custom control? -- Trevor DeVore ScreenSteps www.screensteps.com From jacque at hyperactivesw.com Wed Aug 23 02:00:29 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Wed, 23 Aug 2017 01:00:29 -0500 Subject: Paint tools and image creation In-Reply-To: <75D1598E-F157-4454-B466-9AF665837275@hindu.org> References: <555e3fba881cea87774827e4ed499ba0@livecode.com> <14ED65B4-7C34-486B-B151-CC54FF2C8D6A@gmail.com> <75D1598E-F157-4454-B466-9AF665837275@hindu.org> Message-ID: <8ac10e10-ab2b-1a9a-7523-f33b9f56dc0e@hyperactivesw.com> On 8/22/17 6:02 PM, Sannyasin Brahmanathaswami via use-livecode wrote: > the paint tools seem to be badly broken here in 8.1.6 > > if I draw an oval it , appears but selects the entire card rect as the enclosing rect/container instead of the actual oval itself. > Attempting bring the area "down" to edge of the Oval, only causes it to shrink This is normal behavior, it's always been that way. If you click with a paint tool where there is no existing image, a new image is automatically created to the size of the card. If you want a smaller image, drag it out first and then use the paint tools inside it. If you want to crop an image that is too large, hold down the command key while dragging an edge. The image will be cropped to the new size, or if you drag it larger, more space is added. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com From jacque at hyperactivesw.com Wed Aug 23 02:16:57 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Wed, 23 Aug 2017 01:16:57 -0500 Subject: Bad Crash on Attempt to Group Radio Buttons In-Reply-To: References: Message-ID: <61c165f1-831a-6706-0d75-fea9632a43ae@hyperactivesw.com> All crashes are bugs and need reporting. It sounds like in this case you had individual objects selected and tried to edit those as you would a group. The engine couldn't handle it. I've not had a crash if a group itself is selected when I choose "edit group". To create a group inside another one, edit the "outside" group and then create the inner group. On 8/22/17 10:47 PM, Sannyasin Brahmanathaswami via use-livecode wrote: > I had just now a really bad crash in 8.1.6 > > created custom control/group > > then I needed to create two groups of five @ radio buttons in that group. > > I layed out the radio buttons and then with selectedGroupedControls selected, I tried to group one set of radio buttons by selecting them and click "Group" but the IDE beeped at me. > > So that thought, well maybe I have to added the group before I can group any child controls > > So I went to the edit group in the menu bar, with those five controls still selected and LC crashed, "winked out" > > This is not the first time I've experience issues with sub groups of a parent group, but rarely has it completely bombed like this. > > fortunately no corrupt stack? > > Before I report? anyone seeing this or know this has been addressed in more recent versions. > > BR > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com From monte at appisle.net Wed Aug 23 02:26:07 2017 From: monte at appisle.net (Monte Goulding) Date: Wed, 23 Aug 2017 16:26:07 +1000 Subject: Bad Crash on Attempt to Group Radio Buttons In-Reply-To: References: Message-ID: > On 23 Aug 2017, at 1:47 pm, Sannyasin Brahmanathaswami via use-livecode wrote: > > Before I report? anyone seeing this or know this has been addressed in more recent versions. A crash log should help us find this relatively quickly if you can?t come up with a good recipe. Cheers Monte From jacque at hyperactivesw.com Wed Aug 23 02:33:15 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Wed, 23 Aug 2017 01:33:15 -0500 Subject: Parent of Target In-Reply-To: References: <688060B9-7CAF-42D6-B2D5-871ECBC3A6B2@hindu.org> <96E23961-5C58-4D02-A1AD-1D93FA7C5AB1@hindu.org> Message-ID: <497d655c-5e9f-714c-f29e-a97b1e596b68@hyperactivesw.com> On 8/22/17 11:42 PM, Trevor DeVore via use-livecode wrote: > Why do you need to turn > the long id of the parent into a small array and dispatch to to any object > along the path? From the search custom control I would just do the > following: > > dispatch "behaviorSearchAndFilter" > > This sends the message down the normal message path starting at the object > containing the script. Would you even need "dispatch"? Why not just "behaviorSearchAndFilter"? -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com From jacque at hyperactivesw.com Wed Aug 23 02:42:56 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Wed, 23 Aug 2017 01:42:56 -0500 Subject: Parent of Target In-Reply-To: <497d655c-5e9f-714c-f29e-a97b1e596b68@hyperactivesw.com> References: <688060B9-7CAF-42D6-B2D5-871ECBC3A6B2@hindu.org> <96E23961-5C58-4D02-A1AD-1D93FA7C5AB1@hindu.org> <497d655c-5e9f-714c-f29e-a97b1e596b68@hyperactivesw.com> Message-ID: <1f4c1cba-2664-d0b3-eb81-0f42d57f8264@hyperactivesw.com> On 8/23/17 1:33 AM, J. Landman Gay via use-livecode wrote: > On 8/22/17 11:42 PM, Trevor DeVore via use-livecode wrote: >> Why do you need to turn >> the long id of the parent into a small array and dispatch to to any >> object >> along the path? From the search custom control I would just do the >> following: >> >> dispatch "behaviorSearchAndFilter" >> >> This sends the message down the normal message path starting at the >> object >> containing the script. > > Would you even need "dispatch"? Why not just "behaviorSearchAndFilter"? > Actually, where's that list showing the mesage path hierarchy as regards behaviors? I know I saw it somewhere once. I need a refresher. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com From mark at livecode.com Wed Aug 23 06:04:53 2017 From: mark at livecode.com (Mark Waddingham) Date: Wed, 23 Aug 2017 12:04:53 +0200 Subject: Paint tools and image creation In-Reply-To: References: <555e3fba881cea87774827e4ed499ba0@livecode.com> Message-ID: <96dc24e4c46b6b809441a58a61f4617b@livecode.com> On 2017-08-22 20:31, Richard Gaskin via use-livecode wrote: > Mark Waddingham wrote: > >> Basically, only the browser, pointer and help tools will recurse into >> groups - the paint tools will not.... > > ...nor drawing tools or object tools (eg field or button). Well that's a slightly different case here - although perhaps it explains why things are as they are. There is explicit code which stops tools doing anything inside groups - only the group ever receives 'mouse focus' when in one of the drawing/object/painting tools. It *does not* recurse into children. Thinking about it, this does make some sense; although when combined with the 'auto-create an image if no top-level one exists', things start to make slightly less sense. Of course, one option (which is actually quite obvious - I think it would work) would be to allow a tool property on images. It seems slightly crazy that (essentially), if you switch to a paint tool you can edit any non-referenced top-level image! Surely any app would want some control over that (outside of the IDE, perhaps)... > Any opportunity here to generalize the solution to accommodate this? > tool property for groups/creating objects in groups interactively > http://quality.livecode.com/show_bug.cgi?id=623 I think that is a slightly different case to this. Indeed, it is orthogonal to tool of image - the tool of a group could be any tool which manipulates objects (including creation), as a group contains objects; the tool of an image could be any tool which manipulates pixels, as an image is a collection of pixels. I fear that these two parts of code are quite distinct, however, so it isn't a case of do one and get the other free... The image one is probably quite straight-forward (although, I could well be wrong); the group one (judging by the code I delved into y'day) not so straight-forward! Warmest Regards, Mark. P.S. This idea might also give a much better way to do the 'editMode' of graphics - i.e. a tool property which determines the mouse interactions within the graphic. I wish I had seen that potential pattern years ago when we added editMode... -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From mark at livecode.com Wed Aug 23 06:35:14 2017 From: mark at livecode.com (Mark Waddingham) Date: Wed, 23 Aug 2017 12:35:14 +0200 Subject: Paint tools and image creation In-Reply-To: <96dc24e4c46b6b809441a58a61f4617b@livecode.com> References: <555e3fba881cea87774827e4ed499ba0@livecode.com> <96dc24e4c46b6b809441a58a61f4617b@livecode.com> Message-ID: <9f9056e9ef4c2ae230b9217348df64ee@livecode.com> On 2017-08-23 12:04, Mark Waddingham via use-livecode wrote: > I fear that these two parts of code are quite distinct, however, so it > isn't a case of do one and get the other free... The image one is > probably quite straight-forward (although, I could well be wrong); the > group one (judging by the code I delved into y'day) not so > straight-forward! Indeed it turns out that an image tool property is quite straight-forward - well, up to the point of figuring out what the exact interactions with the global tool are (and how it should behave in an IDE context): http://quality.livecode.com/show_bug.cgi?id=20286 This is just an 'experiment' at the moment - but it shows some promise I think. Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From scott at elementarysoftware.com Wed Aug 23 07:43:25 2017 From: scott at elementarysoftware.com (Scott Morrow) Date: Wed, 23 Aug 2017 04:43:25 -0700 Subject: Quartam PDF Lib - remove dashed lines Message-ID: <07939D79-1C33-4881-8F20-077BEF1B9B2C@elementarysoftware.com> For any users of Jan?s Quartam PDF Lib? After setting line options with qrtPDF_SetLineOptions tDocRef,"round","miter","0,2",1 I can't work out how to go back to using solid lines. I?m sure that I?m missing something obvious since the library is generally very satisfying to work with. (I did post to the Quartam Software Forum as well but thought I might get a quicker answer to an ?easy? question here.) Quartam PDF Lib 1.1.5 LC 8.1.6 business Scott Morrow Elementary Software (Now with 20% less chalk dust!) web http://elementarysoftware.com/ email scott at elementarysoftware.com office 1-800-615-0867 ------------------------------------------------------ From scott at elementarysoftware.com Wed Aug 23 07:50:28 2017 From: scott at elementarysoftware.com (scott at elementarysoftware.com) Date: Wed, 23 Aug 2017 04:50:28 -0700 Subject: Quartam PDF Lib - remove dashed lines In-Reply-To: <07939D79-1C33-4881-8F20-077BEF1B9B2C@elementarysoftware.com> References: <07939D79-1C33-4881-8F20-077BEF1B9B2C@elementarysoftware.com> Message-ID: <07F2A9F1-DB5C-4E82-8C90-706D56044337@elementarysoftware.com> Ah, sheesh It was easy and I was doing it correctly? all except the part where I was setting the line options in a second place. > On Aug 23, 2017, at 4:43 AM, Scott Morrow via use-livecode wrote: > > For any users of Jan?s Quartam PDF Lib? After setting line options with > > qrtPDF_SetLineOptions tDocRef,"round","miter","0,2",1 > > I can't work out how to go back to using solid lines. I?m sure that I?m missing something obvious since the library is generally very satisfying to work with. > (I did post to the Quartam Software Forum as well but thought I might get a quicker answer to an ?easy? question here.) > > Quartam PDF Lib 1.1.5 > LC 8.1.6 business > > Scott Morrow > > Elementary Software > (Now with 20% less chalk dust!) > web http://elementarysoftware.com/ > email scott at elementarysoftware.com > office 1-800-615-0867 > ------------------------------------------------------ > > > > > > > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From roger.e.eller at sealedair.com Wed Aug 23 07:54:12 2017 From: roger.e.eller at sealedair.com (Roger Eller) Date: Wed, 23 Aug 2017 07:54:12 -0400 Subject: Sending a message to users that floats above everything In-Reply-To: References: <950CE409-2C3E-46EB-A124-995658A30CEA@gmail.com> <15e05745a68.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <3FD59A31-DE40-4AC2-8B20-C110EC5A2240@appisle.net> <88a47a224064e255991b2e477293fcbc@livecode.com> <2AC8A09C-874D-4BD4-8506-5E74FD170FB4@iotecdigital.com> <59d76b3f5151ac25de3d481b2d31fafd@livecode.com> <99b311c0-3258-e2c5-797e-527f84b06382@hyperactivesw.com> Message-ID: On Tue, Aug 22, 2017 at 4:43 PM, Stephen Barncard via use-livecode < use-livecode at lists.runrev.com> wrote: > the Android world creeps me out. And those phones always seem to break. > > sqb > > -- > Stephen Barncard - Sebastopol Ca. USA - > mixstream.org > > LOL! I love the customizability of Android, so I have made mine so "different" that any iOS L-user will be immediately creeped out and will leave my phone the heck alone. :) This theme COMPLETELY changes how the OS is used, yet it really is still fully functional. I LOVE Android (and Star Trek)!!! ~Roger From scott at elementarysoftware.com Wed Aug 23 08:22:08 2017 From: scott at elementarysoftware.com (scott at elementarysoftware.com) Date: Wed, 23 Aug 2017 05:22:08 -0700 Subject: Quartam PDF Lib - remove dashed lines In-Reply-To: <07F2A9F1-DB5C-4E82-8C90-706D56044337@elementarysoftware.com> References: <07939D79-1C33-4881-8F20-077BEF1B9B2C@elementarysoftware.com> <07F2A9F1-DB5C-4E82-8C90-706D56044337@elementarysoftware.com> Message-ID: I guess I still need help :- ) > On Aug 23, 2017, at 4:50 AM, scott--- via use-livecode wrote: > > Ah, sheesh It was easy and I was doing it correctly? all except the part where I was setting the line options in a second place. > >> On Aug 23, 2017, at 4:43 AM, Scott Morrow via use-livecode wrote: >> >> For any users of Jan?s Quartam PDF Lib? After setting line options with >> >> qrtPDF_SetLineOptions tDocRef,"round","miter","0,2",1 >> >> I can't work out how to go back to using solid lines. I?m sure that I?m missing something obvious since the library is generally very satisfying to work with. >> (I did post to the Quartam Software Forum as well but thought I might get a quicker answer to an ?easy? question here.) >> >> Quartam PDF Lib 1.1.5 >> LC 8.1.6 business >> >> Scott Morrow >> >> Elementary Software >> (Now with 20% less chalk dust!) >> web http://elementarysoftware.com/ >> email scott at elementarysoftware.com >> office 1-800-615-0867 >> ------------------------------------------------------ >> >> >> >> >> >> >> >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From lists at mangomultimedia.com Wed Aug 23 09:21:28 2017 From: lists at mangomultimedia.com (Trevor DeVore) Date: Wed, 23 Aug 2017 13:21:28 +0000 Subject: Parent of Target In-Reply-To: <497d655c-5e9f-714c-f29e-a97b1e596b68@hyperactivesw.com> References: <688060B9-7CAF-42D6-B2D5-871ECBC3A6B2@hindu.org> <96E23961-5C58-4D02-A1AD-1D93FA7C5AB1@hindu.org> <497d655c-5e9f-714c-f29e-a97b1e596b68@hyperactivesw.com> Message-ID: On Wed, Aug 23, 2017 at 1:33 AM J. Landman Gay via use-livecode < use-livecode at lists.runrev.com> wrote: > On 8/22/17 11:42 PM, Trevor DeVore via use-livecode wrote: > > Why do you need to turn > > the long id of the parent into a small array and dispatch to to any > object > > along the path? From the search custom control I would just do the > > following: > > > > dispatch "behaviorSearchAndFilter" > > > > This sends the message down the normal message path starting at the > object > > containing the script. > > Would you even need "dispatch"? Why not just "behaviorSearchAndFilter"? I'm in the habit of using "dispatch" as it mimics how the engine works and won't throw an error if a message isn't handled. In this case you could argue that you want an error to occur if you haven't implemented the handler. When I'm testing a component I don't want to deal with the debugger opening up though. -- Trevor DeVore ScreenSteps > From alex at tweedly.net Wed Aug 23 10:28:50 2017 From: alex at tweedly.net (Alex Tweedly) Date: Wed, 23 Aug 2017 15:28:50 +0100 Subject: CouchDB, DayBed, etc. Message-ID: Just a quick thank you to Greg for the info on his Daybed library, and for the Udemy course on CouchDB. I found the course fascinating - and I watched it first so I had the overview before watching the Daybed specific talk in Livecode Global. (And I have to admit I watched it all on 1.5x speed, and skipped one of each of the 'Futon'/'Fauxton' parts, so it was only only about 2-1/2 hours :-) I wish we had that speeding capability on the Livecode Global webinar replays rather just on the (crippled) Youtube version.) I found the Daybed library fascinating - and as soon as it can cover Couchant (so I have an easy, free way to try it out :-), I will be playing with it. BUT - I have a fairly fundamental problem that I don't know how to resolve - so I'll throw it out here and see if there's an obvious solution I've missed. With the exception of a couple of things that basically scraped data off some web pages, every app I've done in the last couple of years (all for personal use by myself or friends - I'm a hobbyist) have shared one characteristic : they have local storage, and that data is subsequently synched to "the cloud" to be shared with other devices/users, or at the very least backed-up to the cloud (i.e. my on-rev or HostM server account). I haven't yet done anything on mobile - but because of where I live and other circumstances, even for laptops I *need* to have things work without an Internet connection and synch up when available. This doesn't seem to fit well with, say, CouchDB; the REST API lets me do great things when I talk to the server - but when working locally I have to forego all those features, and, for instance, revert to an array which I 'manually' search / filter / etc. Currently, what I do is: - local SQLite database, and use Andre's DBLib, including selecting etc. for filtering - remote MySQL accesses through my own server page (with a few added columns) - home-grown synch process that asynchronously uploads / downloads changes (*). Is there a NoSQL equivalent ? Or has anyone written a LC library that does array searching / filtering / etc. that would provide similar, even if less extensive, features ? Thanks for any comments, suggestions, etc. Alex. (*) my homegrown synch process: - I use a "data model layer", and all changes to the DB go through it. As well as writing to the SQLite database, it adds an update record to the end of a queue of changes (each held in a separate textfile). - each record has an UUMID (Universally Unique Meaningful ID) - made up of the device name where it is being created plus the date/time to the millisec - each record has a 'modified' timestamp (local time on the device, so not universally comparable) - each record has a 'accepted' timestamp, which is the time *on the server* when the change is synched on to the server (and so they are all universally comparable). - the synch handler runs continuously, is triggered at start-up to download changes, or by any DB update or periodically for downloading new updates - and re-sends to itself while there are remaining synch's to do; i.e. non-blocking, and if there is no Internet connection, it simply waits a while and tries again - for now, conflict resolution is *only* "server wins" Unfortunately, while the skeleton of the synch handler, and of the server page, are reusable, they need to be fleshed out each time. One of these days I'll find time to look at this properly, and see how close it can become to a fixed, standard library for the synch capability (and look at conflict resolution more closely). From bobsneidar at iotecdigital.com Wed Aug 23 10:38:28 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Wed, 23 Aug 2017 14:38:28 +0000 Subject: Paint tools and image creation In-Reply-To: <96dc24e4c46b6b809441a58a61f4617b@livecode.com> References: <555e3fba881cea87774827e4ed499ba0@livecode.com> <96dc24e4c46b6b809441a58a61f4617b@livecode.com> Message-ID: <415E288A-1E4C-4AEC-A308-BA1CDEB20B03@iotecdigital.com> As an aside, I stumbled across the editMode property when I tried to use it as a property of a stack to store edit/view/search for a form/card. No bueno. Bob S > On Aug 23, 2017, at 03:04 , Mark Waddingham via use-livecode wrote: > > P.S. This idea might also give a much better way to do the 'editMode' of graphics - i.e. a tool property which determines the mouse interactions within the graphic. I wish I had seen that potential pattern years ago when we added editMode... > > -- > Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ > LiveCode: Everyone can create apps From bobsneidar at iotecdigital.com Wed Aug 23 10:46:14 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Wed, 23 Aug 2017 14:46:14 +0000 Subject: Sending a message to users that floats above everything In-Reply-To: References: Message-ID: <3489A67D-81C3-40F7-A599-53D7AD4C81AB@iotecdigital.com> So long as social engineering is not counted in the gamut of "hacks", I might agree. I don't count anything where a user does something unprescribed, or is tricked into doing something as a hack. I was listening to The Tech Guy last Sunday and a gal called in to say she was in facebook and an alert pooped up telling her there was suspicious activity and Facebook wanted her to run something to check her system. She went ahead and did it. It reported it found 6 infected files and removed them. Most people are thinking, "OH NO! SHE DIDN'T!!!" Turns out, this is a legitimate thing that Facebook does! So now the question becomes, how the hell can we tell between the bad guys and the good guys?? I would modify your statement to, Ultimately, everything is potentially hackable. But the reason there are more attacks against Android is simple. It's orders of magnitude easier to exploit. Bob S > On Aug 22, 2017, at 15:55 , Richard Gaskin via use-livecode wrote: > > Ultimately everything is hackable. From jonathandlynch at gmail.com Wed Aug 23 10:53:29 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Wed, 23 Aug 2017 10:53:29 -0400 Subject: Goofy question #7234 In-Reply-To: <15d2d18b038.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> References: <5e7faee7-0829-4c2d-762d-2ef00a2c0f9b@gmail.com> <15d2d18b038.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Message-ID: <49FE9BC1-AB04-49CA-B695-D7F746127D9D@gmail.com> The "do" command converts text into a command. Like this: Put "answer 5" into tcommand Do tcommand This is useful in some situations, but usually it is more efficient to just say: Answer 5 Sent from my iPhone > On Jul 10, 2017, at 11:23 AM, J. Landman Gay via use-livecode wrote: > > I wrote this explanation a long time ago for someone else: > http://www.hyperactivesw.com/resources_function.html > > Also, in your command handler example, you don't need "do" which adds unnecessary overhead. This is enough: > > on mouseUp > GoRed > end mouseUp > > -- > Jacqueline Landman Gay | jacque at hyperactivesw.com > HyperActive Software | http://www.hyperactivesw.com > > > >> On July 10, 2017 1:50:39 AM Richmond Mathewson via use-livecode wrote: >> >> I am obviously missing something . . . >> >> . . . so badly so that I've been trawling Danny Goodman's "Complete" HC >> 2 . . . >> >> and NOT getting 'it' . . . >> >> SO: one can set up a custom command: >> >> on GoRed >> set the backGroundColor of card 1 to red >> end GoRed >> >> and one can call it: >> >> on mouseUp >> do GoRed >> end mouseUp >> >> and one can set up a custom function: >> >> function GoRed >> set the backGroundColor of card 1 to red >> end function >> >> Now: is the reason I cannot call that function because it takes NO >> parameters? >> >> Richmond. >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode > > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From bobsneidar at iotecdigital.com Wed Aug 23 10:55:34 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Wed, 23 Aug 2017 14:55:34 +0000 Subject: Parent of Target In-Reply-To: References: <688060B9-7CAF-42D6-B2D5-871ECBC3A6B2@hindu.org> Message-ID: <314B8AB7-7CA1-47EC-8E32-BB6AD7E18BE3@iotecdigital.com> I have that very thing. I call it searchBar. It looks pretty much like a search field from a browser or Finder window (in a somewhat earlier version of the OS) and it's designed to retrieve data and update a datagrid. I would post the rather simple code, except it is dependent on sqlYoga and some custom functions I have. I could probably make it self contained (although it almost is now) but that has no value to me. If you are interested I can send you a stack with the custom control, and you can massage it to do what you want. Bob S > On Aug 22, 2017, at 15:46 , Trevor DeVore via use-livecode wrote: > >> >> See earlier longer memo. >> USE CASE aka "Problem to Solve" >> >> is a frame work with multiple stacks/aka "modules" with content. >> >> Search will be a global requirement. >> >> I can identify, at least for now, three "classes" of content to be search >> in any given context/module >> > > Hi BR, > > Let's see if I understand the problem sufficiently. Below you will find my > responses. If they seem way off then assume I didn't understand the > question :-) > > You have multiple components that are involved with a basic search UI. At > the very least you need the following: > > 1. The UI element that the user types the search term into. > 2. The code that processes the search term entered and fetches the search > results > 3. The UI element that displays the search results. From jonathandlynch at gmail.com Wed Aug 23 10:57:03 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Wed, 23 Aug 2017 10:57:03 -0400 Subject: Goofy question #7234 In-Reply-To: <49FE9BC1-AB04-49CA-B695-D7F746127D9D@gmail.com> References: <5e7faee7-0829-4c2d-762d-2ef00a2c0f9b@gmail.com> <15d2d18b038.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <49FE9BC1-AB04-49CA-B695-D7F746127D9D@gmail.com> Message-ID: <262FDBF4-4F3E-4F34-AF43-E1CC9DE2BBB9@gmail.com> Sorry - old message that randomly popped up in my email! Sent from my iPhone > On Aug 23, 2017, at 10:53 AM, jonathandlynch at gmail.com wrote: > > The "do" command converts text into a command. Like this: > > Put "answer 5" into tcommand > Do tcommand > > This is useful in some situations, but usually it is more efficient to just say: > > Answer 5 > > Sent from my iPhone > >> On Jul 10, 2017, at 11:23 AM, J. Landman Gay via use-livecode wrote: >> >> I wrote this explanation a long time ago for someone else: >> http://www.hyperactivesw.com/resources_function.html >> >> Also, in your command handler example, you don't need "do" which adds unnecessary overhead. This is enough: >> >> on mouseUp >> GoRed >> end mouseUp >> >> -- >> Jacqueline Landman Gay | jacque at hyperactivesw.com >> HyperActive Software | http://www.hyperactivesw.com >> >> >> >>> On July 10, 2017 1:50:39 AM Richmond Mathewson via use-livecode wrote: >>> >>> I am obviously missing something . . . >>> >>> . . . so badly so that I've been trawling Danny Goodman's "Complete" HC >>> 2 . . . >>> >>> and NOT getting 'it' . . . >>> >>> SO: one can set up a custom command: >>> >>> on GoRed >>> set the backGroundColor of card 1 to red >>> end GoRed >>> >>> and one can call it: >>> >>> on mouseUp >>> do GoRed >>> end mouseUp >>> >>> and one can set up a custom function: >>> >>> function GoRed >>> set the backGroundColor of card 1 to red >>> end function >>> >>> Now: is the reason I cannot call that function because it takes NO >>> parameters? >>> >>> Richmond. >>> _______________________________________________ >>> use-livecode mailing list >>> use-livecode at lists.runrev.com >>> Please visit this url to subscribe, unsubscribe and manage your subscription preferences: >>> http://lists.runrev.com/mailman/listinfo/use-livecode >> >> >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode From bobsneidar at iotecdigital.com Wed Aug 23 10:59:24 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Wed, 23 Aug 2017 14:59:24 +0000 Subject: Parent of Target In-Reply-To: References: <688060B9-7CAF-42D6-B2D5-871ECBC3A6B2@hindu.org> <96E23961-5C58-4D02-A1AD-1D93FA7C5AB1@hindu.org> <497d655c-5e9f-714c-f29e-a97b1e596b68@hyperactivesw.com> Message-ID: <8A1771E3-042E-47CB-ABAC-D70D53F00EAE@iotecdigital.com> Whaaaa??? So send would but dispatch won't? Bob S > On Aug 23, 2017, at 06:21 , Trevor DeVore via use-livecode wrote: > > I'm in the habit of using "dispatch" as it mimics how the engine works and > won't throw an error if a message isn't handled. From brahma at hindu.org Wed Aug 23 11:02:59 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Wed, 23 Aug 2017 15:02:59 +0000 Subject: Parent of Target In-Reply-To: References: <688060B9-7CAF-42D6-B2D5-871ECBC3A6B2@hindu.org> <96E23961-5C58-4D02-A1AD-1D93FA7C5AB1@hindu.org> Message-ID: OH! " This sends the message down the normal message path starting at the object containing the script. " And here I've been thinking that a target was required for specificity, because of this in the dictionary: "If no target is specified, the message is sent to ' me '. In the context of a behavior, this is typically the child that is executing rather than the behavior object itself." Life just go easier. BR On 8/22/17, 6:42 PM, "use-livecode on behalf of Trevor DeVore via use-livecode" wrote: This is the part that I don't think I understand. Why do you need to turn the long id of the parent into a small array and dispatch to to any object along the path? From the search custom control I would just do the following: dispatch "behaviorSearchAndFilter" You can then handle the message farther down in a group, card, or stack script. What is it you are trying to accomplish with the parent of the search custom control? From smaclean at madmansoft.com Wed Aug 23 11:06:30 2017 From: smaclean at madmansoft.com (Stephen MacLean) Date: Wed, 23 Aug 2017 11:06:30 -0400 Subject: is IMAP or POP3 supported with tsNet? Message-ID: <11C9110E-88C1-48C1-AF16-AF081D1BB6E2@madmansoft.com> Hi All, Don?t think it is, based on what?s in the dictionary, but thought I would ask: is IMAP or POP3 supported with tsNet? I know CURL does, but don?t know if it?s been added to tsNet. TIA, Steve MacLean From ahsoftware at sonic.net Wed Aug 23 11:22:44 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Wed, 23 Aug 2017 08:22:44 -0700 Subject: Parent of Target In-Reply-To: <8A1771E3-042E-47CB-ABAC-D70D53F00EAE@iotecdigital.com> References: <688060B9-7CAF-42D6-B2D5-871ECBC3A6B2@hindu.org> <96E23961-5C58-4D02-A1AD-1D93FA7C5AB1@hindu.org> <497d655c-5e9f-714c-f29e-a97b1e596b68@hyperactivesw.com> <8A1771E3-042E-47CB-ABAC-D70D53F00EAE@iotecdigital.com> Message-ID: <36703873-3a30-08b6-aff0-1c3684826f79@sonic.net> On 08/23/2017 07:59 AM, Bob Sneidar via use-livecode wrote: > Whaaaa??? So send would but dispatch won't? > > Bob S > > >> On Aug 23, 2017, at 06:21 , Trevor DeVore via use-livecode wrote: >> >> I'm in the habit of using "dispatch" as it mimics how the engine works and >> won't throw an error if a message isn't handled. > Right. Dispatch will return an "unhandled" status if it can't be executed, while send will throw an error. -- Mark Wieder ahsoftware at gmail.com From lists at mangomultimedia.com Wed Aug 23 11:23:10 2017 From: lists at mangomultimedia.com (Trevor DeVore) Date: Wed, 23 Aug 2017 10:23:10 -0500 Subject: Parent of Target In-Reply-To: <8A1771E3-042E-47CB-ABAC-D70D53F00EAE@iotecdigital.com> References: <688060B9-7CAF-42D6-B2D5-871ECBC3A6B2@hindu.org> <96E23961-5C58-4D02-A1AD-1D93FA7C5AB1@hindu.org> <497d655c-5e9f-714c-f29e-a97b1e596b68@hyperactivesw.com> <8A1771E3-042E-47CB-ABAC-D70D53F00EAE@iotecdigital.com> Message-ID: On Wed, Aug 23, 2017 at 9:59 AM, Bob Sneidar via use-livecode < use-livecode at lists.runrev.com> wrote: > Whaaaa??? So send would but dispatch won't? > That is correct, as long as you aren?t using `in time` with `send`. The following script won?t cause an error until the last `send`: on mouseUp send "NotThere" to me in 0 seconds dispatch "NotThere" to me send "NotThere" to me end mouseUp -- Trevor DeVore ScreenSteps www.screensteps.com From brahma at hindu.org Wed Aug 23 11:24:32 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Wed, 23 Aug 2017 15:24:32 +0000 Subject: Search Values of Array in "One Go" Message-ID: We use these arrays with media metadata that is extracted from our database of media metadata. The dbase was originally designed for lots of columns so that "there is nothing we cannot know about a media item" incorporating DCIM columns and also W3C media metadata initiative's recommended properties. In actually usage for any give media item only a small subset of columns containe any data. but we do use almost all the columns at one time or another. There are no blobs, so this is very light weight data. Anyway? this results in arrays which contain 1 top level key per record and that element contains another 40 or so keys for the columns of the database. most of which are empty/unused. So these arrays are never "heavy" in terms of bytes. e.g. aPlayList may have 1000 keys (numeric 1-1000) where each top level key contains a whole record: in each one we have aPlayList [1]["title"] aPlayList [1]["subtitle"] aPlayList [1]["genre"] aPlayList [1]["description"] aPlayList [1]["artist"] aPlayList [1]["theme"] aPlayList [1]["creator"] aPlayList [1]["audience"] # and 30+ more "properties" for the media item OK so let's say user want sto search "blues" and I want the UX to check *all* columns in the array. What is the best way to do this? I tried a simple test. on mouseup put "apple" into aFruits["1"] put "orange" into aFruits["2"] put "plum" into aFruits ["3"] put aFruits contains "orange" end mouseup and it returns "false" The only other strategy I can see would be put 1 into z # for our new filtered play list repeat for each key x in aPlaylist repeat for each key y in aPlayList[x] if aPlayList[x][y]contains "blues" then put aPlayList[x] into aFilteredPlayList[z] add 1 to z end if end repeat end repeat So then if we started with 1000 "records" in the array and we found "blues" in any column of any record, for, say 20 of them, we end up with a new array. aFilteredPlayList # containing top level keys 1-20 for 20 records, put the titles into a list field and viola: the clickline number matches the array key and away we go. OK I can make this work, (have to since I don't see another way) But it seems like a lot of looping. Is there a more efficient approach? BR From bobsneidar at iotecdigital.com Wed Aug 23 11:34:47 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Wed, 23 Aug 2017 15:34:47 +0000 Subject: Search Values of Array in "One Go" In-Reply-To: References: Message-ID: Yes. Don't use an array, use a memory based sqLite table. Bob S > On Aug 23, 2017, at 08:24 , Sannyasin Brahmanathaswami via use-livecode wrote: > > OK I can make this work, (have to since I don't see another way) > > But it seems like a lot of looping. > > Is there a more efficient approach? > > BR From bobsneidar at iotecdigital.com Wed Aug 23 11:36:05 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Wed, 23 Aug 2017 15:36:05 +0000 Subject: Search Values of Array in "One Go" In-Reply-To: References: Message-ID: <8A73E538-A7F9-4F7F-8611-43BA92A49D65@iotecdigital.com> Oh wait I see you ARE using an SQL database to begin with. Why would you then want to search an array? Bob S > On Aug 23, 2017, at 08:34 , Bob Sneidar via use-livecode wrote: > > Yes. Don't use an array, use a memory based sqLite table. > > Bob S > > >> On Aug 23, 2017, at 08:24 , Sannyasin Brahmanathaswami via use-livecode wrote: >> >> OK I can make this work, (have to since I don't see another way) >> >> But it seems like a lot of looping. >> >> Is there a more efficient approach? >> >> BR > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From prothero at earthlearningsolutions.org Wed Aug 23 11:44:07 2017 From: prothero at earthlearningsolutions.org (prothero at earthlearningsolutions.org) Date: Wed, 23 Aug 2017 08:44:07 -0700 Subject: Parent of Target In-Reply-To: <36703873-3a30-08b6-aff0-1c3684826f79@sonic.net> References: <688060B9-7CAF-42D6-B2D5-871ECBC3A6B2@hindu.org> <96E23961-5C58-4D02-A1AD-1D93FA7C5AB1@hindu.org> <497d655c-5e9f-714c-f29e-a97b1e596b68@hyperactivesw.com> <8A1771E3-042E-47CB-ABAC-D70D53F00EAE@iotecdigital.com> <36703873-3a30-08b6-aff0-1c3684826f79@sonic.net> Message-ID: <3358477A-C494-4776-AB42-72B36E25450F@earthlearningsolutions.org> Odd. I wouldn't have guessed the dependence on "in time" for the send command. Bill P William Prothero http://es.earthednet.org > On Aug 23, 2017, at 8:22 AM, Mark Wieder via use-livecode wrote: > >> On 08/23/2017 07:59 AM, Bob Sneidar via use-livecode wrote: >> Whaaaa??? So send would but dispatch won't? >> Bob S >>> On Aug 23, 2017, at 06:21 , Trevor DeVore via use-livecode wrote: >>> >>> I'm in the habit of using "dispatch" as it mimics how the engine works and >>> won't throw an error if a message isn't handled. > > Right. > Dispatch will return an "unhandled" status if it can't be executed, while send will throw an error. > > -- > Mark Wieder > ahsoftware at gmail.com > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From bobsneidar at iotecdigital.com Wed Aug 23 11:50:14 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Wed, 23 Aug 2017 15:50:14 +0000 Subject: Parent of Target In-Reply-To: <3358477A-C494-4776-AB42-72B36E25450F@earthlearningsolutions.org> References: <688060B9-7CAF-42D6-B2D5-871ECBC3A6B2@hindu.org> <96E23961-5C58-4D02-A1AD-1D93FA7C5AB1@hindu.org> <497d655c-5e9f-714c-f29e-a97b1e596b68@hyperactivesw.com> <8A1771E3-042E-47CB-ABAC-D70D53F00EAE@iotecdigital.com> <36703873-3a30-08b6-aff0-1c3684826f79@sonic.net> <3358477A-C494-4776-AB42-72B36E25450F@earthlearningsolutions.org> Message-ID: <16CD6857-8DF5-4947-B224-61FF7AF0A438@iotecdigital.com> This is actually useful. Let's say you have some fields which do some basic validations against database table constraints and some that do not require them. You could simpy dispatch a command to validate to all fields and only the ones which need to will handle the message. I like it. Bob S > On Aug 23, 2017, at 08:44 , prothero--- via use-livecode wrote: > >> Right. >> Dispatch will return an "unhandled" status if it can't be executed, while send will throw an error. >> >> -- >> Mark Wieder >> ahsoftware at gmail.com From ahsoftware at sonic.net Wed Aug 23 12:02:05 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Wed, 23 Aug 2017 09:02:05 -0700 Subject: Parent of Target In-Reply-To: <16CD6857-8DF5-4947-B224-61FF7AF0A438@iotecdigital.com> References: <688060B9-7CAF-42D6-B2D5-871ECBC3A6B2@hindu.org> <96E23961-5C58-4D02-A1AD-1D93FA7C5AB1@hindu.org> <497d655c-5e9f-714c-f29e-a97b1e596b68@hyperactivesw.com> <8A1771E3-042E-47CB-ABAC-D70D53F00EAE@iotecdigital.com> <36703873-3a30-08b6-aff0-1c3684826f79@sonic.net> <3358477A-C494-4776-AB42-72B36E25450F@earthlearningsolutions.org> <16CD6857-8DF5-4947-B224-61FF7AF0A438@iotecdigital.com> Message-ID: On 08/23/2017 08:50 AM, Bob Sneidar via use-livecode wrote: > This is actually useful. Let's say you have some fields which do some basic validations against database table constraints and some that do not require them. You could simpy dispatch a command to validate to all fields and only the ones which need to will handle the message. I like it. Right. I use dispatch in that mode quite a lot. Sometimes I want to check the returned status to see if I need to do something, but in other cases an "unhandled" return state is fine. -- Mark Wieder ahsoftware at gmail.com From ahsoftware at sonic.net Wed Aug 23 12:07:53 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Wed, 23 Aug 2017 09:07:53 -0700 Subject: Parent of Target In-Reply-To: References: <688060B9-7CAF-42D6-B2D5-871ECBC3A6B2@hindu.org> <96E23961-5C58-4D02-A1AD-1D93FA7C5AB1@hindu.org> <497d655c-5e9f-714c-f29e-a97b1e596b68@hyperactivesw.com> <8A1771E3-042E-47CB-ABAC-D70D53F00EAE@iotecdigital.com> Message-ID: <8b6f8318-d870-0c65-b92d-a78e7ee1de02@sonic.net> On 08/23/2017 08:23 AM, Trevor DeVore via use-livecode wrote: > That is correct, as long as you aren?t using `in time` with `send`. The > following script won?t cause an error until the last `send`: Good to know. Yeah, that's weird. -- Mark Wieder ahsoftware at gmail.com From gbojsza at gmail.com Wed Aug 23 12:11:07 2017 From: gbojsza at gmail.com (Glen Bojsza) Date: Wed, 23 Aug 2017 12:11:07 -0400 Subject: Thoughts on BLOBs in SQLite Message-ID: Hello, I was looking for feedback on whether it is better to store images as BLOBs in an SQLite database for a LC app or store paths to the images in the SQLite database and the images in a separate folder. Any help in understanding possible performance and memory issues is what I am looking for. Can I assume that any issues would be the same for both Android and iOS? thanks, Glen From bonnmike at gmail.com Wed Aug 23 12:15:00 2017 From: bonnmike at gmail.com (Mike Bonner) Date: Wed, 23 Aug 2017 10:15:00 -0600 Subject: Goofy question #7234 In-Reply-To: <262FDBF4-4F3E-4F34-AF43-E1CC9DE2BBB9@gmail.com> References: <5e7faee7-0829-4c2d-762d-2ef00a2c0f9b@gmail.com> <15d2d18b038.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <49FE9BC1-AB04-49CA-B695-D7F746127D9D@gmail.com> <262FDBF4-4F3E-4F34-AF43-E1CC9DE2BBB9@gmail.com> Message-ID: Old question but.. since its a function, whether you use do or not, gotta have the () at the end. On Wed, Aug 23, 2017 at 8:57 AM, Jonathan Lynch via use-livecode < use-livecode at lists.runrev.com> wrote: > Sorry - old message that randomly popped up in my email! > > Sent from my iPhone > > > On Aug 23, 2017, at 10:53 AM, jonathandlynch at gmail.com wrote: > > > > The "do" command converts text into a command. Like this: > > > > Put "answer 5" into tcommand > > Do tcommand > > > > This is useful in some situations, but usually it is more efficient to > just say: > > > > Answer 5 > > > > Sent from my iPhone > > > >> On Jul 10, 2017, at 11:23 AM, J. Landman Gay via use-livecode < > use-livecode at lists.runrev.com> wrote: > >> > >> I wrote this explanation a long time ago for someone else: > >> http://www.hyperactivesw.com/resources_function.html > >> > >> Also, in your command handler example, you don't need "do" which adds > unnecessary overhead. This is enough: > >> > >> on mouseUp > >> GoRed > >> end mouseUp > >> > >> -- > >> Jacqueline Landman Gay | jacque at hyperactivesw.com > >> HyperActive Software | http://www.hyperactivesw.com > >> > >> > >> > >>> On July 10, 2017 1:50:39 AM Richmond Mathewson via use-livecode < > use-livecode at lists.runrev.com> wrote: > >>> > >>> I am obviously missing something . . . > >>> > >>> . . . so badly so that I've been trawling Danny Goodman's "Complete" HC > >>> 2 . . . > >>> > >>> and NOT getting 'it' . . . > >>> > >>> SO: one can set up a custom command: > >>> > >>> on GoRed > >>> set the backGroundColor of card 1 to red > >>> end GoRed > >>> > >>> and one can call it: > >>> > >>> on mouseUp > >>> do GoRed > >>> end mouseUp > >>> > >>> and one can set up a custom function: > >>> > >>> function GoRed > >>> set the backGroundColor of card 1 to red > >>> end function > >>> > >>> Now: is the reason I cannot call that function because it takes NO > >>> parameters? > >>> > >>> Richmond. > >>> _______________________________________________ > >>> use-livecode mailing list > >>> use-livecode at lists.runrev.com > >>> Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > >>> http://lists.runrev.com/mailman/listinfo/use-livecode > >> > >> > >> > >> _______________________________________________ > >> use-livecode mailing list > >> use-livecode at lists.runrev.com > >> Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > >> http://lists.runrev.com/mailman/listinfo/use-livecode > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From bobsneidar at iotecdigital.com Wed Aug 23 12:25:01 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Wed, 23 Aug 2017 16:25:01 +0000 Subject: Thoughts on BLOBs in SQLite In-Reply-To: References: Message-ID: <8CB8C144-05A1-4CA3-8DDC-DD8E809ABD98@iotecdigital.com> Better is a relative term. Do you need to occasionally edit the images? Will the database continue to grow over time? My instinct is to keep files as files on the disk, because managing them is not dependent on access to a database. However, having the images universally accessible in a multiuser application is much easier if you store them in a database because then you wouldn't have to deal with maintaining images on a users file system. I keep the binary equivalent of blank PDF forms in a binary blob in mySQL. This way I can create new PDF forms on the fly without much fuss. I do NOT however, keep the FILLED forms in the database (although I've been tempted to) because these will keep multiplying over the life of the application, and I am worried about database bloat. Backups get larger and take longer, and eventually this would pose a scalability problem if the app was used extensively by a whole lot of people. Bob S > On Aug 23, 2017, at 09:11 , Glen Bojsza via use-livecode wrote: > > Hello, > > I was looking for feedback on whether it is better to store images as BLOBs > in an SQLite database for a LC app or store paths to the images in the > SQLite database and the images in a separate folder. > > Any help in understanding possible performance and memory issues is what I > am looking for. > > Can I assume that any issues would be the same for both Android and iOS? > > thanks, > > Glen From bonnmike at gmail.com Wed Aug 23 12:26:04 2017 From: bonnmike at gmail.com (Mike Bonner) Date: Wed, 23 Aug 2017 10:26:04 -0600 Subject: Search Values of Array in "One Go" In-Reply-To: <8A73E538-A7F9-4F7F-8611-43BA92A49D65@iotecdigital.com> References: <8A73E538-A7F9-4F7F-8611-43BA92A49D65@iotecdigital.com> Message-ID: I'm with bob on this.. If for some reason you can't use the database that produced the array, shove the data into an sqlite db instead. In memory, or if you need persistence a db file. Alternatively, if you store your data flat rather than in an array. Then you can.... repeat for each line tline in tData if tLine contains tSearchString then -- do whatever you want with tline end if end repeat You would still have to loop once through every record, but wouldn't have the overhead of the subloop checking each column of each record for your string. It would just check the whole line. (you could use itemoffset or something of that nature, but its could be a pain to do so if the chosen delimiter appears in the text. As a full string search of the line though, it should work fine. ) On Wed, Aug 23, 2017 at 9:36 AM, Bob Sneidar via use-livecode < use-livecode at lists.runrev.com> wrote: > Oh wait I see you ARE using an SQL database to begin with. Why would you > then want to search an array? > > Bob S > > > > On Aug 23, 2017, at 08:34 , Bob Sneidar via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > > Yes. Don't use an array, use a memory based sqLite table. > > > > Bob S > > > > > >> On Aug 23, 2017, at 08:24 , Sannyasin Brahmanathaswami via use-livecode > wrote: > >> > >> OK I can make this work, (have to since I don't see another way) > >> > >> But it seems like a lot of looping. > >> > >> Is there a more efficient approach? > >> > >> BR > > > > > > _______________________________________________ > > use-livecode mailing list > > use-livecode at lists.runrev.com > > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > > http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From ambassador at fourthworld.com Wed Aug 23 12:28:26 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Wed, 23 Aug 2017 09:28:26 -0700 Subject: Paint tools and image creation In-Reply-To: <96dc24e4c46b6b809441a58a61f4617b@livecode.com> References: <96dc24e4c46b6b809441a58a61f4617b@livecode.com> Message-ID: <5e80827a-e1ff-f95a-c657-9884f97e76b4@fourthworld.com> Mark Waddingham wrote: > On 2017-08-22 20:31, Richard Gaskin via use-livecode wrote: >> Any opportunity here to generalize the solution to accommodate this? > >> tool property for groups/creating objects in groups interactively >> http://quality.livecode.com/show_bug.cgi?id=623 > > I think that is a slightly different case to this. Indeed it is. Just brainstorming. > I fear that these two parts of code are quite distinct, however, so > it isn't a case of do one and get the other free... The image one is > probably quite straight-forward (although, I could well be wrong); > the group one (judging by the code I delved into y'day) not so > straight-forward! Unfortunate. I hadn't expected something more generalized could be "free", but it seemed worth exploring. In LiveCode (with the exception of the "sometimes rules" of images), the tool is a global property. In SuperCard, the tool is a property of the window (the equivalent in LC of a stack). SC also had scrollbars as properties of a window, and combined with a local tool mode it made creating custom drawing environments super-easy. SC shipped with a example app called SampleDraw, which illustrated a number of useful concepts like document management, anchor window architecture (what LC folks often call "splash screen" pattern), and other essentials for crafting good apps. Even more fun was that it also showed off some nice tricks with polygons, including a Transform option which took two selected polys and created a user-determined number of polys in between in which each successive one was slightly more like the end one. Illustrator had that feature, as did SuperPaint (where the algo came from; the SP and SC teams shared a lot of staff), and while it wasn't particularly useful for many things it was hella fun. SampleDraw wasn't quite SuperPaint, but it was far beyond both MacDraw and MacPaint, a useful and fun app that provided an end-to-end example of a common category of program done with simple, readable script. Indeed, it was the thing that got me most excited about xTalks. Ken Ray and I discussed making a SampleDraw app for LC off and on for a while, and having scrolling groups in LC rather than being limited to scrolling only the entire window seemed like it might offer some satisfying opportunities to make a SampleDraw-like app even better, with a View pane at the bottom of the window, and tools and other controls in a toolbar across the top. But it turns out to be a LOT more work in LC than in SC. LC does many great things far beyond what I used to enjoy in SC, but making custom drawing environments is one particular use-case where it's possible but only with significantly more effort. Maybe just an unrealistic expectation on my part; I suppose it would not be reasonable to expect any single tool to be best at all things. My hope here was that it may have been worth taking a fresh look at the challenge of maybe allowing tools to be local rather than global, more like SC's window-specific property but in a form more fitting for LC and more flexible than LC by having the tool mode be local to a group's interior. I can understand the challenges here. Just thought I'd ask. In fact, for the sake of tidiness I wouldn't mind if that old feature request were retired if it can't be acted on. -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From jonathandlynch at gmail.com Wed Aug 23 12:31:01 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Wed, 23 Aug 2017 12:31:01 -0400 Subject: Thoughts on BLOBs in SQLite In-Reply-To: <8CB8C144-05A1-4CA3-8DDC-DD8E809ABD98@iotecdigital.com> References: <8CB8C144-05A1-4CA3-8DDC-DD8E809ABD98@iotecdigital.com> Message-ID: <5E8C0870-C6AA-471D-9B56-DE1CF1BBAD65@gmail.com> You can also store multiple images in a single blob, which can be helpful. Sent from my iPhone > On Aug 23, 2017, at 12:25 PM, Bob Sneidar via use-livecode wrote: > > Better is a relative term. Do you need to occasionally edit the images? Will the database continue to grow over time? My instinct is to keep files as files on the disk, because managing them is not dependent on access to a database. However, having the images universally accessible in a multiuser application is much easier if you store them in a database because then you wouldn't have to deal with maintaining images on a users file system. > > I keep the binary equivalent of blank PDF forms in a binary blob in mySQL. This way I can create new PDF forms on the fly without much fuss. I do NOT however, keep the FILLED forms in the database (although I've been tempted to) because these will keep multiplying over the life of the application, and I am worried about database bloat. Backups get larger and take longer, and eventually this would pose a scalability problem if the app was used extensively by a whole lot of people. > > Bob S > > >> On Aug 23, 2017, at 09:11 , Glen Bojsza via use-livecode wrote: >> >> Hello, >> >> I was looking for feedback on whether it is better to store images as BLOBs >> in an SQLite database for a LC app or store paths to the images in the >> SQLite database and the images in a separate folder. >> >> Any help in understanding possible performance and memory issues is what I >> am looking for. >> >> Can I assume that any issues would be the same for both Android and iOS? >> >> thanks, >> >> Glen > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From ambassador at fourthworld.com Wed Aug 23 12:36:33 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Wed, 23 Aug 2017 09:36:33 -0700 Subject: Thoughts on BLOBs in SQLite In-Reply-To: References: Message-ID: <0a1892c2-3f9f-9184-dc44-0820cfa7eead@fourthworld.com> Glen Bojsza wrote: > I was looking for feedback on whether it is better to store images as > BLOBs in an SQLite database for a LC app or store paths to the images > in the SQLite database and the images in a separate folder. This is a religious issue in some circles, and there may be technical details beyond my grasp which merit such fervor. But in my simple world I tend to store images and other BLOBs outside of the DB, leaving the DB itself for those things it does uniquely well: efficient storage of elements smaller than the block size of the host file system, and efficient indexing and retrieval of elements based on their content. -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From gbojsza at gmail.com Wed Aug 23 12:48:52 2017 From: gbojsza at gmail.com (Glen Bojsza) Date: Wed, 23 Aug 2017 12:48:52 -0400 Subject: Thoughts on BLOBs in SQLite In-Reply-To: <8CB8C144-05A1-4CA3-8DDC-DD8E809ABD98@iotecdigital.com> References: <8CB8C144-05A1-4CA3-8DDC-DD8E809ABD98@iotecdigital.com> Message-ID: My databases will be fixed in their content (basically they are going to be different test engines for students) so the images will not be edited nor changed. I am thinking that this may help me avoid any future issues that may arise if different platforms have different directory structures and also for maintenance ... a single database file is easy to deliver and easy to delete. So my next question would be does someone have a simple example stack in inserting an image and retrieving the image in a LC stack? Should the image be encoded prior to inserting or is native format fine? Glen On Wed, Aug 23, 2017 at 12:25 PM, Bob Sneidar via use-livecode < use-livecode at lists.runrev.com> wrote: > Better is a relative term. Do you need to occasionally edit the images? > Will the database continue to grow over time? My instinct is to keep files > as files on the disk, because managing them is not dependent on access to a > database. However, having the images universally accessible in a multiuser > application is much easier if you store them in a database because then you > wouldn't have to deal with maintaining images on a users file system. > > I keep the binary equivalent of blank PDF forms in a binary blob in mySQL. > This way I can create new PDF forms on the fly without much fuss. I do NOT > however, keep the FILLED forms in the database (although I've been tempted > to) because these will keep multiplying over the life of the application, > and I am worried about database bloat. Backups get larger and take longer, > and eventually this would pose a scalability problem if the app was used > extensively by a whole lot of people. > > Bob S > > From jonathandlynch at gmail.com Wed Aug 23 13:14:12 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Wed, 23 Aug 2017 13:14:12 -0400 Subject: Thoughts on BLOBs in SQLite In-Reply-To: References: <8CB8C144-05A1-4CA3-8DDC-DD8E809ABD98@iotecdigital.com> Message-ID: <1024D530-F2F5-4DB0-9C34-84D1138919FD@gmail.com> For Augmented Earth, the images are base 64 encoded. This is needed for transmitting. Also, I can store a variable number of images in a single blob cell, using a character outside of the base64 range as a delimiter between encoded images. Sent from my iPhone > On Aug 23, 2017, at 12:48 PM, Glen Bojsza via use-livecode wrote: > > My databases will be fixed in their content (basically they are going to be > different test engines for students) so the images will not be edited nor > changed. > > I am thinking that this may help me avoid any future issues that may arise > if different platforms have different directory structures and also for > maintenance ... a single database file is easy to deliver and easy to > delete. > > So my next question would be does someone have a simple example stack in > inserting an image and retrieving the image in a LC stack? > > Should the image be encoded prior to inserting or is native format fine? > > Glen > > On Wed, Aug 23, 2017 at 12:25 PM, Bob Sneidar via use-livecode < > use-livecode at lists.runrev.com> wrote: > >> Better is a relative term. Do you need to occasionally edit the images? >> Will the database continue to grow over time? My instinct is to keep files >> as files on the disk, because managing them is not dependent on access to a >> database. However, having the images universally accessible in a multiuser >> application is much easier if you store them in a database because then you >> wouldn't have to deal with maintaining images on a users file system. >> >> I keep the binary equivalent of blank PDF forms in a binary blob in mySQL. >> This way I can create new PDF forms on the fly without much fuss. I do NOT >> however, keep the FILLED forms in the database (although I've been tempted >> to) because these will keep multiplying over the life of the application, >> and I am worried about database bloat. Backups get larger and take longer, >> and eventually this would pose a scalability problem if the app was used >> extensively by a whole lot of people. >> >> Bob S >> >> > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From smaclean at madmansoft.com Wed Aug 23 13:43:04 2017 From: smaclean at madmansoft.com (Stephen MacLean) Date: Wed, 23 Aug 2017 13:43:04 -0400 Subject: Thoughts on BLOBs in SQLite In-Reply-To: References: Message-ID: <34B05563-0D1F-4F5D-A727-03F3E68848FC@madmansoft.com> Hi Glen, First, as Richard G. mention, internet wars have been fought over this issue? to me it?s your choice. I?ve done both and both have their ups and downs. For mobile, I?ve sided with keeping it in the DB. It keeps everything together and the way I?m querying the DB, I?m already pulling the data and the image just comes along with it. My experience is that it?s very fast. As does Jonathan L, I store my images as base64 encoded so they can be transmitted over the internet as needed and decode them on the fly when needed by the app. The added benefit is you can store them in a TXT field in SQLite. LC is very fast at decoding them. As for growing in size, especially for mobile, something is going to grow either way? wether it?s the files on the file system or the DB file, as you add, it?s going to grow. Sorry, I don?t have anything resembling a example stack to share, but in keeping the above in mind, it?s not too hard to implement. HTH, Steve MacLean > On Aug 23, 2017, at 12:11 PM, Glen Bojsza via use-livecode wrote: > > Hello, > > I was looking for feedback on whether it is better to store images as BLOBs > in an SQLite database for a LC app or store paths to the images in the > SQLite database and the images in a separate folder. > > Any help in understanding possible performance and memory issues is what I > am looking for. > > Can I assume that any issues would be the same for both Android and iOS? > > thanks, > > Glen > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From bobsneidar at iotecdigital.com Wed Aug 23 14:49:41 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Wed, 23 Aug 2017 18:49:41 +0000 Subject: Thoughts on BLOBs in SQLite In-Reply-To: <0a1892c2-3f9f-9184-dc44-0820cfa7eead@fourthworld.com> References: <0a1892c2-3f9f-9184-dc44-0820cfa7eead@fourthworld.com> Message-ID: > On Aug 23, 2017, at 09:36 , Richard Gaskin via use-livecode wrote: > > Glen Bojsza wrote: > > > I was looking for feedback on whether it is better to store images as > > BLOBs in an SQLite database for a LC app or store paths to the images > > in the SQLite database and the images in a separate folder. > > This is a religious issue in some circles, and there may be technical details beyond my grasp which merit such fervor. Dam! Now I suppose I'm expected to tithe!!! Bob S From gbojsza at gmail.com Wed Aug 23 14:56:49 2017 From: gbojsza at gmail.com (Glen Bojsza) Date: Wed, 23 Aug 2017 14:56:49 -0400 Subject: Thoughts on BLOBs in SQLite In-Reply-To: <34B05563-0D1F-4F5D-A727-03F3E68848FC@madmansoft.com> References: <34B05563-0D1F-4F5D-A727-03F3E68848FC@madmansoft.com> Message-ID: Thanks Steve...it looks like (in my current case) that the encode / decode SQLite text field is the easiest way to get me solution. Glen On Wed, Aug 23, 2017 at 1:43 PM, Stephen MacLean via use-livecode < use-livecode at lists.runrev.com> wrote: > Hi Glen, > > First, as Richard G. mention, internet wars have been fought over this > issue? to me it?s your choice. > > I?ve done both and both have their ups and downs. > > For mobile, I?ve sided with keeping it in the DB. It keeps everything > together and the way I?m querying the DB, I?m already pulling the data and > the image just comes along with it. My experience is that it?s very fast. > > As does Jonathan L, I store my images as base64 encoded so they can be > transmitted over the internet as needed and decode them on the fly when > needed by the app. The added benefit is you can store them in a TXT field > in SQLite. LC is very fast at decoding them. > > As for growing in size, especially for mobile, something is going to grow > either way? wether it?s the files on the file system or the DB file, as you > add, it?s going to grow. > > Sorry, I don?t have anything resembling a example stack to share, but in > keeping the above in mind, it?s not too hard to implement. > > HTH, > > Steve MacLean > > > > On Aug 23, 2017, at 12:11 PM, Glen Bojsza via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > > Hello, > > > > I was looking for feedback on whether it is better to store images as > BLOBs > > in an SQLite database for a LC app or store paths to the images in the > > SQLite database and the images in a separate folder. > > > > Any help in understanding possible performance and memory issues is what > I > > am looking for. > > > > Can I assume that any issues would be the same for both Android and iOS? > > > > thanks, > > > > Glen > > _______________________________________________ > > use-livecode mailing list > > use-livecode at lists.runrev.com > > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > > http://lists.runrev.com/mailman/listinfo/use-livecode > > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From alex at tweedly.net Wed Aug 23 15:06:07 2017 From: alex at tweedly.net (Alex Tweedly) Date: Wed, 23 Aug 2017 20:06:07 +0100 Subject: Search Values of Array in "One Go" In-Reply-To: References: Message-ID: <93fbd553-afa7-e511-e2d4-19bfc842d0c9@tweedly.net> I'm not going to disagree with the other replies .... Plan A. use your database Plan B. create an in-memory SQLite database. Plan C. use an array, kind of like you are doing. And *only* if there are good reasons for not doing Plans A or B, then : C1. Instead of repeat for each key x in aPlaylist repeat for each key y in aPlayList[x] do repeat for each key x in aPlaylist repeat for each element ey in aPlayList[x] Also, instead of put aPlayList[x] into aFilteredPlayList[z] do put x into aFilteredPlayListIndex[z] (there's no need to replicate all the data when the array will continue to exist, just keep the indices you want). C2. Did you really mean "check *all* columns in the array" ? Should it not be "check all the 'properties' columns" ? If so - that's another reason to use a/the database :-) C3. Create an 'allproperties' column ? There's probably a fast/easy way to do that either in the database, or as you extract from it - but a database expert would have to tell us how to do that. Alternatively, when you extract, just do repeat for each key x in aPlayList repeat for each item y in thePropertyColumns put aPlayList[x][y] & SPACE after aPlayList[x]["allproperties"] end repeat end repeat or, delay this until first search : repeat for each key x in aPlayList if aPlayList[x]["allproperties"] is empty then repeat for each item y in thePropertyColumns put aPlayList[x][y] & SPACE after aPlayList[x]["allproperties"] end repeat if aPlayList[x]["allproperties"] is empty then -- so that subsequent searches never rebuild this put SPACE into aPlayList[x]["allproperties"] end if end if if aPlayList[x]["allproperties"] contains pFilterPattern then put x & CR after z end if end repeat Alex. On 23/08/2017 16:24, Sannyasin Brahmanathaswami via use-livecode wrote: > We use these arrays with media metadata that is extracted from our database of media metadata. The dbase was originally designed for lots of columns so that "there is nothing we cannot know about a media item" incorporating DCIM columns and also W3C media metadata initiative's recommended properties. In actually usage for any give media item only a small subset of columns containe any data. but we do use almost all the columns at one time or another. There are no blobs, so this is very light weight data. > > Anyway? this results in arrays which contain 1 top level key per record and that element contains another 40 or so keys for the columns of the database. most of which are empty/unused. So these arrays are never "heavy" in terms of bytes. > > e.g. > > aPlayList may have 1000 keys (numeric 1-1000) > > where each top level key contains a whole record: > > in each one we have > > aPlayList [1]["title"] > aPlayList [1]["subtitle"] > aPlayList [1]["genre"] > aPlayList [1]["description"] > aPlayList [1]["artist"] > aPlayList [1]["theme"] > aPlayList [1]["creator"] > aPlayList [1]["audience"] > > # and 30+ more "properties" for the media item > > OK so let's say user want sto search "blues" and I want the UX to check *all* columns in the array. What is the best way to do this? > > I tried a simple test. > > on mouseup > put "apple" into aFruits["1"] > put "orange" into aFruits["2"] > put "plum" into aFruits ["3"] > put aFruits contains "orange" > end mouseup > > and it returns "false" > > The only other strategy I can see would be > > put 1 into z # for our new filtered play list > > repeat for each key x in aPlaylist > repeat for each key y in aPlayList[x] > if aPlayList[x][y]contains "blues" then > put aPlayList[x] into aFilteredPlayList[z] > add 1 to z > end if > end repeat > end repeat > > So then if we started with 1000 "records" in the array and we found "blues" in any column of any record, for, say 20 of them, we end up with a new array. > > aFilteredPlayList # containing top level keys 1-20 for 20 records, put the titles into a list field and viola: the clickline number matches the array key and away we go. > > OK I can make this work, (have to since I don't see another way) > > But it seems like a lot of looping. > > Is there a more efficient approach? > > BR > > > > > > > > > > > > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From brahma at hindu.org Wed Aug 23 15:07:10 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Wed, 23 Aug 2017 19:07:10 +0000 Subject: Search Values of Array in "One Go" In-Reply-To: References: <8A73E538-A7F9-4F7F-8611-43BA92A49D65@iotecdigital.com> Message-ID: <77346B73-A84A-4DF5-B86F-F0E38D98A079@hindu.org> Bob, Mike, thanks?"use the dbase" good thought The reason we use the array is once we load that into a local than I use the click line number of the song list (titles in a simple list field) to get the data for that particular song. click on line 9 get use everything we need from sSelectionsA ["audiofiles"]["9"] -- title -- URL to the mp3 on the server to set for the player or for a download later -- artist etc.. But you make a good case ifwe are going back to get a new list, onemight as well just use the query params and just utllize that original handler that queries the dBase for a playlist in the first place. At least for theme and genre these are direct "hits" because there is an "equals" look up against these two enum values; but the searchString look up will still need to use %like% for "blues" is in "title, subtitle and description" . I have to check my sql query hand book aka "the internets" to see if there is an efficient way to write that query. So then it comes down to whether doing a query semi-complex query that looks at 50,000 records and uses %like% against 3 columns is faster than iterating loops on a 1000 key array already in memory. I can't wait to use the new tools for watching processes to see where bottle necks arise? From bobsneidar at iotecdigital.com Wed Aug 23 15:12:39 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Wed, 23 Aug 2017 19:12:39 +0000 Subject: Search Values of Array in "One Go" In-Reply-To: <77346B73-A84A-4DF5-B86F-F0E38D98A079@hindu.org> References: <8A73E538-A7F9-4F7F-8611-43BA92A49D65@iotecdigital.com> <77346B73-A84A-4DF5-B86F-F0E38D98A079@hindu.org> Message-ID: Using equal queries is efficient *if* the columns are indexed. If you use LIKE, I do not believe that the indexes are used, unless you employ some kind of full text search indexing. Only certain databases support that. Bob S > On Aug 23, 2017, at 12:07 , Sannyasin Brahmanathaswami via use-livecode wrote: > > At least for theme and genre these are direct "hits" because there is an "equals" look up against these two enum values; but the searchString look up will still need to use %like% for "blues" is in "title, subtitle and description" . I have to check my sql query hand book aka "the internets" to see if there is an efficient way to write that query. > > So then it comes down to whether doing a query semi-complex query that looks at 50,000 records and uses %like% against 3 columns is faster than iterating loops on a 1000 key array already in memory. > > I can't wait to use the new tools for watching processes to see where bottle necks arise? From jacque at hyperactivesw.com Wed Aug 23 15:20:41 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Wed, 23 Aug 2017 14:20:41 -0500 Subject: Sending a message to users that floats above everything In-Reply-To: <3489A67D-81C3-40F7-A599-53D7AD4C81AB@iotecdigital.com> References: <3489A67D-81C3-40F7-A599-53D7AD4C81AB@iotecdigital.com> Message-ID: On 8/23/17 9:46 AM, Bob Sneidar via use-livecode wrote: > But the reason there are more attacks against Android is simple. It's orders of magnitude easier to exploit. Very true. But the actual percentage of Android users who contract malware is less than 1% (0.01 sticks in my memory.) And almost all of those users are downloading apps from non-authorized sources. If you stick to Google Play and Amazon you're as safe as iOS. Those stores vet their apps much as Apple does. If it helps, Android scans your device regularly and removes malware even if the app was downloaded from an unauthorized source. Avoid the cheap Chinese knock-offs that ship without Google's software. Those are the dangerous phones. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com From ambassador at fourthworld.com Wed Aug 23 15:28:00 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Wed, 23 Aug 2017 12:28:00 -0700 Subject: Search Values of Array in "One Go" In-Reply-To: <77346B73-A84A-4DF5-B86F-F0E38D98A079@hindu.org> References: <77346B73-A84A-4DF5-B86F-F0E38D98A079@hindu.org> Message-ID: <4f21a69d-f7ae-53c6-5191-03ea68dea21a@fourthworld.com> Sannyasin Brahmanathaswami wrote: > I can't wait to use the new tools for watching processes to see where > bottle necks arise? ? -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From alex at tweedly.net Wed Aug 23 16:04:19 2017 From: alex at tweedly.net (Alex Tweedly) Date: Wed, 23 Aug 2017 21:04:19 +0100 Subject: Search Values of Array in "One Go" In-Reply-To: <77346B73-A84A-4DF5-B86F-F0E38D98A079@hindu.org> References: <8A73E538-A7F9-4F7F-8611-43BA92A49D65@iotecdigital.com> <77346B73-A84A-4DF5-B86F-F0E38D98A079@hindu.org> Message-ID: <376869b5-6b75-1a1a-c3d0-b95b10f26ce8@tweedly.net> On 23/08/2017 20:07, Sannyasin Brahmanathaswami via use-livecode wrote: > Bob, Mike, > > thanks?"use the dbase" good thought > ... > > So then it comes down to whether doing a query semi-complex query that looks at 50,000 records and uses %like% against 3 columns is faster than iterating loops on a 1000 key array already in memory. > 3 columns ? I thought it was : > and 30+ more "properties" for the media item So, 3 or 30+ ? Probably make a difference ... Alex. From ambassador at fourthworld.com Wed Aug 23 16:23:49 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Wed, 23 Aug 2017 13:23:49 -0700 Subject: Sending a message to users that floats above everything In-Reply-To: References: Message-ID: <0a611470-df5a-9ff6-1e8c-a6659fd5542b@fourthworld.com> J. Landman Gay wrote: > On 8/23/17 9:46 AM, Bob Sneidar via use-livecode wrote: >> But the reason there are more attacks against Android is simple. >> It's orders of magnitude easier to exploit. > > Very true. But the actual percentage of Android users who contract > malware is less than 1% (0.01 sticks in my memory.) And almost all of > those users are downloading apps from non-authorized sources. If you > stick to Google Play and Amazon you're as safe as iOS. Those stores > vet their apps much as Apple does. > > If it helps, Android scans your device regularly and removes malware > even if the app was downloaded from an unauthorized source. > > Avoid the cheap Chinese knock-offs that ship without Google's > software. > Those are the dangerous phones. Amen, sister. The only part I take exception with is the "orders of magnitude": There are probably orders of magnitude more malware available, roughly proportionate to the much larger audience size. But an ATTEMPT is not an EXPLOIT. Like anything else in life, simply trying to do something is no guarantee it'll be successful. Once we exclude jailbroken devices, not-real-Android knockoffs, and anything else where either the user or the maker went out of their way to thwart the protections built into the OS, the rate of actual exploits is very low on both OSes, and not really all that different proportionate to market share. Stock Android is safer than just about any desktop OS, including macOS. Most headlines discuss lab discoveries of things that may or may not actually even be in the wild. Among the subset that are in the wild, if exploits are found they're usually in PRC or other markets where not-Google-Android/merely-Android-compatible devices are sold. Whether the messaging is coming from marketing execs or geopolitical active measures, it's really helpful to read past the headlines and discern the relevant details. -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From tom at makeshyft.com Wed Aug 23 16:25:08 2017 From: tom at makeshyft.com (Tom Glod) Date: Wed, 23 Aug 2017 16:25:08 -0400 Subject: notifications system using "the files"? bad idea? Message-ID: Hi folks, I'm building a notification system....and I don't want to add another DB query to the system....so my idea is to save notifications as a file in a folder, and the just read and process "the files" .... so the name of the file would contain the notification data.... i wouldn't have to read each file, just the list of files in the folder. hoping to save some network traffic that way. am I gonna regret this?...hit some kind of OS bottleneck?..... anybody have any ideas why this would be a bad idea? we build for all 3 desktop platforms. Thanks for any thoughts. Tom From monte at appisle.net Wed Aug 23 16:30:17 2017 From: monte at appisle.net (Monte Goulding) Date: Thu, 24 Aug 2017 06:30:17 +1000 Subject: Parent of Target In-Reply-To: <8b6f8318-d870-0c65-b92d-a78e7ee1de02@sonic.net> References: <688060B9-7CAF-42D6-B2D5-871ECBC3A6B2@hindu.org> <96E23961-5C58-4D02-A1AD-1D93FA7C5AB1@hindu.org> <497d655c-5e9f-714c-f29e-a97b1e596b68@hyperactivesw.com> <8A1771E3-042E-47CB-ABAC-D70D53F00EAE@iotecdigital.com> <8b6f8318-d870-0c65-b92d-a78e7ee1de02@sonic.net> Message-ID: <4DC8EBBC-A9AB-4AC6-AA1A-F79B5E977B2E@appisle.net> > On 24 Aug 2017, at 2:07 am, Mark Wieder via use-livecode wrote: > > Good to know. Yeah, that's weird. It?s not _that_ weird. Using in time there?s no context to throw an error on at the time the handler is sent? Of course pending messages could keep track of the caller info which would also be handy for sending private handlers to yourself in time (which I would love). We could parse the message being sent and check if there?s a handler that can handle it at the time it?s being sent but that would be a dangerous change causing errors here and also not cope with object deletion etc between using the send command and handling it: send ?Foo? to me in 0 start using stack ?FooBar" Cheers Monte From bobsneidar at iotecdigital.com Wed Aug 23 16:34:01 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Wed, 23 Aug 2017 20:34:01 +0000 Subject: Sending a message to users that floats above everything In-Reply-To: References: <3489A67D-81C3-40F7-A599-53D7AD4C81AB@iotecdigital.com> Message-ID: <60381B33-047C-4AF1-A145-C0505AA863BC@iotecdigital.com> But... the Chinese are out FRIENDS! ;-) (and their food is quite tasty too!) Bob S > On Aug 23, 2017, at 12:20 , J. Landman Gay via use-livecode wrote: > > Avoid the cheap Chinese knock-offs that ship without Google's software. Those are the dangerous phones. > > -- > Jacqueline Landman Gay | jacque at hyperactivesw.com From monte at appisle.net Wed Aug 23 16:37:44 2017 From: monte at appisle.net (Monte Goulding) Date: Thu, 24 Aug 2017 06:37:44 +1000 Subject: notifications system using "the files"? bad idea? In-Reply-To: References: Message-ID: <87C2BA12-20D1-4411-8A15-8ABC343E5C99@appisle.net> Hmm? by notifications do you mean IPC? Is this over the network or multiple processes on a single machine. For both cases sockets is probably easiest. On the single machine then you can just accept on localhost to avoid getting firewall dialogs: local sPort set the defaultNetworkInterface to ?127.0.0.1? accept connections on port 0 with message ?NewConnection? put it into sPort set the defaultNetworkInterface to empty PS ^ Depends on using LC 9 Cheers Monte From bobsneidar at iotecdigital.com Wed Aug 23 16:38:18 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Wed, 23 Aug 2017 20:38:18 +0000 Subject: Sending a message to users that floats above everything In-Reply-To: <0a611470-df5a-9ff6-1e8c-a6659fd5542b@fourthworld.com> References: <0a611470-df5a-9ff6-1e8c-a6659fd5542b@fourthworld.com> Message-ID: <86F02415-E370-4E59-B94E-9FB1D1C95C52@iotecdigital.com> Gotta disagree there. Not sure how you would quantify it either. I have yet to see an exploit for OS X that elevated priveleges, allowed software to be installed silently, and didn't require user interaction of some sort. Lots of press, but when you get down to where they talk about the delivery and payload (and they may not do that at ALL) someone has to click something. Bob S > On Aug 23, 2017, at 13:23 , Richard Gaskin via use-livecode wrote: > > Stock Android is safer than just about any desktop OS, including macOS. From monte at appisle.net Wed Aug 23 16:40:14 2017 From: monte at appisle.net (Monte Goulding) Date: Thu, 24 Aug 2017 06:40:14 +1000 Subject: is IMAP or POP3 supported with tsNet? In-Reply-To: <11C9110E-88C1-48C1-AF16-AF081D1BB6E2@madmansoft.com> References: <11C9110E-88C1-48C1-AF16-AF081D1BB6E2@madmansoft.com> Message-ID: <4C9E1B0D-74D3-40A1-A80F-BFAFDE0A1D12@appisle.net> > On 24 Aug 2017, at 1:06 am, Stephen MacLean via use-livecode wrote: > > Don?t think it is, based on what?s in the dictionary, but thought I would ask: is IMAP or POP3 supported with tsNet? > > I know CURL does, but don?t know if it?s been added to tsNet. Short answer yes. Long answer Charles is going to write some docs or a demo to explain how to do it. Not sure on the ETA of that. Cheers Monte From paul at researchware.com Wed Aug 23 16:40:40 2017 From: paul at researchware.com (Paul Dupuis) Date: Wed, 23 Aug 2017 16:40:40 -0400 Subject: notifications system using "the files"? bad idea? In-Reply-To: References: Message-ID: <3a1b026b-cdde-1a21-2d81-d931abab8cac@researchware.com> On 8/23/2017 4:25 PM, Tom Glod via use-livecode wrote: > Hi folks, I'm building a notification system....and I don't want to add > another DB query to the system....so my idea is to save notifications as a > file in a folder, and the just read and process "the files" .... > > so the name of the file would contain the notification data.... i wouldn't > have to read each file, just the list of files in the folder. > > hoping to save some network traffic that way. > > am I gonna regret this?...hit some kind of OS bottleneck?..... anybody have > any ideas why this would be a bad idea? > > we build for all 3 desktop platforms. > > Thanks for any thoughts. > Are the notifications (i.e the file names) preset? Or user entered. If user entered, realize that there are issues with converting file names across platforms. Linux, OSX, and Window have different reserved characters and file name standards, as well as different support for Unicode or high-ASCII characters. If all you messages are basic ASCII characters and under about 250 characters in length, you should be fine. From ambassador at fourthworld.com Wed Aug 23 17:19:30 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Wed, 23 Aug 2017 14:19:30 -0700 Subject: Sending a message to users that floats above everything In-Reply-To: <86F02415-E370-4E59-B94E-9FB1D1C95C52@iotecdigital.com> References: <86F02415-E370-4E59-B94E-9FB1D1C95C52@iotecdigital.com> Message-ID: Bob Sneidar wrote: >> On Aug 23, 2017, at 13:23 , Richard Gaskin wrote: >> >> Stock Android is safer than just about any desktop OS, including >> macOS. > > Gotta disagree there. Not sure how you would quantify it either. Without quantification there would be no objective means to see if you had grounds to disagree. :) In general desktop OSes have a larger attack surface than mobile OSes, and are often laden with legacy subsystems. On macOS the problem is compounded in a few packages by Apple's decision to not deploy anything using GPLv3 (apparently they're not fans of the patent assertion clause), so for example the version of rsync included is years out of date and includes known vulnerabilities fixed in more recent versions. If one were serious about security in a desktop OS (nope, don't have a quantification method for "serious" either ), consider Qubes, where apps are run in dynamically-instantiated containers, along with other built-in safety measures: Don't get me wrong: macOS, and even OS X before it, are quite good. And as Google delivers it, so is Android. (The older Mac OS -- v9 and earlier -- was a different story, but thankfully almost no one bothered to exploit its many holes.) > I have yet to see an exploit for OS X that elevated priveleges, I find O'Reilly's Security Newsletter helpful (), along with adding "computer security" and "cybersecurity" to my news aggregators like Google News. Sean Martin and the rest of the crew at ITSP Magazine deliver a steady stream of useful stuff too: But here I just did a Google search - this was the first one I found: Get root on an OS X 10.10 Mac: The exploit is so trivial it fits in a tweet; If you want it fixed, upgrade to the El Capitan beta > allowed software to be installed silently, If they elevate privileges they can install what they want. > and didn't require user interaction of some sort. Of course. Turn off any device and the device becomes 100% safe. :) > Lots of press, but when you get down to where they talk about the > delivery and payload (and they may not do that at ALL) someone has > to click something. Exactly my point, as it pretty much applies to all OSes and the reporting on them from click-hungry publishers. -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From jacque at hyperactivesw.com Wed Aug 23 17:24:48 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Wed, 23 Aug 2017 16:24:48 -0500 Subject: Sending a message to users that floats above everything In-Reply-To: <86F02415-E370-4E59-B94E-9FB1D1C95C52@iotecdigital.com> References: <0a611470-df5a-9ff6-1e8c-a6659fd5542b@fourthworld.com> <86F02415-E370-4E59-B94E-9FB1D1C95C52@iotecdigital.com> Message-ID: On 8/23/17 3:38 PM, Bob Sneidar via use-livecode wrote: > Gotta disagree there. Not sure how you would quantify it either. I have yet to see an exploit for OS X that elevated priveleges, allowed software to be installed silently, and didn't require user interaction of some sort. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com From jiml at netrin.com Wed Aug 23 17:43:24 2017 From: jiml at netrin.com (Jim Lambert) Date: Wed, 23 Aug 2017 14:43:24 -0700 Subject: CouchDB, DayBed, etc. In-Reply-To: References: Message-ID: Alex, > local storage, and that data is subsequently > synched to "the cloud? You might want to take a look at Mark Talluto?s LiveCloud. http://livecloud.io And I agree Greg's Daybed library and CouchDB course are very good. Jim Lambert From jacque at hyperactivesw.com Wed Aug 23 17:48:22 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Wed, 23 Aug 2017 16:48:22 -0500 Subject: Sending a message to users that floats above everything In-Reply-To: References: <86F02415-E370-4E59-B94E-9FB1D1C95C52@iotecdigital.com> Message-ID: On 8/23/17 4:19 PM, Richard Gaskin via use-livecode wrote: > But here I just did a Google search - this was the first one I found: > > ?? Get root on an OS X 10.10 Mac: The exploit is so trivial it fits > ?? in a tweet; If you want it fixed, upgrade to the El Capitan beta > This one was spotted on Aug. 2 this year: https://packetstormsecurity.com/files/os/osx/ -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com From ambassador at fourthworld.com Wed Aug 23 17:55:20 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Wed, 23 Aug 2017 14:55:20 -0700 Subject: Sending a message to users that floats above everything In-Reply-To: References: Message-ID: J. Landman Gay wrote: > On 8/23/17 4:19 PM, Richard Gaskin via use-livecode wrote: >> But here I just did a Google search - this was the first one I found: >> >> Get root on an OS X 10.10 Mac: The exploit is so trivial it fits >> in a tweet; If you want it fixed, upgrade to the El Capitan beta >> > > This one was spotted on Aug. 2 this year: > > https://packetstormsecurity.com/files/os/osx/ Thanks. Yeah, all non-trivial software has vulnerabilities. The important thing is that customers remain aware of that to help mitigate risks. Given that most exploits start with an avoidable user action, it would be dangerous for an OS vendor to tell customers they don't have to worry about security. ;) -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From gbojsza at gmail.com Wed Aug 23 18:18:07 2017 From: gbojsza at gmail.com (Glen Bojsza) Date: Wed, 23 Aug 2017 18:18:07 -0400 Subject: Sierra update --> Xcode install --> LC no provisioning profile Message-ID: Well, as usual, upgrading OS X and doing an install of Xcode causes LC 8.0.01 not to find any provisioning profile and wants iOS 9.3 SDK. The Xcode shows a 10.3 SDK so now I need to figure out how to add earlier SDKs...any suggestions on how to go about this? Or do I need to download Xcode 7.3 which has the iOS 9.3 SDK? thanks, Glen From MikeKerner at roadrunner.com Wed Aug 23 18:31:47 2017 From: MikeKerner at roadrunner.com (Mike Kerner) Date: Wed, 23 Aug 2017 18:31:47 -0400 Subject: Sierra update --> Xcode install --> LC no provisioning profile In-Reply-To: References: Message-ID: xcode 8.3 and 8.3.3 On Wed, Aug 23, 2017 at 6:18 PM, Glen Bojsza via use-livecode < use-livecode at lists.runrev.com> wrote: > Well, as usual, upgrading OS X and doing an install of Xcode causes LC > 8.0.01 not to find any provisioning profile and wants iOS 9.3 SDK. > > The Xcode shows a 10.3 SDK so now I need to figure out how to add earlier > SDKs...any suggestions on how to go about this? > > Or do I need to download Xcode 7.3 which has the iOS 9.3 SDK? > > thanks, > > Glen > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > -- On the first day, God created the heavens and the Earth On the second day, God created the oceans. On the third day, God put the animals on hold for a few hours, and did a little diving. And God said, "This is good." From dochawk at gmail.com Wed Aug 23 18:45:47 2017 From: dochawk at gmail.com (Dr. Hawkins) Date: Wed, 23 Aug 2017 15:45:47 -0700 Subject: "cleanser" for SQLite and UTF Message-ID: I've really never paid much attention to UTF; 7 bit ASCII is fine for everything I've ever needed to do (save immigration forms, but that was handled by someone else's software). Is there a "cleanser" hidden somewhere in livecode that converts arbitrary text to plain old boring (and those SQLite-able) text? ("UTF" itself yields no dictionary hits . . .) -- Dr. Richard E. Hawkins, Esq. (702) 508-8462 From smaclean at madmansoft.com Wed Aug 23 18:34:37 2017 From: smaclean at madmansoft.com (Stephen MacLean) Date: Wed, 23 Aug 2017 18:34:37 -0400 Subject: is IMAP or POP3 supported with tsNet? In-Reply-To: <4C9E1B0D-74D3-40A1-A80F-BFAFDE0A1D12@appisle.net> References: <11C9110E-88C1-48C1-AF16-AF081D1BB6E2@madmansoft.com> <4C9E1B0D-74D3-40A1-A80F-BFAFDE0A1D12@appisle.net> Message-ID: Thanks Monte, great to hear!! Looking forward to it. Best, Steve MacLean > On Aug 23, 2017, at 4:40 PM, Monte Goulding via use-livecode wrote: > > >> On 24 Aug 2017, at 1:06 am, Stephen MacLean via use-livecode wrote: >> >> Don?t think it is, based on what?s in the dictionary, but thought I would ask: is IMAP or POP3 supported with tsNet? >> >> I know CURL does, but don?t know if it?s been added to tsNet. > > Short answer yes. Long answer Charles is going to write some docs or a demo to explain how to do it. Not sure on the ETA of that. > > Cheers > > Monte > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From bobsneidar at iotecdigital.com Wed Aug 23 18:50:22 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Wed, 23 Aug 2017 22:50:22 +0000 Subject: Sending a message to users that floats above everything In-Reply-To: References: <0a611470-df5a-9ff6-1e8c-a6659fd5542b@fourthworld.com> <86F02415-E370-4E59-B94E-9FB1D1C95C52@iotecdigital.com> Message-ID: <973BAFAA-1407-442E-9C33-94F2AC0B14F6@iotecdigital.com> And I quote, "The security bug can be exploited by a logged-in attacker, or malware on the computer, to gain total unauthorized control of the Mac." How did the attacker "log in"? How did the malware GET on the computer?? That is my point. ANY software that an end user installs no longer qualifies as a "hack", and neither does anything that happens after someone gains physical access to a computer. It has always been my understanding that a pure "hack" is getting into someone's computer and delivering a payload without physical access and without the end user knowing about it. I suppose "hack" could be interpreted more broadly, but really, we need to have this discussion in the context of a properly secured computer. Otherwise all we are saying is, Fort Knox was broken into!!!! (because one of the guards killed all the other ones and let the bad guys in). Bob S > On Aug 23, 2017, at 14:24 , J. Landman Gay via use-livecode wrote: > > On 8/23/17 3:38 PM, Bob Sneidar via use-livecode wrote: >> Gotta disagree there. Not sure how you would quantify it either. I have yet to see an exploit for OS X that elevated priveleges, allowed software to be installed silently, and didn't require user interaction of some sort. > > > > > > -- > Jacqueline Landman Gay | jacque at hyperactivesw.com From bobsneidar at iotecdigital.com Wed Aug 23 18:57:12 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Wed, 23 Aug 2017 22:57:12 +0000 Subject: Sending a message to users that floats above everything In-Reply-To: References: <86F02415-E370-4E59-B94E-9FB1D1C95C52@iotecdigital.com> Message-ID: "Security Fix: A stack overflow vulnerability was found in nan* functions that could cause applications, which process long strings with the nan f" WHAT arbitrary code? Code that can run elevated? What does arbitrary mean? Just because you can get code to run, doesn't mean it can override security and sandboxing that is built in. And who actually exploited this vulnerability? There has been a lot of security updates Apple has released because of this sort of thing. What I want to know is, Which exploits have been successfully released into the wild, have delivered their payload, and have "infected" a system without tricking the end user into clicking "OK" in a bogus dialog, or without the user even being aware it was happening. Bob S > unction, to crash or, potentially, execute arbitrary code.On Aug 23, 2017, at 14:48 , J. Landman Gay via use-livecode wrote: > > This one was spotted on Aug. 2 this year: > > https://packetstormsecurity.com/files/os/osx/ > > -- > Jacqueline Landman Gay | jacque at hyperactivesw.com From brahma at hindu.org Wed Aug 23 19:40:11 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Wed, 23 Aug 2017 23:40:11 +0000 Subject: Search Values of Array in "One Go" In-Reply-To: <4f21a69d-f7ae-53c6-5191-03ea68dea21a@fourthworld.com> References: <77346B73-A84A-4DF5-B86F-F0E38D98A079@hindu.org> <4f21a69d-f7ae-53c6-5191-03ea68dea21a@fourthworld.com> Message-ID: <0A01D8CC-2DB1-494E-8B5E-EF0598C26EAF@hindu.org> did you see the pitch for business upgrade? scroll down.. there some new thing that give you time on processes On 8/23/17, 9:28 AM, "use-livecode on behalf of Richard Gaskin via use-livecode" wrote: > I can't wait to use the new tools for watching processes to see where > bottle necks arise? ? From brahma at hindu.org Wed Aug 23 19:56:50 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Wed, 23 Aug 2017 23:56:50 +0000 Subject: Search Values of Array in "One Go" In-Reply-To: <376869b5-6b75-1a1a-c3d0-b95b10f26ce8@tweedly.net> References: <8A73E538-A7F9-4F7F-8611-43BA92A49D65@iotecdigital.com> <77346B73-A84A-4DF5-B86F-F0E38D98A079@hindu.org> <376869b5-6b75-1a1a-c3d0-b95b10f26ce8@tweedly.net> Message-ID: <54C5571F-A436-4C33-A391-045DD6824245@hindu.org> The media meta dbase "jnanam.item" table actually has 87 columns, ha! way over kill, but I'm actually glad we did that because there is indeed "nothing we cannot know about any media item in the universe" But any given item? only uses a subset. media_type = "audio/song" and media_type = "audio/inspiredTalk" are the context where users need search. will only use a subset.. but I _do_have all 87 props in the array. For this use case we are only looking at/"into" item.media_type item.title item.sub_title item.approved_for_public item.file_id (a varchar text string) item.description item.artists item.date_entered # added to the dbase - allow us to fetch "recent additions" item.genre item.theme item.transcription So radio buttons will give the user the genre and theme "enum" values to choose from, but the search string can't be constrained..we need to check into item.title item.sub_title item.description item.transcription. do the look up into the array will first filter by genre and theme and *then check inside the above three? if "all" is check in genre and theme then we look for the string in all three var char fields title, sub_title, description. Hmm audio/songs is only running at 400 records (= sSelectionsA[audiofiles][1-400] that will go up after I open the gate for user generated uploads audio/inspired_talks is where we start hitting 1000+ records? and it "gets worse" there because we need to start looking into item.transcription = long text for 30 minute talk? On 8/23/17, 10:04 AM, "use-livecode on behalf of Alex Tweedly via use-livecode" wrote: 3 columns ? I thought it was : >and 30+ more "properties" for the media item So, 3 or 30+ ? Probably make a difference ... Alex. From brahma at hindu.org Wed Aug 23 20:04:01 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Thu, 24 Aug 2017 00:04:01 +0000 Subject: Search Values of Array in "One Go" In-Reply-To: <93fbd553-afa7-e511-e2d4-19bfc842d0c9@tweedly.net> References: <93fbd553-afa7-e511-e2d4-19bfc842d0c9@tweedly.net> Message-ID: Alex, thanks, this is very helpful 1) put x into aFilteredPlayListIndex[z] (there's no need to replicate all the data when the array will continue to exist, just keep the indices you want). awesome? I think I could increment the z from 1 up and then my clickline number will still work. 2) "create an in-memory SQLite Database." this is news! Where do we find docs on this? right now the SQLite data base is in specialFolderPath("documents")/jnanam.sqlite how do you "create in memory? On 8/23/17, 9:06 AM, "Alex Tweedly via use-livecode" wrote: I'm not going to disagree with the other replies .... Plan A. use your database Plan B. create an in-memory SQLite database. Plan C. use an array, kind of like you are doing. And *only* if there are good reasons for not doing Plans A or B, then : C1. Instead of repeat for each key x in aPlaylist repeat for each key y in aPlayList[x] do repeat for each key x in aPlaylist repeat for each element ey in aPlayList[x] Also, instead of put aPlayList[x] into aFilteredPlayList[z] do put x into aFilteredPlayListIndex[z] (there's no need to replicate all the data when the array will continue to exist, just keep the indices you want). C2. Did you really mean "check *all* columns in the array" ? Should it not be "check all the 'properties' columns" ? If so - that's another reason to use a/the database :-) C3. Create an 'allproperties' column ? There's probably a fast/easy way to do that either in the database, or as you extract from it - but a database expert would have to tell us how to do that. Alternatively, when you extract, just do repeat for each key x in aPlayList repeat for each item y in thePropertyColumns put aPlayList[x][y] & SPACE after aPlayList[x]["allproperties"] end repeat end repeat or, delay this until first search : repeat for each key x in aPlayList if aPlayList[x]["allproperties"] is empty then repeat for each item y in thePropertyColumns put aPlayList[x][y] & SPACE after aPlayList[x]["allproperties"] end repeat if aPlayList[x]["allproperties"] is empty then -- so that subsequent searches never rebuild this put SPACE into aPlayList[x]["allproperties"] end if end if if aPlayList[x]["allproperties"] contains pFilterPattern then put x & CR after z end if end repeat Alex. From alex at tweedly.net Wed Aug 23 20:13:00 2017 From: alex at tweedly.net (Alex Tweedly) Date: Thu, 24 Aug 2017 01:13:00 +0100 Subject: Search Values of Array in "One Go" In-Reply-To: References: <93fbd553-afa7-e511-e2d4-19bfc842d0c9@tweedly.net> Message-ID: On 24/08/2017 01:04, Sannyasin Brahmanathaswami via use-livecode wrote: > 2) "create an in-memory SQLite Database." > > this is news! Where do we find docs on this? right now the SQLite data base is in > > specialFolderPath("documents")/jnanam.sqlite > > how do you "create in memory? > > According to an old message (i.e. I've not tried it :-): On Fri, Jun 15, 2012 at 5:21 PM, Bob Sneidar > wrote: //>//>/On Jun 15, 2012, at 4:13 PM, Mike Bonner wrote: />//>/ > Don't specify a database name and it will open the db in memory. />/ > />/ > get revopendatabase("sqlite",,,,,,) --not sure how many commas off the />/top />/ > of my head. />/ > />/ > On Fri, Jun 15, 2012 at 5:08 PM, Bob Sneidar > wrote: />/ > />/ >> I am just certain that I read on this forum that you could create an />/ >> sqLite database in memory! But when looking through the dictionary and />/in />/ >> the LiveCode lessons there seems to be no mention of how! Can someone />/point />/ >> me to the right docs for this? />/ >> />/ >> Bob />/ >> />/ >> / -- Alex. From brahma at hindu.org Wed Aug 23 20:31:15 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Thu, 24 Aug 2017 00:31:15 +0000 Subject: Search Values of Array in "One Go" In-Reply-To: References: <93fbd553-afa7-e511-e2d4-19bfc842d0c9@tweedly.net> Message-ID: <3268F18B-9BA5-4FD6-9EF5-85008B575BEB@hindu.org> Yep? I just found that too. and related 4-yr old discussion http://use-livecode.runrev.narkive.com/ntBLeXGM/relative-performance-of-two-dimensional-array-and-in-memory-sqlite-database What I don't get is "don't give it a name" open/create in memory, but the data is on SQLite dbase on disk, so you *have* to read it one way or another. (scratch his head?) On 8/23/17, 2:13 PM, "use-livecode on behalf of Alex Tweedly via use-livecode" wrote: On 24/08/2017 01:04, Sannyasin Brahmanathaswami via use-livecode wrote: >2) "create an in-memory SQLite Database." > > this is news! Where do we find docs on this? right now the SQLite data base is in > > specialFolderPath("documents")/jnanam.sqlite > >how do you "create in memory? > > According to an old message (i.e. I've not tried it :-): On Fri, Jun 15, 2012 at 5:21 PM, Bob Sneidar > wrote: //>//>/On Jun 15, 2012, at 4:13 PM, Mike Bonner wrote: />//>/ > Don't specify a database name and it will open the db in memory. />/ > />/ > get revopendatabase("sqlite",,,,,,) --not sure how many commas off the />/top />/ > of my head. />/ > />/ > On Fri, Jun 15, 2012 at 5:08 PM, Bob Sneidar > wrote: />/ > />/ >> I am just certain that I read on this forum that you could create an />/ >> sqLite database in memory! But when looking through the dictionary and />/in />/ >> the LiveCode lessons there seems to be no mention of how! Can someone />/point />/ >> me to the right docs for this? />/ >> />/ >> Bob />/ >> />/ >> / From nabble at mad.pink Wed Aug 23 20:38:54 2017 From: nabble at mad.pink (pink) Date: Wed, 23 Aug 2017 17:38:54 -0700 (MST) Subject: CouchDB, DayBed, etc. In-Reply-To: References: Message-ID: <1503535134720-4718821.post@n4.nabble.com> Daybed's built in local storage system is the save stack, works well on all platforms. I am actually fiddling around with using SQLite as a save file as well, just haven't had a lot of free time. You can set things to sync whenever possible rather easily as well. CouchDB does have a local save and sync format called PouchDB. Unfortunately I have yet to find a way to get it working in Livecode. It is largely javascript based, so I believe there should be way of using a browser widget to do the heavy lifting. Thanks for taking the course! I just added a bunch of lessons on replication, a lesson on creating a production ready server with SSL, and I am planning on a section about setting up a cluster. ----- --- Greg (pink) Miller mad, pink and dangerous to code -- View this message in context: http://runtime-revolution.278305.n4.nabble.com/CouchDB-DayBed-etc-tp4718761p4718821.html Sent from the Revolution - User mailing list archive at Nabble.com. From bonnmike at gmail.com Wed Aug 23 20:47:37 2017 From: bonnmike at gmail.com (Mike Bonner) Date: Wed, 23 Aug 2017 18:47:37 -0600 Subject: Search Values of Array in "One Go" In-Reply-To: <3268F18B-9BA5-4FD6-9EF5-85008B575BEB@hindu.org> References: <93fbd553-afa7-e511-e2d4-19bfc842d0c9@tweedly.net> <3268F18B-9BA5-4FD6-9EF5-85008B575BEB@hindu.org> Message-ID: I think you need to use ":memory:" as the name actually. It looks (from the sqlite docs) that supplying no name creates a temporary db file. And now i'm curious.. Is there a way to attach the file based db to a memory db? IE Open the file database, then use the info here: https://www.sqlite.org/lang_attach.html and attach a memory database. Then (way over my head, but I seem to recall reading somewhere..) that one can use the results of a select to create a temporary table.. If interested, you might look here under create table as select... http://sqlite.org/lang_createtable.html On Wed, Aug 23, 2017 at 6:31 PM, Sannyasin Brahmanathaswami via use-livecode wrote: > Yep? I just found that too. > > and related 4-yr old discussion > > http://use-livecode.runrev.narkive.com/ntBLeXGM/relative- > performance-of-two-dimensional-array-and-in-memory-sqlite-database > > > What I don't get is > > "don't give it a name" open/create in memory, > > but the data is on SQLite dbase on disk, so you *have* to read it one way > or another. > > (scratch his head?) > > > On 8/23/17, 2:13 PM, "use-livecode on behalf of Alex Tweedly via > use-livecode" use-livecode at lists.runrev.com> wrote: > > On 24/08/2017 01:04, Sannyasin Brahmanathaswami via use-livecode wrote: > >2) "create an in-memory SQLite Database." > > > > this is news! Where do we find docs on this? right now the SQLite > data base is in > > > > specialFolderPath("documents")/jnanam.sqlite > > > >how do you "create in memory? > > > > > According to an old message (i.e. I've not tried it :-): > > On Fri, Jun 15, 2012 at 5:21 PM, Bob Sneidar http://lists.runrev.com/mailman/listinfo/use-livecode>> wrote: > > //>//>/On Jun 15, 2012, at 4:13 PM, Mike Bonner wrote: />//>/ > Don't > specify a database name and it will open the db in memory. />/ > />/ > get > revopendatabase("sqlite",,,,,,) --not sure how many commas off the />/top > />/ > of my head. />/ > />/ > On Fri, Jun 15, 2012 at 5:08 PM, Bob Sneidar > > wrote: />/ > > />/ >> I am just certain that I read on this forum that you could create an > />/ >> sqLite database in memory! But when looking through the dictionary > and />/in />/ >> the LiveCode lessons there seems to be no mention of how! > Can someone />/point />/ >> me to the right docs for this? />/ >> />/ >> > Bob />/ >> />/ >> / > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From tom at makeshyft.com Wed Aug 23 20:55:30 2017 From: tom at makeshyft.com (Tom Glod) Date: Wed, 23 Aug 2017 20:55:30 -0400 Subject: notifications system using "the files"? bad idea? In-Reply-To: <3a1b026b-cdde-1a21-2d81-d931abab8cac@researchware.com> References: <3a1b026b-cdde-1a21-2d81-d931abab8cac@researchware.com> Message-ID: by notification I don't mean anything fancy or OS or network based...just a notification system that shows to the user "so and so has invited you to a file"... defined entirely by me. the code in the filename is pre-defined, they would all be lower case and under x amount of characters. my question is whether there is some kind of bottle neck that I am not aware of that could prevent a LAN to send "the files" list to multiple clients quickly...or more quickly than a DB query for records that match a certain query. Thanks guys.... On Wed, Aug 23, 2017 at 4:40 PM, Paul Dupuis via use-livecode < use-livecode at lists.runrev.com> wrote: > On 8/23/2017 4:25 PM, Tom Glod via use-livecode wrote: > > Hi folks, I'm building a notification system....and I don't want to add > > another DB query to the system....so my idea is to save notifications as > a > > file in a folder, and the just read and process "the files" .... > > > > so the name of the file would contain the notification data.... i > wouldn't > > have to read each file, just the list of files in the folder. > > > > hoping to save some network traffic that way. > > > > am I gonna regret this?...hit some kind of OS bottleneck?..... anybody > have > > any ideas why this would be a bad idea? > > > > we build for all 3 desktop platforms. > > > > Thanks for any thoughts. > > > > Are the notifications (i.e the file names) preset? Or user entered. If > user entered, realize that there are issues with converting file names > across platforms. Linux, OSX, and Window have different reserved > characters and file name standards, as well as different support for > Unicode or high-ASCII characters. If all you messages are basic ASCII > characters and under about 250 characters in length, you should be fine. > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://post.spmailt.com/f/a/2Ef3vPmOFzFQneoXbnxVqA~~/AAGp3AA~/RgRbf1esP0EIACzK-jOk0UVXA3NwY1gEAAAAAFkGc2hhcmVkYQdoZWxsb18xYAw1Mi4zOS4yNi4xNDRCCgAALCSeWXgladNSHXVzZS1saXZlY29kZUBsaXN0cy5ydW5yZXYuY29tCVEEAAAAAEQ1aHR0cDovL2xpc3RzLnJ1bnJldi5jb20vbWFpbG1hbi9saXN0aW5mby91c2UtbGl2ZWNvZGVHAnt9 > From tom at makeshyft.com Wed Aug 23 20:58:17 2017 From: tom at makeshyft.com (Tom Glod) Date: Wed, 23 Aug 2017 20:58:17 -0400 Subject: notifications system using "the files"? bad idea? In-Reply-To: References: <3a1b026b-cdde-1a21-2d81-d931abab8cac@researchware.com> Message-ID: like for example inv-fileidhash.not would mean "invitation to file with that ID" .... but having been placed in a particular user's notification folder, it would know the notification is for that user and no other. make sense? On Wed, Aug 23, 2017 at 8:55 PM, Tom Glod wrote: > by notification I don't mean anything fancy or OS or network based...just > a notification system that shows to the user "so and so has invited you to > a file"... defined entirely by me. > > the code in the filename is pre-defined, they would all be lower case and > under x amount of characters. > > my question is whether there is some kind of bottle neck that I am not > aware of that could prevent a LAN to send "the files" list to multiple > clients quickly...or more quickly than a DB query for records that match a > certain query. > > Thanks guys.... > > On Wed, Aug 23, 2017 at 4:40 PM, Paul Dupuis via use-livecode < > use-livecode at lists.runrev.com> wrote: > >> On 8/23/2017 4:25 PM, Tom Glod via use-livecode wrote: >> > Hi folks, I'm building a notification system....and I don't want to add >> > another DB query to the system....so my idea is to save notifications >> as a >> > file in a folder, and the just read and process "the files" .... >> > >> > so the name of the file would contain the notification data.... i >> wouldn't >> > have to read each file, just the list of files in the folder. >> > >> > hoping to save some network traffic that way. >> > >> > am I gonna regret this?...hit some kind of OS bottleneck?..... anybody >> have >> > any ideas why this would be a bad idea? >> > >> > we build for all 3 desktop platforms. >> > >> > Thanks for any thoughts. >> > >> >> Are the notifications (i.e the file names) preset? Or user entered. If >> user entered, realize that there are issues with converting file names >> across platforms. Linux, OSX, and Window have different reserved >> characters and file name standards, as well as different support for >> Unicode or high-ASCII characters. If all you messages are basic ASCII >> characters and under about 250 characters in length, you should be fine. >> >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://post.spmailt.com/f/a/CNsqhxGrCvUzEJP1nHMNew~~/AAGp3AA~/RgRbf1hTP0EIACzNimS-87hXA3NwY1gEAAAAAFkGc2hhcmVkYQdoZWxsb18xYA01Mi4zOS4xODIuMjQ4QgoAANMknln1JeHJUh11c2UtbGl2ZWNvZGVAbGlzdHMucnVucmV2LmNvbQlRBAAAAABENWh0dHA6Ly9saXN0cy5ydW5yZXYuY29tL21haWxtYW4vbGlzdGluZm8vdXNlLWxpdmVjb2RlRwJ7fQ~~ >> > > From tom at makeshyft.com Wed Aug 23 21:01:51 2017 From: tom at makeshyft.com (Tom Glod) Date: Wed, 23 Aug 2017 21:01:51 -0400 Subject: "cleanser" for SQLite and UTF In-Reply-To: References: Message-ID: cuz its either utf-8 or utf-16..... check the textencode and textdecode functions to find what you need. On Wed, Aug 23, 2017 at 6:45 PM, Dr. Hawkins via use-livecode < use-livecode at lists.runrev.com> wrote: > I've really never paid much attention to UTF; 7 bit ASCII is fine for > everything I've ever needed to do (save immigration forms, but that was > handled by someone else's software). > > Is there a "cleanser" hidden somewhere in livecode that converts arbitrary > text to plain old boring (and those SQLite-able) text? ("UTF" itself yields > no dictionary hits . . .) > > -- > Dr. Richard E. Hawkins, Esq. > (702) 508-8462 > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://post.spmailt.com/f/a/k289lp2OQJ-I-b6Ohvpefw~~/AAGp3AA~/RgRbf1kpP0EIACzK-jOlByRXA3NwY1gEAAAAAFkGc2hhcmVkYQdoZWxsb18xYAszNS4xNjAuNC4xNUIKAACpJZ5ZeCVVGVIddXNlLWxpdmVjb2RlQGxpc3RzLnJ1bnJldi5jb20JUQQAAAAARDVodHRwOi8vbGlzdHMucnVucmV2LmNvbS9tYWlsbWFuL2xpc3RpbmZvL3VzZS1saXZlY29kZUcCe30~ > From tom at makeshyft.com Wed Aug 23 21:03:10 2017 From: tom at makeshyft.com (Tom Glod) Date: Wed, 23 Aug 2017 21:03:10 -0400 Subject: "cleanser" for SQLite and UTF In-Reply-To: References: Message-ID: interesting ... the filter in the dictionary should optionally search the text for each entry. i might add that as a feature request. On Wed, Aug 23, 2017 at 9:01 PM, Tom Glod wrote: > cuz its either utf-8 or utf-16..... > > check the textencode and textdecode functions to find what you need. > > On Wed, Aug 23, 2017 at 6:45 PM, Dr. Hawkins via use-livecode < > use-livecode at lists.runrev.com> wrote: > >> I've really never paid much attention to UTF; 7 bit ASCII is fine for >> everything I've ever needed to do (save immigration forms, but that was >> handled by someone else's software). >> >> Is there a "cleanser" hidden somewhere in livecode that converts arbitrary >> text to plain old boring (and those SQLite-able) text? ("UTF" itself >> yields >> no dictionary hits . . .) >> >> -- >> Dr. Richard E. Hawkins, Esq. >> (702) 508-8462 >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://post.spmailt.com/f/a/OUtP9XdVUvQ7UxWOGZB-yg~~/AAGp3AA~/RgRbf1l4P0EIACzK-d2qphxXA3NwY1gEAAAAAFkGc2hhcmVkYQdoZWxsb18xYAszNS4xNjAuNC4xNUIKAAD4JZ5ZMkPExlIddXNlLWxpdmVjb2RlQGxpc3RzLnJ1bnJldi5jb20JUQQAAAAARDVodHRwOi8vbGlzdHMucnVucmV2LmNvbS9tYWlsbWFuL2xpc3RpbmZvL3VzZS1saXZlY29kZUcCe30~ >> > > From jonathandlynch at gmail.com Wed Aug 23 21:05:32 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Wed, 23 Aug 2017 21:05:32 -0400 Subject: "cleanser" for SQLite and UTF In-Reply-To: References: Message-ID: <2F9C60A9-8A8A-46DB-B044-BB2A3C6C6155@gmail.com> Have you looked up textencode and textdecode? Sent from my iPhone > On Aug 23, 2017, at 6:45 PM, Dr. Hawkins via use-livecode wrote: > > I've really never paid much attention to UTF; 7 bit ASCII is fine for > everything I've ever needed to do (save immigration forms, but that was > handled by someone else's software). > > Is there a "cleanser" hidden somewhere in livecode that converts arbitrary > text to plain old boring (and those SQLite-able) text? ("UTF" itself yields > no dictionary hits . . .) > > -- > Dr. Richard E. Hawkins, Esq. > (702) 508-8462 > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From brahma at hindu.org Wed Aug 23 21:27:51 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Thu, 24 Aug 2017 01:27:51 +0000 Subject: Search Values of Array in "One Go" In-Reply-To: References: <93fbd553-afa7-e511-e2d4-19bfc842d0c9@tweedly.net> <3268F18B-9BA5-4FD6-9EF5-85008B575BEB@hindu.org> Message-ID: Well thanks to all of you urging me to stay away from re-processing the array but going back to the dbase. I Looked back at my code and realized that I *had* set it up to be re-usable, I just forgot how well I had done that I have this function in the behavior_Listen which is attached to the stack local sPlayListQueryA command playlist_FetchData # this handler gets everything we need from the dbase and assumes the column values for the query # are set in the sPlayListQueryA ----- duh! I had written everything I needed already! I only needws to add this on playList_FetchData pQueryArray if pQueryArray is not empty then # we are passing a query from the search behavior put pQueryArray into sPlaylistQueryA end if and away we go, exact code to instantiate the entire play list of all audio items for that class is now reused to just fetch what the user wants. Awesome? this all I needed in my search behavior was to set up the query (values for column look ups) put tGenre into tFilterListQueryA["genre"] put tTheme into tFilterListQueryA["theme"] put tStringToFind into tFilterListQueryA["title"] put tStringToFind into tFilterListQueryA["subtitle"] put tStringToFind into tFilterListQueryA["description"] put tStringToFind into tFilterListQueryA["artists"] revealMoreActions "false" # hide the form and fetch a new list from the dbase playList_fetchData tFilterListQueryA all the discussion on speed seems mute in this context as the data sets are small an it happens in "the flash of an eye" Thanks gentlemen, you saved me from going off the deep end re-parsing the local array! BR On 8/23/17, 2:47 PM, "use-livecode on behalf of Mike Bonner via use-livecode" wrote: I think you need to use ":memory:" as the name actually. It looks (from the sqlite docs) that supplying no name creates a temporary db file. And now i'm curious.. Is there a way to attach the file based db to a memory db? IE Open the file database, then use the info here: https://www.sqlite.org/lang_attach.html and attach a memory database. Then (way over my head, but I seem to recall reading somewhere..) that one can use the results of a select to create a temporary table.. If interested, you might look here under create table as select... http://sqlite.org/lang_createtable.html From paul at researchware.com Wed Aug 23 21:38:37 2017 From: paul at researchware.com (Paul Dupuis) Date: Wed, 23 Aug 2017 21:38:37 -0400 Subject: notifications system using "the files"? bad idea? In-Reply-To: References: <3a1b026b-cdde-1a21-2d81-d931abab8cac@researchware.com> Message-ID: <917d2825-ce52-bd9e-5b88-4f94742560e0@researchware.com> So you would be using sockets to send a list of 1 or more file names (notifications) across the network to other computers? If so, I am not sure there is any significant performance difference than having the notifications in a database. The only practical difference may be the ease of implementation depending of your expertise with SQL databases or not. Since I assume it is your application that will received file lists from other computers and write them to a user notification folder as well as fetch 'the files' from that folder to check for messages, I don't think you could ever run into any issues where the directory is being written to at the same time it is being read. Even if, the OS essentially handles that for you. From tom at makeshyft.com Wed Aug 23 21:57:57 2017 From: tom at makeshyft.com (Tom Glod) Date: Wed, 23 Aug 2017 21:57:57 -0400 Subject: notifications system using "the files"? bad idea? In-Reply-To: <917d2825-ce52-bd9e-5b88-4f94742560e0@researchware.com> References: <3a1b026b-cdde-1a21-2d81-d931abab8cac@researchware.com> <917d2825-ce52-bd9e-5b88-4f94742560e0@researchware.com> Message-ID: i understand. Thats exactly what I am I am going with ease of implementation. the list of files would be obtained using "the files" function of livecode ..... from a mapped drive on a LAN. Thats what I am thinking......... it should all be ok ...... i hope the OS caches to memory the folder lists that are most often read. I'm gonna give it a shot using this file system method rather than another database. my problem is being able to stress and scale test my system ..... i just don't know how to simulate network conditions ... it all works perfect with 10 people on 2 machines........but after that .....who knows...... i'm gonna find out thats for sure. Thanks for everyone's input. On Wed, Aug 23, 2017 at 9:38 PM, Paul Dupuis via use-livecode < use-livecode at lists.runrev.com> wrote: > So you would be using sockets to send a list of 1 or more file names > (notifications) across the network to other computers? > > If so, I am not sure there is any significant performance difference > than having the notifications in a database. > > The only practical difference may be the ease of implementation > depending of your expertise with SQL databases or not. > > Since I assume it is your application that will received file lists from > other computers and write them to a user notification folder as well as > fetch 'the files' from that folder to check for messages, I don't think > you could ever run into any issues where the directory is being written > to at the same time it is being read. Even if, the OS essentially > handles that for you. > > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://post.spmailt.com/f/a/hI4G8NOrME9mw6gmqg5QqA~~/AAGp3AA~/RgRbf2ZPP0EIACzK-jOm_mFXA3NwY1gEAAAAAFkGc2hhcmVkYQdoZWxsb18xYAw1Mi4zOS4yNi4xNDRCCgAAzzKeWXglR4hSHXVzZS1saXZlY29kZUBsaXN0cy5ydW5yZXYuY29tCVEEAAAAAEQ1aHR0cDovL2xpc3RzLnJ1bnJldi5jb20vbWFpbG1hbi9saXN0aW5mby91c2UtbGl2ZWNvZGVHAnt9 > From bonnmike at gmail.com Wed Aug 23 22:06:14 2017 From: bonnmike at gmail.com (Mike Bonner) Date: Wed, 23 Aug 2017 20:06:14 -0600 Subject: notifications system using "the files"? bad idea? In-Reply-To: References: <3a1b026b-cdde-1a21-2d81-d931abab8cac@researchware.com> <917d2825-ce52-bd9e-5b88-4f94742560e0@researchware.com> Message-ID: If things don't work as well as you like, and you decide to go with sockets, (and you are ok with running a small server process) chatrev is cool, is already built, and should be easy to modify to do what you want. (Its already set to distribute messages from clients to the server then out to the rest of the clients who are attached) You'd just need to adjust what you want it to do with the messages... On Wed, Aug 23, 2017 at 7:57 PM, Tom Glod via use-livecode < use-livecode at lists.runrev.com> wrote: > i understand. Thats exactly what I am I am going with ease of > implementation. > > the list of files would be obtained using "the files" function of livecode > ..... from a mapped drive on a LAN. > > Thats what I am thinking......... it should all be ok ...... i hope the OS > caches to memory the folder lists that are most often read. > > I'm gonna give it a shot using this file system method rather than another > database. > > my problem is being able to stress and scale test my system ..... i just > don't know how to simulate network conditions ... it all works perfect with > 10 people on 2 machines........but after that .....who knows...... i'm > gonna find out thats for sure. > > Thanks for everyone's input. > > > > > > On Wed, Aug 23, 2017 at 9:38 PM, Paul Dupuis via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > So you would be using sockets to send a list of 1 or more file names > > (notifications) across the network to other computers? > > > > If so, I am not sure there is any significant performance difference > > than having the notifications in a database. > > > > The only practical difference may be the ease of implementation > > depending of your expertise with SQL databases or not. > > > > Since I assume it is your application that will received file lists from > > other computers and write them to a user notification folder as well as > > fetch 'the files' from that folder to check for messages, I don't think > > you could ever run into any issues where the directory is being written > > to at the same time it is being read. Even if, the OS essentially > > handles that for you. > > > > > > > > _______________________________________________ > > use-livecode mailing list > > use-livecode at lists.runrev.com > > Please visit this url to subscribe, unsubscribe and manage your > > subscription preferences: > > http://post.spmailt.com/f/a/hI4G8NOrME9mw6gmqg5QqA~~/ > AAGp3AA~/RgRbf2ZPP0EIACzK-jOm_mFXA3NwY1gEAAAAAFkGc2hhcmVkYQd > oZWxsb18xYAw1Mi4zOS4yNi4xNDRCCgAAzzKeWXglR4hSHXVzZS1saXZlY29 > kZUBsaXN0cy5ydW5yZXYuY29tCVEEAAAAAEQ1aHR0cDovL2xpc3RzLnJ1bnJ > ldi5jb20vbWFpbG1hbi9saXN0aW5mby91c2UtbGl2ZWNvZGVHAnt9 > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From capellan2000 at gmail.com Wed Aug 23 22:07:49 2017 From: capellan2000 at gmail.com (Alejandro Tejada) Date: Wed, 23 Aug 2017 22:07:49 -0400 Subject: Thoughts on BLOBs in SQLite Message-ID: Glen Bojsza wrote: > I was looking for feedback on whether it is better to store images as > BLOBs in an SQLite database for a LC app or store paths to the images > in the SQLite database and the images in a separate folder. After reading this thread, I searched for "SQLite and rsync" to learn if rsync could be used with SQLite, but SQLite provides an unexpected surprise (or feature if you prefer to call it in this way): https://www.sqlite.org/faq.html#q12 "When you delete information from an SQLite database, the unused disk space is added to an internal "free-list" and is reused the next time you insert data. The disk space is not lost. But neither is it returned to the operating system. If you delete a lot of data and want to shrink the database file, run the VACUUM command. VACUUM will reconstruct the database from scratch. This will leave the database with an empty free-list and a file that is minimal in size. Note, however, that the VACUUM can take some time to run and it can use up to twice as much temporary disk space as the original file while it is running. An alternative to using the VACUUM command is auto-vacuum mode, enabled using the auto_vacuum pragma." This SQLite feature brings memories of HyperCard stacks: http://pfhyper.com/oldsite/hcfaq/hcfaq2.html "Each time you delete a card, background, field, or button, the space it occupied stays in the stack as unusable space called free space. As you work on a stack, it can accumulate a substantial amount of free space -- and the more free space a stack has, the slower it runs and the larger it is. There's also a better chance that your stack will become corrupted (meaning unusable) if you let the free space get out of hand." Al From tom at makeshyft.com Wed Aug 23 22:20:22 2017 From: tom at makeshyft.com (Tom Glod) Date: Wed, 23 Aug 2017 22:20:22 -0400 Subject: Thoughts on BLOBs in SQLite In-Reply-To: References: Message-ID: I rely very much on SQLite and I do not use & store blobs at all. reason 1 is that it always required special handling which is a red flag reason 2 when I googled it ..it was all problems. so I base encode the binary variable and then save it in a text field in table. no problems and no bs ever. i don't know if thats at all similar to your use case.......until I am shown otherwise ..... no blobs for me. On Wed, Aug 23, 2017 at 10:07 PM, Alejandro Tejada via use-livecode < use-livecode at lists.runrev.com> wrote: > Glen Bojsza wrote: > > > I was looking for feedback on whether it is better to store images as > > BLOBs in an SQLite database for a LC app or store paths to the images > > in the SQLite database and the images in a separate folder. > > After reading this thread, I searched for "SQLite and rsync" > to learn if rsync could be used with SQLite, but > SQLite provides an unexpected surprise (or feature > if you prefer to call it in this way): > > http://post.spmailt.com/f/a/rz3eU0A3l6XAzDJK4wslUw~~/AAGp3AA~/RgRbf2uQP0EIACzK-d2tY0pXA3NwY1gEAAAAAFkGc2hhcmVkYQdoZWxsb18xYA01Mi4zOS4xODIuMjQ4QgoAABA4nlkyQ5UzUh11c2UtbGl2ZWNvZGVAbGlzdHMucnVucmV2LmNvbQlRBAAAAABEI2h0dHBzOi8vd3d3LnNxbGl0ZS5vcmcvZmFxLmh0bWwjcTEyRwJ7fQ~~ > > "When you delete information from an SQLite database, the unused disk space > is added to an internal "free-list" and is reused the next time you insert > data. The disk space is not lost. But neither is it returned to the > operating system. If you delete a lot of data and want to shrink the > database file, run the VACUUM command. VACUUM will reconstruct the database > from scratch. This will leave the database with an empty free-list and a > file that is minimal in size. Note, however, that the VACUUM can take some > time to run and it can use up to twice as much temporary disk space as the > original file while it is running. An alternative to using the VACUUM > command is auto-vacuum mode, enabled using the auto_vacuum pragma." > > This SQLite feature brings memories of HyperCard stacks: > http://post.spmailt.com/f/a/WFdu5G1JItlH-tHmdT_7UQ~~/AAGp3AA~/RgRbf2uQP0EIACzK-d2tY0pXA3NwY1gEAAAAAFkGc2hhcmVkYQdoZWxsb18xYA01Mi4zOS4xODIuMjQ4QgoAABA4nlkyQ5UzUh11c2UtbGl2ZWNvZGVAbGlzdHMucnVucmV2LmNvbQlRBAAAAABELGh0dHA6Ly9wZmh5cGVyLmNvbS9vbGRzaXRlL2hjZmFxL2hjZmFxMi5odG1sRwJ7fQ~~ > > "Each time you delete a card, background, field, or button, the space > it occupied stays in the stack as unusable space called free space. > As you work on a stack, it can accumulate a substantial amount of > free space -- and the more free space a stack has, the slower it > runs and the larger it is. There's also a better chance that your > stack will become corrupted (meaning unusable) if you let the free > space get out of hand." > > Al > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://post.spmailt.com/f/a/GkDl5ZK9T9ggzDZNb1XcAw~~/AAGp3AA~/RgRbf2uQP0EIACzK-d2tY0pXA3NwY1gEAAAAAFkGc2hhcmVkYQdoZWxsb18xYA01Mi4zOS4xODIuMjQ4QgoAABA4nlkyQ5UzUh11c2UtbGl2ZWNvZGVAbGlzdHMucnVucmV2LmNvbQlRBAAAAABENWh0dHA6Ly9saXN0cy5ydW5yZXYuY29tL21haWxtYW4vbGlzdGluZm8vdXNlLWxpdmVjb2RlRwJ7fQ~~ > From smaclean at madmansoft.com Wed Aug 23 23:27:21 2017 From: smaclean at madmansoft.com (Stephen MacLean) Date: Wed, 23 Aug 2017 23:27:21 -0400 Subject: Sending a message to users that floats above everything In-Reply-To: <0a611470-df5a-9ff6-1e8c-a6659fd5542b@fourthworld.com> References: <0a611470-df5a-9ff6-1e8c-a6659fd5542b@fourthworld.com> Message-ID: > On Aug 23, 2017, at 4:23 PM, Richard Gaskin via use-livecode wrote: > > J. Landman Gay wrote: > > > On 8/23/17 9:46 AM, Bob Sneidar via use-livecode wrote: > >> But the reason there are more attacks against Android is simple. > >> It's orders of magnitude easier to exploit. > > > > Very true. But the actual percentage of Android users who contract > > malware is less than 1% (0.01 sticks in my memory.) And almost all of > > those users are downloading apps from non-authorized sources. If you > > stick to Google Play and Amazon you're as safe as iOS. Those stores > > vet their apps much as Apple does. > > > > If it helps, Android scans your device regularly and removes malware > > even if the app was downloaded from an unauthorized source. > > > > Avoid the cheap Chinese knock-offs that ship without Google's > > software. > > Those are the dangerous phones. > > Amen, sister. The only part I take exception with is the "orders of magnitude": > > There are probably orders of magnitude more malware available, roughly proportionate to the much larger audience size. > > But an ATTEMPT is not an EXPLOIT. > > Like anything else in life, simply trying to do something is no guarantee it'll be successful. > > Once we exclude jailbroken devices, not-real-Android knockoffs, and anything else where either the user or the maker went out of their way to thwart the protections built into the OS, the rate of actual exploits is very low on both OSes, and not really all that different proportionate to market share. > > Stock Android is safer than just about any desktop OS, including macOS. > > Most headlines discuss lab discoveries of things that may or may not actually even be in the wild. Among the subset that are in the wild, if exploits are found they're usually in PRC or other markets where not-Google-Android/merely-Android-compatible devices are sold. I agree... > > Whether the messaging is coming from marketing execs or geopolitical active measures, it's really helpful to read past the headlines and discern the relevant details. Only about ~15% of Android devices are at anywhere near a recent patch level or current OS version. Android, locked down like iOS (store only apps, current OS version, no - cheap knock offs, stock only OS, etc, etc.) may be close to be being as safe, but you?ve just removed the majority of Android devices from the equation. Now look at market share, and it?s a totally different percentage. Remember, stock Android is only available on a Google ?made" device. All others have a manufacturers version of Android, that may not even be the latest version of Android and/or with features that may open security holes. However, you can?t just ignore all those devices, because they are out there being used every day. They are also being targeted, attacked and exploited just like those that still use Windows XP, earlier versions of Mac OS X, iOS and other out of date, un-supported, un-securable OSes. The very latest version of Android, just announced, made MANY important advances in security and is much, much more secure. However, since the majority of Android devices out there will never, ever see it installed, it still leaves a bunch of gapping security holes. With that said, I?m happy that all the major OS players are making huge strides in security? it?s been far too long in coming. It?s too important, no matter what flavor of OS you use or like. The problem still remains for any OS, desktop, server or mobile? if the user steps outside the box, they open themselves up. This has been an issue since the floppy disk and sneaker net? and won?t likely change. Just think Adobe Flash and that even a huge software company like Adobe couldn?t make it secure and is discontinuing it. The difference here, on this list, is that most folks are professionals or at least highly knowledgeable end users that know what to look for, what not to do and what?s safe to get their devices looking and running the way they want. They know what trade offs can be made and still stay secure. Since this is about security, I would suggest to all that if you haven?t done so already, you sign-up for alerts from CERT, the US Computer Emergency Readiness Team. https://www.us-cert.gov/ncas. There was a good one sent today about North Korea?s DDoS botnet and ransomeware. Whatever OS you use, develop on/for or just plain love, be safe. Best, Steve MacLean From ambassador at fourthworld.com Wed Aug 23 23:40:37 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Wed, 23 Aug 2017 20:40:37 -0700 Subject: Search Values of Array in "One Go" In-Reply-To: <0A01D8CC-2DB1-494E-8B5E-EF0598C26EAF@hindu.org> References: <0A01D8CC-2DB1-494E-8B5E-EF0598C26EAF@hindu.org> Message-ID: Sannyasin Brahmanathaswami wrote: > I can't wait to use the new tools for watching processes to see where > > bottle necks arise? ... > did you see the pitch for business upgrade? scroll down.. there some > new thing that give you time on processes Thanks. I'd forgotten that was a new premium feature. MetaCard included a profiler. Might be nice if someone had time to update it for use in LC Community. -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From jacque at hyperactivesw.com Thu Aug 24 00:00:23 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Wed, 23 Aug 2017 23:00:23 -0500 Subject: Sending a message to users that floats above everything In-Reply-To: References: <0a611470-df5a-9ff6-1e8c-a6659fd5542b@fourthworld.com> Message-ID: <7acbc0b9-ce21-be1e-38f0-a99b3cb15424@hyperactivesw.com> On 8/23/17 10:27 PM, Stephen MacLean via use-livecode wrote: > Only about ~15% of Android devices are at anywhere near a recent patch level or current OS version. > > Android, locked down like iOS (store only apps, current OS version, no - cheap knock offs, stock only OS, etc, etc.) may be close to be being as safe, but you?ve just removed the majority of Android devices from the equation. Now look at market share, and it?s a totally different percentage. Remember, stock Android is only available on a Google ?made" device. All others have a manufacturers version of Android, that may not even be the latest version of Android and/or with features that may open security holes. Very true. Google knows about this and that's why it now puts Google Play Services on every device, which is the app that manages security among other things. That doesn't mean that manufacturers can't punch holes in the OS, but Google is now scanning and managing security for all devices that can access the Play Store. It updates in the background much as OS X does. I suspect the list is getting tired of this discussion so I'll stop, but the main point I think Richard and I are trying to make is a response to Bob's original comment -- that Android is as safe or safer than iOS, so security concerns aren't a good reason to dismiss this very competent OS. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com From brahma at hindu.org Thu Aug 24 00:58:29 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Thu, 24 Aug 2017 04:58:29 +0000 Subject: Native Mobile Radio Buttons - Focus on Entry Field on Mobile Message-ID: <8FA9CCF7-384D-46EF-B8C9-345EBE47B43B@hindu.org> OK I successfully built a little custom Control which is a searchform that dynamically changes out some options depending on the class of audio being viewed by the user.. Pretty straight forward, a search fields, some radio buttons for what to search in and then two other sets of radio buttons that only appear for music/songs with genre and theme, got the search working. Works great on desktop, very slick? Deployed to mobile and while it works on iOS and My Nexus, the radio buttons look pretty awful, like some ancient Motif boxes when touched. What options do we have to native mobile radio buttons? Also when I click a radio button I cannot return focus back to the search field UI has: -------------------------- [_________________ ] # fld [searchstring] [search button here a SVG widget] Search in: (a label) __Title __Subtitle _Description # 3 radio buttons on mobile, when I click on one of these radio buttons, then I can no longer click back into the field to enter text. missing something simple there. I can enter text and then click a radio button and the search works as on desktop. From beofonemind at gmail.com Thu Aug 24 01:01:59 2017 From: beofonemind at gmail.com (Tom Glod) Date: Thu, 24 Aug 2017 01:01:59 -0400 Subject: notifications system using "the files"? bad idea? In-Reply-To: References: <3a1b026b-cdde-1a21-2d81-d931abab8cac@researchware.com> <917d2825-ce52-bd9e-5b88-4f94742560e0@researchware.com> Message-ID: Thanks for that idea Mike! On Aug 23, 2017 10:07 PM, "Mike Bonner via use-livecode" < use-livecode at lists.runrev.com> wrote: > If things don't work as well as you like, and you decide to go with > sockets, (and you are ok with running a small server process) chatrev is > cool, is already built, and should be easy to modify to do what you want. > (Its already set to distribute messages from clients to the server then out > to the rest of the clients who are attached) You'd just need to adjust > what you want it to do with the messages... > > On Wed, Aug 23, 2017 at 7:57 PM, Tom Glod via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > i understand. Thats exactly what I am I am going with ease of > > implementation. > > > > the list of files would be obtained using "the files" function of > livecode > > ..... from a mapped drive on a LAN. > > > > Thats what I am thinking......... it should all be ok ...... i hope the > OS > > caches to memory the folder lists that are most often read. > > > > I'm gonna give it a shot using this file system method rather than > another > > database. > > > > my problem is being able to stress and scale test my system ..... i just > > don't know how to simulate network conditions ... it all works perfect > with > > 10 people on 2 machines........but after that .....who knows...... i'm > > gonna find out thats for sure. > > > > Thanks for everyone's input. > > > > > > > > > > > > On Wed, Aug 23, 2017 at 9:38 PM, Paul Dupuis via use-livecode < > > use-livecode at lists.runrev.com> wrote: > > > > > So you would be using sockets to send a list of 1 or more file names > > > (notifications) across the network to other computers? > > > > > > If so, I am not sure there is any significant performance difference > > > than having the notifications in a database. > > > > > > The only practical difference may be the ease of implementation > > > depending of your expertise with SQL databases or not. > > > > > > Since I assume it is your application that will received file lists > from > > > other computers and write them to a user notification folder as well as > > > fetch 'the files' from that folder to check for messages, I don't think > > > you could ever run into any issues where the directory is being written > > > to at the same time it is being read. Even if, the OS essentially > > > handles that for you. > > > > > > > > > > > > _______________________________________________ > > > use-livecode mailing list > > > use-livecode at lists.runrev.com > > > Please visit this url to subscribe, unsubscribe and manage your > > > subscription preferences: > > > http://post.spmailt.com/f/a/hI4G8NOrME9mw6gmqg5QqA~~/ > > AAGp3AA~/RgRbf2ZPP0EIACzK-jOm_mFXA3NwY1gEAAAAAFkGc2hhcmVkYQd > > oZWxsb18xYAw1Mi4zOS4yNi4xNDRCCgAAzzKeWXglR4hSHXVzZS1saXZlY29 > > kZUBsaXN0cy5ydW5yZXYuY29tCVEEAAAAAEQ1aHR0cDovL2xpc3RzLnJ1bnJ > > ldi5jb20vbWFpbG1hbi9saXN0aW5mby91c2UtbGl2ZWNvZGVHAnt9 > > > > > _______________________________________________ > > use-livecode mailing list > > use-livecode at lists.runrev.com > > Please visit this url to subscribe, unsubscribe and manage your > > subscription preferences: > > http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From smaclean at madmansoft.com Thu Aug 24 01:22:54 2017 From: smaclean at madmansoft.com (Stephen MacLean) Date: Thu, 24 Aug 2017 01:22:54 -0400 Subject: Sending a message to users that floats above everything In-Reply-To: <7acbc0b9-ce21-be1e-38f0-a99b3cb15424@hyperactivesw.com> References: <0a611470-df5a-9ff6-1e8c-a6659fd5542b@fourthworld.com> <7acbc0b9-ce21-be1e-38f0-a99b3cb15424@hyperactivesw.com> Message-ID: <43EBC00F-71A6-40CC-83AA-4FB67B437DDA@madmansoft.com> > On Aug 24, 2017, at 12:00 AM, J. Landman Gay via use-livecode wrote: > > On 8/23/17 10:27 PM, Stephen MacLean via use-livecode wrote: >> Only about ~15% of Android devices are at anywhere near a recent patch level or current OS version. >> Android, locked down like iOS (store only apps, current OS version, no - cheap knock offs, stock only OS, etc, etc.) may be close to be being as safe, but you?ve just removed the majority of Android devices from the equation. Now look at market share, and it?s a totally different percentage. Remember, stock Android is only available on a Google ?made" device. All others have a manufacturers version of Android, that may not even be the latest version of Android and/or with features that may open security holes. > > Very true. Google knows about this and that's why it now puts Google Play Services on every device, which is the app that manages security among other things. That doesn't mean that manufacturers can't punch holes in the OS, but Google is now scanning and managing security for all devices that can access the Play Store. It updates in the background much as OS X does. > > I suspect the list is getting tired of this discussion so I'll stop, but the main point I think Richard and I are trying to make is a response to Bob's original comment -- that Android is as safe or safer than iOS, so security concerns aren't a good reason to dismiss this very competent OS. > Thank you for your comments and I do agree, the current version of stock Android is around as safe as the current version of iOS. My point was that unfortunately that only means ~15% of currently active Android devices are fairly safe and Bob?s comment, while brief, was fair as far as it was concerned. Once Android hits iOS?s ~85% active devices on latest version of the os, then it wouldn?t be. I just don?t think that will happen anytime soon because of the way the OS is rolled out through 3rd parties for the most part. While I don?t like Google having the ability to access my device, remove software and manage my security, it?s a huge leap forward for the Android world and much better than the way it was. Regardless, I?m not advocating for one or the other. And I don?t think anyone should dismiss Android, Oreo is better than ?very competent? :) Best, Steve MacLean From peterwawood at gmail.com Thu Aug 24 01:59:10 2017 From: peterwawood at gmail.com (Peter W A Wood) Date: Thu, 24 Aug 2017 13:59:10 +0800 Subject: CouchDB, DayBed, etc. In-Reply-To: References: Message-ID: <37092A72-F420-4E0C-A340-F4201A32471B@gmail.com> Alex > On 23 Aug 2017, at 22:28, Alex Tweedly via use-livecode wrote: > > With the exception of a couple of things that basically scraped data off some web pages, every app I've done in the last couple of years (all for personal use by myself or friends - I'm a hobbyist) have shared one characteristic : they have local storage, and that data is subsequently synched to "the cloud" to be shared with other devices/users, or at the very least backed-up to the cloud (i.e. my on-rev or HostM server account). > > I haven't yet done anything on mobile - but because of where I live and other circumstances, even for laptops I *need* to have things work without an Internet connection and synch up when available. > > This doesn't seem to fit well with, say, CouchDB; the REST API lets me do great things when I talk to the server - but when working locally I have to forego all those features, and, for instance, revert to an array which I 'manually' search / filter / etc. You can easily run CouchDB on a laptop or PC. There is a little more admin that SQLite but not very much. One of the strengths of CouchDB is it?s database synchronisation (one-way or both-ways) - http://docs.couchdb.org/en/2.1.0/replication/index.html . There is also a mobile embedded Couchbase that should sync with CouchDB - https://developer.couchbase.com/mobile - I guess that would need a LiveCode Builder wrapper before it could be accessed from LiveCode. Peter From jacque at hyperactivesw.com Thu Aug 24 03:14:10 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Thu, 24 Aug 2017 02:14:10 -0500 Subject: Sending a message to users that floats above everything In-Reply-To: <43EBC00F-71A6-40CC-83AA-4FB67B437DDA@madmansoft.com> References: <0a611470-df5a-9ff6-1e8c-a6659fd5542b@fourthworld.com> <7acbc0b9-ce21-be1e-38f0-a99b3cb15424@hyperactivesw.com> <43EBC00F-71A6-40CC-83AA-4FB67B437DDA@madmansoft.com> Message-ID: On 8/24/17 12:22 AM, Stephen MacLean via use-livecode wrote: > My point was that unfortunately that only means ~15% of currently active Android devices are fairly safe and Bob?s comment, while brief, was fair as far as it was concerned. Once Android hits iOS?s ~85% active devices on latest version of the os, then it wouldn?t be. I just don?t think that will happen anytime soon because of the way the OS is rolled out through 3rd parties for the most part. Actually, I was trying to make the opposite point -- Google Play Services is now on (at least) 93% of all Android devices. It runs on any Android regardless of manufacturer or customized OS, provided the device is authorized to access the Google Play Store. It's had over 5 billion downloads and is, among other things, the security layer. https://www.androidcentral.com/genius-google-play-services It isn't only the "Google-made" phones that are protected, it's almost all of them now. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com From thatkeith at mac.com Thu Aug 24 04:49:22 2017 From: thatkeith at mac.com (Keith Martin) Date: Thu, 24 Aug 2017 09:49:22 +0100 Subject: Sending a message to users that floats above everything In-Reply-To: <15e05ed62c8.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> References: <950CE409-2C3E-46EB-A124-995658A30CEA@gmail.com> <15e05745a68.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <3F7DF442-4870-41F0-9A99-3BB637974089@iotecdigital.com> <15e05ed62c8.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Message-ID: <8011B64E-C37E-41D1-A270-1783FD75FEC4@mac.com> On 21 Aug 2017, at 18:53, J. Landman Gay via use-livecode wrote: > If you want native appearance they are inappropriate. Ah, a slightly different thing to what I first assumed. Answer dialogs as a concept have an important place, of course. But yes, non-standard UI/appearance for stuff that *should* be standard is Just Wrong. k --- Keith Martin Senior Lecturer, LCC (University of the Arts London) Technical Editor, MacUser magazine (1997-2015) http://PanoramaPhotographer.com http://thatkeith.com +44 (0)7909541365 --- From jonathandlynch at gmail.com Thu Aug 24 05:07:12 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Thu, 24 Aug 2017 05:07:12 -0400 Subject: Sending a message to users that floats above everything In-Reply-To: <8011B64E-C37E-41D1-A270-1783FD75FEC4@mac.com> References: <950CE409-2C3E-46EB-A124-995658A30CEA@gmail.com> <15e05745a68.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <3F7DF442-4870-41F0-9A99-3BB637974089@iotecdigital.com> <15e05ed62c8.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <8011B64E-C37E-41D1-A270-1783FD75FEC4@mac.com> Message-ID: Would it be possible in LCB to make a float-above-everything (including browser) dialog? Sent from my iPhone > On Aug 24, 2017, at 4:49 AM, Keith Martin via use-livecode wrote: > >> On 21 Aug 2017, at 18:53, J. Landman Gay via use-livecode wrote: >> >> If you want native appearance they are inappropriate. > > Ah, a slightly different thing to what I first assumed. Answer dialogs as a concept have an important place, of course. But yes, non-standard UI/appearance for stuff that *should* be standard is Just Wrong. > > k > > > --- > > Keith Martin > Senior Lecturer, LCC (University of the Arts London) > Technical Editor, MacUser magazine (1997-2015) > http://PanoramaPhotographer.com > http://thatkeith.com > +44 (0)7909541365 > > --- > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From hh at hyperhh.de Thu Aug 24 06:00:25 2017 From: hh at hyperhh.de (hh) Date: Thu, 24 Aug 2017 12:00:25 +0200 Subject: Sending a message to users that floats above everything Message-ID: <5C0DB37A-D2ED-4742-8076-3CC02FE13595@hyperhh.de> Jonathan wrote: > What is the best way to send a message to users that floats above > everything else, including browser widgets? > ... > Would it be possible in LCB to make a float-above-everything (including > browser) dialog? Didn't read the whole huge thread, so in case it is not already said: Floating above everything else is easy if everything else is invisible. So why not hide everything else and display a beautiful custom dialog? From charles at techstrategies.com.au Thu Aug 24 06:05:04 2017 From: charles at techstrategies.com.au (Charles Warwick) Date: Thu, 24 Aug 2017 20:05:04 +1000 Subject: is IMAP or POP3 supported with tsNet? In-Reply-To: <4C9E1B0D-74D3-40A1-A80F-BFAFDE0A1D12@appisle.net> References: <11C9110E-88C1-48C1-AF16-AF081D1BB6E2@madmansoft.com> <4C9E1B0D-74D3-40A1-A80F-BFAFDE0A1D12@appisle.net> Message-ID: <44557149-3247-0b1c-3af8-261868591474@techstrategies.com.au> On 24/08/2017 6:40 AM, Monte Goulding via use-livecode wrote: >> On 24 Aug 2017, at 1:06 am, Stephen MacLean via use-livecode wrote: >> >> Don?t think it is, based on what?s in the dictionary, but thought I would ask: is IMAP or POP3 supported with tsNet? >> >> I know CURL does, but don?t know if it?s been added to tsNet. > Short answer yes. Long answer Charles is going to write some docs or a demo to explain how to do it. Not sure on the ETA of that. IMAP and POP3 support in tsNet under Linux is only available in tsNet 1.3.0+ which will be bundled with the next LC release. All other platforms have had support for those protocols for a while.? I hope to have some documentation available in the next two weeks. Regards, Charles From MikeKerner at roadrunner.com Thu Aug 24 06:52:25 2017 From: MikeKerner at roadrunner.com (Mike Kerner) Date: Thu, 24 Aug 2017 06:52:25 -0400 Subject: Native Mobile Radio Buttons - Focus on Entry Field on Mobile In-Reply-To: <8FA9CCF7-384D-46EF-B8C9-345EBE47B43B@hindu.org> References: <8FA9CCF7-384D-46EF-B8C9-345EBE47B43B@hindu.org> Message-ID: for starters, get scott's tmControls2. They just look better. as for the focus, how are you trying to do it? are you using "focus on"? "click at the loc of"? On Thu, Aug 24, 2017 at 12:58 AM, Sannyasin Brahmanathaswami via use-livecode wrote: > > OK I successfully built a little custom Control which is a searchform that > dynamically changes out some options depending on the class of audio being > viewed by the user.. > > Pretty straight forward, a search fields, some radio buttons for what to > search in and then two other sets of radio buttons that only appear for > music/songs with genre and theme, got the search working. Works great on > desktop, very slick? > > Deployed to mobile and while it works on iOS and My Nexus, the radio > buttons look pretty awful, like some ancient Motif boxes when touched. > > What options do we have to native mobile radio buttons? > > Also when I click a radio button I cannot return focus back to the search > field > > > UI has: > -------------------------- > > [_________________ ] # fld [searchstring] [search button here a SVG > widget] > > > Search in: (a label) > > __Title __Subtitle _Description # 3 radio buttons > > > on mobile, when I click on one of these radio buttons, then I can no > longer click back into the field to enter text. > > missing something simple there. I can enter text and then click a radio > button and the search works as on desktop. > > > > > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode -- On the first day, God created the heavens and the Earth On the second day, God created the oceans. On the third day, God put the animals on hold for a few hours, and did a little diving. And God said, "This is good." From jonathandlynch at gmail.com Thu Aug 24 07:18:42 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Thu, 24 Aug 2017 07:18:42 -0400 Subject: Sending a message to users that floats above everything In-Reply-To: <5C0DB37A-D2ED-4742-8076-3CC02FE13595@hyperhh.de> References: <5C0DB37A-D2ED-4742-8076-3CC02FE13595@hyperhh.de> Message-ID: I hate to hide the map just for something like adjusting the range at which one can see markers. That said, yours is probably the best currently available solution. It would be easy to hide and show the current group as needed. Sent from my iPhone > On Aug 24, 2017, at 6:00 AM, hh via use-livecode wrote: > > Jonathan wrote: >> What is the best way to send a message to users that floats above >> everything else, including browser widgets? >> ... >> Would it be possible in LCB to make a float-above-everything (including >> browser) dialog? > > Didn't read the whole huge thread, so in case it is not already said: > > Floating above everything else is easy if everything else is invisible. > So why not hide everything else and display a beautiful custom dialog? > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From smaclean at madmansoft.com Thu Aug 24 07:40:57 2017 From: smaclean at madmansoft.com (Stephen MacLean) Date: Thu, 24 Aug 2017 07:40:57 -0400 Subject: is IMAP or POP3 supported with tsNet? In-Reply-To: <44557149-3247-0b1c-3af8-261868591474@techstrategies.com.au> References: <11C9110E-88C1-48C1-AF16-AF081D1BB6E2@madmansoft.com> <4C9E1B0D-74D3-40A1-A80F-BFAFDE0A1D12@appisle.net> <44557149-3247-0b1c-3af8-261868591474@techstrategies.com.au> Message-ID: Thanks Charles, looking forward to those docs when done. Best, Steve MacLean > On Aug 24, 2017, at 6:05 AM, Charles Warwick via use-livecode wrote: > > > On 24/08/2017 6:40 AM, Monte Goulding via use-livecode wrote: >>> On 24 Aug 2017, at 1:06 am, Stephen MacLean via use-livecode wrote: >>> >>> Don?t think it is, based on what?s in the dictionary, but thought I would ask: is IMAP or POP3 supported with tsNet? >>> >>> I know CURL does, but don?t know if it?s been added to tsNet. >> Short answer yes. Long answer Charles is going to write some docs or a demo to explain how to do it. Not sure on the ETA of that. > > IMAP and POP3 support in tsNet under Linux is only available in tsNet 1.3.0+ which will be bundled with the next LC release. > > All other platforms have had support for those protocols for a while. I hope to have some documentation available in the next two weeks. > > Regards, > > Charles > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From klaus at major-k.de Thu Aug 24 08:28:23 2017 From: klaus at major-k.de (Klaus major-k) Date: Thu, 24 Aug 2017 14:28:23 +0200 Subject: Little OT: PHP script needed Message-ID: Hi friends, sorry for posting this to this list, but it is a bit of an emergency... Anyone available for writing a little PHP script I can post things to? Requirements for the script, it needs to: 1. Receive a PDF file and maybe a password I can post to the server additionally. 2. save the PDF file under the name (ref_number).pdf in a directory of our choice 3. Return the string OK back to our app/my script, so I know the file is on the server. 4. send an email to the user with the URL to the just saved PDF file. This may require a lookup: posted ref_number -> username and mail address from a database Please write to me personally, will forward the mail to my client. Thank you for your attention. Best Klaus -- Klaus Major http://www.major-k.de klaus at major-k.de From roger.e.eller at sealedair.com Thu Aug 24 08:55:19 2017 From: roger.e.eller at sealedair.com (Roger Eller) Date: Thu, 24 Aug 2017 08:55:19 -0400 Subject: Sending a message to users that floats above everything In-Reply-To: References: <0a611470-df5a-9ff6-1e8c-a6659fd5542b@fourthworld.com> <7acbc0b9-ce21-be1e-38f0-a99b3cb15424@hyperactivesw.com> <43EBC00F-71A6-40CC-83AA-4FB67B437DDA@madmansoft.com> Message-ID: On Thu, Aug 24, 2017 at 3:14 AM, J. Landman Gay via use-livecode < use-livecode at lists.runrev.com> wrote: > On 8/24/17 12:22 AM, Stephen MacLean via use-livecode wrote: > >> My point was that unfortunately that only means ~15% of currently active >> Android devices are fairly safe and Bob?s comment, while brief, was fair as >> far as it was concerned. Once Android hits iOS?s ~85% active devices on >> latest version of the os, then it wouldn?t be. I just don?t think that will >> happen anytime soon because of the way the OS is rolled out through 3rd >> parties for the most part. >> > > Actually, I was trying to make the opposite point -- Google Play Services > is now on (at least) 93% of all Android devices. It runs on any Android > regardless of manufacturer or customized OS, provided the device is > authorized to access the Google Play Store. It's had over 5 billion > downloads and is, among other things, the security layer. > > https://www.androidcentral.com/genius-google-play-services > > It isn't only the "Google-made" phones that are protected, it's almost all > of them now. > > -- > Jacqueline Landman Gay | jacque at hyperactivesw.com > HyperActive Software | http://www.hyperactivesw.com > This is very true. My old China made tablet running Android 4.1.1 (no os update has ever been available for it), continues to update Google Play Services regularly. I have never experienced any malware attacks, and the device continues to serve me well in compatibility-testing of apps created in LiveCode. ~Roger From hh at hyperhh.de Thu Aug 24 09:01:26 2017 From: hh at hyperhh.de (hh) Date: Thu, 24 Aug 2017 15:01:26 +0200 Subject: Sending a message to users that floats above everything Message-ID: <73ECE817-4D50-4524-A901-60A1BC171DD5@hyperhh.de> > Jonathan wrote: > I hate to hide the map just for something like adjusting the range at which one can see markers. You could make a snapshot of the map, gray it out and use the image as background (everything else hidden). From roger.e.eller at sealedair.com Thu Aug 24 09:05:47 2017 From: roger.e.eller at sealedair.com (Roger Eller) Date: Thu, 24 Aug 2017 09:05:47 -0400 Subject: Sending a message to users that floats above everything In-Reply-To: References: <5C0DB37A-D2ED-4742-8076-3CC02FE13595@hyperhh.de> Message-ID: On Thu, Aug 24, 2017 at 7:18 AM, Jonathan Lynch via use-livecode < use-livecode at lists.runrev.com> wrote: > I hate to hide the map just for something like adjusting the range at > which one can see markers. > > That said, yours is probably the best currently available solution. It > would be easy to hide and show the current group as needed. > > Sent from my iPhone As J. demonstrated in LC Global, you can dim the background stuff before displaying a dialog. Yours is slightly different because of the map in the browser, so what if you had a "generic map" image that is super minecraft pixelated to display in its place? Just hide the group that contains the browser, and reveal the generic pixelated image beneath it. ~Roger From roger.e.eller at sealedair.com Thu Aug 24 09:07:38 2017 From: roger.e.eller at sealedair.com (Roger Eller) Date: Thu, 24 Aug 2017 09:07:38 -0400 Subject: Sending a message to users that floats above everything In-Reply-To: <73ECE817-4D50-4524-A901-60A1BC171DD5@hyperhh.de> References: <73ECE817-4D50-4524-A901-60A1BC171DD5@hyperhh.de> Message-ID: On Thu, Aug 24, 2017 at 9:01 AM, hh via use-livecode < use-livecode at lists.runrev.com> wrote: > > Jonathan wrote: > > I hate to hide the map just for something like adjusting the range at > which one can see markers. > > You could make a snapshot of the map, gray it out and use the image as > background (everything else hidden). > > Grape minds... From gbojsza at gmail.com Thu Aug 24 09:14:12 2017 From: gbojsza at gmail.com (Glen Bojsza) Date: Thu, 24 Aug 2017 09:14:12 -0400 Subject: Entitlements file are invalid...what does LC set? Message-ID: I updated my system to the following: Sierra 10.12.6 Xcode 8.3.3 Livecode Community 8.1.6 I can build an iOS app with no errors BUT when I go to install it on my iPad I get the following Xcode error: *The executable was signed with invalid entitlements*. The entitlements specified in your application?s Code Signing Entitlements file are invalid, not permitted, or do not match those specified in your provisioning profile. (0xE8008016) I don't know if this is a bug in LC or an Apple Xcode / Provisioning issue. Has anyone experienced this error while using Livecode? regards, Glen From alanstenhouse at hotmail.com Thu Aug 24 09:29:51 2017 From: alanstenhouse at hotmail.com (Alan) Date: Thu, 24 Aug 2017 13:29:51 +0000 Subject: Browser widget android local file problem Message-ID: Am having a problem loading a local file that displays a Google map on the Android emulator. LC 8.1.6. I was also having a problem with local HTML files in general, but got that going. Using the same method for a dynamically created map document, located in the specialfolderpath("documents") folder doesn't seem to work. See below for code that doesn't work followed by code that works. 1. Code that doesn't work is (using a file from the "documents" specialFolder): --- put specialFolderPath("documents") & slash & "MAP.html" into tMapFile -- tMapFile = /data/data/com.scruffmonkey.echidnaCSI/files/MAP.html -- Why is the path /data/data/... and not /data/app/... as in the next example? if the platform contains "android" then set the url of widget "myMap" to tMapFile else put fileConvertToFileURL(tMapFile) into tURL set the url of widget "myMap" to (tURL) end if --- 2. While code that works is (using a file from the resources folder): --- put specialFolderPath("resources") & "/data/fun_facts.html" into tFile -- tFile = /data/app/com.scruffmonkey.echidnaCSI-2/base.apk/data/fun_facts.html if the platform contains "android" then set the url of widget "infoscroll" to (tFile) else put fileConvertToFileURL(tFile) into tURL set the url of widget "infoscroll" to (tURL) end if --- Any ideas why there's a difference between the resources and documents specialFolderPaths? Why does the "documents" specialFolderPath here start with /data/data/ and the resources one start with /data/app/ ?? I've also tried setting the HTMLText of the widget but that also doesn't seem to work. Help please! :-) cheers Alan From gbojsza at gmail.com Thu Aug 24 09:48:38 2017 From: gbojsza at gmail.com (Glen Bojsza) Date: Thu, 24 Aug 2017 09:48:38 -0400 Subject: Entitlements file are invalid...what does LC set? In-Reply-To: References: Message-ID: Never mind...I had a difference between my Bundle ID and Internal ID...I fixed it from my Provisioning Profile and everything works! Glen On Thu, Aug 24, 2017 at 9:14 AM, Glen Bojsza wrote: > I updated my system to the following: > > Sierra 10.12.6 > Xcode 8.3.3 > Livecode Community 8.1.6 > > I can build an iOS app with no errors BUT when I go to install it on my > iPad I get the following Xcode error: > > *The executable was signed with invalid entitlements*. > The entitlements specified in your application?s Code Signing Entitlements > file are invalid, not permitted, or do not match those specified in your > provisioning profile. (0xE8008016) > > I don't know if this is a bug in LC or an Apple Xcode / Provisioning issue. > > Has anyone experienced this error while using Livecode? > > regards, > > Glen > From bobsneidar at iotecdigital.com Thu Aug 24 10:34:48 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Thu, 24 Aug 2017 14:34:48 +0000 Subject: Thoughts on BLOBs in SQLite In-Reply-To: References: Message-ID: Ahhh yes. I remember the first time Hypercard corrupted one of my stacks. It was like learning my girlfriend cheated on me for the first time. And then to discover that Hypercard was going to regularly corrupt my stacks was like learning she was a prostitute in her spare time! The disappointment was palpable. Bob S > On Aug 23, 2017, at 19:07 , Alejandro Tejada via use-livecode wrote: > > "Each time you delete a card, background, field, or button, the space > it occupied stays in the stack as unusable space called free space. > As you work on a stack, it can accumulate a substantial amount of > free space -- and the more free space a stack has, the slower it > runs and the larger it is. There's also a better chance that your > stack will become corrupted (meaning unusable) if you let the free > space get out of hand." > > Al From jonathandlynch at gmail.com Thu Aug 24 10:35:31 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Thu, 24 Aug 2017 10:35:31 -0400 Subject: Browser widget android local file problem In-Reply-To: References: Message-ID: <7F91429C-3D28-4ACD-AF99-8166858DEF83@gmail.com> Hi Alan - setting the htmltext of the widget works fine for me. My map data comes from Bing. What is going wrong when you do that? Sent from my iPhone > On Aug 24, 2017, at 9:29 AM, Alan via use-livecode wrote: > > Am having a problem loading a local file that displays a Google map on the Android emulator. LC 8.1.6. > > I was also having a problem with local HTML files in general, but got that going. Using the same method for a dynamically created map document, located in the specialfolderpath("documents") folder doesn't seem to work. See below for code that doesn't work followed by code that works. > > 1. Code that doesn't work is (using a file from the "documents" specialFolder): > --- > put specialFolderPath("documents") & slash & "MAP.html" into tMapFile > -- tMapFile = /data/data/com.scruffmonkey.echidnaCSI/files/MAP.html -- Why is the path /data/data/... and not /data/app/... as in the next example? > if the platform contains "android" then > set the url of widget "myMap" to tMapFile > else > put fileConvertToFileURL(tMapFile) into tURL > set the url of widget "myMap" to (tURL) > end if > --- > > > 2. While code that works is (using a file from the resources folder): > --- > put specialFolderPath("resources") & "/data/fun_facts.html" into tFile > -- tFile = /data/app/com.scruffmonkey.echidnaCSI-2/base.apk/data/fun_facts.html > if the platform contains "android" then > set the url of widget "infoscroll" to (tFile) > else > put fileConvertToFileURL(tFile) into tURL > set the url of widget "infoscroll" to (tURL) > end if > --- > > > Any ideas why there's a difference between the resources and documents specialFolderPaths? > > Why does the "documents" specialFolderPath here start with /data/data/ and the resources one start with /data/app/ ?? > > I've also tried setting the HTMLText of the widget but that also doesn't seem to work. > > Help please! :-) > > cheers > > Alan > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From bobsneidar at iotecdigital.com Thu Aug 24 10:47:04 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Thu, 24 Aug 2017 14:47:04 +0000 Subject: Sending a message to users that floats above everything In-Reply-To: References: <0a611470-df5a-9ff6-1e8c-a6659fd5542b@fourthworld.com> <7acbc0b9-ce21-be1e-38f0-a99b3cb15424@hyperactivesw.com> <43EBC00F-71A6-40CC-83AA-4FB67B437DDA@madmansoft.com> Message-ID: <09923B6A-EEC2-4385-88EC-178B1D849895@iotecdigital.com> If the malware is good enough, you won't know. ;-) Bob S > On Aug 24, 2017, at 05:55 , Roger Eller via use-livecode wrote: > > I have never experienced any malware attacks, and the > device continues to serve me well in compatibility-testing of apps created > in LiveCode. > > ~Roger From smaclean at madmansoft.com Thu Aug 24 10:48:26 2017 From: smaclean at madmansoft.com (Stephen MacLean) Date: Thu, 24 Aug 2017 10:48:26 -0400 Subject: Android Security (was Re: Sending a message to users that floats above everything) In-Reply-To: References: <0a611470-df5a-9ff6-1e8c-a6659fd5542b@fourthworld.com> <7acbc0b9-ce21-be1e-38f0-a99b3cb15424@hyperactivesw.com> <43EBC00F-71A6-40CC-83AA-4FB67B437DDA@madmansoft.com> Message-ID: <0A53FFA5-D606-45F7-9B8D-6DAB54B28416@madmansoft.com> > On Aug 24, 2017, at 3:14 AM, J. Landman Gay via use-livecode wrote: > > On 8/24/17 12:22 AM, Stephen MacLean via use-livecode wrote: >> My point was that unfortunately that only means ~15% of currently active Android devices are fairly safe and Bob?s comment, while brief, was fair as far as it was concerned. Once Android hits iOS?s ~85% active devices on latest version of the os, then it wouldn?t be. I just don?t think that will happen anytime soon because of the way the OS is rolled out through 3rd parties for the most part. > > Actually, I was trying to make the opposite point -- Google Play Services is now on (at least) 93% of all Android devices. It runs on any Android regardless of manufacturer or customized OS, provided the device is authorized to access the Google Play Store. It's had over 5 billion downloads and is, among other things, the security layer. > > https://www.androidcentral.com/genius-google-play-services > > It isn't only the "Google-made" phones that are protected, it's almost all of them now. > I think it?s important to understand exactly what Google Play Services is and isn?t. It provides a base API, like Windows .NET, that runs on a variety of Android versions giving developers something common to develop against. Google Play Services can and does update those API?s and also updates Google Apps and components such as WebKit. It also provides malware scanning and blocking similar to Windows Defender, i.e. it is a layer of security It does NOT provide core OS security updates. Those are, except for Google?s Pixel and Nexus, incorporated and provided by the manufacturer as a patch level update to the OS. It is not THE security layer for Android, just a part of it. So while 93% of Android devices have a layer of protection, it would be like saying Windows XP or Mac OS X 10.6 or even unpatched Widows 10 or macOS are ?protected? because they have a malware scanner/blocker running. Sure, it may blunt some/most of it, but they are still vulnerable. At least with Google Play Services you get updates to some API components like WebKit, although that only starts with Android 5.0. You don?t get that on iOS. Also, just like other OS vendors, it?s rolling support. 4.4 is the last supported version for Google Play and Google warns that will change as newer versions come out. See https://source.android.com/security/overview/updates-resources and https://source.android.com/security/bulletin/ for more details. Sorry, this is getting long winded and probably pointless. To me, this isn?t about OS vs OS. You aren?t safe/secure/protected if you don?t fix the underlying problem. Best, Steve MacLean From brahma at hindu.org Thu Aug 24 10:50:19 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Thu, 24 Aug 2017 14:50:19 +0000 Subject: Native Mobile Radio Buttons - Focus on Entry Field on Mobile In-Reply-To: References: <8FA9CCF7-384D-46EF-B8C9-345EBE47B43B@hindu.org> Message-ID: <4F66D2C4-808E-4AA0-AD1E-8B4391A449D8@hindu.org> Mike wrote: for starters, get scott's tmControls2. They just look better. BR: duh of course! as for the focus, how are you trying to do it? are you using "focus on"? "click at the loc of"? BR: The focus comes into the search field when the custom control slides down? cursor is there and key board pops up by hard coding: focus on fld "searchstring" select after fld "searchstring" User can enter text, and then click one of three options like _Title _Description _ Artists # I couldn't get %like% to work across three columns for a single string and this is better anyway As long as the events went like this 1) type in search string 2) choose radio button for what to search in 3) click the search button it worked. But if events went like this: 1) choose a radio button 2) click into field # now the keyboard no longer pops up? OK so I went back and set the "autohilite" to true on a hunch? and OK! now it works on iOS and on Android, with a caveat on Android, which possibly is a bug? 1) choose a radio button: Artists 2) click into the field.. # now with autohilite set to true, the keyboard pops up -- enter "Meena" 3) but now, in the radio button group below, the hilitedbuttons are set to empty?"Artists" is de-selected! 4) user gets the message "Select Search In:" and has to click again on "Artists" Does that seem right? Shouldn't the hilitedbutton remain "sticky" when the user switches focus to, taps into the field? It does on desktop and iOS. It's as if on Android, the radio button group is "hearing about" the mouse event outside as if it were another radio button and deselecting all buttons in it's group. Should I report this? From brahma at hindu.org Thu Aug 24 10:56:01 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Thu, 24 Aug 2017 14:56:01 +0000 Subject: Thoughts on BLOBs in SQLite In-Reply-To: References: Message-ID: <2598CADC-6299-4ECD-9BAB-0B4A8350260B@hindu.org> Tom Glod wrote: so I base encode the binary variable and then save it in a text field in table. no problems and no bs ever. Others do this also. I'm curious from an "uber architecture" point of view, what pros there are to keeping the image data in a base encoded form in the data base versus just keeping a file.jpg on disk? BR From roger.e.eller at sealedair.com Thu Aug 24 10:57:20 2017 From: roger.e.eller at sealedair.com (Roger Eller) Date: Thu, 24 Aug 2017 10:57:20 -0400 Subject: Sending a message to users that floats above everything In-Reply-To: <09923B6A-EEC2-4385-88EC-178B1D849895@iotecdigital.com> References: <0a611470-df5a-9ff6-1e8c-a6659fd5542b@fourthworld.com> <7acbc0b9-ce21-be1e-38f0-a99b3cb15424@hyperactivesw.com> <43EBC00F-71A6-40CC-83AA-4FB67B437DDA@madmansoft.com> <09923B6A-EEC2-4385-88EC-178B1D849895@iotecdigital.com> Message-ID: And we all know that iOS malware is the very best that money can buy! ;-) On Thu, Aug 24, 2017 at 10:47 AM, Bob Sneidar via use-livecode < use-livecode at lists.runrev.com> wrote: > If the malware is good enough, you won't know. ;-) > > Bob S > > > > On Aug 24, 2017, at 05:55 , Roger Eller via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > > I have never experienced any malware attacks, and the > > device continues to serve me well in compatibility-testing of apps > created > > in LiveCode. > > > > ~Roger > > From bobsneidar at iotecdigital.com Thu Aug 24 11:05:34 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Thu, 24 Aug 2017 15:05:34 +0000 Subject: Native Mobile Radio Buttons - Focus on Entry Field on Mobile In-Reply-To: <4F66D2C4-808E-4AA0-AD1E-8B4391A449D8@hindu.org> References: <8FA9CCF7-384D-46EF-B8C9-345EBE47B43B@hindu.org> <4F66D2C4-808E-4AA0-AD1E-8B4391A449D8@hindu.org> Message-ID: <199DD80C-8EB8-4B66-B667-263781BAF2E4@iotecdigital.com> column1 LIKE '%value1%' OR column2 LIKE '%value2%' OR column3 LIKE '%value3%' didn't work for you?? Bob S > On Aug 24, 2017, at 07:50 , Sannyasin Brahmanathaswami via use-livecode wrote: > > # I couldn't get %like% to work across three columns for a single string and this is better anyway From ambassador at fourthworld.com Thu Aug 24 11:39:57 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Thu, 24 Aug 2017 08:39:57 -0700 Subject: Sending a message to users that floats above everything In-Reply-To: <8011B64E-C37E-41D1-A270-1783FD75FEC4@mac.com> References: <8011B64E-C37E-41D1-A270-1783FD75FEC4@mac.com> Message-ID: J. Landman Gay wrote (re. Answer dialogs): > If you want native appearance they are inappropriate. How can they be made HIG conformant? I guess a follow-on question would be: why are they not? -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From capellan2000 at gmail.com Thu Aug 24 11:46:33 2017 From: capellan2000 at gmail.com (Alejandro Tejada) Date: Thu, 24 Aug 2017 11:46:33 -0400 Subject: webP and webM support in LiveCode Message-ID: Hi All, Now that there is an ongoing thread about storing bitmap images inside a SQLite BLOB, I just want to remember that there is an enhancement request in LiveCode Quality Center for supporting webP and webM in LiveCode engine. If webP and webM support in Livecode Engine could help in your current or future work in this development platform, please vote for this enhancement request at the Quality Center: http://quality.livecode.com/show_bug.cgi?id=12448 on 2014-05-19, Alejandro wrote: Although I have posted this request in LiveCode's mail-list, the Quality Center is the place to discuss it. Could you include in LiveCode, support for these modern and updated video, audio and animation formats: webM and webP? http://www.webmproject.org/about/ https://developers.google.com/speed/webp/?csw=1 Notice that already, LiveCode displays webM within revBrowserCef (Chrome Embedded Framework dll). This request ask for displaying and controling webM and webP by LiveCode script within a card or as part of a group, not just within revBrowserCef via javaScript. Al From ambassador at fourthworld.com Thu Aug 24 12:00:34 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Thu, 24 Aug 2017 09:00:34 -0700 Subject: Search Values of Array in "One Go" In-Reply-To: <77346B73-A84A-4DF5-B86F-F0E38D98A079@hindu.org> References: <77346B73-A84A-4DF5-B86F-F0E38D98A079@hindu.org> Message-ID: <66b9ba8e-dae9-3de0-4871-02fe785e44a9@fourthworld.com> Sannyasin Brahmanathaswami wrote: > OK so let's say user want sto search "blues" and I want the UX to > check *all* columns in the array. What is the best way to do this? ... > Is there a more efficient approach? At my local Linux User Group last year a fella from NASA gave a presentation about a system he'd developed for querying planetary data via URLs. The data is huge (basically everything every interplanetary satellite/robot delivers to JPL) and his choice of HDF (Hierarchical Data Format) as the storage base was interesting in itself (imagine a large encoded array but designed for traversal on disk). But even more so was his query API. A thing of beauty. One-line URLs could be entered in a browser to locate just about anything in the massive HDF store. Ultimately it could be seen as a simplified form of XQuery, every bit as elegant and flexible but without the XML-specific cruft (having to account for the mix of elements and attributes). Of course this led me to thinking of ways to use this for LC arrays. It should be possible to craft a library to allow XQuery-like one-liners to locate anything anywhere in any array. It should also be possible to do this in the engine with blindingly-faster efficiency. But as a starting point, fleshing out the API in script seemed at least a good first step. I do not have the time to pursue it in earnest. But XQuery is well documented, and a sufficiently-inspired person may be able to come up with a pretty great query system given sufficient time to explore the possibilities... -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From ambassador at fourthworld.com Thu Aug 24 12:09:13 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Thu, 24 Aug 2017 09:09:13 -0700 Subject: CouchDB, DayBed, etc. In-Reply-To: <1503535134720-4718821.post@n4.nabble.com> References: <1503535134720-4718821.post@n4.nabble.com> Message-ID: pink wrote: > Daybed's built in local storage system is the save stack, works well > on all platforms. Have you considered LSON files (LiveCode encoded arrays)? Where I used to use stack files for some storage options, I've been migrating to LSON with two benefits: - Being raw data outside of a stack object, I never need to think about the IDE's limitation on stack names in memory. - The syntax for working with the resulting variable is a tad simpler than with object properties. As a collection of nested key-value pairs it would seem LSON is a good fit for CouchDB's way of working with data. -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From mark at livecode.com Thu Aug 24 12:15:47 2017 From: mark at livecode.com (Mark Waddingham) Date: Thu, 24 Aug 2017 17:15:47 +0100 Subject: Android Security (was Re: Sending a message to users that floats above everything) In-Reply-To: <0A53FFA5-D606-45F7-9B8D-6DAB54B28416@madmansoft.com> References: <0a611470-df5a-9ff6-1e8c-a6659fd5542b@fourthworld.com> <7acbc0b9-ce21-be1e-38f0-a99b3cb15424@hyperactivesw.com> <43EBC00F-71A6-40CC-83AA-4FB67B437DDA@madmansoft.com> <0A53FFA5-D606-45F7-9B8D-6DAB54B28416@madmansoft.com> Message-ID: <554EFDF7-3C06-41FA-A8EF-24AB16B14FC4@livecode.com> I must confess I read Jacques post as meaning the Google Play Store (google play services are something else - although related). If the store is now present on that percentage of devices then the problem with OS updates more than justifies the recent tightening of the rules of the store... The recent revision essentially mean the OS APIs an app can use are frozen at the point of submission - if you use more than that after installation you are breaking the rules... The fact google play can know what OS APIs are used means they can also use that knowledge to help guard against exploits - so I suspect unpatched android devices are safer than might be thought otherwise... assuming only apps from google play are installed, at least. By the way, the above is mostly speculation based on the recent app guideline changes google have made. I'm sure google keep what they actually do internally a closely guarded secret, like Apple so no-one knows where the holes are. (Sometimes obfuscation is still the best line of defence - if weak). Warmest Regards, Mark. Sent from my iPhone > On 24 Aug 2017, at 15:48, Stephen MacLean via use-livecode wrote: > > >> On Aug 24, 2017, at 3:14 AM, J. Landman Gay via use-livecode wrote: >> >> On 8/24/17 12:22 AM, Stephen MacLean via use-livecode wrote: >>> My point was that unfortunately that only means ~15% of currently active Android devices are fairly safe and Bob?s comment, while brief, was fair as far as it was concerned. Once Android hits iOS?s ~85% active devices on latest version of the os, then it wouldn?t be. I just don?t think that will happen anytime soon because of the way the OS is rolled out through 3rd parties for the most part. >> >> Actually, I was trying to make the opposite point -- Google Play Services is now on (at least) 93% of all Android devices. It runs on any Android regardless of manufacturer or customized OS, provided the device is authorized to access the Google Play Store. It's had over 5 billion downloads and is, among other things, the security layer. >> >> https://www.androidcentral.com/genius-google-play-services >> >> It isn't only the "Google-made" phones that are protected, it's almost all of them now. >> > > > I think it?s important to understand exactly what Google Play Services is and isn?t. > > It provides a base API, like Windows .NET, that runs on a variety of Android versions giving developers something common to develop against. Google Play Services can and does update those API?s and also updates Google Apps and components such as WebKit. It also provides malware scanning and blocking similar to Windows Defender, i.e. it is a layer of security > > It does NOT provide core OS security updates. Those are, except for Google?s Pixel and Nexus, incorporated and provided by the manufacturer as a patch level update to the OS. It is not THE security layer for Android, just a part of it. > > So while 93% of Android devices have a layer of protection, it would be like saying Windows XP or Mac OS X 10.6 or even unpatched Widows 10 or macOS are ?protected? because they have a malware scanner/blocker running. Sure, it may blunt some/most of it, but they are still vulnerable. > > At least with Google Play Services you get updates to some API components like WebKit, although that only starts with Android 5.0. You don?t get that on iOS. > > Also, just like other OS vendors, it?s rolling support. 4.4 is the last supported version for Google Play and Google warns that will change as newer versions come out. > > See https://source.android.com/security/overview/updates-resources and https://source.android.com/security/bulletin/ for more details. > > Sorry, this is getting long winded and probably pointless. To me, this isn?t about OS vs OS. You aren?t safe/secure/protected if you don?t fix the underlying problem. > > Best, > > Steve MacLean > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From jonathandlynch at gmail.com Thu Aug 24 12:22:56 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Thu, 24 Aug 2017 12:22:56 -0400 Subject: Thoughts on BLOBs in SQLite In-Reply-To: <2598CADC-6299-4ECD-9BAB-0B4A8350260B@hindu.org> References: <2598CADC-6299-4ECD-9BAB-0B4A8350260B@hindu.org> Message-ID: The advantage comes if you are displaying the image through a web browser - you can put in the URL for the image and let the webview handle concurrent image loading. I still went the other way, for other reasons, but that is one of the advantages. The other is database file size. Sent from my iPhone > On Aug 24, 2017, at 10:56 AM, Sannyasin Brahmanathaswami via use-livecode wrote: > > Tom Glod wrote: > > so I base encode the binary variable and then save it in a text field in > table. no problems and no bs ever. > > > Others do this also. I'm curious from an "uber architecture" point of view, what pros there are to keeping the image data in a base encoded form in the data base versus just keeping a file.jpg on disk? > > BR > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From rdimola at evergreeninfo.net Thu Aug 24 13:06:37 2017 From: rdimola at evergreeninfo.net (Ralph DiMola) Date: Thu, 24 Aug 2017 13:06:37 -0400 Subject: Sierra update --> Xcode install --> LC no provisioning profile In-Reply-To: References: Message-ID: <020701d31cfb$5a117960$0e346c20$@net> Here's the deal with Sierra and LC 8.1.6 Xcode 8.3.3==> SDK 10.3 Simulator 10.3 Xcode 7.1.2==> SDK 9.2 Simulator 9.2 Xcode 6.2==> SDK 8.2 Simulator 8.2 Xcode 5.1.1==> SDK 7.1 Simulator 7.1 Xcode 4.6.3==> SDK 6.1 Simulator 6.1 To load all these versions without problems: 1] Keep only one version of Xcode in the applications folder named Xcode.app. 2] Create an OldXcodeVersions folder. 3] When upgrading: A] Move Xcode.app from applications folder to the OldXcodeVersions folder and rename it to Xcode.x.y.app. B] Download the new Xcode from the developer portal. C] Open up downloads and install Xcode into the applications folder.. D] Open up the new Xcode.app E] In the LC prefs select...add a new Xcode. F] Add the Xcode that you just moved and renamed in A and B. This give you access to older SDKs and simulators. 4] Never upgrade Xcode.***** 5] Never install from App Store . ***** 6] Trash any versions of Xcode that were upgrades and re-download them fresh from developers portal. 7] Open the downloaded Xcode versions one at a time named Xcode.app in the applications folder and then move to the OldXcodeVersions folder and rename. Repeat 6-7 for each old version you want access to. While installing these old versions temporarily move your current xcode.app from the applications to a temporary folder until done. Ralph DiMola IT Director Evergreen Information Services rdimola at evergreeninfo.net From bobsneidar at iotecdigital.com Thu Aug 24 13:50:23 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Thu, 24 Aug 2017 17:50:23 +0000 Subject: Search Values of Array in "One Go" In-Reply-To: <66b9ba8e-dae9-3de0-4871-02fe785e44a9@fourthworld.com> References: <77346B73-A84A-4DF5-B86F-F0E38D98A079@hindu.org> <66b9ba8e-dae9-3de0-4871-02fe785e44a9@fourthworld.com> Message-ID: I mentioned a few years ago when arrays first were introduced that there ought to be an engine based way to seach arrays for values, returning matching key references (not just one but ALL). If you are only interested in certain keys you could then filter the results. To make this fast for large arrays, you might have to have a way to index the arrays, but now we are talking about a memory based database system, and I am not sure Livecode arrays are the way to go. It may be enough to be able to do a kind of full text search on an array in memory. I suppose thinking about it you could arrayencode an array then do a search on it, but I am not sure how you would discern the array keys. I'll have to look at the encoded format. At that point if that approach worked, the only advantage to searching a memory based array is you would be skipping the encoding step, and searching the actual array in memory with the engine might be considerably faster than having LC search a text variable. I'll play around with it to see what I can come up with. Bob S > On Aug 24, 2017, at 09:00 , Richard Gaskin via use-livecode wrote: > > At my local Linux User Group last year a fella from NASA gave a presentation about a system he'd developed for querying planetary data via URLs. > > The data is huge (basically everything every interplanetary satellite/robot delivers to JPL) and his choice of HDF (Hierarchical Data Format) as the storage base was interesting in itself (imagine a large encoded array but designed for traversal on disk). > > But even more so was his query API. A thing of beauty. One-line URLs could be entered in a browser to locate just about anything in the massive HDF store. > > Ultimately it could be seen as a simplified form of XQuery, every bit as elegant and flexible but without the XML-specific cruft (having to account for the mix of elements and attributes). > > Of course this led me to thinking of ways to use this for LC arrays. > > It should be possible to craft a library to allow XQuery-like one-liners to locate anything anywhere in any array. > > It should also be possible to do this in the engine with blindingly-faster efficiency. > > But as a starting point, fleshing out the API in script seemed at least a good first step. > > I do not have the time to pursue it in earnest. But XQuery is well documented, and a sufficiently-inspired person may be able to come up with a pretty great query system given sufficient time to explore the possibilities... > > -- > Richard Gaskin > Fourth World Systems > Software Design and Development for the Desktop, Mobile, and the Web From jacque at hyperactivesw.com Thu Aug 24 13:56:21 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Thu, 24 Aug 2017 12:56:21 -0500 Subject: Sending a message to users that floats above everything In-Reply-To: References: <8011B64E-C37E-41D1-A270-1783FD75FEC4@mac.com> Message-ID: <15e15634588.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> My main point was that intrusive answer dialogs aren't appropriate for any OS now, and no mobile platform uses them. There are no native substitutes. The equivalent for Android is in the Android object library I made which is now available for anyone who attended my LC Global session. If you want to make your own, it's basically just a group with appropriately shadowed and colored controls, which communicate with the calling handler via dialogData. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com On August 24, 2017 10:43:24 AM Richard Gaskin via use-livecode wrote: > J. Landman Gay wrote (re. Answer dialogs): > > > If you want native appearance they are inappropriate. > > How can they be made HIG conformant? > > I guess a follow-on question would be: why are they not? > > -- > Richard Gaskin > Fourth World Systems > Software Design and Development for the Desktop, Mobile, and the Web > ____________________________________________________________________ > Ambassador at FourthWorld.com http://www.FourthWorld.com > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From bobsneidar at iotecdigital.com Thu Aug 24 14:10:42 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Thu, 24 Aug 2017 18:10:42 +0000 Subject: Search Values of Array in "One Go" In-Reply-To: References: <77346B73-A84A-4DF5-B86F-F0E38D98A079@hindu.org> <66b9ba8e-dae9-3de0-4871-02fe785e44a9@fourthworld.com> Message-ID: Okay it's not entirely straight forward. I took a simple array from a datagrid with one record and ran this on it: on mouseUp pButtonNumber put the dgData of group "dgsites" into aSiteData put arrayencode(aSiteData) into tSiteData repeat for each char tChar in tSiteData add 1 to tCounter if cleanAscii(tChar) is not empty then next repeat put tCounter & tab & charToNum(tChar) & cr after tAscii end repeat set the itemDelimiter to tab sort lines of tAscii numeric by item 2 of each put tAscii end mouseUp This returns a tab delimited list of position and non-printing ascii characters ranging from 0 to 58. What the ascii characters designate is the mystery. Any documentation on that? Bob S > On Aug 24, 2017, at 10:50 , Bob Sneidar via use-livecode wrote: > > I suppose thinking about it you could arrayencode an array then do a search on it, but I am not sure how you would discern the array keys. I'll have to look at the encoded format. At that point if that approach worked, the only advantage to searching a memory based array is you would be skipping the encoding step, and searching the actual array in memory with the engine might be considerably faster than having LC search a text variable. > > I'll play around with it to see what I can come up with. > > Bob S From brahma at hindu.org Thu Aug 24 14:21:34 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Thu, 24 Aug 2017 18:21:34 +0000 Subject: What's Happening with TactileMedia? Message-ID: Scott's web site is offline. Is he ok? Via mobile phone From gbojsza at gmail.com Thu Aug 24 14:49:29 2017 From: gbojsza at gmail.com (Glen Bojsza) Date: Thu, 24 Aug 2017 18:49:29 +0000 Subject: Sierra update --> Xcode install --> LC no provisioning profile In-Reply-To: <020701d31cfb$5a117960$0e346c20$@net> References: <020701d31cfb$5a117960$0e346c20$@net> Message-ID: Thanks Ralph...I will use this as a guide. I don't work enough with Xcode ( or Android ) to keep up on the basics. Glen On Thu, Aug 24, 2017 at 1:09 PM Ralph DiMola via use-livecode < use-livecode at lists.runrev.com> wrote: > Here's the deal with Sierra and LC 8.1.6 > > Xcode 8.3.3==> SDK 10.3 Simulator 10.3 > Xcode 7.1.2==> SDK 9.2 Simulator 9.2 > Xcode 6.2==> SDK 8.2 Simulator 8.2 > Xcode 5.1.1==> SDK 7.1 Simulator 7.1 > Xcode 4.6.3==> SDK 6.1 Simulator 6.1 > > To load all these versions without problems: > > 1] Keep only one version of Xcode in the applications folder named > Xcode.app. > 2] Create an OldXcodeVersions folder. > 3] When upgrading: > A] Move Xcode.app from applications folder to the OldXcodeVersions folder > and rename it to Xcode.x.y.app. > B] Download the new Xcode from the developer portal. > C] Open up downloads and install Xcode into the applications folder.. > D] Open up the new Xcode.app > E] In the LC prefs select...add a new Xcode. > F] Add the Xcode that you just moved and renamed in A and B. This give > you > access to older SDKs and simulators. > 4] Never upgrade Xcode.***** > 5] Never install from App Store . ***** > 6] Trash any versions of Xcode that were upgrades and re-download them > fresh > from developers portal. > 7] Open the downloaded Xcode versions one at a time named Xcode.app in the > applications folder and then move to the OldXcodeVersions folder and > rename. > > Repeat 6-7 for each old version you want access to. While installing these > old versions temporarily move your current xcode.app from the applications > to a temporary folder until done. > > > Ralph DiMola > IT Director > Evergreen Information Services > rdimola at evergreeninfo.net > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From matthias_livecode_150811 at m-r-d.de Thu Aug 24 14:59:53 2017 From: matthias_livecode_150811 at m-r-d.de (Matthias Rebbe) Date: Thu, 24 Aug 2017 20:59:53 +0200 Subject: What's Happening with TactileMedia? In-Reply-To: References: Message-ID: <156E1DE9-C3FC-493C-B49E-51E4FED05AFE@m-r-d.de> Seems he changed his domain name tactilemedia.com redirects to http://scottrossi.design/index.html without problem here Matthias Rebbe +49 5741 310000 ?matthiasrebbe.eu ? > Am 24.08.2017 um 20:21 schrieb Sannyasin Brahmanathaswami via use-livecode >: > > Scott's web site is offline. > > Is he ok? > > Via mobile phone > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From bobsneidar at iotecdigital.com Thu Aug 24 15:03:18 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Thu, 24 Aug 2017 19:03:18 +0000 Subject: Search Values of Array in "One Go" In-Reply-To: References: <77346B73-A84A-4DF5-B86F-F0E38D98A079@hindu.org> <66b9ba8e-dae9-3de0-4871-02fe785e44a9@fourthworld.com> Message-ID: <1BB9DE14-85DB-4828-9837-60EE5407C5B4@iotecdigital.com> I've partially deciphered it. I created a tab delimited table of each non-printing character followed by the text between that and the next non-printing character. Here is a sample: 12 contactphone 8 0 12 661-257-1177 0 13 contactonsite 8 0 5 false 0 12 contactemail 7 0 6 itname 7 0 The 12 before the contactphone and the 5 before the false are clearly the length of the value. 0 is some kind of delimiter. 8 following contactphone and contactonsite appears to mean "what follows is a value" (also preceded by a length) and 7 means "empty". What is clear before going any further is that a key cannot be discerned from this format. At least not very easily. Now I wrote a function years ago similar to printKeys() but specifically designed so that filter could be used on the result. It produces a comma delimited list, each item of which is a tab separated value of the array key and the value. It looks like this: [1] ["addr2"] ,[1] ["smtppassword"] none,[1] ["itemail"] ,[1] ["contactphone"] 661-257-1177,[1] ["contactonsite"] false, etc. You can see from this format that you can convert to lines and then you can filter the lines by key or by value. If you want by key you could filter by quote & key & quote. Otherwise for values filter by tab & value. The downside would be working with really large arrays because of course this loops through every array element to produce a textual representation of the array. Still, it's something if you already have an array for one reason or another, and you want to search/filter the array for keys or values. Bob S From brahma at hindu.org Thu Aug 24 15:14:49 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Thu, 24 Aug 2017 19:14:49 +0000 Subject: Search Values of Array in "One Go" In-Reply-To: <1BB9DE14-85DB-4828-9837-60EE5407C5B4@iotecdigital.com> References: <77346B73-A84A-4DF5-B86F-F0E38D98A079@hindu.org> <66b9ba8e-dae9-3de0-4871-02fe785e44a9@fourthworld.com> <1BB9DE14-85DB-4828-9837-60EE5407C5B4@iotecdigital.com> Message-ID: Bob: fascinating [1] ["addr2"] ,[1] ["smtppassword"] none,[1] ["itemail"] ,[1] ["contactphone"] 661-257-1177,[1] ["contactonsite"] false, etc. what about a 2 diminsional array You can see from this format that you can convert to lines and then you can filter the lines by key or by value. If you want by key you could filter by quote & key & quote. Otherwise for values filter by tab & value. The downside would be working with really large arrays because of course this loops through every array element to produce a textual representation of the array. Still, it's something if you already have an array for one reason or another, and you want to search/filter the array for keys or values. BR: well I am now going back to the dbase, because it was so easy just to pass a new query array (name value pairs for the columns to look up) but on android the dBase lib and look up is slow on Android. I wonder if doing something like youa re doing with the array that is already in memory would be faster. I will have to figure out exactly what you are doing first? can you post the full functions? From brahma at hindu.org Thu Aug 24 15:15:32 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Thu, 24 Aug 2017 19:15:32 +0000 Subject: What's Happening with TactileMedia? In-Reply-To: <156E1DE9-C3FC-493C-B49E-51E4FED05AFE@m-r-d.de> References: <156E1DE9-C3FC-493C-B49E-51E4FED05AFE@m-r-d.de> Message-ID: OK great.. found it. but I guess we get his TMControls2 on the LC site. On 8/24/17, 9:00 AM, "use-livecode on behalf of Matthias Rebbe via use-livecode" wrote: Seems he changed his domain name tactilemedia.com redirects to http://scottrossi.design/index.html without problem here From ambassador at fourthworld.com Thu Aug 24 15:28:52 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Thu, 24 Aug 2017 12:28:52 -0700 Subject: Sending a message to users that floats above everything In-Reply-To: <15e15634588.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> References: <15e15634588.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Message-ID: <23e44c28-d97b-cfed-a373-3cc0a4b5918c@fourthworld.com> J. Landman Gay wrote: > My main point was that intrusive answer dialogs aren't appropriate for > any OS now, and no mobile platform uses them. There are no native > substitutes. I see. Thanks. I was thinking of Answer as serving two purposes: a) Immediate notification, often requiring confirmation or other decision b) Picker for list of short-string options Use case a) is probably best handled in toasts, but maybe only in some cases. Sometimes a user really needs to know something, to the point that it's worth stopping the workflow to require confirmation. Case b) is of course more appropriately handled with mobile pick lists, though it sort of begs the question why the native pick list isn't used for such cases. I suppose there's no way for the engine to determine whether a given call to the answer command is case a) or b), so maybe the generic dialog isn't a completely useless thing... BUT... ...since the alternative for use b) is something that can't be used at all in the IDE or any desktop app at all, it requires us to write forking code to handle it. Another tediously non-xTalk way of working.... > The equivalent for Android is in the Android object library I made > which is now available for anyone who attended my LC Global session. For those who didn't, what is it and where it is? -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From matthias_livecode_150811 at m-r-d.de Thu Aug 24 15:29:43 2017 From: matthias_livecode_150811 at m-r-d.de (Matthias Rebbe) Date: Thu, 24 Aug 2017 21:29:43 +0200 Subject: What's Happening with TactileMedia? In-Reply-To: References: <156E1DE9-C3FC-493C-B49E-51E4FED05AFE@m-r-d.de> Message-ID: It seems he just redirected the 1st page. The forum is still available at http://www.tactilemedia.com/forums/categories/tmcontrol-dev Matthias Rebbe +49 5741 310000 ?matthiasrebbe.eu ? > Am 24.08.2017 um 21:15 schrieb Sannyasin Brahmanathaswami via use-livecode >: > > OK great.. found it. > > but I guess we get his TMControls2 on the LC site. > > > > > On 8/24/17, 9:00 AM, "use-livecode on behalf of Matthias Rebbe via use-livecode" on behalf of use-livecode at lists.runrev.com > wrote: > > Seems he changed his domain name > tactilemedia.com > redirects to http://scottrossi.design/index.html > without problem here > > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From ambassador at fourthworld.com Thu Aug 24 15:30:29 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Thu, 24 Aug 2017 12:30:29 -0700 Subject: What's Happening with TactileMedia? In-Reply-To: References: Message-ID: <95dd1da1-a944-544e-0411-37c93ea5aee3@fourthworld.com> Sannyasin Brahmanathaswami wrote: > Scott's web site is offline. Raney, Rossi, McDonald, or someone else? -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From brahma at hindu.org Thu Aug 24 15:32:10 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Thu, 24 Aug 2017 19:32:10 +0000 Subject: Native Mobile Radio Buttons - Focus on Entry Field on Mobile In-Reply-To: <199DD80C-8EB8-4B66-B667-263781BAF2E4@iotecdigital.com> References: <8FA9CCF7-384D-46EF-B8C9-345EBE47B43B@hindu.org> <4F66D2C4-808E-4AA0-AD1E-8B4391A449D8@hindu.org> <199DD80C-8EB8-4B66-B667-263781BAF2E4@iotecdigital.com> Message-ID: <5D2DB398-9079-4ADF-B183-5FB049188FF6@hindu.org> @ Bob yes that should work, but I'm using AGdbase lib and it defaults to AND has he is off to the annual Brazil JS Party till Wednesday? so I ended up giving the user discreet options, which I think is actually better. @ Mike TMControls2 I don't see this anywhere now?Scott has something that is iOS only on his new site? but we need for Android also. Wow, only 14 extensions at the LC "store" On 8/24/17, 5:06 AM, "use-livecode on behalf of Bob Sneidar via use-livecode" wrote: column1 LIKE '%value1%' OR column2 LIKE '%value2%' OR column3 LIKE '%value3%' didn't work for you?? Bob S From ambassador at fourthworld.com Thu Aug 24 15:33:20 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Thu, 24 Aug 2017 12:33:20 -0700 Subject: What's Happening with TactileMedia? In-Reply-To: <95dd1da1-a944-544e-0411-37c93ea5aee3@fourthworld.com> References: <95dd1da1-a944-544e-0411-37c93ea5aee3@fourthworld.com> Message-ID: I just wrote: > Sannyasin Brahmanathaswami wrote: > > > Scott's web site is offline. > > Raney, Rossi, McDonald, or someone else? D'oh! Apologies: of course the subject line makes it clear. FWIW tactilemedia.com seems to work for me with deep links, but going to the domain by itself redirects to scottrossi.design -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From skiplondon at gmail.com Thu Aug 24 15:35:33 2017 From: skiplondon at gmail.com (Skip Kimpel) Date: Thu, 24 Aug 2017 15:35:33 -0400 Subject: What's Happening with TactileMedia? In-Reply-To: <95dd1da1-a944-544e-0411-37c93ea5aee3@fourthworld.com> References: <95dd1da1-a944-544e-0411-37c93ea5aee3@fourthworld.com> Message-ID: I can only dream that they would bring Scott into the folds of the LiveCode and make his amazing visual interface components part of the base package. It would be win/win for everybody! SKIP On Thu, Aug 24, 2017 at 3:30 PM, Richard Gaskin via use-livecode < use-livecode at lists.runrev.com> wrote: > Sannyasin Brahmanathaswami wrote: > > > Scott's web site is offline. > > Raney, Rossi, McDonald, or someone else? > > -- > Richard Gaskin > Fourth World Systems > Software Design and Development for the Desktop, Mobile, and the Web > ____________________________________________________________________ > Ambassador at FourthWorld.com http://www.FourthWorld.com > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From irog at mac.com Thu Aug 24 15:52:25 2017 From: irog at mac.com (Roger Guay) Date: Thu, 24 Aug 2017 13:52:25 -0600 Subject: What's Happening with TactileMedia? In-Reply-To: References: <95dd1da1-a944-544e-0411-37c93ea5aee3@fourthworld.com> Message-ID: Great Idea!! Roger > On Aug 24, 2017, at 1:35 PM, Skip Kimpel via use-livecode wrote: > > I can only dream that they would bring Scott into the folds of the LiveCode > and make his amazing visual interface components part of the base package. > It would be win/win for everybody! > From ambassador at fourthworld.com Thu Aug 24 15:52:47 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Thu, 24 Aug 2017 12:52:47 -0700 Subject: Search Values of Array in "One Go" In-Reply-To: References: Message-ID: <58ba17b3-d92b-63da-31b4-9d991f10512a@fourthworld.com> Bob Sneidar wrote: > I suppose thinking about it you could arrayencode an array then do a > search on it You probably don't want to do that. I've given a lot of thought to methods of indexing large LSON files on disk, and I can find no method anywhere near as practical as working with them in their native array structure, given their linear, non-indexed LSON format. Besides, in order to serialize an LC array it needs to be small enough to fit into RAM to begin with, so the one thing we know about all LSON files is that they fit into RAM nicely. :) It's been a while since Mark Waddingham generously provided some notes in the LSON format (for the older format, which has changed since the introduction of Unicode in v7), but IIRC it was roughly: 0x05 -- one-bye header indicating that what follows is an array (now 0x06 in v7 and later) NULL <4-byte data length indicator> There is a different op-code for numbers than for strings (IIRC 0x02 for numbers), allowing numbers to use a more compact binary form. I'm guessing that in addition to the new op-code indicating an array type, the former NULL separator between element name and length UINT4 has been replaced with a preceding length byte, since of course NULLs can be part of the Unicode string of the element name. Nice tidy format, well suited for disk storage and network transfer, but looking for things requires linear search in LSON, whereas the de-serialized native array form takes advantage of the super-quick bucket hash to find a given key. Much as XQuery works on an in-memory, already-parsed form of XML, searching associative arrays in memory will be the way to go. So looping is both faster to execute and easier to script in array form. The biggest challenges would be parsing the query expression, and generalizing evaluation within the loop(s) to handle the range of query options. -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From MikeKerner at roadrunner.com Thu Aug 24 16:08:26 2017 From: MikeKerner at roadrunner.com (Mike Kerner) Date: Thu, 24 Aug 2017 16:08:26 -0400 Subject: What's Happening with TactileMedia? In-Reply-To: References: <95dd1da1-a944-544e-0411-37c93ea5aee3@fourthworld.com> Message-ID: There are a bunch of us that keep bugging Scott about doing two things: 1) OSS'ing tmc (but the source is unlocked, so if you pay or it, you get the source, anyway, and it's pretty easy to read) or 2) Making tmc3. The problem with this is that until components and widgets settle down, there is a good chance that any work done on them will have to be redone. From MikeKerner at roadrunner.com Thu Aug 24 16:10:47 2017 From: MikeKerner at roadrunner.com (Mike Kerner) Date: Thu, 24 Aug 2017 16:10:47 -0400 Subject: What's Happening with TactileMedia? In-Reply-To: References: <95dd1da1-a944-544e-0411-37c93ea5aee3@fourthworld.com> Message-ID: And I'm guessing that we all just caught the DNS changeover - earlier, if I went to tactilemedia.com, it came back empty, but now it redirects correctly. On Thu, Aug 24, 2017 at 4:08 PM, Mike Kerner wrote: > There are a bunch of us that keep bugging Scott about doing two things: > 1) OSS'ing tmc (but the source is unlocked, so if you pay or it, you get > the source, anyway, and it's pretty easy to read) or > 2) Making tmc3. The problem with this is that until components and > widgets settle down, there is a good chance that any work done on them will > have to be redone. > -- On the first day, God created the heavens and the Earth On the second day, God created the oceans. On the third day, God put the animals on hold for a few hours, and did a little diving. And God said, "This is good." From bobsneidar at iotecdigital.com Thu Aug 24 16:13:01 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Thu, 24 Aug 2017 20:13:01 +0000 Subject: Search Values of Array in "One Go" In-Reply-To: References: <77346B73-A84A-4DF5-B86F-F0E38D98A079@hindu.org> <66b9ba8e-dae9-3de0-4871-02fe785e44a9@fourthworld.com> <1BB9DE14-85DB-4828-9837-60EE5407C5B4@iotecdigital.com> Message-ID: <1E377641-8911-4389-A931-8B29A1D682F5@iotecdigital.com> This will work with any array. It recursively calls itself as it encounters arrays within arrays. I agree with Richard that if all you want is one shot at an array to find the element(s) you are looking for, then this may (or may not) be a cleaner approach, but I think if you are taking multiple passes at finding/filtering with an array, this will at least get you there. If filtering with multiple passes, remember to put the text of the array in another variable as filter *replaces* the contents of the source variable with the results. Here is the function. Thinking about it, I suppose you could modify this to include a filter parameter so that only the keys matching the filter would be returned. Bob S function altPrintKeys @pArray, theKeyList put numtochar(11) into vertTab put numtochar(30) into altCr put the keys of pArray into theKeys sort theKeys numeric repeat FOR each line theKey in theKeys put "[" & theKey & "] " after theKeyList if theKey is not a number then replace "[" & theKey & "]" WITH "[" & quote & theKey & quote & "]" in theKeyList end if if pArray[theKey] is an array then put pArray[theKey] into theTempArray put altPrintKeys(theTempArray, theKeyList, pFullData) after theText put empty into the last word of theKeyList delete the last char of theKeyList put cr into the last char of theText else put "pArray " & the last word of theKeyList into theKeyName -- put "put " & theKeyName & " into theValue" into theCommand -- do theCommand put value(theKeyName) into theValue replace tab WITH vertTab in theValue replace return WITH altCr in theValue put theKeyList & tab & theValue & comma after theText put empty into the last word of theKeyList delete the last char of theKeyList end if end repeat return theText end altPrintKeys > On Aug 24, 2017, at 12:14 , Sannyasin Brahmanathaswami via use-livecode wrote: > > what about a 2 diminsional array From jacque at hyperactivesw.com Thu Aug 24 16:28:24 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Thu, 24 Aug 2017 15:28:24 -0500 Subject: Browser widget android local file problem In-Reply-To: References: Message-ID: <465f346c-1387-7abe-ed3a-f755e9145c35@hyperactivesw.com> On 8/24/17 8:29 AM, Alan via use-livecode wrote: > Any ideas why there's a difference between the resources and documents specialFolderPaths? > > Why does the "documents" specialFolderPath here start with/data/data/ and the resources one start with/data/app/ ?? Like on a desktop machine, the folders are located in different places in the file hierarchy. These are actually virtual folders; they don't really exist since the whole thing is done in memory. If you aren't able to get results from the documents folder, I'd have the script check first to make sure the file is really there. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com From jacque at hyperactivesw.com Thu Aug 24 16:39:13 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Thu, 24 Aug 2017 15:39:13 -0500 Subject: What's Happening with TactileMedia? In-Reply-To: References: <95dd1da1-a944-544e-0411-37c93ea5aee3@fourthworld.com> Message-ID: <06d249e4-1cfc-523a-905a-6e79c3d1c5b6@hyperactivesw.com> On 8/24/17 3:10 PM, Mike Kerner via use-livecode wrote: > And I'm guessing that we all just caught the DNS changeover - earlier, if I > went to tactilemedia.com, it came back empty, but now it redirects > correctly. If he's on DreamHost (and I think he may be) they had a DDoS attack that lasted a couple of hours. One of my client's site was unreachable right before a big demo was about to begin. Figures. They're pretty much back online now. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com From dan at clearvisiontech.com Thu Aug 24 16:39:26 2017 From: dan at clearvisiontech.com (Dan Friedman) Date: Thu, 24 Aug 2017 20:39:26 +0000 Subject: Site won't load Message-ID: <4EB88726-800B-4E72-B24F-73D1F1B72C62@clearvisiontech.com> I?m perplexed! What could cause a site to not load in a mobile native browser? (It fails in the browser widget too). If I load ?google.com?, it loads. If I load ?livecode.com? it dosent. It works in the IDE, but not in the simulator or actual device. It also works on the simulator and actual device in Safari. mobileControlSet "webPage",?url?,http://www.google.com? //loads fine mobileControlSet "webPage",?url?,http://www.livecode.com? //fails! Nothing happens. Also, the ?result? is empty. Any thoughts? -Dan From monte at appisle.net Thu Aug 24 16:53:04 2017 From: monte at appisle.net (Monte Goulding) Date: Fri, 25 Aug 2017 06:53:04 +1000 Subject: Site won't load In-Reply-To: <4EB88726-800B-4E72-B24F-73D1F1B72C62@clearvisiontech.com> References: <4EB88726-800B-4E72-B24F-73D1F1B72C62@clearvisiontech.com> Message-ID: Try changing to https because... ATS. > On 25 Aug 2017, at 6:39 am, Dan Friedman via use-livecode wrote: > > I?m perplexed! What could cause a site to not load in a mobile native browser? (It fails in the browser widget too). If I load ?google.com?, it loads. If I load ?livecode.com? it dosent. It works in the IDE, but not in the simulator or actual device. It also works on the simulator and actual device in Safari. > > mobileControlSet "webPage",?url?,http://www.google.com? //loads fine > > mobileControlSet "webPage",?url?,http://www.livecode.com? //fails! Nothing happens. Also, the ?result? is empty. > > Any thoughts? > > -Dan > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From dan at clearvisiontech.com Thu Aug 24 17:00:34 2017 From: dan at clearvisiontech.com (Dan Friedman) Date: Thu, 24 Aug 2017 21:00:34 +0000 Subject: Site won't load In-Reply-To: <> Message-ID: <05A129F9-26FD-417C-B5F7-2CE5CD011DA3@clearvisiontech.com> Monte, Thank you for the reply! That works for https://www.livecode.com, but not for other sites ? including my own! What is ?ATS?? Are you suggesting that LC can only load https sites? -Dan Try changing to https because... ATS. > On 25 Aug 2017, at 6:39 am, Dan Friedman via use-livecode > wrote: > > I?m perplexed! What could cause a site to not load in a mobile native browser? (It fails in the browser widget too). If I load ?google.com?, it loads. If I load ?livecode.com? it dosent. It works in the IDE, but not in the simulator or actual device. It also works on the simulator and actual device in Safari. > > mobileControlSet "webPage",?url?,Error! Hyperlink reference not valid. //loads fine > > mobileControlSet "webPage",?url?,Error! Hyperlink reference not valid. //fails! Nothing happens. Also, the ?result? is empty. > > Any thoughts? > > -Dan From rdimola at evergreeninfo.net Thu Aug 24 17:01:41 2017 From: rdimola at evergreeninfo.net (Ralph DiMola) Date: Thu, 24 Aug 2017 17:01:41 -0400 Subject: Site won't load In-Reply-To: <05A129F9-26FD-417C-B5F7-2CE5CD011DA3@clearvisiontech.com> References: <> <05A129F9-26FD-417C-B5F7-2CE5CD011DA3@clearvisiontech.com> Message-ID: <024301d31d1c$30109800$9031c800$@net> You can disable it in the standalone settings(after a warning about the apocalypse). Ralph DiMola IT Director Evergreen Information Services rdimola at evergreeninfo.net -----Original Message----- From: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] On Behalf Of Dan Friedman via use-livecode Sent: Thursday, August 24, 2017 5:01 PM To: use-livecode at lists.runrev.com Cc: Dan Friedman Subject: Re: Site won't load Monte, Thank you for the reply! That works for https://www.livecode.com, but not for other sites ? including my own! What is ?ATS?? Are you suggesting that LC can only load https sites? -Dan Try changing to https because... ATS. > On 25 Aug 2017, at 6:39 am, Dan Friedman via use-livecode > wrote: > > I?m perplexed! What could cause a site to not load in a mobile native browser? (It fails in the browser widget too). If I load ?google.com?, it loads. If I load ?livecode.com? it dosent. It works in the IDE, but not in the simulator or actual device. It also works on the simulator and actual device in Safari. > > mobileControlSet "webPage",?url?,Error! Hyperlink reference not valid. //loads fine > > mobileControlSet "webPage",?url?,Error! Hyperlink reference not valid. //fails! Nothing happens. Also, the ?result? is empty. > > Any thoughts? > > -Dan _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode From MikeKerner at roadrunner.com Thu Aug 24 17:21:44 2017 From: MikeKerner at roadrunner.com (Mike Kerner) Date: Thu, 24 Aug 2017 17:21:44 -0400 Subject: Site won't load In-Reply-To: <024301d31d1c$30109800$9031c800$@net> References: <05A129F9-26FD-417C-B5F7-2CE5CD011DA3@clearvisiontech.com> <024301d31d1c$30109800$9031c800$@net> Message-ID: from https://developer.apple.com/library/content/releasenotes/General/WhatsNewIniOS/Articles/iOS9.html App Transport Security App Transport Security (ATS) enforces best practices in the secure connections between an app and its back end. ATS prevents accidental disclosure, provides secure default behavior, and is easy to adopt; it is also on by default in iOS 9 and OS X v10.11. You should adopt ATS as soon as possible, regardless of whether you?re creating a new app or updating an existing one. If you?re developing a new app, you should use HTTPS exclusively. If you have an existing app, you should use HTTPS as much as you can right now, and create a plan for migrating the rest of your app as soon as possible. In addition, your communication through higher-level APIs needs to be encrypted using TLS version 1.2 with forward secrecy. If you try to make a connection that doesn't follow this requirement, an error is thrown. If your app needs to make a request to an insecure domain, you have to specify this domain in your app's Info.plist file. On Thu, Aug 24, 2017 at 5:01 PM, Ralph DiMola via use-livecode < use-livecode at lists.runrev.com> wrote: > You can disable it in the standalone settings(after a warning about the > apocalypse). > > Ralph DiMola > IT Director > Evergreen Information Services > rdimola at evergreeninfo.net > > > -----Original Message----- > From: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] On > Behalf Of Dan Friedman via use-livecode > Sent: Thursday, August 24, 2017 5:01 PM > To: use-livecode at lists.runrev.com > Cc: Dan Friedman > Subject: Re: Site won't load > > Monte, > > Thank you for the reply! That works for https://www.livecode.com, but > not for other sites ? including my own! What is ?ATS?? Are you > suggesting that LC can only load https sites? > > -Dan > > > Try changing to https because... ATS. > > > On 25 Aug 2017, at 6:39 am, Dan Friedman via use-livecode at lists.runrev.com> > wrote: > > > > I?m perplexed! What could cause a site to not load in a mobile native > browser? (It fails in the browser widget too). If I load ?google.com?, > it loads. If I load ?livecode.com? it dosent. It works in the IDE, but > not in the simulator or actual device. It also works on the simulator and > actual device in Safari. > > > > mobileControlSet "webPage",?url?,Error! Hyperlink reference not valid.< > http://www.google.com%E2%80%9D> //loads fine > > > > mobileControlSet "webPage",?url?,Error! Hyperlink reference not valid.< > http://www.livecode.com%E2%80%9D> //fails! Nothing happens. Also, > the ?result? is empty. > > > > Any thoughts? > > > > -Dan > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > -- On the first day, God created the heavens and the Earth On the second day, God created the oceans. On the third day, God put the animals on hold for a few hours, and did a little diving. And God said, "This is good." From colinholgate at gmail.com Thu Aug 24 17:24:11 2017 From: colinholgate at gmail.com (Colin Holgate) Date: Thu, 24 Aug 2017 14:24:11 -0700 Subject: Site won't load In-Reply-To: <024301d31d1c$30109800$9031c800$@net> References: <05A129F9-26FD-417C-B5F7-2CE5CD011DA3@clearvisiontech.com> <024301d31d1c$30109800$9031c800$@net> Message-ID: <24E4113A-F1D9-4C62-A57A-E4415E1BB7E8@gmail.com> If this was iOS, Apple don?t allow loading of insecure sites. Are the ones that work HTTPS and the ones that don?t HTTP? From monte at appisle.net Thu Aug 24 17:59:23 2017 From: monte at appisle.net (Monte Goulding) Date: Fri, 25 Aug 2017 07:59:23 +1000 Subject: webP and webM support in LiveCode In-Reply-To: References: Message-ID: Hi Alejandro webM would require a reasonable size refactor to players because we would need to wrap a custom player around the library and then decide which player to use depending on the movie file. webP on the other hand looks like it could be added without any refactoring, however, as you can imagine there is a _lot_ of work in adding an image format. It could be that such work is justified by the HTML5 project to help with file size. Failing that and given there?s a workaround of not using the format I imagine it would take a business services contract or an open source contribution to get it done. Then there?s considerations like whether adding the library to the engine is comparable in size to any savings one might make using the format. Not an issue for a browser that displays many websites but for us it would make the project a net loss. Cheers Monte From dan at clearvisiontech.com Thu Aug 24 18:16:34 2017 From: dan at clearvisiontech.com (Dan Friedman) Date: Thu, 24 Aug 2017 22:16:34 +0000 Subject: Corrupted Binaries? Message-ID: <70795067-BD92-4798-AA8D-176307848825@clearvisiontech.com> Ok, so I uploaded my app to Apple and this is what I got back: ---------------- Dear developer, We have discovered one or more issues with your recent delivery for "myAppName". To process your delivery, the following issues must be corrected: Invalid Binary - The app contains one or more corrupted binaries. Rebuild the app and resubmit. Once these issues have been corrected, you can then redeliver the corrected binary. Regards, The App Store team ------------------- Anyone know what they might be talking about? There are no files being copied in (?Copy Files? section of the App Settings). Is this because I checked ?Disable ATS?? -Dan From mark at livecode.com Fri Aug 25 05:03:29 2017 From: mark at livecode.com (Mark Waddingham) Date: Fri, 25 Aug 2017 11:03:29 +0200 Subject: Search Values of Array in "One Go" In-Reply-To: References: Message-ID: <8223b9086f29f0c96cc56d73bf50b322@livecode.com> On 2017-08-23 17:24, Sannyasin Brahmanathaswami via use-livecode wrote: > We use these arrays with media metadata that is extracted from our > database of media metadata. The dbase was originally designed for lots > of columns so that "there is nothing we cannot know about a media > item" incorporating DCIM columns and also W3C media metadata > initiative's recommended properties. In actually usage for any give > media item only a small subset of columns containe any data. but we do > use almost all the columns at one time or another. There are no > blobs, so this is very light weight data. > > Anyway? this results in arrays which contain 1 top level key per > record and that element contains another 40 or so keys for the columns > of the database. most of which are empty/unused. So these arrays are > never "heavy" in terms of bytes. I think you may have already found a solution to what you want to do... However, you'll find my version below. The arrayFindElementsContainingString command is a generic handler which will search all elements of an array recursively for containing pNeedle. It returns a sequence (numerically indexed array) of array paths containing the needle. The handler exploits the 'dynamic path' lookup feature of arrays. If you construct a sequence (numerically keyed array starting at 1) array of strings, you can use that sequence in [ ... ], and the engine will treat it as a sequence of keys. e.g. put "foo" into tPath[1] put "baz" into tPath[2] put tArrayA[tPath] into field "Result" Here the last line is equivalent to tArrayA["foo"]["baz"]. (Note this all works on arrays and strings, the test handler uses Json as a convenient way to represent an array in a field!) -------- TEST HANDLER -- Requires a field "Results" -- Requires a field "Json" containing the JSON form of the array to be searched -- Requires a field "Needle" containing the string to search for -- Requires a field "Results" /* Test the array finding */ command testArrayFind pNeedle /* Clear the results field */ put empty into field "Results" /* Get an array which is JSON encoded in field "Json" as an array */ local tArray put JSONImport(field "Json") into tArray /* Search the array for the needle, fetched from field "Needle" */ arrayFindElementsContainingString tArray, field "Needle" /* Iterate over each found path */ repeat for each element tFoundPath in it /* Each path is a numerically keyed array (sequence), these can be used * directly as array indicies, the engine will iterate through the elements of * the sequence to get the keys to use */ local tValue put tArray[tFoundPath] into tValue /* Create a slash delimited list of keys (note - this won't work if any of the * keys in the path contain '/'!). */ combine tFoundPath with "/" /* Show the list of results in field "Results" in the form: * slash delimited path : value */ put tFoundPath & ":" & tValue & return after field "Results" end repeat end testArrayFind -------- LIBRARY FUNCTIONALITY /* Search all elements of pArray for containment of pNeedle. The * command returns a numerically keyed array in 'it', each element of * which is an array path to an element containing pNeedle. */ command arrayFindElementsContainingString pArray, pNeedle /* We expect an array for pArray */ if pArray is not an array and pArray is not empty then throw "pArray must be an array" end if /* We expect a string for pNeedle */ if pNeedle is an array then throw "pNeedle must be a string" end if /* As arrays are recursive, we pass through the current base path * for the sub-array being searched to an auxillary private command */ local tBasePath put empty into tBasePath /* The auxillary private command accumulates complete paths in * tPaths, which is a numerically keyed array (sequence). */ local tPaths put empty into tPaths _arrayFindElementsContainingString pArray, pNeedle, tBasePath, tPaths /* Using 'return for value' returns the value in 'it' in the caller. */ return tPaths for value end arrayFindElementsContainingString private command _arrayFindElementsContainingString pArray, pNeedle, pBasePath, @xFoundPaths repeat for each key tKey in pArray /* Fetch the value of the key */ local tElement put pArray[tKey] into tElement /* Create a new path from the base path by appending the current key */ local tPath put pBasePath into tPath put tKey into tPath[the number of elements in tPath + 1] /* What we do depends on the content of the element */ if tElement is an array then /* If the element is an array, then we recurse passing through the path to this key * as the base path */ _arrayFindElementsContainingString tElement, pNeedle, tPath, xFoundPaths else if tElement contains pNeedle then /* If the element is not an array, it must be a string-like thing so we can check for * for containment of pNeedle, and if it does contain the needle we append the * path to the key to the xPaths sequence */ put tPath into xFoundPaths[the number of elements in xFoundPaths + 1] end if end repeat end _arrayFindElementsContainingString -------- Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From klaus at major-k.de Fri Aug 25 06:55:28 2017 From: klaus at major-k.de (Klaus major-k) Date: Fri, 25 Aug 2017 12:55:28 +0200 Subject: Little OT: PHP script needed In-Reply-To: References: Message-ID: <621073F9-66ED-409D-9A97-56AD70A2399D@major-k.de> Hi all, we have found someone, thanks for all responses! > Am 24.08.2017 um 14:28 schrieb Klaus major-k via use-livecode : > > Hi friends, > > sorry for posting this to this list, but it is a bit of an emergency... > Anyone available for writing a little PHP script I can post things to? > Requirements for the script, it needs to: > ... > Thank you for your attention. > > > Best > > Klaus Best Klaus -- Klaus Major http://www.major-k.de klaus at major-k.de From toolbook at kestner.de Fri Aug 25 09:25:48 2017 From: toolbook at kestner.de (Tiemo Hollmann TB) Date: Fri, 25 Aug 2017 15:25:48 +0200 Subject: can't play h.264 on some windows machines Message-ID: <003c01d31da5$abde7a90$039b6fb0$@kestner.de> Hello, for the video guys amongst you. As we know windows can't play h.264 mp4 videos with the old by LC used directShow API natively. You have to install additionally mp4 filters. I am using the LAV filters in my projects, which usually work fine and the mp4 videos can be played from my LC 8.1.4 programs fine. But from time to time, I have a customer, who can't play my videos in my LC program on his windows 8.1 or windows 10 computers, though the LAV setup was successful, at least without errors. And without videos my programs are not usable. I couldn't find any solution yet for those customers and didn't see any common factor of the affected machines. I don't want wo change the h.264 codec, since it runs fine on most of the machines and yes, we tested without antivirus enabled. Since I can't reproduce the issue on any of my machines, it is very hard to drill it down. Has anybody experienced similar problems with mp4 videos on windows and has found the critical issue or missing link? Thanks for sharing Tiemo From brahma at hindu.org Fri Aug 25 11:43:10 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Fri, 25 Aug 2017 15:43:10 +0000 Subject: Search Values of Array in "One Go" In-Reply-To: <8223b9086f29f0c96cc56d73bf50b322@livecode.com> References: <8223b9086f29f0c96cc56d73bf50b322@livecode.com> Message-ID: <465CBD8E-8DAE-4B06-A434-330A71DE1FEE@hindu.org> @ Mark Waddingham Awesome! thanks, I will test this later? Yes, my solution, at the urging of our Cohorts of the Round Table LiveCode Data Diggers, who earlier said "Don't go looking for your needles in arrays." ( I just reformulated the SQL quaryand passed it back "up" to the stack script which fetched the original complete data set. That worked, but there are many use cases where this will be a better solution. in the context of songs I guess we iterate several times through this example to a case where [title %like% "laughter" OR subtitle %like% "laughter" OR description %like% "laughter" AND genre = "Songs By Nerds" AND theme = "Never Say Can't" requires three trips to the mall: array contains "Laughter" AND array contains " Songs By Nerds " AND array contains "Never Say Can't" But these are very small data sets, relatively speaking.. so it will be fast. But what serialization results is unclear? On 8/24/17, 11:03 PM, "use-livecode on behalf of Mark Waddingham via use-livecode" wrote: I think you may have already found a solution to what you want to do... However, you'll find my version below. The arrayFindElementsContainingString command is a generic handler which will search all elements of an array recursively for containing pNeedle. It returns a sequence (numerically indexed array) of array paths containing the needle. The handler exploits the 'dynamic path' lookup feature of arrays. If you construct a sequence (numerically keyed array starting at 1) array of strings, you can use that sequence in [ ... ], and the engine will treat it as a sequence of keys. e.g. put "foo" into tPath[1] put "baz" into tPath[2] put tArrayA[tPath] into field "Result" Here the last line is equivalent to tArrayA["foo"]["baz"]. (Note this all works on arrays and strings, the test handler uses Json as a convenient way to represent an array in a field!) -------- TEST HANDLER -- Requires a field "Results" -- Requires a field "Json" containing the JSON form of the array to be searched -- Requires a field "Needle" containing the string to search for -- Requires a field "Results" /* Test the array finding */ command testArrayFind pNeedle /* Clear the results field */ put empty into field "Results" /* Get an array which is JSON encoded in field "Json" as an array */ local tArray put JSONImport(field "Json") into tArray /* Search the array for the needle, fetched from field "Needle" */ arrayFindElementsContainingString tArray, field "Needle" /* Iterate over each found path */ repeat for each element tFoundPath in it /* Each path is a numerically keyed array (sequence), these can be used * directly as array indicies, the engine will iterate through the elements of * the sequence to get the keys to use */ local tValue put tArray[tFoundPath] into tValue /* Create a slash delimited list of keys (note - this won't work if any of the * keys in the path contain '/'!). */ combine tFoundPath with "/" /* Show the list of results in field "Results" in the form: * slash delimited path : value */ put tFoundPath & ":" & tValue & return after field "Results" end repeat end testArrayFind -------- LIBRARY FUNCTIONALITY /* Search all elements of pArray for containment of pNeedle. The * command returns a numerically keyed array in 'it', each element of * which is an array path to an element containing pNeedle. */ command arrayFindElementsContainingString pArray, pNeedle /* We expect an array for pArray */ if pArray is not an array and pArray is not empty then throw "pArray must be an array" end if /* We expect a string for pNeedle */ if pNeedle is an array then throw "pNeedle must be a string" end if /* As arrays are recursive, we pass through the current base path * for the sub-array being searched to an auxillary private command */ local tBasePath put empty into tBasePath /* The auxillary private command accumulates complete paths in * tPaths, which is a numerically keyed array (sequence). */ local tPaths put empty into tPaths _arrayFindElementsContainingString pArray, pNeedle, tBasePath, tPaths /* Using 'return for value' returns the value in 'it' in the caller. */ return tPaths for value end arrayFindElementsContainingString private command _arrayFindElementsContainingString pArray, pNeedle, pBasePath, @xFoundPaths repeat for each key tKey in pArray /* Fetch the value of the key */ local tElement put pArray[tKey] into tElement /* Create a new path from the base path by appending the current key */ local tPath put pBasePath into tPath put tKey into tPath[the number of elements in tPath + 1] /* What we do depends on the content of the element */ if tElement is an array then /* If the element is an array, then we recurse passing through the path to this key * as the base path */ _arrayFindElementsContainingString tElement, pNeedle, tPath, xFoundPaths else if tElement contains pNeedle then /* If the element is not an array, it must be a string-like thing so we can check for * for containment of pNeedle, and if it does contain the needle we append the * path to the key to the xPaths sequence */ put tPath into xFoundPaths[the number of elements in xFoundPaths + 1] end if end repeat end _arrayFindElementsContainingString From mark at livecode.com Fri Aug 25 12:01:21 2017 From: mark at livecode.com (Mark Waddingham) Date: Fri, 25 Aug 2017 18:01:21 +0200 Subject: Search Values of Array in "One Go" In-Reply-To: <465CBD8E-8DAE-4B06-A434-330A71DE1FEE@hindu.org> References: <8223b9086f29f0c96cc56d73bf50b322@livecode.com> <465CBD8E-8DAE-4B06-A434-330A71DE1FEE@hindu.org> Message-ID: <841dee4d2b715c7c7ce3ae972acb27c6@livecode.com> On 2017-08-25 17:43, Sannyasin Brahmanathaswami via use-livecode wrote: > @ Mark Waddingham > > Awesome! thanks, I will test this later? > > Yes, my solution, at the urging of our Cohorts of the Round Table > LiveCode Data Diggers, > who earlier said "Don't go looking for your needles in arrays." ( > > I just reformulated the SQL quaryand passed it back "up" to the stack > script which fetched the original complete data set. > That worked, but there are many use cases where this will be a better > solution. > > in the context of songs I guess we iterate several times through this > example to a case where > > > [title %like% "laughter" OR subtitle %like% "laughter" OR description > %like% "laughter" > > AND > > genre = "Songs By Nerds" > > AND > > theme = "Never Say Can't" > > > requires three trips to the mall: > > array contains "Laughter" > AND > array contains " Songs By Nerds " > AND > array contains "Never Say Can't" > > But these are very small data sets, relatively speaking.. so it will > be fast. But what serialization results is unclear? Which is better (using arrays, or the DB direct) largely depends on the size of the dataset. If you have a very large dataset, then you are going to run out of memory if you try and load it all into RAM - so a better approach (as you have done) is to bind the search to SQL queries on the DB. This is very scalable; and if you back everything you do with the (large) dataset by the DB, you get 'only needing what you need in RAM at any one time' essentially for 'free' (although, at the expense of needing to abstract through SQL I suppose). If you have a small dataset (which isn't going to grow, or only grow very slowly) then it probably makes no difference, and you are better off using whichever is easier to code. In terms of generalizing that function - then the key line which checks whether an element matches is: else if tElement contains pNeedle then One could imagine that this could be an arbitrary predicate - pNeedle doesn't have to be a string, so could be an array representing a AND / OR style query; or could be a regex (in which case you'd use matchText). Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From johnpatten at me.com Fri Aug 25 14:06:57 2017 From: johnpatten at me.com (JOHN PATTEN) Date: Fri, 25 Aug 2017 11:06:57 -0700 Subject: HTML5 - Playing Audio files tutorial? Message-ID: <917D1626-F55F-4BCB-AE84-9D53AE32D4D5@me.com> Hi All, I have followed the tutorial here on playing audio files, http://lessons.livecode.com/m/4071/l/742506-how-do-i-play-sound-files-in-html5 I have tried with both a wav file, and a m4a. Neither of them seem to play. Do I have to ?include" the file in the Standalone Settings configuration panel, or can I just add it to my HTML5 project folder? Also, the audio tag, ...that can go right before the ending /body tag? Thank you! From colinholgate at gmail.com Fri Aug 25 14:47:15 2017 From: colinholgate at gmail.com (Colin Holgate) Date: Fri, 25 Aug 2017 11:47:15 -0700 Subject: HTML5 - Playing Audio files tutorial? In-Reply-To: <917D1626-F55F-4BCB-AE84-9D53AE32D4D5@me.com> References: <917D1626-F55F-4BCB-AE84-9D53AE32D4D5@me.com> Message-ID: Normally you would play MP3 or OGG in HTML5. Do MP3 files play ok? > On Aug 25, 2017, at 11:06 AM, JOHN PATTEN via use-livecode wrote: > > Hi All, > > I have followed the tutorial here on playing audio files, http://lessons.livecode.com/m/4071/l/742506-how-do-i-play-sound-files-in-html5 > > I have tried with both a wav file, and a m4a. Neither of them seem to play. > > Do I have to ?include" the file in the Standalone Settings configuration panel, or can I just add it to my HTML5 project folder? > > Also, the audio tag, > > > ...that can go right before the ending /body tag? > > > Thank you! From jacque at hyperactivesw.com Fri Aug 25 14:59:48 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Fri, 25 Aug 2017 13:59:48 -0500 Subject: Sending a message to users that floats above everything In-Reply-To: <23e44c28-d97b-cfed-a373-3cc0a4b5918c@fourthworld.com> References: <15e15634588.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <23e44c28-d97b-cfed-a373-3cc0a4b5918c@fourthworld.com> Message-ID: <10550fdf-584a-dced-bec5-7a62d89d6d5e@hyperactivesw.com> On 8/24/17 2:28 PM, Richard Gaskin via use-livecode wrote: > > > The equivalent for Android is in the Android object library I made > > which is now available for anyone who attended my LC Global session. > > For those who didn't, what is it and where it is? It's an object library I made for myself that just holds various groups and buttons that can be used to simulate Android controls, kind of like Scott Rossi's iOS object libraries. It's a little rough but I uploaded it for conference attendees as a bonus to my presentation. I'm not sure if I'm allowed to give it out to others or if it's supposed to be a perk for those who attended, so right now it's only available to those people. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com From johnpatten at me.com Fri Aug 25 15:09:39 2017 From: johnpatten at me.com (JOHN PATTEN) Date: Fri, 25 Aug 2017 12:09:39 -0700 Subject: HTML5 - Playing Audio files tutorial? In-Reply-To: References: <917D1626-F55F-4BCB-AE84-9D53AE32D4D5@me.com> Message-ID: <501357D4-367A-4BF1-A6EB-1CB8432AD2E9@me.com> Hi Collin, No, the mp3 will not play either. I must be missing a step. :( http://jpatten.on-rev.com/sylvan/HTNML5%20Test.html . (no audio plays) http://jpatten.on-rev.com/sylvan/ TestAudio2.mp3. (plays from browser) > On Aug 25, 2017, at 11:47 AM, Colin Holgate via use-livecode wrote: > > Normally you would play MP3 or OGG in HTML5. Do MP3 files play ok? > > >> On Aug 25, 2017, at 11:06 AM, JOHN PATTEN via use-livecode wrote: >> >> Hi All, >> >> I have followed the tutorial here on playing audio files, http://lessons.livecode.com/m/4071/l/742506-how-do-i-play-sound-files-in-html5 >> >> I have tried with both a wav file, and a m4a. Neither of them seem to play. >> >> Do I have to ?include" the file in the Standalone Settings configuration panel, or can I just add it to my HTML5 project folder? >> >> Also, the audio tag, >> >> >> ...that can go right before the ending /body tag? >> >> >> Thank you! > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From capellan2000 at gmail.com Fri Aug 25 15:12:20 2017 From: capellan2000 at gmail.com (Alejandro Tejada) Date: Fri, 25 Aug 2017 15:12:20 -0400 Subject: webP and webM support in LiveCode Message-ID: Hi Monte, on Thu Aug 24 2017, Monte Goulding wrote: > webM would require a reasonable size refactor to players because > we would need to wrap a custom player around the library and then > decide which player to use depending on the movie file. > webP on the other hand looks like it could be added without any > refactoring, however, as you can imagine there is a _lot_ of work > in adding an image format. It could be that such work is justified > by the HTML5 project to help with file size. Failing that and given > there?s a workaround of not using the format I imagine it would take > a business services contract or an open source contribution to get > it done. Then there?s considerations like whether adding the library > to the engine is comparable in size to any savings one might make > using the format. Not an issue for a browser that displays many websites > but for us it would make the project a net loss. I agree about webM, but savings in storage space provided by webP are the best reason for implementing this image compression format within LiveCode engine. WebP format is between 60 and 40% smaller than JPG images providing much better image quality. WebP compress flat color graphics (with transparency) much better than PNG or GIF. This is not a guess based on visual comparisons. Anyone could confirm these numbers, installing these files and programs in their own computer: 0) Download these Standard Test Images or use your own images: http://sipi.usc.edu/database/ http://r0k.us/graphics/kodak/ http://links.uwaterloo.ca/Repository.html 1) Convert these TIFF and PNG images to WebP (100% Quality) and (80% Quality) https://developers.google.com/speed/webp/download Convert these TIFF and PNG images to JPG (100% Quality) and (87% Quality) using GIMP, ImageMagick or your favorite image conversion software. Notice that webP images are between 60% and 40% smaller than visually equivalent JPG images. 2) Install ImageMagick: https://www.imagemagick.org/script/download.php and compare original TIFF and PNG images with compressed webP and JPG using any or many of these algorithms that measure the differences between images: AE absolute error count, number of different pixels (-fuzz effected) DDSIM structural dissimilarity index FUZZ mean color distance MAE mean absolute error (normalized), average channel error distance MEPP mean error per pixel (normalized mean error, normalized peak error) MSE mean error squared, average of the channel error squared NCC normalized cross correlation PAE peak absolute (normalized peak absolute) PHASH perceptual hash for the sRGB and HCLp colorspaces. PSNR peak signal to noise ratio RMSE root mean squared (normalized root mean squared) SSIM structural similarity index For example: magick compare -metric SSIM Peppers.tif PeppersQ100.webP result01.png magick compare -metric PSNR Peppers.tif PeppersQ100.webP result01.png Results are mind opening and confirm these findings: https://developers.google.com/speed/webp/gallery Remember that just 10 years ago (when Internet speed was only 56k), JPG and GIF ruled the web, Flash movies were harmless fun, PNG was just another novelty and SVG was a gleam in the eyes of their creators. Today, computers are much, much powerful than 10 years ago and image compression algorithms have advanced using this new computer power. Could you believe that an Android tablet from 2015 (that cost me only 5 dollars) could play HD video much, much better than an Intel Atom PC from 2005? (that cost more than 200 dollars) Today, WebP and WebM could be only the new kids on the block of image formats, but in a near future wavelet and fractal compression could rule, offering better quality and smaller file size than current image formats. Please, before ruling out completely the opportunity to include a modern compressed image format like webP, read the FAQ and API: https://developers.google.com/speed/webp/faq https://developers.google.com/speed/webp/docs/api Al From bobsneidar at iotecdigital.com Fri Aug 25 15:49:20 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Fri, 25 Aug 2017 19:49:20 +0000 Subject: webP and webM support in LiveCode In-Reply-To: References: Message-ID: <485AD5A6-25E9-478D-B7EA-A8C7DC353EFB@iotecdigital.com> I thought PNG is lossless. How can the image be better than the original?? Bob S > On Aug 25, 2017, at 12:12 , Alejandro Tejada via use-livecode wrote: > > WebP compress flat color graphics (with transparency) > much better than PNG or GIF. > > This is not a guess based on visual comparisons. From bobsneidar at iotecdigital.com Fri Aug 25 15:49:48 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Fri, 25 Aug 2017 19:49:48 +0000 Subject: webP and webM support in LiveCode In-Reply-To: References: Message-ID: <0453031D-0A69-47DD-833A-888ACB3D3B17@iotecdigital.com> NVM you are talking about the compression ratio. Bob S > On Aug 25, 2017, at 12:12 , Alejandro Tejada via use-livecode wrote: > > WebP compress flat color graphics (with transparency) > much better than PNG or GIF. > > This is not a guess based on visual comparisons. From capellan2000 at gmail.com Fri Aug 25 18:55:47 2017 From: capellan2000 at gmail.com (Alejandro Tejada) Date: Fri, 25 Aug 2017 18:55:47 -0400 Subject: webP and webM support in LiveCode Message-ID: I forgot a very important aspect of implementing webP in LiveCode engine. For a first implementation, LiveCode could import (decode) only static -not animated- webP images and exclude the option of exporting images as webP (excluding the encoder from the engine). This would reduce the complexity of this task. Now, I have to check if these optimized JPG and PNG encoders produce better results with my own test images: https://github.com/google/guetzli/releases https://github.com/google/zopfli https://github.com/subzey/zopfli-png Anyone interested in the topic of image optimization could learn a lot from this webpage too: https://developers.google.com/web/fundamentals/performance/optimizing-content-efficiency/image-optimization Have a nice weekend! Al From jonathandlynch at gmail.com Fri Aug 25 21:19:58 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Fri, 25 Aug 2017 21:19:58 -0400 Subject: Adjusting browser widget contents for the keyboard in android Message-ID: <2539C41A-70D2-4428-BD06-1EFCF967CE72@gmail.com> Has anyone had success with this? I have tried many suggestions from stack overflow and other sites with no luck. On an iPad this happens automatically. Not at all on android. Sent from my iPhone From brahma at hindu.org Fri Aug 25 23:41:18 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Sat, 26 Aug 2017 03:41:18 +0000 Subject: Search Values of Array in "One Go" In-Reply-To: <841dee4d2b715c7c7ce3ae972acb27c6@livecode.com> References: <8223b9086f29f0c96cc56d73bf50b322@livecode.com> <465CBD8E-8DAE-4B06-A434-330A71DE1FEE@hindu.org> <841dee4d2b715c7c7ce3ae972acb27c6@livecode.com> Message-ID: <1E428071-AB2E-47BD-9177-2475171A4C0A@hindu.org> OK I will bite what would an array representing an "AND/OR" style query look like such that if used as a predicate for else if tElement contains pNeedle then it would return true/false How would you have to construct "tElement" ?? Mark: In terms of generalizing that function - then the key line which checks whether an element matches is: else if tElement contains pNeedle then One could imagine that this could be an arbitrary predicate - pNeedle doesn't have to be a string, so could be an array representing a AND / OR style query; or could be a regex (in which case you'd use matchText). From brian at milby7.com Fri Aug 25 23:45:52 2017 From: brian at milby7.com (Brian Milby) Date: Fri, 25 Aug 2017 22:45:52 -0500 Subject: Search Values of Array in "One Go" In-Reply-To: <841dee4d2b715c7c7ce3ae972acb27c6@livecode.com> References: <8223b9086f29f0c96cc56d73bf50b322@livecode.com> <465CBD8E-8DAE-4B06-A434-330A71DE1FEE@hindu.org> <841dee4d2b715c7c7ce3ae972acb27c6@livecode.com> Message-ID: I created a stack to do some testing to see about making a function that could do multiple types of tests. What I found was that adding another if at that point added about 6% to the search time and a second level (else if) added another 10% (16% total). (I added a parameter for search type - "String". I used "String2" to get a second option, but used the same test). When I used number instead of strings it was a little lower, but not much (5.5% and 11% total) > In terms of generalizing that function - then the key line which checks > whether an element matches is: > > else if tElement contains pNeedle then > > One could imagine that this could be an arbitrary predicate - pNeedle > doesn't have to be a string, so could be an array representing a AND / OR > style query; or could be a regex (in which case you'd use matchText). > > Warmest Regards, > > Mark. > > -- > Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ > LiveCode: Everyone can create apps > From brian at milby7.com Sat Aug 26 00:05:17 2017 From: brian at milby7.com (Brian Milby) Date: Fri, 25 Aug 2017 23:05:17 -0500 Subject: Search Values of Array in "One Go" In-Reply-To: <1E428071-AB2E-47BD-9177-2475171A4C0A@hindu.org> References: <8223b9086f29f0c96cc56d73bf50b322@livecode.com> <465CBD8E-8DAE-4B06-A434-330A71DE1FEE@hindu.org> <841dee4d2b715c7c7ce3ae972acb27c6@livecode.com> <1E428071-AB2E-47BD-9177-2475171A4C0A@hindu.org> Message-ID: tElement isn't the part that would change (you are still searching against a single value in the array), you would need to modify the comparison to allow for pNeedle to contain multiple values and the operators. It would probably be easier to modify to use a RegEx. If you have 2 comma separated items, you could use something like the following (I'm sure the more experienced can offer much better ways though): *if* (tElement contains item 1 of pNeedle) or (tElement contains item 2 of pNeedle) *then* On Fri, Aug 25, 2017 at 10:41 PM, Sannyasin Brahmanathaswami via use-livecode wrote: > OK I will bite > > what would an array representing an "AND/OR" > style query look like such that if used as a predicate > > for > > else if tElement contains pNeedle then > > it would return true/false > > How would you have to construct "tElement" > > ?? > > > > Mark: In terms of generalizing that function - then the key line which > checks > whether an element matches is: > > else if tElement contains pNeedle then > > > One could imagine that this could be an arbitrary predicate - pNeedle > doesn't have to be a string, so could be an array representing a AND / > OR style query; or could be a regex (in which case you'd use > matchText). > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From monte at appisle.net Sat Aug 26 02:12:27 2017 From: monte at appisle.net (Monte Goulding) Date: Sat, 26 Aug 2017 16:12:27 +1000 Subject: Search Values of Array in "One Go" In-Reply-To: References: <8223b9086f29f0c96cc56d73bf50b322@livecode.com> <465CBD8E-8DAE-4B06-A434-330A71DE1FEE@hindu.org> <841dee4d2b715c7c7ce3ae972acb27c6@livecode.com> <1E428071-AB2E-47BD-9177-2475171A4C0A@hindu.org> Message-ID: <556DB90D-DCDC-42F3-9519-837C273221C3@appisle.net> As a slightly related aside in this conversation I?d still one day like to add `each` to filter: ? filter array and retain elements where element[?foo?][?bar?] = ?baz" put ?foo? into tPath[1] put ?bar? into tPath[2] filter elements of tArray by evaluating each[tPath] is ?baz? Cheers Monte From monte at appisle.net Sat Aug 26 02:29:48 2017 From: monte at appisle.net (Monte Goulding) Date: Sat, 26 Aug 2017 16:29:48 +1000 Subject: webP and webM support in LiveCode In-Reply-To: References: Message-ID: > On 26 Aug 2017, at 5:12 am, Alejandro Tejada via use-livecode wrote: > > Please, before ruling out completely the opportunity > to include a modern compressed image format > like webP, I don?t think anyone is ruling anything out. Cheers Monte From hh at hyperhh.de Sat Aug 26 06:34:05 2017 From: hh at hyperhh.de (hh) Date: Sat, 26 Aug 2017 12:34:05 +0200 Subject: webP and webM support in LiveCode Message-ID: <17699B19-F514-4CC9-8FAE-A443144912C3@hyperhh.de> For webP you could use (from LC via shell) these free WebP utilities for Mac/Win/linux: cwebp -- WebP encoder tool dwebp -- WebP decoder tool vwebp -- WebP file viewer webpmux -- WebP muxing tool gif2webp -- Tool for converting GIF images to WebP See https://developers.google.com/speed/webp/download (Al gave already this link). There is also a framework for iOS. In linux simply do "sudo apt-get install webp" to have them, on windows use the download link from above. On Mac 10.12 there are these 'core' utilities already installed in /usr/local/bin (so usable via shell): cwebp ... encodes from png, jpeg, tiff to webP dwebp ... decodes from webP to png or tiff put shell(/usr/local/bin/dwebp input.webp -o output.png) put shell(/usr/local/bin/cwebp -q 80 input.png -o output.webp) -- q is a quality option with values from 0 up to 100 (best). Just tested via shell from LC. Works fine and fast enough. From effendi at wanadoo.fr Sat Aug 26 08:19:19 2017 From: effendi at wanadoo.fr (Francis Nugent Dixon) Date: Sat, 26 Aug 2017 14:19:19 +0200 Subject: Video files not showing on my PC (LiveCode 5.5) Message-ID: Hi from Beautiful Brittany, LiveCode 5.5 (I know, I can't afford the updates - Am I the only one ?) Sierra 10.12.3 On my Mac, I have successfully run Audio and Video functions (Quicktime) MP3 for Audio, MP4/Mov for Video, for some years. Recently moving the app to PC (Windows 7, with Quicktime loaded), all my Audio files work fine, and MOST of the videos work fine also. But a few Video files play the audio but DO NOT SHOW the Video (screen is blank). I notice that the files which do not run correctly are quite big, sometimes MP4, sometimes Mov (no obvious reasons). Otherwise - Mystery !! My scripts have run a thousand times on Mac, but just the strange glitches (with larger Video files MP4/Mov PERHAPS ?) on the PC. I can send scripts if necessary. Any ideas ? - Any 5.5 users still out there, somewhere ...... ? -Francis Subsiduary question : I bought 5.5 Mac (years ago) and I am happy with it. Am I authorised to load the 5.5 PC version with the same Password ? It could help me to isolate this problem ??? Long Live LiveCode -Francis From andrew at midwestcoastmedia.com Sat Aug 26 08:34:53 2017 From: andrew at midwestcoastmedia.com (andrew at midwestcoastmedia.com) Date: Sat, 26 Aug 2017 12:34:53 +0000 Subject: Text (uni)coding issue Message-ID: <20170826123453.Horde.kjgwa2Nrf9MDVTfBjEELfqB@ua850258.serversignin.com> I have a database on a LiveCode server that I use to track user interactions in a LiveCode app. It has gotten too big to query in LiveCode without timeout errors (the JSON gets mangled because there are now several thousand records), so I'm trying to generate a text file on the server and download that instead. I can get the text file to generate on the server, but when I try to download it to my LiveCode app (to eventually save on the end-users computer) the text is in some weird format. I assumed this was some wierd unicode issue and tried to textDecode it, but can't seem to figure out what format it actually is so that just gives me text in a different weird format ("UTF-8", "UTF-16", and "MacRoman" don't seem to work). My code on the LiveCode Server seems straight forward: put "SELECT * FROM promosRedeemed" into tSql put revDataFromQuery(TAB, "|", sDbId, tSql) into tRedemptions set linedelimiter to "|" set itemdelimiter to tab replace RETURN with " -=- " in tRedemptions // ACCOUNTS FOR LINE BREAKS IN DATA replace "|" with RETURN in tRedemptions put "redemption-log_" & the seconds & ".txt" into tFileName open file specialFolderPath("home") & "/public_html/server/apps/iot/logs/" & tFileName for write write tRedemptions to file specialFolderPath("home") & "/public_html/server/apps/iot/logs/" & tFileName close file specialFolderPath("home") & "/public_html/server/apps/iot/logs/" & tFileName The first line of the text file when viewed in a web browser or text file downloaded directly (outside of LC) is plain text and looks as expected: 294 Wednesday, July 13, 2016 8:36 15 3 MacOS 10.11.5 -=- MacBookPro11,3 -=- 0,0,1920,1200 -=- 39.892219,-85.974632 But when I fetch that URL in LiveCode using... put url (tURLtoDownload) into tFullRedemptionList put tFullRedemptionList into url ("binfile:Full-IOT_TSM_RedemptionList.xls") ...the first line (and all other lines basically) looks like this: ????r?:?(??? References: <20170826123453.Horde.kjgwa2Nrf9MDVTfBjEELfqB@ua850258.serversignin.com> Message-ID: Any reason why you're using binfile instead of file if the text isn't encoded? On Sat, Aug 26, 2017 at 8:34 AM, Andrew Bell via use-livecode < use-livecode at lists.runrev.com> wrote: > I have a database on a LiveCode server that I use to track user > interactions in a LiveCode app. It has gotten too big to query in LiveCode > without timeout errors (the JSON gets mangled because there are now several > thousand records), so I'm trying to generate a text file on the server and > download that instead. > > I can get the text file to generate on the server, but when I try to > download it to my LiveCode app (to eventually save on the end-users > computer) the text is in some weird format. I assumed this was some wierd > unicode issue and tried to textDecode it, but can't seem to figure out what > format it actually is so that just gives me text in a different weird > format ("UTF-8", "UTF-16", and "MacRoman" don't seem to work). > > My code on the LiveCode Server seems straight forward: > put "SELECT * FROM promosRedeemed" into tSql > put revDataFromQuery(TAB, "|", sDbId, tSql) into tRedemptions > set linedelimiter to "|" > set itemdelimiter to tab > replace RETURN with " -=- " in tRedemptions // ACCOUNTS FOR LINE BREAKS > IN DATA > replace "|" with RETURN in tRedemptions > put "redemption-log_" & the seconds & ".txt" into tFileName > open file specialFolderPath("home") & "/public_html/server/apps/iot/logs/" > & tFileName for write > write tRedemptions to file specialFolderPath("home") & > "/public_html/server/apps/iot/logs/" & tFileName > close file specialFolderPath("home") & "/public_html/server/apps/iot/logs/" > & tFileName > > > The first line of the text file when viewed in a web browser or text file > downloaded directly (outside of LC) is plain text and looks as expected: > 294 Wednesday, July 13, 2016 8:36 15 3 MacOS 10.11.5 -=- > MacBookPro11,3 -=- 0,0,1920,1200 -=- 39.892219,-85.974632 > > But when I fetch that URL in LiveCode using... > put url (tURLtoDownload) into tFullRedemptionList > put tFullRedemptionList into url ("binfile:Full-IOT_TSM_Redempt > ionList.xls") > > ...the first line (and all other lines basically) looks like this: > ? ???r?:?(??? L??F??! ? D??? ? x?????&?G?? ? ?dX? ?IA? ??? ??? ????o ??r N????h M > ???0??? ?? ?!??? ?? ? +?7??e ? ?SP ? ?????x~(? P?5????K??%eS ?_ ? ??n?Q? > ? ? bSH? ? ??? N?w6)??T i? ?????N? !?g(? > ?? ? > ?[ ?????u ??Y??^ZCb???X??5+I?R*? ?? ?f%uW > > > I know I've done similar tasks before (pretty sure this is code I borrowed > from other projects I've done) but can't figure out why this text is so > garbled. Tried in 9.0.0dp7 and 8.1.6 with the same result. Any ideas what > I'm doing wrong? > > --Andrew Bell > > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode -- On the first day, God created the heavens and the Earth On the second day, God created the oceans. On the third day, God put the animals on hold for a few hours, and did a little diving. And God said, "This is good." From alex at tweedly.net Sat Aug 26 10:04:16 2017 From: alex at tweedly.net (Alex Tweedly) Date: Sat, 26 Aug 2017 15:04:16 +0100 Subject: Search Values of Array in "One Go" In-Reply-To: References: <8223b9086f29f0c96cc56d73bf50b322@livecode.com> <465CBD8E-8DAE-4B06-A434-330A71DE1FEE@hindu.org> <841dee4d2b715c7c7ce3ae972acb27c6@livecode.com> <1E428071-AB2E-47BD-9177-2475171A4C0A@hindu.org> Message-ID: I think regex (or multiple string comparisons) is too limited a way to go. I would want to be able to do numeric comparisons, range comparisons, etc. e.g. x is a number, x<25, 24 < x < 33, etc. -- Alex. On 26/08/2017 05:05, Brian Milby via use-livecode wrote: > tElement isn't the part that would change (you are still searching against > a single value in the array), you would need to modify the comparison to > allow for pNeedle to contain multiple values and the operators. It would > probably be easier to modify to use a RegEx. If you have 2 comma separated > items, you could use something like the following (I'm sure the more > experienced can offer much better ways though): > > *if* (tElement contains item 1 of pNeedle) or (tElement contains item 2 of > pNeedle) *then* > > On Fri, Aug 25, 2017 at 10:41 PM, Sannyasin Brahmanathaswami via > use-livecode wrote: > >> OK I will bite >> >> what would an array representing an "AND/OR" >> style query look like such that if used as a predicate >> >> for >> >> else if tElement contains pNeedle then >> >> it would return true/false >> >> How would you have to construct "tElement" >> >> ?? >> >> >> >> Mark: In terms of generalizing that function - then the key line which >> checks >> whether an element matches is: >> >> else if tElement contains pNeedle then >> >> >> One could imagine that this could be an arbitrary predicate - pNeedle >> doesn't have to be a string, so could be an array representing a AND / >> OR style query; or could be a regex (in which case you'd use >> matchText). >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From capellan2000 at gmail.com Sat Aug 26 11:27:16 2017 From: capellan2000 at gmail.com (Alejandro Tejada) Date: Sat, 26 Aug 2017 11:27:16 -0400 Subject: webP and webM support in LiveCode Message-ID: On Sat, 26 Aug 2017, Monte Goulding wrote: > I don?t think anyone is ruling anything out. This is good news! :D Hermann Hoch wrote: > For webP you could use (from LC via shell) these > free WebP utilities for Mac/Win/linux Yes, LiveCode shell control is a real godsend for working with command line programs, but we could not use webP compressed images within our stacks unless LC engine could decode them back to RGBA images within LiveCode. Al From index at kenjikojima.com Sat Aug 26 12:09:31 2017 From: index at kenjikojima.com (Kenji Kojima) Date: Sat, 26 Aug 2017 12:09:31 -0400 Subject: Video files not showing on my PC (LiveCode 5.5) In-Reply-To: References: Message-ID: <9435874E-80AC-434E-95CB-BCD60D868EE1@kenjikojima.com> Hi Francis, I am using LiveCode 5.5 (Mac, Sierra 10.12.6) mainly. But it cannot play some mp4 files. The video files do not show video frames. QuickTime 7 player cannot play the problem files, but QuickTime 10 player can. I think some new video files (mp4) are not a same old format of video. I have to convert the problem mp4 file to a new mp4 file. I use a screen recording & editing application ?ScreenFlow (Mac)? for the video conversion. I like ScreenFlow, but you may find other conversion applications. Best, -- Kenji Kojima / ???? http://kenjikojima.com > On Aug 26, 2017, at 8:19 AM, Francis Nugent Dixon via use-livecode wrote: > > Hi from Beautiful Brittany, > > LiveCode 5.5 (I know, I can't afford the updates - Am I the only one ?) > Sierra 10.12.3 > > On my Mac, I have successfully run Audio and Video functions > (Quicktime) MP3 for Audio, MP4/Mov for Video, for some years. > > Recently moving the app to PC (Windows 7, with Quicktime loaded), > all my Audio files work fine, and MOST of the videos work fine also. > But a few Video files play the audio but DO NOT SHOW the Video > (screen is blank). > > I notice that the files which do not run correctly are quite big, sometimes > MP4, sometimes Mov (no obvious reasons). Otherwise - Mystery !! > > My scripts have run a thousand times on Mac, but just the strange > glitches (with larger Video files MP4/Mov PERHAPS ?) on the PC. > > I can send scripts if necessary. > > Any ideas ? - Any 5.5 users still out there, somewhere ...... ? > > -Francis > > Subsiduary question : I bought 5.5 Mac (years ago) and I am happy with it. > Am I authorised to load the 5.5 PC version with the same Password ? It > could help me to isolate this problem ??? > > Long Live LiveCode > > -Francis > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From matthias_livecode_150811 at m-r-d.de Sat Aug 26 12:40:43 2017 From: matthias_livecode_150811 at m-r-d.de (Matthias Rebbe) Date: Sat, 26 Aug 2017 18:40:43 +0200 Subject: Video files not showing on my PC (LiveCode 5.5) In-Reply-To: References: Message-ID: <0FBDBF3C-541C-461F-80B6-991131ABBD5B@m-r-d.de> Hi Francis, i think it depends which version of Mediaplayer is installed on the Windows PC, see an overview which file format is support by which version of Mediaplayer here https://support.microsoft.com/en-us/help/316992/file-types-supported-by-windows-media-player Regarding your question about using LC 5.5 on Win: Just try it. If i remember right, i was able to use my LC 5.5 on Win and Mac. Regards, Matthias Matthias Rebbe +49 5741 310000 ?wirmachen.software ? > Am 26.08.2017 um 14:19 schrieb Francis Nugent Dixon via use-livecode >: > > Hi from Beautiful Brittany, > > LiveCode 5.5 (I know, I can't afford the updates - Am I the only one ?) > Sierra 10.12.3 > > On my Mac, I have successfully run Audio and Video functions > (Quicktime) MP3 for Audio, MP4/Mov for Video, for some years. > > Recently moving the app to PC (Windows 7, with Quicktime loaded), > all my Audio files work fine, and MOST of the videos work fine also. > But a few Video files play the audio but DO NOT SHOW the Video > (screen is blank). > > I notice that the files which do not run correctly are quite big, sometimes > MP4, sometimes Mov (no obvious reasons). Otherwise - Mystery !! > > My scripts have run a thousand times on Mac, but just the strange > glitches (with larger Video files MP4/Mov PERHAPS ?) on the PC. > > I can send scripts if necessary. > > Any ideas ? - Any 5.5 users still out there, somewhere ...... ? > > -Francis > > Subsiduary question : I bought 5.5 Mac (years ago) and I am happy with it. > Am I authorised to load the 5.5 PC version with the same Password ? It > could help me to isolate this problem ??? > > Long Live LiveCode > > -Francis > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From ambassador at fourthworld.com Sat Aug 26 13:02:19 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Sat, 26 Aug 2017 10:02:19 -0700 Subject: Search Values of Array in "One Go" In-Reply-To: References: Message-ID: Alex Tweedly wrote: > I think regex (or multiple string comparisons) is too limited a way to > go. > > I would want to be able to do numeric comparisons, range comparisons, > etc. > > e.g. x is a number, x<25, 24 < x < 33, etc. The problem of querying hierarchically-ordered data has been around for a long time, and XQuery is a popular solution (at least when that data is XML). Of course associative arrays are simpler than XML, so any XQuery-like solution crafted for LC could be even simpler to use. But XQuery is quite powerful, probably a good model to consider for handling the variety of use-cases we'd want such a generalized query system to handle. -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From ambassador at fourthworld.com Sat Aug 26 13:03:48 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Sat, 26 Aug 2017 10:03:48 -0700 Subject: webP and webM support in LiveCode In-Reply-To: References: Message-ID: Alejandro Tejada wrote: > Hermann Hoch wrote: >> For webP you could use (from LC via shell) these >> free WebP utilities for Mac/Win/linux > > Yes, LiveCode shell control is a real godsend for > working with command line programs, but we could > not use webP compressed images within our stacks > unless LC engine could decode them back to RGBA > images within LiveCode. This sounds like a good opportunity for using FFI in a Widget. -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From capellan2000 at gmail.com Sat Aug 26 15:44:36 2017 From: capellan2000 at gmail.com (Alejandro Tejada) Date: Sat, 26 Aug 2017 15:44:36 -0400 Subject: webP and webM support in LiveCode Message-ID: Richard Gaskin wrote: > This sounds like a good opportunity > for using FFI in a Widget. Looks like every computer language now uses FFI. I think that we need a Cookbook to learn this new feature or adapt tutorials from other platforms. Who volunteers to add LiveCode to this Wikipedia article: https://en.wikipedia.org/wiki/Foreign_function_interface Al From jacque at hyperactivesw.com Sat Aug 26 15:57:58 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Sat, 26 Aug 2017 14:57:58 -0500 Subject: Search Values of Array in "One Go" In-Reply-To: <556DB90D-DCDC-42F3-9519-837C273221C3@appisle.net> References: <8223b9086f29f0c96cc56d73bf50b322@livecode.com> <465CBD8E-8DAE-4B06-A434-330A71DE1FEE@hindu.org> <841dee4d2b715c7c7ce3ae972acb27c6@livecode.com> <1E428071-AB2E-47BD-9177-2475171A4C0A@hindu.org> <556DB90D-DCDC-42F3-9519-837C273221C3@appisle.net> Message-ID: <15e201f5570.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> This would be really useful. I'd suggest: filter elements of tArray by tPath[each] is ?baz? -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com On August 26, 2017 1:14:59 AM Monte Goulding via use-livecode wrote: > As a slightly related aside in this conversation I?d still one day like to > add `each` to filter: > > ? filter array and retain elements where element[?foo?][?bar?] = ?baz" > put ?foo? into tPath[1] > put ?bar? into tPath[2] > filter elements of tArray by evaluating each[tPath] is ?baz? > > Cheers > > Monte > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From hh at hyperhh.de Sat Aug 26 16:54:53 2017 From: hh at hyperhh.de (hh) Date: Sat, 26 Aug 2017 22:54:53 +0200 Subject: webP and webM support in LiveCode Message-ID: > Al wrote: > Yes, LiveCode shell control is a real godsend for > working with command line programs, but we could > not use webP compressed images within our stacks > unless LC engine could decode them back to RGBA > images within LiveCode. So what's the problem? Decode them with shell to a (temporary) file On Mac: put shell(/usr/local/bin/dwebp input.webp -o output.png) On Linux: put shell(/usr/bin/dwebp input.webp -o output.png) Then set the fileName to the decoded file (or import the temporary decoded file). From johnpatten at me.com Sat Aug 26 17:15:19 2017 From: johnpatten at me.com (JOHN PATTEN) Date: Sat, 26 Aug 2017 14:15:19 -0700 Subject: Using "Launch URL" without actually opening browser? Message-ID: Hi All, I?m using the Google spreadsheet that gets created when you create a Google Form to collect data from a stack. I?ve copied out the specific Google submit form button to send my stack data to the Google spreadsheet. This works fine using ?Launch URL? however it opens the browser and give me the Google Form Submission Confirmation page. Is there any way to submit the URL without actually launching the browser? I experimenting with tracking my students? mouse clicks while using a learning app I may create, and was looking at a easy way to store that data, and utilize Google Forms simple data reports. Here?s the card script I?m using: on mouseDown --put the short name of target put the millisecs into TCurrentTime --convert tCurrentTime to milliseconds put cd fld "lastAction" into tOldTime put (tCurrentTime - tOldTime)/1000 into tSecondsSince if tSecondsSince > 60 then put "entry.133167263=" & tSecondsSince/60 & " minutes" & "&" into tSecondsSince put "entry.1059711654=" & cd fld "studentName" into tStudentName put "entry.630316753=" & the short date & "&" into tDate put "entry.768691577=" & the name of current card & "&" into tCardName put "entry.1264876799=" & the short name of target into tTargetObject launch url "https://docs.google.com/forms/d/e/1FAIpQLScoYoEfrcewj4IEG0FnfjBnfeVVSLva5tWv-dVexoP95trNNA/formResponse?"& tStudentName & tDate & tSecondsSince & tCardName & tTargetObject end if put tSecondsSince && "seconds" && "-" && the short name of target put "entry.133167263=" & tSecondsSince && "seconds" & "&" into tSecondsSince put "entry.1059711654=" & cd fld "studentName" & "&" into tStudentName put "entry.630316753=" & the short date & "&" into tDate put "entry.768691577=" & the name of current card & "&" into tCardName put "entry.1264876799=" & the short name of target into tTargetObject launch url "https://docs.google.com/forms/d/e/1FAIpQLScoYoEfrcewj4IEG0FnfjBnfeVVSLva5tWv-dVexoP95trNNA/formResponse?"& tStudentName & tDate & tSecondsSince & tCardName & tTargetObject put tCurrentTime into cd fld "lastAction" end mouseDown on openCard put the millisecs into cd fld ?lastAction" end openCard Thank you! From bonnmike at gmail.com Sat Aug 26 17:21:55 2017 From: bonnmike at gmail.com (Mike Bonner) Date: Sat, 26 Aug 2017 15:21:55 -0600 Subject: Using "Launch URL" without actually opening browser? In-Reply-To: References: Message-ID: Try get url "https://docs.google.com/forms/d/e/1FAIpQLScoYoEfrcewj4IEG0FnfjBn feVVSLva5tWv-dVexoP95trNNA/formResponse?"& tStudentName & tDate & tSecondsSince & tCardName & tTargetObject On Sat, Aug 26, 2017 at 3:15 PM, JOHN PATTEN via use-livecode < use-livecode at lists.runrev.com> wrote: > Hi All, > > I?m using the Google spreadsheet that gets created when you create a > Google Form to collect data from a stack. > > I?ve copied out the specific Google submit form button to send my stack > data to the Google spreadsheet. > > This works fine using ?Launch URL? however it opens the browser and give > me the Google Form Submission Confirmation page. Is there any way to > submit the URL without actually launching the browser? > > I experimenting with tracking my students? mouse clicks while using a > learning app I may create, and was looking at a easy way to store that > data, and utilize Google Forms simple data reports. > > Here?s the card script I?m using: > > on mouseDown > > --put the short name of target > > put the millisecs into TCurrentTime > > --convert tCurrentTime to milliseconds > > put cd fld "lastAction" into tOldTime > > put (tCurrentTime - tOldTime)/1000 into tSecondsSince > > if tSecondsSince > 60 then > > put "entry.133167263=" & tSecondsSince/60 & " minutes" & "&" into > tSecondsSince > > put "entry.1059711654=" & cd fld "studentName" into tStudentName > > put "entry.630316753=" & the short date & "&" into tDate > > put "entry.768691577=" & the name of current card & "&" into tCardName > > put "entry.1264876799=" & the short name of target into tTargetObject > > launch url "https://docs.google.com/forms/d/e/ > 1FAIpQLScoYoEfrcewj4IEG0FnfjBnfeVVSLva5tWv-dVexoP95trNNA/formResponse?"& > tStudentName & tDate & tSecondsSince & tCardName & tTargetObject > > end if > > put tSecondsSince && "seconds" && "-" && the short name of target > > put "entry.133167263=" & tSecondsSince && "seconds" & "&" into > tSecondsSince > > put "entry.1059711654=" & cd fld "studentName" & "&" into tStudentName > > put "entry.630316753=" & the short date & "&" into tDate > > put "entry.768691577=" & the name of current card & "&" into tCardName > > put "entry.1264876799=" & the short name of target into tTargetObject > > launch url "https://docs.google.com/forms/d/e/ > 1FAIpQLScoYoEfrcewj4IEG0FnfjBnfeVVSLva5tWv-dVexoP95trNNA/formResponse?"& > tStudentName & tDate & tSecondsSince & tCardName & tTargetObject > > put tCurrentTime into cd fld "lastAction" > end mouseDown > > on openCard > put the millisecs into cd fld ?lastAction" > end openCard > > Thank you! > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From monte at appisle.net Sat Aug 26 17:23:12 2017 From: monte at appisle.net (Monte Goulding) Date: Sun, 27 Aug 2017 07:23:12 +1000 Subject: Search Values of Array in "One Go" In-Reply-To: <15e201f5570.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> References: <8223b9086f29f0c96cc56d73bf50b322@livecode.com> <465CBD8E-8DAE-4B06-A434-330A71DE1FEE@hindu.org> <841dee4d2b715c7c7ce3ae972acb27c6@livecode.com> <1E428071-AB2E-47BD-9177-2475171A4C0A@hindu.org> <556DB90D-DCDC-42F3-9519-837C273221C3@appisle.net> <15e201f5570.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Message-ID: <615B14B7-3D67-4127-92BB-5B77C8C274D9@appisle.net> > On 27 Aug 2017, at 5:57 am, J. Landman Gay via use-livecode wrote: > > This would be really useful. I'd suggest: > > filter elements of tArray by tPath[each] is ?baz? Array paths don?t work like that. `each` here is the element and tPath is a path within it so it needs to be `each[tPath]` but I like `by`. Infact I couldn?t recall the syntax I liked for this when posting the email yesterday but now I remember it was `by` as it?s the same as sort. A simpler example is: filter lines of tList by item 1 of each >= 10 Cheers Monte From revdev at pdslabs.net Sat Aug 26 17:40:43 2017 From: revdev at pdslabs.net (Phil Davis) Date: Sat, 26 Aug 2017 14:40:43 -0700 Subject: Search Values of Array in "One Go" In-Reply-To: <615B14B7-3D67-4127-92BB-5B77C8C274D9@appisle.net> References: <8223b9086f29f0c96cc56d73bf50b322@livecode.com> <465CBD8E-8DAE-4B06-A434-330A71DE1FEE@hindu.org> <841dee4d2b715c7c7ce3ae972acb27c6@livecode.com> <1E428071-AB2E-47BD-9177-2475171A4C0A@hindu.org> <556DB90D-DCDC-42F3-9519-837C273221C3@appisle.net> <15e201f5570.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <615B14B7-3D67-4127-92BB-5B77C8C274D9@appisle.net> Message-ID: On 8/26/17 2:23 PM, Monte Goulding via use-livecode wrote: >> On 27 Aug 2017, at 5:57 am, J. Landman Gay via use-livecode wrote: >> >> This would be really useful. I'd suggest: >> >> filter elements of tArray by tPath[each] is ?baz? > Array paths don?t work like that. `each` here is the element and tPath is a path within it so it needs to be `each[tPath]` but I like `by`. Infact I couldn?t recall the syntax I liked for this when posting the email yesterday but now I remember it was `by` as it?s the same as sort. > > A simpler example is: > > filter lines of tList by item 1 of each >= 10 Another one I would like: filter lines of tList WHERE item 1 of each >= 10 Phil Davis > > Cheers > > Monte > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode -- Phil Davis From monte at appisle.net Sat Aug 26 17:43:35 2017 From: monte at appisle.net (Monte Goulding) Date: Sun, 27 Aug 2017 07:43:35 +1000 Subject: Search Values of Array in "One Go" In-Reply-To: References: <8223b9086f29f0c96cc56d73bf50b322@livecode.com> <465CBD8E-8DAE-4B06-A434-330A71DE1FEE@hindu.org> <841dee4d2b715c7c7ce3ae972acb27c6@livecode.com> <1E428071-AB2E-47BD-9177-2475171A4C0A@hindu.org> <556DB90D-DCDC-42F3-9519-837C273221C3@appisle.net> <15e201f5570.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <615B14B7-3D67-4127-92BB-5B77C8C274D9@appisle.net> Message-ID: <67311CE4-794E-4C71-ADA1-BA8D9518750F@appisle.net> > On 27 Aug 2017, at 7:40 am, Phil Davis via use-livecode wrote: > > Another one I would like: > > filter lines of tList WHERE item 1 of each >= 10 Yes I like that too? a tad more than `by`. It seems to read more naturally. Cheers Monte From brian at milby7.com Sat Aug 26 18:20:38 2017 From: brian at milby7.com (Brian Milby) Date: Sat, 26 Aug 2017 17:20:38 -0500 Subject: Search Values of Array in "One Go" In-Reply-To: References: <8223b9086f29f0c96cc56d73bf50b322@livecode.com> <465CBD8E-8DAE-4B06-A434-330A71DE1FEE@hindu.org> <841dee4d2b715c7c7ce3ae972acb27c6@livecode.com> <1E428071-AB2E-47BD-9177-2475171A4C0A@hindu.org> Message-ID: You could set your needle to be a valid LCS expression. I just ran a test using the following: *do* "if (" & pNeedle & ") then put tPath into xFoundPaths[the number of elements in xFoundPaths + 1]" It took around 4x of the time to run though. I set my needle to "tElement > 5000" for one test and "tElement > 5000 and tElement < 5002" for another. Times were similar for each. With a roughly 10% cost per nested if inside the recursion loop, it would seem that specific helper functions would be needed for each type of search. I'm not sure if a switch would optimize it any. The wrapper function could be generalized and perform the if/switch once to select the appropriate private handler. Using matchtext for a simple "or" type doesn't seem to cost much more than using a nested if would. I tried a search using a needle of "(Chocolate|Maple)". I'm using example 5 from this site for my JSON: https://adobe.github.io/Spry/samples/data_region/JSONDataSetSample.html I can post a copy of the test stack I'm playing around with if anyone would be interested. On Sat, Aug 26, 2017 at 9:04 AM, Alex Tweedly via use-livecode < use-livecode at lists.runrev.com> wrote: > I think regex (or multiple string comparisons) is too limited a way to go. > > I would want to be able to do numeric comparisons, range comparisons, etc. > > e.g. x is a number, x<25, 24 < x < 33, etc. > > -- Alex. > > On 26/08/2017 05:05, Brian Milby via use-livecode wrote: > >> tElement isn't the part that would change (you are still searching against >> a single value in the array), you would need to modify the comparison to >> allow for pNeedle to contain multiple values and the operators. It would >> probably be easier to modify to use a RegEx. If you have 2 comma >> separated >> items, you could use something like the following (I'm sure the more >> experienced can offer much better ways though): >> >> *if* (tElement contains item 1 of pNeedle) or (tElement contains item 2 of >> pNeedle) *then* >> >> >> On Fri, Aug 25, 2017 at 10:41 PM, Sannyasin Brahmanathaswami via >> use-livecode wrote: >> >> OK I will bite >>> >>> what would an array representing an "AND/OR" >>> style query look like such that if used as a predicate >>> >>> for >>> >>> else if tElement contains pNeedle then >>> >>> it would return true/false >>> >>> How would you have to construct "tElement" >>> >>> ?? >>> >>> >>> >>> Mark: In terms of generalizing that function - then the key line which >>> checks >>> whether an element matches is: >>> >>> else if tElement contains pNeedle then >>> >>> >>> One could imagine that this could be an arbitrary predicate - >>> pNeedle >>> doesn't have to be a string, so could be an array representing a >>> AND / >>> OR style query; or could be a regex (in which case you'd use >>> matchText). >>> >>> _______________________________________________ >>> use-livecode mailing list >>> use-livecode at lists.runrev.com >>> Please visit this url to subscribe, unsubscribe and manage your >>> subscription preferences: >>> http://lists.runrev.com/mailman/listinfo/use-livecode >>> >>> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From monte at appisle.net Sat Aug 26 18:23:58 2017 From: monte at appisle.net (Monte Goulding) Date: Sun, 27 Aug 2017 08:23:58 +1000 Subject: Text (uni)coding issue In-Reply-To: <20170826123453.Horde.kjgwa2Nrf9MDVTfBjEELfqB@ua850258.serversignin.com> References: <20170826123453.Horde.kjgwa2Nrf9MDVTfBjEELfqB@ua850258.serversignin.com> Message-ID: <9B427275-2833-48C7-A981-9DCFECC38D31@appisle.net> Howdy Andrew There?s a few things to deal with here. - you need to know your database encoding (let?s assume UTF-8) - you need to get values out of your database in a way that gives you the binary data rather than strings that the engine has assumed were in native encoding. Use: local tCursor put "SELECT * FROM promosRedeemed" into tSql put revQueryDatabase(sDbId, tSql) into tCursor local tResults repeat until revQueryIsAtEnd(tCursor) repeat for each item tColumn in revDatabaseColumnNames(tCursor) local tValue get revDatabaseColumnNamed(tCursor, tColumn, ?tValue?) put textDecode(tValue,?UTF-8?) into tValue replace return with ? -=- ? in tValue // ACCOUNTS FOR LINE BREAKS IN DATA put tValue & tab after tResults end repeat put return into the last char of tResults revMoveToNextRecord tCursor end repeat revCloseCursor tCursor - you need to write this file in an encoding you know so you can decode it when you download: put "redemption-log_" & the seconds & ".txt" into tFileName put textEncode(tResults, ?UTF-8?) into url (?binfile:? & specialFolderPath("home") & "/public_html/server/apps/iot/logs/" & tFileName) - you need to read the file and decode from the encoding you know it is in: put textDecode(url (?binfile:? & ), ?UTF-8?) into tResults Disclaimer: this code has just been written into an email client untested so may have some errors. Cheers Monte From ahsoftware at sonic.net Sat Aug 26 19:04:40 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Sat, 26 Aug 2017 16:04:40 -0700 Subject: Search Values of Array in "One Go" In-Reply-To: <67311CE4-794E-4C71-ADA1-BA8D9518750F@appisle.net> References: <8223b9086f29f0c96cc56d73bf50b322@livecode.com> <465CBD8E-8DAE-4B06-A434-330A71DE1FEE@hindu.org> <841dee4d2b715c7c7ce3ae972acb27c6@livecode.com> <1E428071-AB2E-47BD-9177-2475171A4C0A@hindu.org> <556DB90D-DCDC-42F3-9519-837C273221C3@appisle.net> <15e201f5570.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <615B14B7-3D67-4127-92BB-5B77C8C274D9@appisle.net> <67311CE4-794E-4C71-ADA1-BA8D9518750F@appisle.net> Message-ID: <92aae19c-c1e1-aba6-595f-bd408a959ef1@sonic.net> On 08/26/2017 02:43 PM, Monte Goulding via use-livecode wrote: > >> On 27 Aug 2017, at 7:40 am, Phil Davis via use-livecode wrote: >> >> Another one I would like: >> >> filter lines of tList WHERE item 1 of each >= 10 > > Yes I like that too? a tad more than `by`. It seems to read more naturally. Since we're blue-skying this process anyway... I assume that syntax would do what the filter command normally does in terms of modifying the contents of tList. I'd also like to see the form that returns the result rather than modifying the original, as in filter lines of tList WHERE item 1 of each >= 1 into someVariable and filter elements of tArray where "late fee" is in each into newArray -- Mark Wieder ahsoftware at gmail.com From monte at appisle.net Sat Aug 26 19:11:13 2017 From: monte at appisle.net (Monte Goulding) Date: Sun, 27 Aug 2017 09:11:13 +1000 Subject: Search Values of Array in "One Go" In-Reply-To: <92aae19c-c1e1-aba6-595f-bd408a959ef1@sonic.net> References: <8223b9086f29f0c96cc56d73bf50b322@livecode.com> <465CBD8E-8DAE-4B06-A434-330A71DE1FEE@hindu.org> <841dee4d2b715c7c7ce3ae972acb27c6@livecode.com> <1E428071-AB2E-47BD-9177-2475171A4C0A@hindu.org> <556DB90D-DCDC-42F3-9519-837C273221C3@appisle.net> <15e201f5570.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <615B14B7-3D67-4127-92BB-5B77C8C274D9@appisle.net> <67311CE4-794E-4C71-ADA1-BA8D9518750F@appisle.net> <92aae19c-c1e1-aba6-595f-bd408a959ef1@sonic.net> Message-ID: <35A4CA8E-06EC-4FFB-83BF-548AEA315E53@appisle.net> > On 27 Aug 2017, at 9:04 am, Mark Wieder via use-livecode wrote: > > I assume that syntax would do what the filter command normally does in terms of modifying the contents of tList. I'd also like to see the form that returns the result rather than modifying the original, as in > > filter lines of tList WHERE item 1 of each >= 1 into someVariable > and > filter elements of tArray where "late fee" is in each into newArray We have that already ;-) Cheers Monte From ahsoftware at sonic.net Sat Aug 26 20:24:55 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Sat, 26 Aug 2017 17:24:55 -0700 Subject: Search Values of Array in "One Go" In-Reply-To: <35A4CA8E-06EC-4FFB-83BF-548AEA315E53@appisle.net> References: <8223b9086f29f0c96cc56d73bf50b322@livecode.com> <465CBD8E-8DAE-4B06-A434-330A71DE1FEE@hindu.org> <841dee4d2b715c7c7ce3ae972acb27c6@livecode.com> <1E428071-AB2E-47BD-9177-2475171A4C0A@hindu.org> <556DB90D-DCDC-42F3-9519-837C273221C3@appisle.net> <15e201f5570.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <615B14B7-3D67-4127-92BB-5B77C8C274D9@appisle.net> <67311CE4-794E-4C71-ADA1-BA8D9518750F@appisle.net> <92aae19c-c1e1-aba6-595f-bd408a959ef1@sonic.net> <35A4CA8E-06EC-4FFB-83BF-548AEA315E53@appisle.net> Message-ID: On 08/26/2017 04:11 PM, Monte Goulding via use-livecode wrote: > >> On 27 Aug 2017, at 9:04 am, Mark Wieder via use-livecode wrote: >> >> I assume that syntax would do what the filter command normally does in terms of modifying the contents of tList. I'd also like to see the form that returns the result rather than modifying the original, as in >> >> filter lines of tList WHERE item 1 of each >= 1 into someVariable >> and >> filter elements of tArray where "late fee" is in each into newArray > > We have that already ;-) Well, yes and no. I just wanted to make sure that the 'where' clause doesn't mean that we also can't have the 'into' clause. -- Mark Wieder ahsoftware at gmail.com From andrew at midwestcoastmedia.com Sat Aug 26 21:44:12 2017 From: andrew at midwestcoastmedia.com (andrew at midwestcoastmedia.com) Date: Sun, 27 Aug 2017 01:44:12 +0000 Subject: Text (uni)coding issue In-Reply-To: Message-ID: <20170827014412.Horde.hTYsFqNcynNiXpryiLPqZ9v@ua850258.serversignin.com> > - you need to know your database encoding (let?s assume UTF-8) > I was still fairly green to mySQL when I first created this database, so I never changed the default. Looks like the collation is "utf8mb4_unicode_ci". Should that be changed to something else? The server charset is UTF-8 Unicode (utf8) [HostM] > - you need to write this file in an encoding you know so you can > decode it when you download: > > - you need to read the file and decode from the encoding you know it is in: > > put textDecode(url (?binfile:? & ), ?UTF-8?) into tResults > > Disclaimer: this code has just been written into an email client > untested so may have some errors. There were some errors (I think from email translations), but I think I understand what you're trying to do. The data still seems to be in a weird format. --Andrew Bell From monte at appisle.net Sat Aug 26 22:01:17 2017 From: monte at appisle.net (Monte Goulding) Date: Sun, 27 Aug 2017 12:01:17 +1000 Subject: Search Values of Array in "One Go" In-Reply-To: References: <8223b9086f29f0c96cc56d73bf50b322@livecode.com> <465CBD8E-8DAE-4B06-A434-330A71DE1FEE@hindu.org> <841dee4d2b715c7c7ce3ae972acb27c6@livecode.com> <1E428071-AB2E-47BD-9177-2475171A4C0A@hindu.org> <556DB90D-DCDC-42F3-9519-837C273221C3@appisle.net> <15e201f5570.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <615B14B7-3D67-4127-92BB-5B77C8C274D9@appisle.net> <67311CE4-794E-4C71-ADA1-BA8D9518750F@appisle.net> <92aae19c-c1e1-aba6-595f-bd408a959ef1@sonic.net> <35A4CA8E-06EC-4FFB-83BF-548AEA315E53@appisle.net> Message-ID: > On 27 Aug 2017, at 10:24 am, Mark Wieder via use-livecode wrote: > > Well, yes and no. > I just wanted to make sure that the 'where' clause doesn't mean that we also can't have the 'into' clause. Oh, sure I would expect if implemented that it wouldn?t inhibit the `into` clause. Cheers Monte From johnpatten at me.com Sat Aug 26 23:30:41 2017 From: johnpatten at me.com (JOHN PATTEN) Date: Sat, 26 Aug 2017 20:30:41 -0700 Subject: Using "Launch URL" without actually opening browser? In-Reply-To: References: Message-ID: <6536D838-424F-43DC-802B-C3AE744F0CD8@me.com> Hi Mike, I tried "Get URL" too. It may not be possible to submit/post the data in the URL (launch url "https://docs.google.com/forms/d/e/1FAIpQLScoYoEfrcewj4IEG0FnfjBnfeVVSLva5tWv-dVexoP95trNNA/formResponse ?"& tStudentName & tDate & tSecondsSince & tCardName & tTargetObject) without getting the Google Form response. I was thinking of possible using this strategy in an HTML5 stack with student Chromebooks. Too bad, that would have been an easy way to store light weight stack data without a lot of effort :( Thank you! > On Aug 26, 2017, at 2:21 PM, Mike Bonner via use-livecode wrote: > > Try > get url "https://docs.google.com/forms/d/e/1FAIpQLScoYoEfrcewj4IEG0FnfjBn > feVVSLva5tWv-dVexoP95trNNA/formResponse?"& tStudentName & tDate & > tSecondsSince & tCardName & tTargetObject > > On Sat, Aug 26, 2017 at 3:15 PM, JOHN PATTEN via use-livecode < > use-livecode at lists.runrev.com> wrote: > >> Hi All, >> >> I?m using the Google spreadsheet that gets created when you create a >> Google Form to collect data from a stack. >> >> I?ve copied out the specific Google submit form button to send my stack >> data to the Google spreadsheet. >> >> This works fine using ?Launch URL? however it opens the browser and give >> me the Google Form Submission Confirmation page. Is there any way to >> submit the URL without actually launching the browser? >> >> I experimenting with tracking my students? mouse clicks while using a >> learning app I may create, and was looking at a easy way to store that >> data, and utilize Google Forms simple data reports. >> >> Here?s the card script I?m using: >> >> on mouseDown >> >> --put the short name of target >> >> put the millisecs into TCurrentTime >> >> --convert tCurrentTime to milliseconds >> >> put cd fld "lastAction" into tOldTime >> >> put (tCurrentTime - tOldTime)/1000 into tSecondsSince >> >> if tSecondsSince > 60 then >> >> put "entry.133167263=" & tSecondsSince/60 & " minutes" & "&" into >> tSecondsSince >> >> put "entry.1059711654=" & cd fld "studentName" into tStudentName >> >> put "entry.630316753=" & the short date & "&" into tDate >> >> put "entry.768691577=" & the name of current card & "&" into tCardName >> >> put "entry.1264876799=" & the short name of target into tTargetObject >> >> launch url "https://docs.google.com/forms/d/e/ >> 1FAIpQLScoYoEfrcewj4IEG0FnfjBnfeVVSLva5tWv-dVexoP95trNNA/formResponse?"& >> tStudentName & tDate & tSecondsSince & tCardName & tTargetObject >> >> end if >> >> put tSecondsSince && "seconds" && "-" && the short name of target >> >> put "entry.133167263=" & tSecondsSince && "seconds" & "&" into >> tSecondsSince >> >> put "entry.1059711654=" & cd fld "studentName" & "&" into tStudentName >> >> put "entry.630316753=" & the short date & "&" into tDate >> >> put "entry.768691577=" & the name of current card & "&" into tCardName >> >> put "entry.1264876799=" & the short name of target into tTargetObject >> >> launch url "https://docs.google.com/forms/d/e/ >> 1FAIpQLScoYoEfrcewj4IEG0FnfjBnfeVVSLva5tWv-dVexoP95trNNA/formResponse?"& >> tStudentName & tDate & tSecondsSince & tCardName & tTargetObject >> >> put tCurrentTime into cd fld "lastAction" >> end mouseDown >> >> on openCard >> put the millisecs into cd fld ?lastAction" >> end openCard >> >> Thank you! >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From brahma at hindu.org Sat Aug 26 23:30:43 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Sun, 27 Aug 2017 03:30:43 +0000 Subject: Search Values of Array in "One Go" In-Reply-To: References: <8223b9086f29f0c96cc56d73bf50b322@livecode.com> <465CBD8E-8DAE-4B06-A434-330A71DE1FEE@hindu.org> <841dee4d2b715c7c7ce3ae972acb27c6@livecode.com> <1E428071-AB2E-47BD-9177-2475171A4C0A@hindu.org> Message-ID: <0E025AED-37D9-418E-AD2C-9FBE81C7E2E4@hindu.org> Please do post your stack? over at the forums? On 8/26/17, 12:21 PM, "use-livecode on behalf of Brian Milby via use-livecode" wrote: I'm using example 5 from this site for my JSON: https://adobe.github.io/Spry/samples/data_region/JSONDataSetSample.html I can post a copy of the test stack I'm playing around with if anyone would be interested. From brahma at hindu.org Sat Aug 26 23:41:39 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Sun, 27 Aug 2017 03:41:39 +0000 Subject: Bad Crash on Attempt to Group Radio Buttons In-Reply-To: References: Message-ID: <342F2F04-FEEA-4F97-AB27-383AECD6AC8A@hindu.org> OK so editing groups was crashing LC on my Mac again today. I had pasted a grc into a group, could not select it, then closed the stack and LC crashed (reported here bug 20299) But when I reopened the stack the grc was there on the top layer of the group that I had edited before crashing. so hmm that paste did work. OK so I begin to suspect the IDE's scripts that are trying to track changes and update the Project Browser (wild guess) and I switch over to the revApplicationOverivew Ahha! look the graphic has no check mark under the "selectable" column. Hmm I could not recall a prop called "selectable" So go to the dictionary. enter "selectable" oops? no such property, so what is this column in the revApplicationOverview tracking.. gotta get work done here? turn vis of all objects on, check "selectable" whatever that is.. and now, yes! I can edit the group, select the grc on top layer, send to to back, refresh overview.. yep it's not the bottom object of the group. Save and no crashes. in the AP I can toggle the vis and it toggles in the PI for the object, but if I go object type and toggle "selectable" I don't see any change in any prop in the PI? So, what is this "selectable" property? On 8/22/17, 8:26 PM, "use-livecode on behalf of Monte Goulding via use-livecode" wrote: >On 23 Aug 2017, at 1:47 pm, Sannyasin Brahmanathaswami via use-livecode wrote: >Before I report? anyone seeing this or know this has been addressed in more recent versions. A crash log should help us find this relatively quickly if you can?t come up with a good recipe. Cheers Monte From brian at milby7.com Sat Aug 26 23:50:43 2017 From: brian at milby7.com (Brian Milby) Date: Sat, 26 Aug 2017 22:50:43 -0500 Subject: Search Values of Array in "One Go" In-Reply-To: <0E025AED-37D9-418E-AD2C-9FBE81C7E2E4@hindu.org> References: <8223b9086f29f0c96cc56d73bf50b322@livecode.com> <465CBD8E-8DAE-4B06-A434-330A71DE1FEE@hindu.org> <841dee4d2b715c7c7ce3ae972acb27c6@livecode.com> <1E428071-AB2E-47BD-9177-2475171A4C0A@hindu.org> <0E025AED-37D9-418E-AD2C-9FBE81C7E2E4@hindu.org> Message-ID: Here is a link to the file on OneDrive: https://1drv.ms/u/s!Apo0Atd869AFkjiW39Xit7Rmmp4b (https***1drv.ms/u/s!Apo0Atd869AFkjiW39Xit7Rmmp4b) If that won't work, I can upload to the forum somewhere. On Sat, Aug 26, 2017 at 10:30 PM, Sannyasin Brahmanathaswami via use-livecode wrote: > Please do post your stack? over at the forums? > > On 8/26/17, 12:21 PM, "use-livecode on behalf of Brian Milby via > use-livecode" use-livecode at lists.runrev.com> wrote: > > I'm using example 5 from this site for my JSON: > https://adobe.github.io/Spry/samples/data_region/ > JSONDataSetSample.html > > I can post a copy of the test stack I'm playing around with if anyone > would > be interested. > > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From bonnmike at gmail.com Sat Aug 26 23:56:05 2017 From: bonnmike at gmail.com (Mike Bonner) Date: Sat, 26 Aug 2017 21:56:05 -0600 Subject: Using "Launch URL" without actually opening browser? In-Reply-To: <6536D838-424F-43DC-802B-C3AE744F0CD8@me.com> References: <6536D838-424F-43DC-802B-C3AE744F0CD8@me.com> Message-ID: It seems to me that it should just be a matter of setting the proper headers before sending your request, but thats another area I don't know enough about. Didn't someone write a library for just this sort of thing? There is also the oath2 library in lc 9 and the google api uses oath2 so maybe thats a way. Too bad you need chrombook support. Otherwise you could just have a hidden browser widget in your stack and do it all behind the scenes. Another thing i don't know enough about.. Can a web app use oath2 (or launch or even get url while setting headers) and hit another domain? On Sat, Aug 26, 2017 at 9:30 PM, JOHN PATTEN via use-livecode < use-livecode at lists.runrev.com> wrote: > Hi Mike, > > I tried "Get URL" too. > > It may not be possible to submit/post the data in the URL (launch url " > https://docs.google.com/forms/d/e/1FAIpQLScoYoEfrcewj4IEG0FnfjBn > feVVSLva5tWv-dVexoP95trNNA/formResponse forms/d/e/1FAIpQLScoYoEfrcewj4IEG0FnfjBnfeVVSLva5tWv-dVexoP95trNNA/ > formResponse>?"& tStudentName & tDate & tSecondsSince & tCardName & > tTargetObject) without getting the Google Form response. I was thinking of > possible using this strategy in an HTML5 stack with student Chromebooks. > > Too bad, that would have been an easy way to store light weight stack data > without a lot of effort :( > > Thank you! > > > > > > > > On Aug 26, 2017, at 2:21 PM, Mike Bonner via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > > Try > > get url "https://docs.google.com/forms/d/e/ > 1FAIpQLScoYoEfrcewj4IEG0FnfjBn > > feVVSLva5tWv-dVexoP95trNNA/formResponse?"& tStudentName & tDate & > > tSecondsSince & tCardName & tTargetObject > > > > On Sat, Aug 26, 2017 at 3:15 PM, JOHN PATTEN via use-livecode < > > use-livecode at lists.runrev.com> wrote: > > > >> Hi All, > >> > >> I?m using the Google spreadsheet that gets created when you create a > >> Google Form to collect data from a stack. > >> > >> I?ve copied out the specific Google submit form button to send my stack > >> data to the Google spreadsheet. > >> > >> This works fine using ?Launch URL? however it opens the browser and give > >> me the Google Form Submission Confirmation page. Is there any way to > >> submit the URL without actually launching the browser? > >> > >> I experimenting with tracking my students? mouse clicks while using a > >> learning app I may create, and was looking at a easy way to store that > >> data, and utilize Google Forms simple data reports. > >> > >> Here?s the card script I?m using: > >> > >> on mouseDown > >> > >> --put the short name of target > >> > >> put the millisecs into TCurrentTime > >> > >> --convert tCurrentTime to milliseconds > >> > >> put cd fld "lastAction" into tOldTime > >> > >> put (tCurrentTime - tOldTime)/1000 into tSecondsSince > >> > >> if tSecondsSince > 60 then > >> > >> put "entry.133167263=" & tSecondsSince/60 & " minutes" & "&" into > >> tSecondsSince > >> > >> put "entry.1059711654=" & cd fld "studentName" into tStudentName > >> > >> put "entry.630316753=" & the short date & "&" into tDate > >> > >> put "entry.768691577=" & the name of current card & "&" into tCardName > >> > >> put "entry.1264876799=" & the short name of target into tTargetObject > >> > >> launch url "https://docs.google.com/forms/d/e/ > >> 1FAIpQLScoYoEfrcewj4IEG0FnfjBnfeVVSLva5tWv-dVexoP95trNNA/ > formResponse?"& > >> tStudentName & tDate & tSecondsSince & tCardName & tTargetObject > >> > >> end if > >> > >> put tSecondsSince && "seconds" && "-" && the short name of target > >> > >> put "entry.133167263=" & tSecondsSince && "seconds" & "&" into > >> tSecondsSince > >> > >> put "entry.1059711654=" & cd fld "studentName" & "&" into tStudentName > >> > >> put "entry.630316753=" & the short date & "&" into tDate > >> > >> put "entry.768691577=" & the name of current card & "&" into tCardName > >> > >> put "entry.1264876799=" & the short name of target into tTargetObject > >> > >> launch url "https://docs.google.com/forms/d/e/ > >> 1FAIpQLScoYoEfrcewj4IEG0FnfjBnfeVVSLva5tWv-dVexoP95trNNA/ > formResponse?"& > >> tStudentName & tDate & tSecondsSince & tCardName & tTargetObject > >> > >> put tCurrentTime into cd fld "lastAction" > >> end mouseDown > >> > >> on openCard > >> put the millisecs into cd fld ?lastAction" > >> end openCard > >> > >> Thank you! > >> > >> _______________________________________________ > >> use-livecode mailing list > >> use-livecode at lists.runrev.com > >> Please visit this url to subscribe, unsubscribe and manage your > >> subscription preferences: > >> http://lists.runrev.com/mailman/listinfo/use-livecode > > _______________________________________________ > > use-livecode mailing list > > use-livecode at lists.runrev.com > > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > > http://lists.runrev.com/mailman/listinfo/use-livecode > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From jacque at hyperactivesw.com Sun Aug 27 00:49:10 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Sat, 26 Aug 2017 23:49:10 -0500 Subject: Bad Crash on Attempt to Group Radio Buttons In-Reply-To: <342F2F04-FEEA-4F97-AB27-383AECD6AC8A@hindu.org> References: <342F2F04-FEEA-4F97-AB27-383AECD6AC8A@hindu.org> Message-ID: <72a27d23-1907-f862-36fc-26a15712ddec@hyperactivesw.com> On 8/26/17 10:41 PM, Sannyasin Brahmanathaswami via use-livecode wrote: > So, what is this "selectable" property? It's the cantSelect property, which doesn't show up in any search I did in the dictionary. But if you search for "select" and scroll forever, it's in the list. It's also the first hit if you search for "cant". CantSelect, if true, prevents the object from being selected with the pointer tool. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com From brian at milby7.com Sun Aug 27 00:53:26 2017 From: brian at milby7.com (Brian Milby) Date: Sat, 26 Aug 2017 23:53:26 -0500 Subject: Bad Crash on Attempt to Group Radio Buttons Message-ID: <40ba3cb3-d223-4ca8-b88a-b7306b838675@Brian-Milbys-iPhone-6s-Plus> "select\b" will make finding it a little easier. > > On Aug 26, 2017 at 11:49 PM, wrote: > > > > On 8/26/17 10:41 PM, Sannyasin Brahmanathaswami via use-livecode wrote: > So, what is this "selectable" property? It's the cantSelect property, which doesn't show up in any search I did in the dictionary. But if you search for "select" and scroll forever, it's in the list. It's also the first hit if you search for "cant". CantSelect, if true, prevents the object from being selected with the pointer tool. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode > > From jacque at hyperactivesw.com Sun Aug 27 02:12:03 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Sun, 27 Aug 2017 01:12:03 -0500 Subject: Bad Crash on Attempt to Group Radio Buttons In-Reply-To: <40ba3cb3-d223-4ca8-b88a-b7306b838675@Brian-Milbys-iPhone-6s-Plus> References: <40ba3cb3-d223-4ca8-b88a-b7306b838675@Brian-Milbys-iPhone-6s-Plus> Message-ID: Thanks. But it should be easier. On 8/26/17 11:53 PM, Brian Milby via use-livecode wrote: > > > > "select\b" will make finding it a little easier. > >> >> On Aug 26, 2017 at 11:49 PM, wrote: >> >> >> >> On 8/26/17 10:41 PM, Sannyasin Brahmanathaswami via use-livecode wrote: > So, what is this "selectable" property? It's the cantSelect property, which doesn't show up in any search I did in the dictionary. But if you search for "select" and scroll forever, it's in the list. It's also the first hit if you search for "cant". CantSelect, if true, prevents the object from being selected with the pointer tool. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com From hh at hyperhh.de Sun Aug 27 06:20:27 2017 From: hh at hyperhh.de (hh) Date: Sun, 27 Aug 2017 12:20:27 +0200 Subject: Bad Crash on Attempt to Group Radio Buttons Message-ID: > JLG wrote: > ... But it should be easier. You could use tinyDictionary. From jacque at hyperactivesw.com Sun Aug 27 10:05:22 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Sun, 27 Aug 2017 09:05:22 -0500 Subject: Bad Crash on Attempt to Group Radio Buttons In-Reply-To: References: Message-ID: <15e2402e0d0.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Yes, Tiny Dictionary is brilliant. But does it integrate with the script editor yet? Will new users know they should download a third party solution to get a fully functional dictionary? I can usually find what I need because I know most of the terminology but others won't. . -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com On August 27, 2017 5:22:43 AM hh via use-livecode wrote: >> JLG wrote: >> ... But it should be easier. > > You could use tinyDictionary. > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From jonathandlynch at gmail.com Sun Aug 27 10:23:16 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Sun, 27 Aug 2017 10:23:16 -0400 Subject: Bad Crash on Attempt to Group Radio Buttons In-Reply-To: References: Message-ID: If you click a button with cantselect set to true, what object receives the click? Sent from my iPhone On Aug 27, 2017, at 6:20 AM, hh via use-livecode wrote: >> JLG wrote: >> ... But it should be easier. > > You could use tinyDictionary. > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From nabble at mad.pink Sun Aug 27 10:37:36 2017 From: nabble at mad.pink (pink) Date: Sun, 27 Aug 2017 07:37:36 -0700 (MST) Subject: CouchDB, DayBed, etc. In-Reply-To: References: <1503535134720-4718821.post@n4.nabble.com> Message-ID: <1503844656581-4718956.post@n4.nabble.com> I've used "LSON" in the past and had issues. Not with save files, but with socket transmission... I may play around a bit and see how things go ----- --- Greg (pink) Miller mad, pink and dangerous to code -- View this message in context: http://runtime-revolution.278305.n4.nabble.com/CouchDB-DayBed-etc-tp4718761p4718956.html Sent from the Revolution - User mailing list archive at Nabble.com. From ambassador at fourthworld.com Sun Aug 27 11:14:27 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Sun, 27 Aug 2017 08:14:27 -0700 Subject: CouchDB, DayBed, etc. In-Reply-To: <1503844656581-4718956.post@n4.nabble.com> References: <1503844656581-4718956.post@n4.nabble.com> Message-ID: pink wrote: > I've used "LSON" in the past and had issues. Not with save files, but > with socket transmission... > > I may play around a bit and see how things go LSON is binary, so set headers accordingly. When in doubt, base64. I have two systems that use LSON almost exclusively to move data back and forth between the client and server. It's a great format, almost like BSON but simpler, and more compact than JSON. Too bad LC is the only program that uses it. But when you have LC on both ends, it's pretty sweet. -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From jacque at hyperactivesw.com Sun Aug 27 11:39:20 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Sun, 27 Aug 2017 10:39:20 -0500 Subject: Bad Crash on Attempt to Group Radio Buttons In-Reply-To: References: Message-ID: <15e2458e840.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> CantSelect disallows selection by the edit tool, mostly used in development, but doesn't change the message path. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com On August 27, 2017 9:25:28 AM Jonathan Lynch via use-livecode wrote: > If you click a button with cantselect set to true, what object receives the > click? > > Sent from my iPhone > > On Aug 27, 2017, at 6:20 AM, hh via use-livecode > wrote: > >>> JLG wrote: >>> ... But it should be easier. >> >> You could use tinyDictionary. >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From jonathandlynch at gmail.com Sun Aug 27 12:07:02 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Sun, 27 Aug 2017 12:07:02 -0400 Subject: Bad Crash on Attempt to Group Radio Buttons In-Reply-To: <15e2458e840.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> References: <15e2458e840.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Message-ID: <7302F4F2-2BC0-45F9-8146-EBED086BA6EE@gmail.com> Ah - thanks Sent from my iPhone > On Aug 27, 2017, at 11:39 AM, J. Landman Gay via use-livecode wrote: > > CantSelect disallows selection by the edit tool, mostly used in development, but doesn't change the message path. > > -- > Jacqueline Landman Gay | jacque at hyperactivesw.com > HyperActive Software | http://www.hyperactivesw.com > > > >> On August 27, 2017 9:25:28 AM Jonathan Lynch via use-livecode wrote: >> >> If you click a button with cantselect set to true, what object receives the click? >> >> Sent from my iPhone >> >> On Aug 27, 2017, at 6:20 AM, hh via use-livecode wrote: >> >>>> JLG wrote: >>>> ... But it should be easier. >>> >>> You could use tinyDictionary. >>> >>> _______________________________________________ >>> use-livecode mailing list >>> use-livecode at lists.runrev.com >>> Please visit this url to subscribe, unsubscribe and manage your subscription preferences: >>> http://lists.runrev.com/mailman/listinfo/use-livecode >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode > > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From brian at milby7.com Sun Aug 27 13:48:26 2017 From: brian at milby7.com (Brian Milby) Date: Sun, 27 Aug 2017 12:48:26 -0500 Subject: Bad Crash on Attempt to Group Radio Buttons Message-ID: <1e50f901-389f-410c-be77-a0b6d9f6573c@Brian-Milbys-iPhone-6s-Plus> I've been working on the dictionary and would like to improve it even more. Changes to the selection logic will probably need concurrence from the LC folks. Right now the search is performed on the name and the syntax. Priority is given to terms that match the start of a word. Multiple words are currently supported (space delimited, treated as AND). See bug report 20289 (specifically for "me" being difficult to find). Maybe the dictionary should default to a "definition" with some hints on searching. TinyDict is much more space efficient and will probably remain so unless the built in dictionary is replaced. I do believe that the functionality of the built in one can be made pretty close (exception possibly being the search of multiple dictionaries at once). It already is more powerful since full RegEx is supported in the search field (admittedly limited to advanced users). Thanks, Brian > > On Aug 27, 2017 at 9:05 AM, wrote: > > > > Yes, Tiny Dictionary is brilliant. But does it integrate with the script editor yet? Will new users know they should download a third party solution to get a fully functional dictionary? I can usually find what I need because I know most of the terminology but others won't. . -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com > > From jacque at hyperactivesw.com Sun Aug 27 14:08:24 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Sun, 27 Aug 2017 13:08:24 -0500 Subject: Bad Crash on Attempt to Group Radio Buttons In-Reply-To: <1e50f901-389f-410c-be77-a0b6d9f6573c@Brian-Milbys-iPhone-6s-Plus> References: <1e50f901-389f-410c-be77-a0b6d9f6573c@Brian-Milbys-iPhone-6s-Plus> Message-ID: <5c1f1983-4db5-204c-0362-91224ec64e4c@hyperactivesw.com> On 8/27/17 12:48 PM, Brian Milby via use-livecode wrote: > I've been working on the dictionary and would like to improve it even more. Your name will be praised. :) -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com From brahma at hindu.org Sun Aug 27 14:09:58 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Sun, 27 Aug 2017 18:09:58 +0000 Subject: Bad Crash on Attempt to Group Radio Buttons In-Reply-To: <15e2458e840.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> References: <15e2458e840.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Message-ID: JQ wrote CantSelect disallows selection by the edit tool, mostly used in development, but doesn't change the message path. Hmm.. doesn't this comprise a Noobie Gotcha? cantSelect is not exposed in the PI for any object. if it was, then toggling this in the ABrowser would trigger the checkbox on and off and you would get it' "Oh selectable it toggling the cantSelect" property. I don't think that prop is exposed at all in the new Project Browser and "worse" the PB allowed me to double click on the list and it *did* select the object that had "cantSelect" = "true" @monte perhaps this is the crux of the crash: PB allows selection of an object with cantSelect set to true? BR From brahma at hindu.org Sun Aug 27 14:10:28 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Sun, 27 Aug 2017 18:10:28 +0000 Subject: Search Values of Array in "One Go" In-Reply-To: References: <8223b9086f29f0c96cc56d73bf50b322@livecode.com> <465CBD8E-8DAE-4B06-A434-330A71DE1FEE@hindu.org> <841dee4d2b715c7c7ce3ae972acb27c6@livecode.com> <1E428071-AB2E-47BD-9177-2475171A4C0A@hindu.org> <0E025AED-37D9-418E-AD2C-9FBE81C7E2E4@hindu.org> Message-ID: <6B1C49AE-7831-42E5-9C45-80FCB3D2984F@hindu.org> Thanks Brian? We use MS office for enterprise now, So I have one drive and it came right thru. On 8/26/17, 5:51 PM, "use-livecode on behalf of Brian Milby via use-livecode" wrote: Here is a link to the file on OneDrive: https://1drv.ms/u/s!Apo0Atd869AFkjiW39Xit7Rmmp4b (https***1drv.ms/u/s!Apo0Atd869AFkjiW39Xit7Rmmp4b) If that won't work, I can upload to the forum somewhere. From jacque at hyperactivesw.com Sun Aug 27 16:10:42 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Sun, 27 Aug 2017 15:10:42 -0500 Subject: Bad Crash on Attempt to Group Radio Buttons In-Reply-To: References: <15e2458e840.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Message-ID: <561f9385-2ca6-48fd-871a-03c52dd84a9c@hyperactivesw.com> On 8/27/17 1:09 PM, Sannyasin Brahmanathaswami via use-livecode wrote: > JQ wrote > > CantSelect disallows selection by the edit tool, mostly used in > development, but doesn't change the message path. > > Hmm.. doesn't this comprise a Noobie Gotcha? > > cantSelect is not exposed in the PI for any object. CantSelect is false by default, and since it isn't in the project browser, new users are unlikely to know about it. They're also unlikely to dig into the Plugins menu to show the app browser, so mistakes would probably be rare. But yes, it could be an issue if they did find it. > "worse" the PB allowed me to double click on the list and it *did* select the object that had "cantSelect" = "true" > > @monte perhaps this is the crux of the crash: PB allows selection of an object with cantSelect set to true? If you can reproduce that, it would be worth a bug report. The behavior does sound suspicious. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com From ahsoftware at sonic.net Sun Aug 27 16:29:15 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Sun, 27 Aug 2017 13:29:15 -0700 Subject: Bad Crash on Attempt to Group Radio Buttons In-Reply-To: <561f9385-2ca6-48fd-871a-03c52dd84a9c@hyperactivesw.com> References: <15e2458e840.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <561f9385-2ca6-48fd-871a-03c52dd84a9c@hyperactivesw.com> Message-ID: <3b95be18-a2a6-c048-31f2-23ec93f9dfc5@sonic.net> On 08/27/2017 01:10 PM, J. Landman Gay via use-livecode wrote: > CantSelect is false by default, and since it isn't in the project > browser, new users are unlikely to know about it. They're also unlikely > to dig into the Plugins menu to show the app browser, so mistakes would > probably be rare. I don't think I've ever used the cantSelect property, and I've been having a hard time trying to come up with a use case for it. Can you clue me in as to a situation where this might be useful? -- Mark Wieder ahsoftware at gmail.com From monte at appisle.net Sun Aug 27 16:31:57 2017 From: monte at appisle.net (Monte Goulding) Date: Mon, 28 Aug 2017 06:31:57 +1000 Subject: Bad Crash on Attempt to Group Radio Buttons In-Reply-To: References: <15e2458e840.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Message-ID: <0E54249A-7617-4AED-9156-A3D2D2760E1C@appisle.net> > On 28 Aug 2017, at 4:09 am, Sannyasin Brahmanathaswami via use-livecode wrote: > > CantSelect disallows selection by the edit tool, mostly used in > development, but doesn't change the message path. > > Hmm.. doesn't this comprise a Noobie Gotcha? > > cantSelect is not exposed in the PI for any object. > > if it was, then toggling this in the ABrowser would trigger the checkbox on and off and you would get it' > > "Oh selectable it toggling the cantSelect" property. If you had an inspector open on the selected control and toggled cantSelect and boom it disappeared because the selected object wasn?t selected would you report that as a bug? That?s why it?s not on the inspector. Mind you it might be feasible to switch the inspector to locked on object mode at that point... > > I don't think that prop is exposed at all in the new Project Browser and Actually it is but the toolTip is wrong! I?m about to submit a patch for that. > > "worse" the PB allowed me to double click on the list and it *did* select the object that had "cantSelect" = "true" > > @monte perhaps this is the crux of the crash: PB allows selection of an object with cantSelect set to true? Hmm? it does appear it does allow it? perhaps the select command works regardless of cantSelect? It does not appear to crash for me though. Cheers Monte From monte at appisle.net Sun Aug 27 16:36:43 2017 From: monte at appisle.net (Monte Goulding) Date: Mon, 28 Aug 2017 06:36:43 +1000 Subject: Bad Crash on Attempt to Group Radio Buttons In-Reply-To: <3b95be18-a2a6-c048-31f2-23ec93f9dfc5@sonic.net> References: <15e2458e840.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <561f9385-2ca6-48fd-871a-03c52dd84a9c@hyperactivesw.com> <3b95be18-a2a6-c048-31f2-23ec93f9dfc5@sonic.net> Message-ID: <7B689C09-3D71-4337-A11F-5A38B0D517B7@appisle.net> > On 28 Aug 2017, at 6:29 am, Mark Wieder via use-livecode wrote: > >> CantSelect is false by default, and since it isn't in the project browser, new users are unlikely to know about it. They're also unlikely to dig into the Plugins menu to show the app browser, so mistakes would probably be rare. > > I don't think I've ever used the cantSelect property, and I've been having a hard time trying to come up with a use case for it. Can you clue me in as to a situation where this might be useful? I have used cantSelect before to stop selection of a background image that has lots of objects on top. It means you can drag select them and won?t accidentally click-drag and move your background. It?s better than lockLocation because of drag-select. Cheers Monte From martyknappster at gmail.com Sun Aug 27 16:42:46 2017 From: martyknappster at gmail.com (Marty Knapp) Date: Sun, 27 Aug 2017 13:42:46 -0700 Subject: Bad Crash on Attempt to Group Radio Buttons In-Reply-To: <3b95be18-a2a6-c048-31f2-23ec93f9dfc5@sonic.net> References: <15e2458e840.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <561f9385-2ca6-48fd-871a-03c52dd84a9c@hyperactivesw.com> <3b95be18-a2a6-c048-31f2-23ec93f9dfc5@sonic.net> Message-ID: I use this feature extensively in an app where there is card that has objects that users can select to change properties (line width, color, font, etc) and at the top of the window is a toolbar with font menu, etc. I don't want the user to be able to select the toolbar controls and accidentally delete them or alter them, so I use the cantSelect property on those. Marty K > On 08/27/2017 01:10 PM, J. Landman Gay via use-livecode wrote: > >> CantSelect is false by default, and since it isn't in the project >> browser, new users are unlikely to know about it. They're also >> unlikely to dig into the Plugins menu to show the app browser, so >> mistakes would probably be rare. > > I don't think I've ever used the cantSelect property, and I've been > having a hard time trying to come up with a use case for it. Can you > clue me in as to a situation where this might be useful? From monte at appisle.net Sun Aug 27 16:42:47 2017 From: monte at appisle.net (Monte Goulding) Date: Mon, 28 Aug 2017 06:42:47 +1000 Subject: Bad Crash on Attempt to Group Radio Buttons In-Reply-To: <5c1f1983-4db5-204c-0362-91224ec64e4c@hyperactivesw.com> References: <1e50f901-389f-410c-be77-a0b6d9f6573c@Brian-Milbys-iPhone-6s-Plus> <5c1f1983-4db5-204c-0362-91224ec64e4c@hyperactivesw.com> Message-ID: <155C269D-D5AD-4B97-9D47-67E1CCF0EE0C@appisle.net> > On 28 Aug 2017, at 4:08 am, J. Landman Gay via use-livecode wrote: > >> I've been working on the dictionary and would like to improve it even more. > > Your name will be praised. :) Brian?s name is praised already! He?s certainly pitching in! As far as the dictionary goes perhaps the search term needs to prioritise if found anywhere in the name of an entry? Cheers Monte From monte at appisle.net Sun Aug 27 16:46:47 2017 From: monte at appisle.net (Monte Goulding) Date: Mon, 28 Aug 2017 06:46:47 +1000 Subject: Text (uni)coding issue In-Reply-To: <20170827014412.Horde.hTYsFqNcynNiXpryiLPqZ9v@ua850258.serversignin.com> References: <20170827014412.Horde.hTYsFqNcynNiXpryiLPqZ9v@ua850258.serversignin.com> Message-ID: > On 27 Aug 2017, at 11:44 am, Andrew Bell via use-livecode wrote: > > There were some errors (I think from email translations), but I think I understand what you're trying to do. The data still seems to be in a weird format. Hmm? did you encode the data correctly as you put it in the db? Cheers Monte From brian at milby7.com Sun Aug 27 17:33:00 2017 From: brian at milby7.com (Brian Milby) Date: Sun, 27 Aug 2017 16:33:00 -0500 Subject: Bad Crash on Attempt to Group Radio Buttons Message-ID: <5bc47e71-ec3c-4dfa-a08a-9796b221ee2f@Brian-Milbys-iPhone-6s-Plus> I think that may be better. Since JavaScript doesn't preserve pre-sort order, I think additional comparisons are needed to maintain the alpha sort. While we can use a trailing "\b" to match word ending (makes exact word be prioritized), using something like a quote character may be "easier" (replace " with \b in the regex) to allow exact match searches. Thanks, Brian > > On Aug 27, 2017 at 3:42 PM, wrote: > > > > > On 28 Aug 2017, at 4:08 am, J. Landman Gay via use-livecode wrote: > >> I've been working on the dictionary and would like to improve it even more. > > Your name will be praised. :) Brian?s name is praised already! He?s certainly pitching in! As far as the dictionary goes perhaps the search term needs to prioritise if found anywhere in the name of an entry? Cheers Monte _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode > > From jacque at hyperactivesw.com Sun Aug 27 18:04:31 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Sun, 27 Aug 2017 17:04:31 -0500 Subject: Bad Crash on Attempt to Group Radio Buttons In-Reply-To: <3b95be18-a2a6-c048-31f2-23ec93f9dfc5@sonic.net> References: <15e2458e840.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <561f9385-2ca6-48fd-871a-03c52dd84a9c@hyperactivesw.com> <3b95be18-a2a6-c048-31f2-23ec93f9dfc5@sonic.net> Message-ID: <15e25b98d98.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> In development it can be handy if you have an object that shouldn't move or change, but you want to drag a selection around surrounding objects to select them. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com On August 27, 2017 3:31:22 PM Mark Wieder via use-livecode wrote: > On 08/27/2017 01:10 PM, J. Landman Gay via use-livecode wrote: > >> CantSelect is false by default, and since it isn't in the project >> browser, new users are unlikely to know about it. They're also unlikely >> to dig into the Plugins menu to show the app browser, so mistakes would >> probably be rare. > > I don't think I've ever used the cantSelect property, and I've been > having a hard time trying to come up with a use case for it. Can you > clue me in as to a situation where this might be useful? > > -- > Mark Wieder > ahsoftware at gmail.com > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From ahsoftware at sonic.net Sun Aug 27 18:09:52 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Sun, 27 Aug 2017 15:09:52 -0700 Subject: Bad Crash on Attempt to Group Radio Buttons In-Reply-To: References: <15e2458e840.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <561f9385-2ca6-48fd-871a-03c52dd84a9c@hyperactivesw.com> <3b95be18-a2a6-c048-31f2-23ec93f9dfc5@sonic.net> Message-ID: <6538d8b0-c8e8-bc14-8c63-d2a961c12a47@sonic.net> On 08/27/2017 01:42 PM, Marty Knapp via use-livecode wrote: > I use this feature extensively in an app where there is card that has > objects that users can select to change properties (line width, color, > font, etc) and at the top of the window is a toolbar with font menu, > etc. I don't want the user to be able to select the toolbar controls and > accidentally delete them or alter them, so I use the cantSelect property > on those. So you put the user in development mode? Sounds dangerous. -- Mark Wieder ahsoftware at gmail.com From ahsoftware at sonic.net Sun Aug 27 18:11:09 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Sun, 27 Aug 2017 15:11:09 -0700 Subject: Bad Crash on Attempt to Group Radio Buttons In-Reply-To: <7B689C09-3D71-4337-A11F-5A38B0D517B7@appisle.net> References: <15e2458e840.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <561f9385-2ca6-48fd-871a-03c52dd84a9c@hyperactivesw.com> <3b95be18-a2a6-c048-31f2-23ec93f9dfc5@sonic.net> <7B689C09-3D71-4337-A11F-5A38B0D517B7@appisle.net> Message-ID: <5dd03294-066e-fff7-e8d5-9a174b91883f@sonic.net> On 08/27/2017 01:36 PM, Monte Goulding via use-livecode wrote: > I have used cantSelect before to stop selection of a background image that has lots of objects on top. It means you can drag select them and won?t accidentally click-drag and move your background. It?s better than lockLocation because of drag-select. Thanks. That makes sense. Kind of like having editable and non-editable layers. -- Mark Wieder ahsoftware at gmail.com From johnpatten at me.com Sun Aug 27 18:27:22 2017 From: johnpatten at me.com (JOHN PATTEN) Date: Sun, 27 Aug 2017 15:27:22 -0700 Subject: HTML5 and Post tArgs to URL "http://..." ? Message-ID: <3F623819-D694-4B6E-A1A0-74C463BC2DC5@me.com> Hi All, I was experimenting with HTML 5 this weekend. I have a script that posts some data to a server side .lc script. The script inserts the data into a mySQL database. I get a ?-1? javascript error the minute the post tArgList to URL "http://xxxxxxxx.on-rev.com/folder/tracker.lc? script runs from my html5 stack. I?m guessing that is something you are not allowed to do in a Livecode HTML5 stack? Thank you! From ambassador at fourthworld.com Sun Aug 27 19:28:55 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Sun, 27 Aug 2017 16:28:55 -0700 Subject: Bad Crash on Attempt to Group Radio Buttons In-Reply-To: <561f9385-2ca6-48fd-871a-03c52dd84a9c@hyperactivesw.com> References: <561f9385-2ca6-48fd-871a-03c52dd84a9c@hyperactivesw.com> Message-ID: I sent this reply once already, several hours ago. It hasn't arrived, so I thought I'd try again. If you get two copies, I apologize on behalf of the listserver: On 8/27/17 1:09 PM, Sannyasin Brahmanathaswami via use-livecode wrote: > JQ wrote > CantSelect disallows selection by the edit tool, mostly used in > development, but doesn't change the message path. > > Hmm.. doesn't this comprise a Noobie Gotcha? > > cantSelect is not exposed in the PI for any object. A little background may be helpful: Scott Raney added the cantSelect property after a long discussion I had with him about building custom drawing environments. I had originally suggested to him that we extend the tool property to be local to groups (similar to the flexibility SuperCard provides with the tool being local to a window, years later submitted to RunRev as BZ#623)), and he found that interesting but more work than was available at that moment in the release cycle. So instead he came up with the cantSelect property as a workaround to tide us over in the meantime. In addition to what Jacque noted there's something more that can be very important in some contexts: It doesn't just prevent the object from being acted on by the pointer tool, but moreover always acts as though its own object-local tool mode is the browse tool, regardless of whatever other tool is in effect. "CantSelect" is a very Raney name; "AlwaysBrowseMode" would be more descriptive. This means your object will get all the messages you'd expect to get with the browse tool regardless of the current global tool property, but only for that one object. This can be useful for contexts in which you want to allow the user to use the pointer tool, but also provide a toolbar or other controls they can use to select shapes, colors, etc. This seemed like a good idea at the time, but in practice is far more tedious to build with than having the non-browse mode local to the drawing region group as I'd originally hoped for. Better than having to completely emulate all pointer tool behaviors from scratch in script using the browse tool, but still more than I'd wish on a newcomer. Given the difficulty of attempting to mix tool modes with this property in LC, in practice this property is seldom used. The confusion you reported is something I see almost weekly in the forums with this very unusual property. I'd suggested replacing that in the Project Browser to govern lockLoc instead, which is not only far more frequently used but also a much more common and anticipatable use of a lock icon. -- Richard Gaskin Fourth World Systems From ambassador at fourthworld.com Sun Aug 27 19:49:26 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Sun, 27 Aug 2017 16:49:26 -0700 Subject: Bad Crash on Attempt to Group Radio Buttons In-Reply-To: <5dd03294-066e-fff7-e8d5-9a174b91883f@sonic.net> References: <5dd03294-066e-fff7-e8d5-9a174b91883f@sonic.net> Message-ID: <87d8719d-8138-ac90-994b-7d1e96f390f0@fourthworld.com> Mark Wieder wrote: > On 08/27/2017 01:42 PM, Marty Knapp via use-livecode wrote: >> I use this feature extensively in an app where there is card that has >> objects that users can select to change properties (line width, color, >> font, etc) and at the top of the window is a toolbar with font menu, >> etc. I don't want the user to be able to select the toolbar controls and >> accidentally delete them or alter them, so I use the cantSelect property >> on those. > > So you put the user in development mode? Sounds dangerous. Drawing != development. MacDraw != MPW. From the root tongue HyperTalk, through SuperTalk, OMO, Gain, to today's LiveCode, xTalks provide a wide range of tools, including button, field, browse, and others. What distinguishes these from development isn't that they're used at all, but how. After all, all code editors are fields, but not all fields are code editors. > On 08/27/2017 01:36 PM, Monte Goulding via use-livecode wrote: > >> I have used cantSelect before to stop selection of a background image that has lots of objects on top. It means you can drag select them and won?t accidentally click-drag and move your background. It?s better than lockLocation because of drag-select. > > Thanks. That makes sense. Kind of like having editable and non-editable > layers. Now you got it. Having different tools has been useful since HyperCard's premier in 1987, and with LC's richer toolset only more so. Monte's particular use, however, is compromised by not having a true cantSelect property, instead getting by with one that's really a control-specific tool mode, but limited to only those controls that aren't groups and to only one tool, the browse tool: In the scenario he describes, the presence of an object that spans the drawing region but has it's AlwaysBrowse ("cantSelect") set to true means that he can't drag across it to marquee-select other objects. In such a setup (I've made a few myself over the years) you must either limit multi-object selections to shift-clicking each one individually, or write code that emulates marquee selection in the image object using the browse tool. -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From ahsoftware at sonic.net Sun Aug 27 20:31:07 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Sun, 27 Aug 2017 17:31:07 -0700 Subject: Bad Crash on Attempt to Group Radio Buttons In-Reply-To: <87d8719d-8138-ac90-994b-7d1e96f390f0@fourthworld.com> References: <5dd03294-066e-fff7-e8d5-9a174b91883f@sonic.net> <87d8719d-8138-ac90-994b-7d1e96f390f0@fourthworld.com> Message-ID: On 08/27/2017 04:49 PM, Richard Gaskin via use-livecode wrote: > Mark Wieder wrote: >> On 08/27/2017 01:42 PM, Marty Knapp via use-livecode wrote: >>> I use this feature extensively in an app where there is card that has >>> objects that users can select to change properties (line width, color, >>> font, etc) and at the top of the window is a toolbar with font menu, >>> etc. I don't want the user to be able to select the toolbar controls and >>> accidentally delete them or alter them, so I use the cantSelect property >>> on those. >> >> So you put the user in development mode? Sounds dangerous. > > Drawing != development. Maybe I'm only partially understanding this then. My take on this is that the cantSelect property really only comes into play when the edit tool (or whatever it's called these days if it's not development) is active. So you have full edit capability, and that goes beyond just drawing or moving objects around on the screen. -- Mark Wieder ahsoftware at gmail.com From ambassador at fourthworld.com Sun Aug 27 21:21:54 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Sun, 27 Aug 2017 18:21:54 -0700 Subject: Bad Crash on Attempt to Group Radio Buttons In-Reply-To: References: Message-ID: <0a7115b2-1360-ba4d-59f9-23652023a057@fourthworld.com> Mark Wieder wrote: > On 08/27/2017 04:49 PM, Richard Gaskin via use-livecode wrote: >> Drawing != development. > > Maybe I'm only partially understanding this then. My take on this is > that the cantSelect property really only comes into play when the > edit tool (or whatever it's called these days if it's not > development) is active. Aye, there's the rub: the tool's name is "pointer", introduced into our family of languages by SuperCard in 1989 and continued into MC when it was born in '92. The name was chosen to reflect the cursor image choice that goes with it, a more traditional app-like look from the HyperCard-specific browse mode with its hand icon. Just about any vector layout program (MacDraw, PageMaker, Word, etc.) uses a mode like that for selecting, moving, and resizing vector objects. > So you have full edit capability, and that goes beyond just > drawing or moving objects around on the screen. What is "full edit capability"? The pointer tool, like any of the tools, is just an interaction mode. Any capabilities beyond manipulating layout are defined by your scripts. -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From ahsoftware at sonic.net Sun Aug 27 21:49:30 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Sun, 27 Aug 2017 18:49:30 -0700 Subject: Bad Crash on Attempt to Group Radio Buttons In-Reply-To: <0a7115b2-1360-ba4d-59f9-23652023a057@fourthworld.com> References: <0a7115b2-1360-ba4d-59f9-23652023a057@fourthworld.com> Message-ID: On 08/27/2017 06:21 PM, Richard Gaskin via use-livecode wrote: > The pointer tool, like any of the tools, is just an interaction mode. > > Any capabilities beyond manipulating layout are defined by your scripts. > OK - so we're talking about outside the IDE. So the cantSelect property comes into play in a standalone app when you select the pointer tool and then define the allowable actions. -- Mark Wieder ahsoftware at gmail.com From brian at milby7.com Sun Aug 27 23:12:35 2017 From: brian at milby7.com (Brian Milby) Date: Sun, 27 Aug 2017 22:12:35 -0500 Subject: Bad Crash on Attempt to Group Radio Buttons In-Reply-To: <5bc47e71-ec3c-4dfa-a08a-9796b221ee2f@Brian-Milbys-iPhone-6s-Plus> References: <5bc47e71-ec3c-4dfa-a08a-9796b221ee2f@Brian-Milbys-iPhone-6s-Plus> Message-ID: PR submitted... https://github.com/livecode/livecode-ide/pull/1713 http://quality.livecode.com/show_bug.cgi?id=20289 On Sun, Aug 27, 2017 at 4:33 PM, Brian Milby wrote: > I think that may be better. > > Since JavaScript doesn't preserve pre-sort order, I think additional > comparisons are needed to maintain the alpha sort. > > While we can use a trailing "\b" to match word ending (makes exact word be > prioritized), using something like a quote character may be "easier" > (replace " with \b in the regex) to allow exact match searches. > > Thanks, > Brian > > From brahma at hindu.org Mon Aug 28 00:25:06 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Mon, 28 Aug 2017 04:25:06 +0000 Subject: Bad Crash on Attempt to Group Radio Buttons In-Reply-To: <7B689C09-3D71-4337-A11F-5A38B0D517B7@appisle.net> References: <15e2458e840.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <561f9385-2ca6-48fd-871a-03c52dd84a9c@hyperactivesw.com> <3b95be18-a2a6-c048-31f2-23ec93f9dfc5@sonic.net> <7B689C09-3D71-4337-A11F-5A38B0D517B7@appisle.net> Message-ID: <3CB9701C-2135-4373-A87A-D15630A900FB@hindu.org> this is a really useful prop? too bad it is not exposed in the PI "use case for it" OH Boy! us page lay people lock background objects all the time? once a subset of elements are "locked down" design wise.. you don't what them moving about. I'll be using this a lot now that I found it? But I guess the only UI in the IDE is to switch to AB and toggle it in that column? that definitely qualifies as "mystery meat UX" is there an enhancement request to expose this in the property inspector for all controls? till then we can add it to a tool set to toogle cantSelect for the selectedObject() On 8/27/17, 10:37 AM, "use-livecode on behalf of Monte Goulding via use-livecode" wrote: >I don't think I've ever used the cantSelect property, and I've been having a hard time trying to come up with a use case for it. Can you clue me in as to a situation where this might be useful? From brahma at hindu.org Mon Aug 28 00:37:01 2017 From: brahma at hindu.org (Sannyasin Brahmanathaswami) Date: Mon, 28 Aug 2017 04:37:01 +0000 Subject: Bad Crash on Attempt to Group Radio Buttons In-Reply-To: References: <561f9385-2ca6-48fd-871a-03c52dd84a9c@hyperactivesw.com> Message-ID: <2F4FE577-C0E0-4CB1-A0F0-5E8377DF5579@hindu.org> Richard: Hmmm, this could be really useful a whole responsive palette of control on the side of a card, (instead of a separate palette stack) while continuing to dev in the main region. useful for dev. In fact doesn't this solve a core UX, that is not "ancient"by any means?: A drawing region with controls on the side/bottom. and all you have to do is turn on the pointer. (having preset all the other controls to cantSelect/AlwaysBrowseMode.) I actually have a use case for this right in front of me if it works on Mobile. BR On 8/27/17, 1:29 PM, "use-livecode on behalf of Richard Gaskin via use-livecode" wrote: In addition to what Jacque noted there's something more that can be very important in some contexts: It doesn't just prevent the object from being acted on by the pointer tool, but moreover always acts as though its own object-local tool mode is the browse tool, regardless of whatever other tool is in effect. "CantSelect" is a very Raney name; "AlwaysBrowseMode" would be more descriptive. This means your object will get all the messages you'd expect to get with the browse tool regardless of the current global tool property, but only for that one object. This can be useful for contexts in which you want to allow the user to use the pointer tool, but also provide a toolbar or other controls they can use to select shapes, colors, etc. From toolbook at kestner.de Mon Aug 28 03:00:55 2017 From: toolbook at kestner.de (Tiemo Hollmann TB) Date: Mon, 28 Aug 2017 09:00:55 +0200 Subject: AW: Video files not showing on my PC (LiveCode 5.5) In-Reply-To: References: Message-ID: <004501d31fcb$65dab310$31901930$@kestner.de> Hi Francis, I don't think it is a matter of LiveCode but of the used Video Codecs/Filters. Could it be, that some videos are encoded with different codecs and they are not installed on the windows machine? Tiemo -----Urspr?ngliche Nachricht----- Von: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] Im Auftrag von Francis Nugent Dixon via use-livecode Gesendet: Samstag, 26. August 2017 14:19 An: use-livecode at lists.runrev.com Cc: Francis Nugent Dixon Betreff: Video files not showing on my PC (LiveCode 5.5) Hi from Beautiful Brittany, LiveCode 5.5 (I know, I can't afford the updates - Am I the only one ?) Sierra 10.12.3 On my Mac, I have successfully run Audio and Video functions (Quicktime) MP3 for Audio, MP4/Mov for Video, for some years. Recently moving the app to PC (Windows 7, with Quicktime loaded), all my Audio files work fine, and MOST of the videos work fine also. But a few Video files play the audio but DO NOT SHOW the Video (screen is blank). I notice that the files which do not run correctly are quite big, sometimes MP4, sometimes Mov (no obvious reasons). Otherwise - Mystery !! My scripts have run a thousand times on Mac, but just the strange glitches (with larger Video files MP4/Mov PERHAPS ?) on the PC. I can send scripts if necessary. Any ideas ? - Any 5.5 users still out there, somewhere ...... ? -Francis Subsiduary question : I bought 5.5 Mac (years ago) and I am happy with it. Am I authorised to load the 5.5 PC version with the same Password ? It could help me to isolate this problem ??? Long Live LiveCode -Francis _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode From mark at livecode.com Mon Aug 28 05:04:47 2017 From: mark at livecode.com (Mark Waddingham) Date: Mon, 28 Aug 2017 11:04:47 +0200 Subject: Corrupted =?UTF-8?Q?Binaries=3F?= In-Reply-To: <70795067-BD92-4798-AA8D-176307848825@clearvisiontech.com> References: <70795067-BD92-4798-AA8D-176307848825@clearvisiontech.com> Message-ID: Hi Dan, On 2017-08-25 00:16, Dan Friedman via use-livecode wrote: > Anyone know what they might be talking about? There are no files > being copied in (?Copy Files? section of the App Settings). Is this > because I checked ?Disable ATS?? It would appear as if Apple have 'done something' recently with the checks they perform on binaries. This is the third report of a problem we've had and are currently looking into it. We found this article online (related to Adobe products, but they do a 'similar' thing for iOS builds to us): https://helpx.adobe.com/digital-publishing-suite/kb/itunes-connect-rejection-invalid-binary.html Basically they suggest "Deselect "Enable For iCloud", "Enable for Passes" and/or "Enable for Data Protection"" and regenerate the provisioning profile. Now, it might not be one of these three things, however it could be that there is a mismatch between the settings you are generating for the provisioning profile, and the settings in the S/B. Sorry I can't provide any more assistance at the moment - we are still trying to work out exactly what the problem is! Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From iowahengst at mac.com Mon Aug 28 10:07:37 2017 From: iowahengst at mac.com (Randy Hengst) Date: Mon, 28 Aug 2017 09:07:37 -0500 Subject: Bad Crash on Attempt to Group Radio Buttons In-Reply-To: <15e25b98d98.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> References: <15e2458e840.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <561f9385-2ca6-48fd-871a-03c52dd84a9c@hyperactivesw.com> <3b95be18-a2a6-c048-31f2-23ec93f9dfc5@sonic.net> <15e25b98d98.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Message-ID: <8C5EF134-B1F4-40D9-8B8B-60977A20CA94@mac.com> I would find it very handy if when the cantSelect is true, you could still drag to select objects that are above the control with cantSelect true? In other words, the ability to select the other controls with click and drag when the initial click is within the rect of the control (usually a grc for me) that has cantSelect set to true. It certainly is possible to select the controls above the control with cantSelect true? but only if the initial click is outside that rect. I hope all of that makes sense. > On Aug 27, 2017, at 5:04 PM, J. Landman Gay via use-livecode wrote: > > In development it can be handy if you have an object that shouldn't move or change, but you want to drag a selection around surrounding objects to select them. > -- > Jacqueline Landman Gay | jacque at hyperactivesw.com > HyperActive Software | http://www.hyperactivesw.com > > > > On August 27, 2017 3:31:22 PM Mark Wieder via use-livecode wrote: > >> On 08/27/2017 01:10 PM, J. Landman Gay via use-livecode wrote: >> >>> CantSelect is false by default, and since it isn't in the project >>> browser, new users are unlikely to know about it. They're also unlikely >>> to dig into the Plugins menu to show the app browser, so mistakes would >>> probably be rare. >> >> I don't think I've ever used the cantSelect property, and I've been >> having a hard time trying to come up with a use case for it. Can you >> clue me in as to a situation where this might be useful? >> >> -- >> Mark Wieder >> ahsoftware at gmail.com >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode > > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From ambassador at fourthworld.com Mon Aug 28 10:53:05 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Mon, 28 Aug 2017 07:53:05 -0700 Subject: Bad Crash on Attempt to Group Radio Buttons In-Reply-To: <8C5EF134-B1F4-40D9-8B8B-60977A20CA94@mac.com> References: <8C5EF134-B1F4-40D9-8B8B-60977A20CA94@mac.com> Message-ID: <5aefeb6a-b55f-9d64-cc59-7165b0a7a08a@fourthworld.com> Randy Hengst wrote: > I would find it very handy if when the cantSelect is true, you could > still drag to select objects that are above the control with > cantSelect true? > > In other words, the ability to select the other controls with click > and drag when the initial click is within the rect of the control > (usually a grc for me) that has cantSelect set to true. > > It certainly is possible to select the controls above the control with > cantSelect true? but only if the initial click is outside that rect. > > I hope all of that makes sense. I does, and indeed it would be nice to have. But since the property that more accurately behaves as AlwaysBrowseMode is currently called "cantSelection", what might we name a property that was limited to non-selection without invoking a tool mode different than the current otherwise-global pointer tool? -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From bobsneidar at iotecdigital.com Mon Aug 28 10:55:51 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Mon, 28 Aug 2017 14:55:51 +0000 Subject: Search Values of Array in "One Go" In-Reply-To: <92aae19c-c1e1-aba6-595f-bd408a959ef1@sonic.net> References: <8223b9086f29f0c96cc56d73bf50b322@livecode.com> <465CBD8E-8DAE-4B06-A434-330A71DE1FEE@hindu.org> <841dee4d2b715c7c7ce3ae972acb27c6@livecode.com> <1E428071-AB2E-47BD-9177-2475171A4C0A@hindu.org> <556DB90D-DCDC-42F3-9519-837C273221C3@appisle.net> <15e201f5570.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <615B14B7-3D67-4127-92BB-5B77C8C274D9@appisle.net> <67311CE4-794E-4C71-ADA1-BA8D9518750F@appisle.net> <92aae19c-c1e1-aba6-595f-bd408a959ef1@sonic.net> Message-ID: +5 Bob S > On Aug 26, 2017, at 16:04 , Mark Wieder via use-livecode wrote: > > filter lines of tList WHERE item 1 of each >= 1 into someVariable > and > filter elements of tArray where "late fee" is in each into newArray > > -- > Mark Wieder From bobsneidar at iotecdigital.com Mon Aug 28 11:02:48 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Mon, 28 Aug 2017 15:02:48 +0000 Subject: Bad Crash on Attempt to Group Radio Buttons In-Reply-To: <7B689C09-3D71-4337-A11F-5A38B0D517B7@appisle.net> References: <15e2458e840.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <561f9385-2ca6-48fd-871a-03c52dd84a9c@hyperactivesw.com> <3b95be18-a2a6-c048-31f2-23ec93f9dfc5@sonic.net> <7B689C09-3D71-4337-A11F-5A38B0D517B7@appisle.net> Message-ID: That would be useful to me now that I think about it. Bob S > On Aug 27, 2017, at 13:36 , Monte Goulding via use-livecode wrote: > > I have used cantSelect before to stop selection of a background image that has lots of objects on top. It means you can drag select them and won?t accidentally click-drag and move your background. It?s better than lockLocation because of drag-select. > > Cheers > > Monte From ahsoftware at sonic.net Mon Aug 28 11:41:16 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Mon, 28 Aug 2017 08:41:16 -0700 Subject: Bad Crash on Attempt to Group Radio Buttons In-Reply-To: <5aefeb6a-b55f-9d64-cc59-7165b0a7a08a@fourthworld.com> References: <8C5EF134-B1F4-40D9-8B8B-60977A20CA94@mac.com> <5aefeb6a-b55f-9d64-cc59-7165b0a7a08a@fourthworld.com> Message-ID: <570d4649-d3b2-8148-1c17-659d60cf6469@sonic.net> On 08/28/2017 07:53 AM, Richard Gaskin via use-livecode wrote: > But since the property that more accurately behaves as AlwaysBrowseMode > is currently called "cantSelection", what might we name a property that > was limited to non-selection without invoking a tool mode different than > the current otherwise-global pointer tool? > Heh. Well, since the always-in-browse-mode property is called cantSelect then I suppose the can't-select property should be called alwaysBrowse. -- Mark Wieder ahsoftware at gmail.com From ambassador at fourthworld.com Mon Aug 28 11:48:16 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Mon, 28 Aug 2017 08:48:16 -0700 Subject: Bad Crash on Attempt to Group Radio Buttons In-Reply-To: <2F4FE577-C0E0-4CB1-A0F0-5E8377DF5579@hindu.org> References: <2F4FE577-C0E0-4CB1-A0F0-5E8377DF5579@hindu.org> Message-ID: <1b8fadeb-d3d4-6a51-91f7-9aef97c46c1e@fourthworld.com> Well, cantSelect is a step toward a solution for making multi-mode regions within a window, as I noted just above the section of my post you quoted: Scott Raney added the cantSelect property after a long discussion I had with him about building custom drawing environments. I had originally suggested to him that we extend the tool property to be local to groups (similar to the flexibility SuperCard provides with the tool being local to a window, years later submitted to RunRev as BZ#623)), and he found that interesting but more work than was available at that moment in the release cycle. So instead he came up with the cantSelect property as a workaround to tide us over in the meantime. But like any hastily-added workaround, in practice it turns out to be only slightly less cumbersome than not having it at all, at least for the original intended purpose. Imagine a common drawing app such as you describe, with a drawing region in a group occupying most of the window and a set of controls in a toolbar group to change tools, select colors and line widths, etc. Let's explore how this plays out: 1. Drag selection At first glance things seem pretty nice, you can drag-select within the drawing group, and also click the toolbar buttons. But then you'll notice that the user can also drag a marquee in the toolbar group, and though it won't allow selection of any of the controls there (assuming they've all had their "cantSelect" set to true) the ability to drag a selection marquee is odd and confusing. 2. Object creation For manipulating existing objects within the drawing region group, the setup works fine, allowing users to move and resize objects nicely. And you have a toolbar that allows you to select object creation tools, so you're excited by the prospect of dragging out new controls within the drawing region. Except you can't. Since tool modes are global in LC, when you choose something like the graphic tool the entire window is the recipient of the object creation gestures, and as such will create newly dragged out objects above (outside) of the drawing region group. Once created, this may only become confusing when the drawing region group is scrolled. If created in a position that overlaps the drawing region's scrollbar, that they are above and outside the group is immediately evident. We could turn on the editBackgound, but doing so will cause the toolbar region and even the drawing region's own scrollbars to disappear. A workaround is to trap newGraphic and relayer it, after first being careful to set the relayerGroups to true and then set it back again when you're done. This ultimately places the object within the group, but doesn't explain to the user why the object was first seen overlapping the scrollbar and extending beyond the drawing region, and is now clipped within the drawing region. In the end the result is okay, but each time they make an object near the edges of the drawing region the app momentarily feels a bit broken. 3. Ancillary windows Many apps will have other windows beyond the document, such as About, Preferences, etc. If you open those in non-toplevel modes (such as modeless) they're fine, since LC's global tool mode only affects toplevel windows. But often we have ancillary windows as toplevel, perhaps different views to other data in the document (consider an inventory list reflecting things drawn in the drawing window). In such cases you'd have to carefully set the cantSelect of literally every control in every stack other than the ones inside the drawing region group, and even then you'd have to accept the user's ability to drag-select marquees across the surface of any of them, even those where such selection would not be in any way relevant. Workaround to deal with the workaround: After experiencing these and other challenges in trying to reproduce the sort of SampleDraw app so easily made in SuperCard with its local tool modes, the best workaround I've found is to not employ the cantSelect workaround at all, since something more complete is needed. Whether or not one uses the cantSelect for toolbar objects in a drawing window, what's really needed is to turn off the global pointer tool and use the browse tool whenever the pointer it outside of the drawing group. I hadn't pursued this at first for fear of the user of seeing their selected objects become deselected, sometimes annoying and other times making it impossible to use a button or menu outside the drawing group which would act on the selection. But it turns out that MC/LC allows selection handles to be shown regardless of the current global tool mode. So the workaround for the workaround is to track mouseMove, and when the mouse exits the drawing region you: 1. Get the selectedObjects 2. Change the global tool to browse tool 3. Walk through the previously-obtained list of selected objects to set their selected property to true, restoring their selection handles. When the mouse re-enters the drawing region, reverse the process. You'll probably want to put that into a pair of handlers that can be conveniently called from anywhere (something like "SwitchToBrowse" and "SwitchToPointer"), because you'll also need to call them on suspendStack and resumeStack, and possibly in other contexts as well depending on the particulars of your app. All in all, it can become possible to make a drawing app that takes full advantage of the pointer tool without having the emulate all the things the pointer tool does within the browse tool. But it still requires some diligence, clear thinking, and a bit more code than in SuperCard, Gain Momentum, or other xTalks that provide local tool modes. And since LC has such wonderfully flexible groups, if tool modes were local to groups rather than to windows as SC does, the possibilities for easily crafting custom layout tools becomes even far more vast with no greater complexity for the scripter. But even as it is, it's not prohibitive, just not the sort of thing I'd wish on newcomers. The beauty of taking full advantage of the language's rich variety of tool modes by localizing them made SuperCard's SampleDraw a very inspiring example app, one of the things that got me so hooked on xTalks. LC ships with many more examples (78 tutorials installed, last time I counted), and they cover a lot of good ground. Just all in one tool mode. And given the scope of knowledge needed to use other tool modes in delivered apps, I wouldn't recommend making a tutorial for newcomers like SampleDraw. Indeed, it's why I abandoned mine years ago. I can make it, I just can't explain it. :) -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com Sannyasin Brahmanathaswami wrote: > Richard: > > Hmmm, this could be really useful > > a whole responsive palette of control on the side of a card, (instead of a separate palette stack) while continuing to dev in the main region. useful for dev. > > In fact doesn't this solve a core UX, that is not "ancient"by any means?: > > A drawing region with controls on the side/bottom. and all you have to do is turn on the pointer. (having preset all the other controls to cantSelect/AlwaysBrowseMode.) > > I actually have a use case for this right in front of me if it works on Mobile. > > BR > > On 8/27/17, 1:29 PM, "use-livecode on behalf of Richard Gaskin via use-livecode" wrote: > > In addition to what Jacque noted there's something more that can be very > important in some contexts: > > It doesn't just prevent the object from being acted on by the pointer > tool, but moreover always acts as though its own object-local tool mode > is the browse tool, regardless of whatever other tool is in effect. > > "CantSelect" is a very Raney name; "AlwaysBrowseMode" would be more > descriptive. > > This means your object will get all the messages you'd expect to get > with the browse tool regardless of the current global tool property, but > only for that one object. > > This can be useful for contexts in which you want to allow the user to > use the pointer tool, but also provide a toolbar or other controls they > can use to select shapes, colors, etc. > From ambassador at fourthworld.com Mon Aug 28 11:56:47 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Mon, 28 Aug 2017 08:56:47 -0700 Subject: Bad Crash on Attempt to Group Radio Buttons In-Reply-To: <7B689C09-3D71-4337-A11F-5A38B0D517B7@appisle.net> References: <7B689C09-3D71-4337-A11F-5A38B0D517B7@appisle.net> Message-ID: <978ef37f-914f-b3f4-cea9-3b00a855a69b@fourthworld.com> Monte Goulding wrote: > I have used cantSelect before to stop selection of a background image > that has lots of objects on top. It means you can drag select them and > won?t accidentally click-drag and move your background. How? As designed, what we call "cantSelect" works like "alwaysBrowse", and both as documented as in practice it seems to do exactly that, which prevents drag-selecting across any object that has cantSelect set to true in order to attempt to select other objects which may be on top of it. Is there some combination of properties that turn the alwaysBrowse behavior into a true cantSelect? It would be very desirable to have such a thing, since we could then make things like a page-size graphic as a background for a drawing region, and drag-select across it. -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From ahsoftware at sonic.net Mon Aug 28 12:18:16 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Mon, 28 Aug 2017 09:18:16 -0700 Subject: OT: error messages Message-ID: LiveCode is getting way too easy to use. I suggest implementing some of these error messages. https://boingboing.net/2017/08/28/unnervingly-vague-error-messag.html Or these: https://www.cs.cmu.edu/~jasonh/personal/humor/compile.html Or at least "Underfull hbox (badness 10000)" -- Mark Wieder ahsoftware at gmail.com From paul at livecode.org Mon Aug 28 13:23:01 2017 From: paul at livecode.org (Paul Hibbert) Date: Mon, 28 Aug 2017 10:23:01 -0700 Subject: Bad Crash on Attempt to Group Radio Buttons In-Reply-To: <8C5EF134-B1F4-40D9-8B8B-60977A20CA94@mac.com> References: <15e2458e840.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <561f9385-2ca6-48fd-871a-03c52dd84a9c@hyperactivesw.com> <3b95be18-a2a6-c048-31f2-23ec93f9dfc5@sonic.net> <15e25b98d98.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <8C5EF134-B1F4-40D9-8B8B-60977A20CA94@mac.com> Message-ID: <35E4F9F7-4432-4D9F-BA02-A15EEDCBCF6A@livecode.org> On Aug 28, 2017, at 7:07 AM, Randy Hengst via use-livecode wrote: > > I would find it very handy if when the cantSelect is true, you could still drag to select objects that are above the control with cantSelect true? > > In other words, the ability to select the other controls with click and drag when the initial click is within the rect of the control (usually a grc for me) that has cantSelect set to true. > > It certainly is possible to select the controls above the control with cantSelect true? but only if the initial click is outside that rect. > > I hope all of that makes sense. > AFAIK you can achieve this if you also set the disabled of the control to true. Paul From bobsneidar at iotecdigital.com Mon Aug 28 13:36:14 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Mon, 28 Aug 2017 17:36:14 +0000 Subject: Bad Crash on Attempt to Group Radio Buttons In-Reply-To: <35E4F9F7-4432-4D9F-BA02-A15EEDCBCF6A@livecode.org> References: <15e2458e840.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <561f9385-2ca6-48fd-871a-03c52dd84a9c@hyperactivesw.com> <3b95be18-a2a6-c048-31f2-23ec93f9dfc5@sonic.net> <15e25b98d98.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <8C5EF134-B1F4-40D9-8B8B-60977A20CA94@mac.com> <35E4F9F7-4432-4D9F-BA02-A15EEDCBCF6A@livecode.org> Message-ID: Ah! Yeah that makes my particular application unusable. I was hoping to have different sections of a card with different background images, and be able to drag-select everythign but the background images. Currently I have the background pattern of a card set to a hidden image, then I have other images as locked controls for the other sections. I suppose I could create a single image of the three and use that as the background pattern... right up until I need to resize the stack for some reason or other. What might be a possibility is to set only certain rects of the background pattern of a card to an image. Something like: set the backgroundPattern of the topcard of this stack to 123 top -- only repeat the pattern once at the top of the card set the backgroundPattern of the topcard of this stack to 123 area 0,0,500,86 -- repeat the pattern within the specified rect Subsequent commands would "overwrite" prior ones so you could set the pattern for the entire card, then put patterns over the top of that. Just a thot... > On Aug 28, 2017, at 10:23 , Paul Hibbert via use-livecode wrote: > >> It certainly is possible to select the controls above the control with cantSelect true? but only if the initial click is outside that rect. From dan at clearvisiontech.com Mon Aug 28 13:54:44 2017 From: dan at clearvisiontech.com (Dan Friedman) Date: Mon, 28 Aug 2017 17:54:44 +0000 Subject: mobileConrolDo to Browser Widget Message-ID: <6943C2FA-D92E-4CA6-8D7D-D7A41D1AEFED@clearvisiontech.com> Is is possible to call a javascript to a browser widget? For example: mobileControlDo "Browser1","execute",("doAnswer()") Where the widget is named ?Browser1?. Is this possible? Thank you in advance, -Dan From klaus at major-k.de Mon Aug 28 13:58:29 2017 From: klaus at major-k.de (Klaus major-k) Date: Mon, 28 Aug 2017 19:58:29 +0200 Subject: mobileConrolDo to Browser Widget In-Reply-To: <6943C2FA-D92E-4CA6-8D7D-D7A41D1AEFED@clearvisiontech.com> References: <6943C2FA-D92E-4CA6-8D7D-D7A41D1AEFED@clearvisiontech.com> Message-ID: <370EF528-ED85-46CB-BB93-0BC5D43C3D16@major-k.de> Hi Dan, > Am 28.08.2017 um 19:54 schrieb Dan Friedman via use-livecode : > > Is is possible to call a javascript to a browser widget? For example: > mobileControlDo "Browser1","execute",("doAnswer()") > Where the widget is named ?Browser1?. Is this possible? yes, but in a different way (browser widget <> mobilecontrol): ... do "your javascript goes here..." in widget "your browser widget here" ... > Thank you in advance, > -Dan Best Klaus -- Klaus Major http://www.major-k.de klaus at major-k.de From andrew at midwestcoastmedia.com Mon Aug 28 14:08:21 2017 From: andrew at midwestcoastmedia.com (andrew at midwestcoastmedia.com) Date: Mon, 28 Aug 2017 18:08:21 +0000 Subject: Text (uni)coding issue In-Reply-To: Message-ID: <20170828180821.Horde.ENs_Fxj81zyCtWZQTiTZuUG@ua850258.serversignin.com> > > Hmm? did you encode the data correctly as you put it in the db? > The data was transmitted from device to server using HostM's MySQL HTTPS API Solution 1.1.3 @ https://www.hostm.com/tutorials/livecode/api-mariadb-mysql (amazing tool and web host). It looks like they are sending as "utf-8" (though for a short time in a few versions it was implementing "base64" according to their change log). Is there any sort of universal format stripper? Like a "convert to plain text" option. --Andrew Bell From ambassador at fourthworld.com Mon Aug 28 14:13:49 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Mon, 28 Aug 2017 11:13:49 -0700 Subject: Bad Crash on Attempt to Group Radio Buttons In-Reply-To: <35E4F9F7-4432-4D9F-BA02-A15EEDCBCF6A@livecode.org> References: <35E4F9F7-4432-4D9F-BA02-A15EEDCBCF6A@livecode.org> Message-ID: Paul Hibbert wrote: > On Aug 28, 2017, at 7:07 AM, Randy Hengst wrote: >> >> I would find it very handy if when the cantSelect is true, you could >> still drag to select objects that are above the control with >> cantSelect true? >> >> In other words, the ability to select the other controls with click >> and drag when the initial click is within the rect of the control >> (usually a grc for me) that has cantSelect set to true. >> >> It certainly is possible to select the controls above the control >> with cantSelect true? but only if the initial click is outside that >> rect. > > AFAIK you can achieve this if you also set the disabled of the control > to true. Nice - thanks. For things like buttons and fields where appearances change based on the value of the disabled property this may or may not work well depending on the specifics of the context. But those are among the rarer of this already-rarely-used property. A more common use case would be as a background in a group, as Monte described, and since the graying effect that comes with disabling can be offset by brightening the colors and/or changing the ink, this could work well enough. So: cantSelect = alwaysBrowse cantSelect + disabled + some combinations of adjusted colors and inks = cantSelect -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld. From iowahengst at mac.com Mon Aug 28 15:01:10 2017 From: iowahengst at mac.com (Randy Hengst) Date: Mon, 28 Aug 2017 14:01:10 -0500 Subject: Bad Crash on Attempt to Group Radio Buttons In-Reply-To: <35E4F9F7-4432-4D9F-BA02-A15EEDCBCF6A@livecode.org> References: <15e2458e840.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <561f9385-2ca6-48fd-871a-03c52dd84a9c@hyperactivesw.com> <3b95be18-a2a6-c048-31f2-23ec93f9dfc5@sonic.net> <15e25b98d98.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <8C5EF134-B1F4-40D9-8B8B-60977A20CA94@mac.com> <35E4F9F7-4432-4D9F-BA02-A15EEDCBCF6A@livecode.org> Message-ID: Wow, if I set the cantSelect of my background graphic to true AND set the grc to disabled? I can do exactly what I was talking about? nice. Both have to be set? just using one or the other doesn?t work. Thanks Paul. > On Aug 28, 2017, at 12:23 PM, Paul Hibbert via use-livecode wrote: > > On Aug 28, 2017, at 7:07 AM, Randy Hengst via use-livecode wrote: >> >> I would find it very handy if when the cantSelect is true, you could still drag to select objects that are above the control with cantSelect true? >> >> In other words, the ability to select the other controls with click and drag when the initial click is within the rect of the control (usually a grc for me) that has cantSelect set to true. >> >> It certainly is possible to select the controls above the control with cantSelect true? but only if the initial click is outside that rect. >> >> I hope all of that makes sense. >> > > AFAIK you can achieve this if you also set the disabled of the control to true. > > Paul > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From dan at clearvisiontech.com Mon Aug 28 15:07:37 2017 From: dan at clearvisiontech.com (Dan Friedman) Date: Mon, 28 Aug 2017 19:07:37 +0000 Subject: mobileConrolDo to Browser Widget In-Reply-To: <<370EF528-ED85-46CB-BB93-0BC5D43C3D16@major-k.de>> Message-ID: Klaus, Thank you! That did the trick! -Dan Hi Dan, > Am 28.08.2017 um 19:54 schrieb Dan Friedman via use-livecode >: > > Is is possible to call a javascript to a browser widget? For example: > mobileControlDo "Browser1","execute",("doAnswer()") > Where the widget is named ?Browser1?. Is this possible? yes, but in a different way (browser widget <> mobilecontrol): ... do "your javascript goes here..." in widget "your browser widget here" ... > Thank you in advance, > -Dan Best Klaus From jacque at hyperactivesw.com Mon Aug 28 15:15:18 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Mon, 28 Aug 2017 14:15:18 -0500 Subject: OT: error messages In-Reply-To: References: Message-ID: On 8/28/17 11:18 AM, Mark Wieder via use-livecode wrote: > LiveCode is getting way too easy to use. > I suggest implementing some of these error messages. > > https://boingboing.net/2017/08/28/unnervingly-vague-error-messag.html > > Or these: > https://www.cs.cmu.edu/~jasonh/personal/humor/compile.html > > Or at least "Underfull hbox (badness 10000)" > Apple shows far more creativity than MS. Not surprised. -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com From jiml at netrin.com Mon Aug 28 15:33:18 2017 From: jiml at netrin.com (Jim Lambert) Date: Mon, 28 Aug 2017 12:33:18 -0700 Subject: Bad Crash on Attempt to Group Radio Buttons In-Reply-To: References: Message-ID: <68587C04-9110-4541-89EC-AA01AFC9F5E3@netrin.com> RichardG wrote: > >> I have used cantSelect before to stop selection of a background image >> that has lots of objects on top. It means you can drag select them and >> won?t accidentally click-drag and move your background. > > How? Disable it in addition to setting the cantselect. Jim Lambert From effendi at wanadoo.fr Mon Aug 28 15:35:23 2017 From: effendi at wanadoo.fr (Francis Nugent Dixon) Date: Mon, 28 Aug 2017 21:35:23 +0200 Subject: Video files not showing on my PC (LiveCode 5.5) Message-ID: <6DA08F02-C5C4-4126-BFDD-A70DA22D9964@wanadoo.fr> Hi from Beautiful Brittany, Thanks for the input Tiemo. I think that I will convert those files that do not show, into other formats, and see how they react. This could solve the problem ....... :>)) Best Regards -Francis From ahsoftware at sonic.net Mon Aug 28 16:21:59 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Mon, 28 Aug 2017 13:21:59 -0700 Subject: OT: error messages In-Reply-To: References: Message-ID: <030a8b6a-d6ac-00a3-037f-a80f6983ee7f@sonic.net> On 08/28/2017 12:15 PM, J. Landman Gay via use-livecode wrote: > On 8/28/17 11:18 AM, Mark Wieder via use-livecode wrote: >> LiveCode is getting way too easy to use. >> I suggest implementing some of these error messages. >> >> https://boingboing.net/2017/08/28/unnervingly-vague-error-messag.html >> >> Or these: >> https://www.cs.cmu.edu/~jasonh/personal/humor/compile.html >> >> Or at least "Underfull hbox (badness 10000)" >> > > Apple shows far more creativity than MS. Not surprised. > I have to admit to having invoked several of those in my MPW days. -- Mark Wieder ahsoftware at gmail.com From ahsoftware at sonic.net Mon Aug 28 17:13:09 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Mon, 28 Aug 2017 14:13:09 -0700 Subject: slow listserv Message-ID: <2e4e0b63-6d55-7bbc-b29d-831bab5205cc@sonic.net> It currently is taking forty minutes for my posts to appear after I send them. That's enough time to send my email to Mars and back. Runrev's servers must be pretty far away. -- Mark Wieder ahsoftware at gmail.com From bobsneidar at iotecdigital.com Mon Aug 28 19:15:54 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Mon, 28 Aug 2017 23:15:54 +0000 Subject: Bad Crash on Attempt to Group Radio Buttons In-Reply-To: References: <15e2458e840.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <561f9385-2ca6-48fd-871a-03c52dd84a9c@hyperactivesw.com> <3b95be18-a2a6-c048-31f2-23ec93f9dfc5@sonic.net> <15e25b98d98.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <8C5EF134-B1F4-40D9-8B8B-60977A20CA94@mac.com> <35E4F9F7-4432-4D9F-BA02-A15EEDCBCF6A@livecode.org> Message-ID: <4D92050D-A1CE-4C49-86F1-FA1653D25B06@iotecdigital.com> grc is not a token. I guess you are using an acronym. I hate acronyms. ;-) Bob S > On Aug 28, 2017, at 12:01 , Randy Hengst via use-livecode wrote: > > Wow, if I set the cantSelect of my background graphic to true AND set the grc to disabled? I can do exactly what I was talking about? nice. Both have to be set? just using one or the other doesn?t work. > > Thanks Paul. From brian at milby7.com Mon Aug 28 19:20:13 2017 From: brian at milby7.com (Brian Milby) Date: Mon, 28 Aug 2017 18:20:13 -0500 Subject: Bad Crash on Attempt to Group Radio Buttons In-Reply-To: <4D92050D-A1CE-4C49-86F1-FA1653D25B06@iotecdigital.com> References: <15e2458e840.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <561f9385-2ca6-48fd-871a-03c52dd84a9c@hyperactivesw.com> <3b95be18-a2a6-c048-31f2-23ec93f9dfc5@sonic.net> <15e25b98d98.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <8C5EF134-B1F4-40D9-8B8B-60977A20CA94@mac.com> <35E4F9F7-4432-4D9F-BA02-A15EEDCBCF6A@livecode.org> <4D92050D-A1CE-4C49-86F1-FA1653D25B06@iotecdigital.com> Message-ID: grc is a synonym for graphic actually On Mon, Aug 28, 2017 at 6:15 PM, Bob Sneidar via use-livecode < use-livecode at lists.runrev.com> wrote: > grc is not a token. I guess you are using an acronym. I hate acronyms. ;-) > > Bob S > > > > On Aug 28, 2017, at 12:01 , Randy Hengst via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > > Wow, if I set the cantSelect of my background graphic to true AND set > the grc to disabled? I can do exactly what I was talking about? nice. Both > have to be set? just using one or the other doesn?t work. > > > > Thanks Paul. > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From bobsneidar at iotecdigital.com Mon Aug 28 19:20:49 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Mon, 28 Aug 2017 23:20:49 +0000 Subject: Bad Crash on Attempt to Group Radio Buttons In-Reply-To: <4D92050D-A1CE-4C49-86F1-FA1653D25B06@iotecdigital.com> References: <15e2458e840.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <561f9385-2ca6-48fd-871a-03c52dd84a9c@hyperactivesw.com> <3b95be18-a2a6-c048-31f2-23ec93f9dfc5@sonic.net> <15e25b98d98.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <8C5EF134-B1F4-40D9-8B8B-60977A20CA94@mac.com> <35E4F9F7-4432-4D9F-BA02-A15EEDCBCF6A@livecode.org> <4D92050D-A1CE-4C49-86F1-FA1653D25B06@iotecdigital.com> Message-ID: <0EF7F3CA-B555-490B-AAD1-3337498ADA44@iotecdigital.com> ok I read back on the posts and that does in fact work. At that point you can set the geometry of any object so that no matter what you do with the size of the window they will adjust to compensate. I LIKE IT!!! Bob S > On Aug 28, 2017, at 16:15 , Bob Sneidar via use-livecode wrote: > > grc is not a token. I guess you are using an acronym. I hate acronyms. ;-) > > Bob S > > >> On Aug 28, 2017, at 12:01 , Randy Hengst via use-livecode wrote: >> >> Wow, if I set the cantSelect of my background graphic to true AND set the grc to disabled? I can do exactly what I was talking about? nice. Both have to be set? just using one or the other doesn?t work. >> >> Thanks Paul. > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From bobsneidar at iotecdigital.com Mon Aug 28 19:21:36 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Mon, 28 Aug 2017 23:21:36 +0000 Subject: Bad Crash on Attempt to Group Radio Buttons In-Reply-To: References: <15e2458e840.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <561f9385-2ca6-48fd-871a-03c52dd84a9c@hyperactivesw.com> <3b95be18-a2a6-c048-31f2-23ec93f9dfc5@sonic.net> <15e25b98d98.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> <8C5EF134-B1F4-40D9-8B8B-60977A20CA94@mac.com> <35E4F9F7-4432-4D9F-BA02-A15EEDCBCF6A@livecode.org> <4D92050D-A1CE-4C49-86F1-FA1653D25B06@iotecdigital.com> Message-ID: <5B5475D8-8D23-43D7-8D64-EE77531A652C@iotecdigital.com> so then disable the grc, not set the grc to disabled. Got it. Bob S > On Aug 28, 2017, at 16:20 , Brian Milby via use-livecode wrote: > > grc is a synonym for graphic actually From bobsneidar at iotecdigital.com Mon Aug 28 19:22:20 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Mon, 28 Aug 2017 23:22:20 +0000 Subject: slow listserv In-Reply-To: <2e4e0b63-6d55-7bbc-b29d-831bab5205cc@sonic.net> References: <2e4e0b63-6d55-7bbc-b29d-831bab5205cc@sonic.net> Message-ID: <4E23BF64-F0A0-4EB5-A906-BB2EAF47A558@iotecdigital.com> Someone fact check that plz... Bob S > On Aug 28, 2017, at 14:13 , Mark Wieder via use-livecode wrote: > > It currently is taking forty minutes for my posts to appear after I send them. That's enough time to send my email to Mars and back. Runrev's servers must be pretty far away. > > -- > Mark Wieder From alex at tweedly.net Mon Aug 28 19:50:01 2017 From: alex at tweedly.net (Alex Tweedly) Date: Tue, 29 Aug 2017 00:50:01 +0100 Subject: slow listserv In-Reply-To: <4E23BF64-F0A0-4EB5-A906-BB2EAF47A558@iotecdigital.com> References: <2e4e0b63-6d55-7bbc-b29d-831bab5205cc@sonic.net> <4E23BF64-F0A0-4EB5-A906-BB2EAF47A558@iotecdigital.com> Message-ID: <15d53cb5-43b5-8f59-cd7a-7bf634ea78d9@tweedly.net> I won't fact check it - but I can google-check it :-) Takes between 3 and 22 minutes for light to travel from Earth to Mars - so most of the time, Mark is correct, email can get there and back within 40 minutes. Alex. On 29/08/2017 00:22, Bob Sneidar via use-livecode wrote: > Someone fact check that plz... > > Bob S > > >> On Aug 28, 2017, at 14:13 , Mark Wieder via use-livecode wrote: >> >> It currently is taking forty minutes for my posts to appear after I send them. That's enough time to send my email to Mars and back. Runrev's servers must be pretty far away. >> >> -- >> Mark Wieder > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From revdev at pdslabs.net Mon Aug 28 19:54:17 2017 From: revdev at pdslabs.net (Phil Davis) Date: Mon, 28 Aug 2017 16:54:17 -0700 Subject: slow listserv In-Reply-To: <4E23BF64-F0A0-4EB5-A906-BB2EAF47A558@iotecdigital.com> References: <2e4e0b63-6d55-7bbc-b29d-831bab5205cc@sonic.net> <4E23BF64-F0A0-4EB5-A906-BB2EAF47A558@iotecdigital.com> Message-ID: <2575fede-2d03-69b5-29c4-aff291634ab1@pdslabs.net> Wikipedia: Mars is an an average of 12.5 light minutes from earth. So, yeah. Phil Davis On 8/28/17 4:22 PM, Bob Sneidar via use-livecode wrote: > Someone fact check that plz... > > Bob S > > >> On Aug 28, 2017, at 14:13 , Mark Wieder via use-livecode wrote: >> >> It currently is taking forty minutes for my posts to appear after I send them. That's enough time to send my email to Mars and back. Runrev's servers must be pretty far away. >> >> -- >> Mark Wieder > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > -- Phil Davis From ahsoftware at sonic.net Mon Aug 28 19:54:37 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Mon, 28 Aug 2017 16:54:37 -0700 Subject: slow listserv In-Reply-To: <4E23BF64-F0A0-4EB5-A906-BB2EAF47A558@iotecdigital.com> References: <2e4e0b63-6d55-7bbc-b29d-831bab5205cc@sonic.net> <4E23BF64-F0A0-4EB5-A906-BB2EAF47A558@iotecdigital.com> Message-ID: On 08/28/2017 04:22 PM, Bob Sneidar via use-livecode wrote: > Someone fact check that plz... > > Bob S > > >> On Aug 28, 2017, at 14:13 , Mark Wieder via use-livecode wrote: >> >> It currently is taking forty minutes for my posts to appear after I send them. That's enough time to send my email to Mars and back. Runrev's servers must be pretty far away. I checked it before posting, of course. https://www.convert-me.com/en/convert/length/lightminute.html?u=lightminute&v=40 gives me about 720 million km in 40 minutes https://www.space.com/14729-spacekids-distance-earth-mars.html gives the average distance from Earth to Mars as 225 million km. Even at the maximum distance, that's *almost* enough time for the round trip. Of course, at that point the electrons would have to pass through the sun, and that would significantly cut down the bandwidth to about... er... zero. -- Mark Wieder ahsoftware at gmail.com From ambassador at fourthworld.com Mon Aug 28 19:57:41 2017 From: ambassador at fourthworld.com (Richard Gaskin) Date: Mon, 28 Aug 2017 16:57:41 -0700 Subject: Bad Crash on Attempt to Group Radio Buttons In-Reply-To: <4D92050D-A1CE-4C49-86F1-FA1653D25B06@iotecdigital.com> References: <4D92050D-A1CE-4C49-86F1-FA1653D25B06@iotecdigital.com> Message-ID: <3857bf1c-c8cc-cfe0-1f20-d97c74c68da1@fourthworld.com> Bob Sneidar wrote: >> On Aug 28, 2017, at 12:01 , Randy Hengst wrote: >> >> Wow, if I set the cantSelect of my background graphic to true AND set >> the grc to disabled? > > grc is not a token. But is is, first introduced to the xTalk world by Bill Appleton in SuperCard 1.0, following the pattern established by HyperCard: button = btn field = fld background = bg card = ard MC added a new one, almost too sparse for my tastes yet I don't mind using it: scrollbar = sb There are others as well. > I guess you are using an acronym. I hate acronyms. ;-) I don't mind acronyms, as long as any not in widespread common use are defined within the text later using the acronym. There are just too many TLAs to memorize all of them, and since that one might mean anything from "Temporary Living Allowance" to "Top Level Architecture" it would be useful if I noted at least once at the outset that I mean "Three-Letter Acronym". :) -- Richard Gaskin Fourth World Systems Software Design and Development for the Desktop, Mobile, and the Web ____________________________________________________________________ Ambassador at FourthWorld.com http://www.FourthWorld.com From sean at pidigital.co.uk Mon Aug 28 20:34:21 2017 From: sean at pidigital.co.uk (Sean Cole (Pi)) Date: Tue, 29 Aug 2017 01:34:21 +0100 Subject: slow listserv In-Reply-To: References: <2e4e0b63-6d55-7bbc-b29d-831bab5205cc@sonic.net> <4E23BF64-F0A0-4EB5-A906-BB2EAF47A558@iotecdigital.com> Message-ID: This doesn't seem to be affecting the dev list. Is that on a different mail-list server? Sean Cole >> >> On Aug 28, 2017, at 14:13 , Mark Wieder via use-livecode < >>> use-livecode at lists.runrev.com> wrote: >>> >>> It currently is taking forty minutes for my posts to appear after I send >>> them. That's enough time to send my email to Mars and back. Runrev's >>> servers must be pretty far away. >>> >> > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From sean at pidigital.co.uk Mon Aug 28 20:42:32 2017 From: sean at pidigital.co.uk (Sean Cole (Pi)) Date: Tue, 29 Aug 2017 01:42:32 +0100 Subject: OT: error messages In-Reply-To: <030a8b6a-d6ac-00a3-037f-a80f6983ee7f@sonic.net> References: <030a8b6a-d6ac-00a3-037f-a80f6983ee7f@sonic.net> Message-ID: The one the president sees most often: 'Illegal Document Count' From dan at clearvisiontech.com Mon Aug 28 20:56:30 2017 From: dan at clearvisiontech.com (Dan Friedman) Date: Tue, 29 Aug 2017 00:56:30 +0000 Subject: LC and Google Analytics? Message-ID: My client is asking the our LC created mobile app provide Google Analytics. Anyone know if there is a way to use Google Analytics in a LC app? If not, is this something LC is working on? If so, is there a timeline? -Dan From ahsoftware at sonic.net Mon Aug 28 21:56:35 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Mon, 28 Aug 2017 18:56:35 -0700 Subject: slow listserv In-Reply-To: References: <2e4e0b63-6d55-7bbc-b29d-831bab5205cc@sonic.net> <4E23BF64-F0A0-4EB5-A906-BB2EAF47A558@iotecdigital.com> Message-ID: <64c3ce43-79c2-d423-b12f-385e872b7700@sonic.net> On 08/28/2017 05:34 PM, Sean Cole (Pi) via use-livecode wrote: > This doesn't seem to be affecting the dev list. Is that on a different > mail-list server? Working better now - seemed to be a temporary thing. I blame sunspots. -- Mark Wieder ahsoftware at gmail.com From mark at livecode.com Tue Aug 29 03:12:01 2017 From: mark at livecode.com (Mark Waddingham) Date: Tue, 29 Aug 2017 09:12:01 +0200 Subject: Corrupted =?UTF-8?Q?Binaries=3F?= In-Reply-To: References: <70795067-BD92-4798-AA8D-176307848825@clearvisiontech.com> Message-ID: <5542561a8bc99cfca3d432c1e5d366ec@livecode.com> On 2017-08-28 11:04, Mark Waddingham via use-livecode wrote: > Sorry I can't provide any more assistance at the moment - we are still > trying to work out exactly what the problem is! I think we found the problem: http://quality.livecode.com/show_bug.cgi?id=20308 Apple clearly upgraded their toolchains in their App submission process which has uncovered a small error in the 64-bit Mach-O (executable) files generated for iOS devices - it doesn't affect execution, but the newer toolchains flag an error which is presumably why a 'corrupted binary' message is being sent for builds in the last week or so. Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From toolbook at kestner.de Tue Aug 29 04:13:21 2017 From: toolbook at kestner.de (Tiemo Hollmann TB) Date: Tue, 29 Aug 2017 10:13:21 +0200 Subject: OT: Does anybody know an "official" h.264 directShow filter for windows? Message-ID: <002e01d3209e$aec82430$0c586c90$@kestner.de> Hello, It is so frustrating after struggling for years with the Quicktime installer on windows, all my hope on the new "native" video player is lost. Since Windows doesn't support h.264 videos on its old directShow API, you have to install a h.264 codec/filter to playback h.264 videos with LiveCode. Up to now, I only have found the "LAV Filters" package, which includes an directShow mp4 filter. Generally this works fine, but I have customers with Windows 8.1 and 10 machines, who can't play my videos, the screen just keeps black without notice. Beside of the "K-Lite Mega Codec Pack", which at last only is a bundle for the LAV filters I didn't found any other directShow mp4/h.264 filter, not to mention any "official" installer. Has anybody found any other directShow mp4/h.264 filter yet? On the other hand, since this total black out only happens on certain machines, it could be anything from the video card driver to missing media components in windows. But here also I didn't found yet any hint or clue. Thanks for your experiences Tiemo From m.schonewille at economy-x-talk.com Tue Aug 29 05:52:13 2017 From: m.schonewille at economy-x-talk.com (Mark Schonewille) Date: Tue, 29 Aug 2017 11:52:13 +0200 Subject: Book (If you're new to LiveCode...) Message-ID: <0243fb4d-cb67-d336-5a30-d59b6505b05e@economy-x-talk.com> Summer is nearing its end and schools are starting again. That seems a good moment to ask your attention for the book Programming LiveCode for the Real Beginner. I wrote this book in 2012-2013 and have sold numerous copies over the past 5 years --for which a big thank-you to the LiveCode community. Eventually, I decided to print a really huge pile, so it would never be out of stock and we'd be able to deliver immediately (depending on postal services and customs). The fourth print of Programming LiveCode for the Real Beginner has been updated to include a number of new XML commands, which were introduced after the first release of the book. I have also added a few remarks about LiveCode 7 to the chapter on Unicode. Since the book deals with the basics of the LiveCode scripting language, which everybody needs to know, it continues to be very relevant, no matter which version of LiveCode you're using. Only the paragraphs about the properties inspector need to be updated to reflect the changes in LC 9, but these paragraphs deal with the interface rather than scripting. There is no plan to rewrite the book, but I might eventually delete those paragraphs altogether if we ever get to producing a fifth print run. Here is some information that you may want to know about the book: - the book is not available as an e-book and it won't be, please don't ask for it; - there are no plans to rewrite the book; - we ship the book everywhere in the world, if we can physically get there (deliveries to Antarctica will take a while though) and shipping costs are included in the price; - book shops and educational institutes and anyone ordering at least 10 copies may contact us for a discount; - after you purchase the book, we will ask you to confirm your postal address; - if you don't get an e-mail after you purchase the book, contact us and use a different e-mail address if you have tried to contact us before; - you can win a free copy of the book (perhaps to give away to a friend) by liking the Facebook page https://www.facebook.com/LiveCode.Beginner (but make sure to keep an eye on the page); - please fill out our survey at http://livecodebeginner.economy-x-talk.com/survey/ regardless of whether you have purchased/are planning to purchase the book; - if you have any more questions, please contact support [a t] economy-x-talk.com You can order the book at http://tinyurl.com/livecodebook and more info is available at http://tinyurl.com/livecodeblog -- Kind regards, Mark Schonewille http://economy-x-talk.com https://www.facebook.com/marksch Buy the most extensive book on the LiveCode language: http://livecodebeginner.economy-x-talk.com From sean at pidigital.co.uk Tue Aug 29 10:47:36 2017 From: sean at pidigital.co.uk (Sean Cole (Pi)) Date: Tue, 29 Aug 2017 15:47:36 +0100 Subject: OT: Does anybody know an "official" h.264 directShow filter for windows? In-Reply-To: <002e01d3209e$aec82430$0c586c90$@kestner.de> References: <002e01d3209e$aec82430$0c586c90$@kestner.de> Message-ID: Hi Tiemo WinXP: https://www.microsoft.com/en-us/download/details.aspx?id=507 Windows 7: https://msdn.microsoft.com/en-us/library/windows/desktop/dd797815(v=vs.85).aspx Windows 8 N & KN: https://www.microsoft.com/en-us/download/details.aspx?id=40744 Windows 10 N & KN: https://www.microsoft.com/en-us/download/details.aspx?id=49919 The official Intel H.264 SDK: https://software.intel.com/en-us/articles/mp4avc-decode-using-the-intel-media-sdk Sean Cole *Pi Digital Productions Ltd* www.pidigital.co.uk +44(1634)402193 +44(7702)116447 'Don't try to think outside the box. Just remember the truth: There is no box!' 'For then you realise it is not the box you are trying to look outside of, but it is yourself!' eMail Ts & Cs Pi Digital Productions Ltd is a UK registered limited company, no. 5255609 On 29 August 2017 at 09:13, Tiemo Hollmann TB via use-livecode < use-livecode at lists.runrev.com> wrote: > Hello, > > It is so frustrating after struggling for years with the Quicktime > installer > on windows, all my hope on the new "native" video player is lost. > > Since Windows doesn't support h.264 videos on its old directShow API, you > have to install a h.264 codec/filter to playback h.264 videos with > LiveCode. > > Up to now, I only have found the "LAV Filters" package, which includes an > directShow mp4 filter. Generally this works fine, but I have customers with > Windows 8.1 and 10 machines, who can't play my videos, the screen just > keeps > black without notice. Beside of the "K-Lite Mega Codec Pack", which at last > only is a bundle for the LAV filters I didn't found any other directShow > mp4/h.264 filter, not to mention any "official" installer. Has anybody > found > any other directShow mp4/h.264 filter yet? > > On the other hand, since this total black out only happens on certain > machines, it could be anything from the video card driver to missing media > components in windows. But here also I didn't found yet any hint or clue. > > Thanks for your experiences > > Tiemo > > > > > > > > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From toolbook at kestner.de Tue Aug 29 11:29:16 2017 From: toolbook at kestner.de (Tiemo Hollmann TB) Date: Tue, 29 Aug 2017 17:29:16 +0200 Subject: AW: OT: Does anybody know an "official" h.264 directShow filter for windows? In-Reply-To: References: <002e01d3209e$aec82430$0c586c90$@kestner.de> Message-ID: <007601d320db$9398d5f0$baca81d0$@kestner.de> Hi Sean, thank you for your links. I had already tested those links. The microsoft media feature packs are only for the stripped "N" and "KN" versions of windows to add those components, which are included in the standard windows systems. Those installers can't be installed on a normal windows. The intel link is a developer kit, if you plan to develop your own video player, unfortunately there is no installer for the filter only. Meanwhile I tested the LAV filter and the ffdShow filter, both are for playback h.264 videos on the directShow API. But the video can't be played and LiveCode still tells me " Could not create movie reference" Probably it's not the filter, but any deeper system component or incompatibility. Thanks for jumping in Tiemo -----Urspr?ngliche Nachricht----- Von: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] Im Auftrag von Sean Cole (Pi) via use-livecode Gesendet: Dienstag, 29. August 2017 16:48 An: How to use LiveCode Cc: Sean Cole (Pi) Betreff: Re: OT: Does anybody know an "official" h.264 directShow filter for windows? Hi Tiemo WinXP: https://www.microsoft.com/en-us/download/details.aspx?id=507 Windows 7: https://msdn.microsoft.com/en-us/library/windows/desktop/dd797815(v=vs.85).a spx Windows 8 N & KN: https://www.microsoft.com/en-us/download/details.aspx?id=40744 Windows 10 N & KN: https://www.microsoft.com/en-us/download/details.aspx?id=49919 The official Intel H.264 SDK: https://software.intel.com/en-us/articles/mp4avc-decode-using-the-intel-medi a-sdk Sean Cole *Pi Digital Productions Ltd* www.pidigital.co.uk +44(1634)402193 +44(7702)116447 'Don't try to think outside the box. Just remember the truth: There is no box!' 'For then you realise it is not the box you are trying to look outside of, but it is yourself!' eMail Ts & Cs Pi Digital Productions Ltd is a UK registered limited company, no. 5255609 On 29 August 2017 at 09:13, Tiemo Hollmann TB via use-livecode < use-livecode at lists.runrev.com> wrote: > Hello, > > It is so frustrating after struggling for years with the Quicktime > installer on windows, all my hope on the new "native" video player is > lost. > > Since Windows doesn't support h.264 videos on its old directShow API, > you have to install a h.264 codec/filter to playback h.264 videos with > LiveCode. > > Up to now, I only have found the "LAV Filters" package, which includes > an directShow mp4 filter. Generally this works fine, but I have > customers with Windows 8.1 and 10 machines, who can't play my videos, > the screen just keeps black without notice. Beside of the "K-Lite Mega > Codec Pack", which at last only is a bundle for the LAV filters I > didn't found any other directShow > mp4/h.264 filter, not to mention any "official" installer. Has anybody > found any other directShow mp4/h.264 filter yet? > > On the other hand, since this total black out only happens on certain > machines, it could be anything from the video card driver to missing > media components in windows. But here also I didn't found yet any hint or clue. > > Thanks for your experiences > > Tiemo > > > > > > > > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode From dochawk at gmail.com Tue Aug 29 11:48:13 2017 From: dochawk at gmail.com (Dr. Hawkins) Date: Tue, 29 Aug 2017 08:48:13 -0700 Subject: Parent of Target In-Reply-To: <4DC8EBBC-A9AB-4AC6-AA1A-F79B5E977B2E@appisle.net> References: <688060B9-7CAF-42D6-B2D5-871ECBC3A6B2@hindu.org> <96E23961-5C58-4D02-A1AD-1D93FA7C5AB1@hindu.org> <497d655c-5e9f-714c-f29e-a97b1e596b68@hyperactivesw.com> <8A1771E3-042E-47CB-ABAC-D70D53F00EAE@iotecdigital.com> <8b6f8318-d870-0c65-b92d-a78e7ee1de02@sonic.net> <4DC8EBBC-A9AB-4AC6-AA1A-F79B5E977B2E@appisle.net> Message-ID: On Wed, Aug 23, 2017 at 1:30 PM, Monte Goulding via use-livecode < use-livecode at lists.runrev.com> wrote: > We could parse the message being sent and check if there?s a handler that > can handle it at the time it?s being sent but that would be a dangerous > change > > Wouldn't it be a bit less drastic to simply allow an error handler to be specified? send "foo" to field "bar" in 7 seconds handle with button "oops" of this stack ? With a rule naming the handler to be used in a script? (perhaps, "on errorHandler (target, error)" -- Dr. Richard E. Hawkins, Esq. (702) 508-8462 From sean at pidigital.co.uk Tue Aug 29 12:26:57 2017 From: sean at pidigital.co.uk (Sean Cole (Pi)) Date: Tue, 29 Aug 2017 17:26:57 +0100 Subject: OT: Does anybody know an "official" h.264 directShow filter for windows? In-Reply-To: <007601d320db$9398d5f0$baca81d0$@kestner.de> References: <002e01d3209e$aec82430$0c586c90$@kestner.de> <007601d320db$9398d5f0$baca81d0$@kestner.de> Message-ID: Cisco has also made an open source decoder/encoder. https://github.com/cisco/openh264 http://www.openh264.org Sean Cole *Pi Digital Productions Ltd* www.pidigital.co.uk +44(1634)402193 +44(7702)116447 'Don't try to think outside the box. Just remember the truth: There is no box!' 'For then you realise it is not the box you are trying to look outside of, but it is yourself!' eMail Ts & Cs Pi Digital Productions Ltd is a UK registered limited company, no. 5255609 On 29 August 2017 at 16:29, Tiemo Hollmann TB via use-livecode < use-livecode at lists.runrev.com> wrote: > Hi Sean, > > thank you for your links. I had already tested those links. The microsoft > media feature packs are only for the stripped "N" and "KN" versions of > windows to add those components, which are included in the standard windows > systems. Those installers can't be installed on a normal windows. > The intel link is a developer kit, if you plan to develop your own video > player, unfortunately there is no installer for the filter only. > > Meanwhile I tested the LAV filter and the ffdShow filter, both are for > playback h.264 videos on the directShow API. But the video can't be played > and LiveCode still tells me " Could not create movie reference" Probably > it's not the filter, but any deeper system component or incompatibility. > > Thanks for jumping in > Tiemo > > > -----Urspr?ngliche Nachricht----- > Von: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] Im > Auftrag > von Sean Cole (Pi) via use-livecode > Gesendet: Dienstag, 29. August 2017 16:48 > An: How to use LiveCode > Cc: Sean Cole (Pi) > Betreff: Re: OT: Does anybody know an "official" h.264 directShow filter > for > windows? > > Hi Tiemo > > WinXP: https://www.microsoft.com/en-us/download/details.aspx?id=507 > Windows 7: > https://msdn.microsoft.com/en-us/library/windows/desktop/ > dd797815(v=vs.85).a > spx > Windows 8 N & KN: > https://www.microsoft.com/en-us/download/details.aspx?id=40744 > Windows 10 N & KN: > https://www.microsoft.com/en-us/download/details.aspx?id=49919 > > The official Intel H.264 SDK: > https://software.intel.com/en-us/articles/mp4avc-decode- > using-the-intel-medi > a-sdk > > Sean Cole > *Pi Digital Productions Ltd* > www.pidigital.co.uk > +44(1634)402193 > +44(7702)116447 > 'Don't try to think outside the box. Just remember the truth: There is no > box!' > 'For then you realise it is not the box you are trying to look outside of, > but it is yourself!' > > eMail Ts & Cs Pi Digital > Productions Ltd is a UK registered limited company, no. 5255609 > > On 29 August 2017 at 09:13, Tiemo Hollmann TB via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > Hello, > > > > It is so frustrating after struggling for years with the Quicktime > > installer on windows, all my hope on the new "native" video player is > > lost. > > > > Since Windows doesn't support h.264 videos on its old directShow API, > > you have to install a h.264 codec/filter to playback h.264 videos with > > LiveCode. > > > > Up to now, I only have found the "LAV Filters" package, which includes > > an directShow mp4 filter. Generally this works fine, but I have > > customers with Windows 8.1 and 10 machines, who can't play my videos, > > the screen just keeps black without notice. Beside of the "K-Lite Mega > > Codec Pack", which at last only is a bundle for the LAV filters I > > didn't found any other directShow > > mp4/h.264 filter, not to mention any "official" installer. Has anybody > > found any other directShow mp4/h.264 filter yet? > > > > On the other hand, since this total black out only happens on certain > > machines, it could be anything from the video card driver to missing > > media components in windows. But here also I didn't found yet any hint or > clue. > > > > Thanks for your experiences > > > > Tiemo > > > > > > > > > > > > > > > > > > > > _______________________________________________ > > use-livecode mailing list > > use-livecode at lists.runrev.com > > Please visit this url to subscribe, unsubscribe and manage your > > subscription preferences: > > http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription > preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From jiml at netrin.com Tue Aug 29 14:07:45 2017 From: jiml at netrin.com (Jim Lambert) Date: Tue, 29 Aug 2017 11:07:45 -0700 Subject: slow listserv In-Reply-To: References: Message-ID: I wonder if the Texas flooding affected it. Swimming increases latency. Jim Lambert From jiml at netrin.com Tue Aug 29 14:12:24 2017 From: jiml at netrin.com (Jim Lambert) Date: Tue, 29 Aug 2017 11:12:24 -0700 Subject: LC and Google Analytics? In-Reply-To: References: Message-ID: <257F7D8F-02C7-46D4-AB34-C557A64D874A@netrin.com> Perhaps a widget could encapsulate the Google Analytics SDK. Alternately just using their regular API calls might work too. LiveCode Connect is all about API interfacing. Jim Lambert From sanke at hrz.uni-kassel.de Tue Aug 29 17:59:16 2017 From: sanke at hrz.uni-kassel.de (sanke) Date: Tue, 29 Aug 2017 23:59:16 +0200 Subject: USA TODAY: Check out this photo from August political cartoons from the USA TODAY Network Message-ID: From USA TODAY August political cartoons from the USA TODAY Network https://www.gannett-cdn.com/-mm-/9c3a4b42e9ab7aeae81e79b50e6eff1cf291b0a3/c=32-0-2969-2208/local/-/media/2017/08/29/USATODAY/USATODAY/636395658646117843-082917indyWebOnly-texas-flooding.jpg The cartoonist's homepage, indystar.com/opinion/varvel Von Samsung-Tablet gesendet From revdev at pdslabs.net Tue Aug 29 20:51:25 2017 From: revdev at pdslabs.net (Phil Davis) Date: Tue, 29 Aug 2017 17:51:25 -0700 Subject: OT: error messages In-Reply-To: References: Message-ID: <1908cbdd-e34b-fbba-c949-ab547655ecf5@pdslabs.net> One of my faves from the IBM mainframe world in the 80s and earlier: Probable user error. Correct and resubmit. It's mostly intelligible although it tells you nothing. Phil Davis On 8/28/17 12:15 PM, J. Landman Gay via use-livecode wrote: > On 8/28/17 11:18 AM, Mark Wieder via use-livecode wrote: >> LiveCode is getting way too easy to use. >> I suggest implementing some of these error messages. >> >> https://boingboing.net/2017/08/28/unnervingly-vague-error-messag.html >> >> Or these: >> https://www.cs.cmu.edu/~jasonh/personal/humor/compile.html >> >> Or at least "Underfull hbox (badness 10000)" >> > > Apple shows far more creativity than MS. Not surprised. > -- Phil Davis From jerry at jhjensen.com Tue Aug 29 20:53:12 2017 From: jerry at jhjensen.com (Jerry Jensen) Date: Tue, 29 Aug 2017 17:53:12 -0700 Subject: OT: error messages In-Reply-To: <1908cbdd-e34b-fbba-c949-ab547655ecf5@pdslabs.net> References: <1908cbdd-e34b-fbba-c949-ab547655ecf5@pdslabs.net> Message-ID: <27DDB2DC-6E6C-4D03-A6DA-9B1737145AEE@jhjensen.com> > On Aug 29, 2017, at 5:51 PM, Phil Davis via use-livecode wrote: > > One of my faves from the IBM mainframe world in the 80s and earlier: > > Probable user error. Correct and resubmit. > > It's mostly intelligible although it tells you nothing. > > Phil Davis > > > > On 8/28/17 12:15 PM, J. Landman Gay via use-livecode wrote: >> On 8/28/17 11:18 AM, Mark Wieder via use-livecode wrote: >>> LiveCode is getting way too easy to use. >>> I suggest implementing some of these error messages. >>> >>> https://boingboing.net/2017/08/28/unnervingly-vague-error-messag.html >>> >>> Or these: >>> https://www.cs.cmu.edu/~jasonh/personal/humor/compile.html >>> >>> Or at least "Underfull hbox (badness 10000)" >>> >> >> Apple shows far more creativity than MS. Not surprised. >> > > -- > Phil Davis > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From jerry at jhjensen.com Tue Aug 29 20:55:07 2017 From: jerry at jhjensen.com (Jerry Jensen) Date: Tue, 29 Aug 2017 17:55:07 -0700 Subject: OT: error messages In-Reply-To: <1908cbdd-e34b-fbba-c949-ab547655ecf5@pdslabs.net> References: <1908cbdd-e34b-fbba-c949-ab547655ecf5@pdslabs.net> Message-ID: The early IBM TSS console would occasionally stop, typing ?You Crashed Monito? with the rest of the system running fine. Like a driverless car with no clear destination. .Jerry > On Aug 29, 2017, at 5:51 PM, Phil Davis via use-livecode wrote: > > One of my faves from the IBM mainframe world in the 80s and earlier: > > Probable user error. Correct and resubmit. > > It's mostly intelligible although it tells you nothing. > > Phil Davis > > > > On 8/28/17 12:15 PM, J. Landman Gay via use-livecode wrote: >> On 8/28/17 11:18 AM, Mark Wieder via use-livecode wrote: >>> LiveCode is getting way too easy to use. >>> I suggest implementing some of these error messages. >>> >>> https://boingboing.net/2017/08/28/unnervingly-vague-error-messag.html >>> >>> Or these: >>> https://www.cs.cmu.edu/~jasonh/personal/humor/compile.html >>> >>> Or at least "Underfull hbox (badness 10000)" >>> >> >> Apple shows far more creativity than MS. Not surprised. >> > > -- > Phil Davis > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From jacque at hyperactivesw.com Tue Aug 29 21:56:09 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Tue, 29 Aug 2017 20:56:09 -0500 Subject: OT: error messages In-Reply-To: References: <1908cbdd-e34b-fbba-c949-ab547655ecf5@pdslabs.net> Message-ID: <15e30da52c0.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> HyperCard had an error: Script too silly to parse -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com On August 29, 2017 7:56:58 PM Jerry Jensen via use-livecode wrote: > The early IBM TSS console would occasionally stop, typing ?You Crashed > Monito? with the rest of the system running fine. Like a driverless car > with no clear destination. > .Jerry > >> On Aug 29, 2017, at 5:51 PM, Phil Davis via use-livecode >> wrote: >> >> One of my faves from the IBM mainframe world in the 80s and earlier: >> >> Probable user error. Correct and resubmit. >> >> It's mostly intelligible although it tells you nothing. >> >> Phil Davis >> >> >> >> On 8/28/17 12:15 PM, J. Landman Gay via use-livecode wrote: >>> On 8/28/17 11:18 AM, Mark Wieder via use-livecode wrote: >>>> LiveCode is getting way too easy to use. >>>> I suggest implementing some of these error messages. >>>> >>>> https://boingboing.net/2017/08/28/unnervingly-vague-error-messag.html >>>> >>>> Or these: >>>> https://www.cs.cmu.edu/~jasonh/personal/humor/compile.html >>>> >>>> Or at least "Underfull hbox (badness 10000)" >>>> >>> >>> Apple shows far more creativity than MS. Not surprised. >>> >> >> -- >> Phil Davis >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From ahsoftware at sonic.net Tue Aug 29 22:19:07 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Tue, 29 Aug 2017 19:19:07 -0700 Subject: OT: error messages In-Reply-To: <15e30da52c0.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> References: <1908cbdd-e34b-fbba-c949-ab547655ecf5@pdslabs.net> <15e30da52c0.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Message-ID: On 08/29/2017 06:56 PM, J. Landman Gay via use-livecode wrote: > HyperCard had an error: Script too silly to parse ...TFW... -- Mark Wieder ahsoftware at gmail.com From runrev at learning-insights.eu Wed Aug 30 08:54:49 2017 From: runrev at learning-insights.eu (Robert Brenstein) Date: Wed, 30 Aug 2017 14:54:49 +0200 Subject: livecode changes image colors without being asked to do it Message-ID: I have a stack that dynamically sets the image that is displayed on a card using set the filename of img vImageName of stack vStackName to vFilePath I just encountered a problem with a new batch of jpeg files. Their colors change when they are displayed in the stack. I mean that when I open them in Preview, the color saturation and hue are different than when viewing the same pic in a stack. Anything I can do to avoid that or anything I can tell the graphics person to do differently when producing those files in AI? RObert From bonnmike at gmail.com Wed Aug 30 09:03:21 2017 From: bonnmike at gmail.com (Mike Bonner) Date: Wed, 30 Aug 2017 07:03:21 -0600 Subject: livecode changes image colors without being asked to do it In-Reply-To: References: Message-ID: Not sure if it will make a difference, but you might want to-- set the resizequality of the img "imagename" to "best" On Wed, Aug 30, 2017 at 6:54 AM, Robert Brenstein via use-livecode < use-livecode at lists.runrev.com> wrote: > I have a stack that dynamically sets the image that is displayed on a card > using > > set the filename of img vImageName of stack vStackName to vFilePath > > I just encountered a problem with a new batch of jpeg files. Their colors > change when they are displayed in the stack. I mean that when I open them > in Preview, the color saturation and hue are different than when viewing > the same pic in a stack. > > Anything I can do to avoid that or anything I can tell the graphics person > to do differently when producing those files in AI? > > RObert > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From rdimola at evergreeninfo.net Wed Aug 30 09:20:01 2017 From: rdimola at evergreeninfo.net (Ralph DiMola) Date: Wed, 30 Aug 2017 09:20:01 -0400 Subject: OT: error messages In-Reply-To: References: <1908cbdd-e34b-fbba-c949-ab547655ecf5@pdslabs.net> <15e30da52c0.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> Message-ID: <002501d32192$b02653c0$1072fb40$@net> In 1975 a few of us were huddled around the console of an IBM 1130 trying to figure out the new command line text editor(Cytos). The error messages were less than helpful(much less) so at one point in frustration we typed "f*** you". Cytos replied "Same to you" and we all fell on the floor laughing! Ralph DiMola IT Director Evergreen Information Services rdimola at evergreeninfo.net From sean at pidigital.co.uk Wed Aug 30 10:03:07 2017 From: sean at pidigital.co.uk (Sean Cole (Pi)) Date: Wed, 30 Aug 2017 15:03:07 +0100 Subject: livecode changes image colors without being asked to do it In-Reply-To: References: Message-ID: Hi Robert, This is likely down to the colour space the images are embedded with. Preview will respect the colour space whereas LC will not in some cases. Make sure the jpg is saved with the sRGB (IEC61966-2.1) profile to maintain the correct colour. And make sure it's not CMYK. Sean Cole *Pi Digital Productions Ltd* www.pidigital.co.uk +44(1634)402193 +44(7702)116447 'Don't try to think outside the box. Just remember the truth: There is no box!' 'For then you realise it is not the box you are trying to look outside of, but it is yourself!' eMail Ts & Cs Pi Digital Productions Ltd is a UK registered limited company, no. 5255609 On 30 August 2017 at 14:03, Mike Bonner via use-livecode < use-livecode at lists.runrev.com> wrote: > Not sure if it will make a difference, but you might want to-- set the > resizequality of the img "imagename" to "best" > > On Wed, Aug 30, 2017 at 6:54 AM, Robert Brenstein via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > I have a stack that dynamically sets the image that is displayed on a > card > > using > > > > set the filename of img vImageName of stack vStackName to > vFilePath > > > > I just encountered a problem with a new batch of jpeg files. Their colors > > change when they are displayed in the stack. I mean that when I open them > > in Preview, the color saturation and hue are different than when viewing > > the same pic in a stack. > > > > Anything I can do to avoid that or anything I can tell the graphics > person > > to do differently when producing those files in AI? > > > > RObert > > _______________________________________________ > > use-livecode mailing list > > use-livecode at lists.runrev.com > > Please visit this url to subscribe, unsubscribe and manage your > > subscription preferences: > > http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From merakosp at gmail.com Wed Aug 30 10:07:58 2017 From: merakosp at gmail.com (panagiotis merakos) Date: Wed, 30 Aug 2017 15:07:58 +0100 Subject: livecode changes image colors without being asked to do it In-Reply-To: References: Message-ID: @Robert which LiveCode version are you using? CMYK images should display correctly if you are using LC >=8.1.3: https://github.com/livecode/livecode/pull/4950 Best, Panos -- On Wed, Aug 30, 2017 at 3:03 PM, Sean Cole (Pi) via use-livecode < use-livecode at lists.runrev.com> wrote: > Hi Robert, > > This is likely down to the colour space the images are embedded with. > Preview will respect the colour space whereas LC will not in some cases. > Make sure the jpg is saved with the sRGB (IEC61966-2.1) profile to maintain > the correct colour. And make sure it's not CMYK. > > Sean Cole > *Pi Digital Productions Ltd* > www.pidigital.co.uk > +44(1634)402193 > +44(7702)116447 > 'Don't try to think outside the box. Just remember the truth: There is no > box!' > 'For then you realise it is not the box you are trying to look outside of, > but it is yourself!' > > eMail Ts & Cs Pi Digital > Productions Ltd is a UK registered limited company, no. 5255609 > > On 30 August 2017 at 14:03, Mike Bonner via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > Not sure if it will make a difference, but you might want to-- set the > > resizequality of the img "imagename" to "best" > > > > On Wed, Aug 30, 2017 at 6:54 AM, Robert Brenstein via use-livecode < > > use-livecode at lists.runrev.com> wrote: > > > > > I have a stack that dynamically sets the image that is displayed on a > > card > > > using > > > > > > set the filename of img vImageName of stack vStackName to > > vFilePath > > > > > > I just encountered a problem with a new batch of jpeg files. Their > colors > > > change when they are displayed in the stack. I mean that when I open > them > > > in Preview, the color saturation and hue are different than when > viewing > > > the same pic in a stack. > > > > > > Anything I can do to avoid that or anything I can tell the graphics > > person > > > to do differently when producing those files in AI? > > > > > > RObert > > > _______________________________________________ > > > use-livecode mailing list > > > use-livecode at lists.runrev.com > > > Please visit this url to subscribe, unsubscribe and manage your > > > subscription preferences: > > > http://lists.runrev.com/mailman/listinfo/use-livecode > > > > > _______________________________________________ > > use-livecode mailing list > > use-livecode at lists.runrev.com > > Please visit this url to subscribe, unsubscribe and manage your > > subscription preferences: > > http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From runrev at learning-insights.eu Wed Aug 30 10:26:23 2017 From: runrev at learning-insights.eu (Robert Brenstein) Date: Wed, 30 Aug 2017 16:26:23 +0200 Subject: livecode changes image colors without being asked to do it In-Reply-To: References: Message-ID: resizequality is set to best? On 30 Aug 2017, at 15:03, Mike Bonner via use-livecode wrote: > Not sure if it will make a difference, but you might want to-- set the > resizequality of the img "imagename" to "best" > > On Wed, Aug 30, 2017 at 6:54 AM, Robert Brenstein via use-livecode < > use-livecode at lists.runrev.com> wrote: > >> I have a stack that dynamically sets the image that is displayed on a >> card >> using >> >> set the filename of img vImageName of stack vStackName to >> vFilePath >> >> I just encountered a problem with a new batch of jpeg files. Their >> colors >> change when they are displayed in the stack. I mean that when I open >> them >> in Preview, the color saturation and hue are different than when >> viewing >> the same pic in a stack. >> >> Anything I can do to avoid that or anything I can tell the graphics >> person >> to do differently when producing those files in AI? >> >> RObert >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From runrev at learning-insights.eu Wed Aug 30 10:31:47 2017 From: runrev at learning-insights.eu (Robert Brenstein) Date: Wed, 30 Aug 2017 16:31:47 +0200 Subject: livecode changes image colors without being asked to do it In-Reply-To: References: Message-ID: Thanks for pointing me in the right direction. The images are indeed CMYK. The stack is used to produce a PDF file and the printing shop requested CMYK. I just checked that last year we had indeed used sRGB not CMYK. RObert On 30 Aug 2017, at 16:03, Sean Cole (Pi) via use-livecode wrote: > Hi Robert, > > This is likely down to the colour space the images are embedded with. > Preview will respect the colour space whereas LC will not in some > cases. > Make sure the jpg is saved with the sRGB (IEC61966-2.1) profile to > maintain > the correct colour. And make sure it's not CMYK. > > Sean Cole > *Pi Digital Productions Ltd* > www.pidigital.co.uk > +44(1634)402193 > +44(7702)116447 > 'Don't try to think outside the box. Just remember the truth: There is > no > box!' > 'For then you realise it is not the box you are trying to look outside > of, > but it is yourself!' > > eMail Ts & Cs Pi Digital > Productions Ltd is a UK registered limited company, no. 5255609 > > On 30 August 2017 at 14:03, Mike Bonner via use-livecode < > use-livecode at lists.runrev.com> wrote: > >> Not sure if it will make a difference, but you might want to-- set >> the >> resizequality of the img "imagename" to "best" >> >> On Wed, Aug 30, 2017 at 6:54 AM, Robert Brenstein via use-livecode < >> use-livecode at lists.runrev.com> wrote: >> >>> I have a stack that dynamically sets the image that is displayed on >>> a >> card >>> using >>> >>> set the filename of img vImageName of stack vStackName to >> vFilePath >>> >>> I just encountered a problem with a new batch of jpeg files. Their >>> colors >>> change when they are displayed in the stack. I mean that when I open >>> them >>> in Preview, the color saturation and hue are different than when >>> viewing >>> the same pic in a stack. >>> >>> Anything I can do to avoid that or anything I can tell the graphics >> person >>> to do differently when producing those files in AI? >>> >>> RObert >>> _______________________________________________ >>> use-livecode mailing list >>> use-livecode at lists.runrev.com >>> Please visit this url to subscribe, unsubscribe and manage your >>> subscription preferences: >>> http://lists.runrev.com/mailman/listinfo/use-livecode >>> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From runrev at learning-insights.eu Wed Aug 30 10:33:49 2017 From: runrev at learning-insights.eu (Robert Brenstein) Date: Wed, 30 Aug 2017 16:33:49 +0200 Subject: livecode changes image colors without being asked to do it In-Reply-To: References: Message-ID: LC 7.1.3 It sounds like I must venture into LC8-land or see whether I manage to get by with sRGB yet? RObert On 30 Aug 2017, at 16:07, panagiotis merakos via use-livecode wrote: > @Robert which LiveCode version are you using? > > CMYK images should display correctly if you are using LC >=8.1.3: > > https://github.com/livecode/livecode/pull/4950 > > Best, > Panos > -- > > On Wed, Aug 30, 2017 at 3:03 PM, Sean Cole (Pi) via use-livecode < > use-livecode at lists.runrev.com> wrote: > >> Hi Robert, >> >> This is likely down to the colour space the images are embedded with. >> Preview will respect the colour space whereas LC will not in some >> cases. >> Make sure the jpg is saved with the sRGB (IEC61966-2.1) profile to >> maintain >> the correct colour. And make sure it's not CMYK. >> >> Sean Cole >> *Pi Digital Productions Ltd* >> www.pidigital.co.uk >> +44(1634)402193 >> +44(7702)116447 >> 'Don't try to think outside the box. Just remember the truth: There >> is no >> box!' >> 'For then you realise it is not the box you are trying to look >> outside of, >> but it is yourself!' >> >> eMail Ts & Cs Pi Digital >> Productions Ltd is a UK registered limited company, no. 5255609 >> >> On 30 August 2017 at 14:03, Mike Bonner via use-livecode < >> use-livecode at lists.runrev.com> wrote: >> >>> Not sure if it will make a difference, but you might want to-- set >>> the >>> resizequality of the img "imagename" to "best" >>> >>> On Wed, Aug 30, 2017 at 6:54 AM, Robert Brenstein via use-livecode < >>> use-livecode at lists.runrev.com> wrote: >>> >>>> I have a stack that dynamically sets the image that is displayed on >>>> a >>> card >>>> using >>>> >>>> set the filename of img vImageName of stack vStackName to >>> vFilePath >>>> >>>> I just encountered a problem with a new batch of jpeg files. Their >> colors >>>> change when they are displayed in the stack. I mean that when I >>>> open >> them >>>> in Preview, the color saturation and hue are different than when >> viewing >>>> the same pic in a stack. >>>> >>>> Anything I can do to avoid that or anything I can tell the graphics >>> person >>>> to do differently when producing those files in AI? >>>> >>>> RObert >>>> _______________________________________________ >>>> use-livecode mailing list >>>> use-livecode at lists.runrev.com >>>> Please visit this url to subscribe, unsubscribe and manage your >>>> subscription preferences: >>>> http://lists.runrev.com/mailman/listinfo/use-livecode >>>> >>> _______________________________________________ >>> use-livecode mailing list >>> use-livecode at lists.runrev.com >>> Please visit this url to subscribe, unsubscribe and manage your >>> subscription preferences: >>> http://lists.runrev.com/mailman/listinfo/use-livecode >>> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From merakosp at gmail.com Wed Aug 30 10:45:18 2017 From: merakosp at gmail.com (panagiotis merakos) Date: Wed, 30 Aug 2017 15:45:18 +0100 Subject: livecode changes image colors without being asked to do it In-Reply-To: References: Message-ID: I suggest you try LC 8.x anyway, since LC 7.x is no longer maintained. Moreover you'll find many many new features in LC 8.x :) Best, Panos -- On Wed, Aug 30, 2017 at 3:33 PM, Robert Brenstein via use-livecode < use-livecode at lists.runrev.com> wrote: > LC 7.1.3 > > It sounds like I must venture into LC8-land or see whether I manage to get > by with sRGB yet? > > RObert > > > On 30 Aug 2017, at 16:07, panagiotis merakos via use-livecode wrote: > > @Robert which LiveCode version are you using? >> >> CMYK images should display correctly if you are using LC >=8.1.3: >> >> https://github.com/livecode/livecode/pull/4950 >> >> Best, >> Panos >> -- >> >> On Wed, Aug 30, 2017 at 3:03 PM, Sean Cole (Pi) via use-livecode < >> use-livecode at lists.runrev.com> wrote: >> >> Hi Robert, >>> >>> This is likely down to the colour space the images are embedded with. >>> Preview will respect the colour space whereas LC will not in some cases. >>> Make sure the jpg is saved with the sRGB (IEC61966-2.1) profile to >>> maintain >>> the correct colour. And make sure it's not CMYK. >>> >>> Sean Cole >>> *Pi Digital Productions Ltd* >>> www.pidigital.co.uk >>> +44(1634)402193 >>> +44(7702)116447 >>> 'Don't try to think outside the box. Just remember the truth: There is no >>> box!' >>> 'For then you realise it is not the box you are trying to look outside >>> of, >>> but it is yourself!' >>> >>> eMail Ts & Cs Pi Digital >>> Productions Ltd is a UK registered limited company, no. 5255609 >>> >>> On 30 August 2017 at 14:03, Mike Bonner via use-livecode < >>> use-livecode at lists.runrev.com> wrote: >>> >>> Not sure if it will make a difference, but you might want to-- set the >>>> resizequality of the img "imagename" to "best" >>>> >>>> On Wed, Aug 30, 2017 at 6:54 AM, Robert Brenstein via use-livecode < >>>> use-livecode at lists.runrev.com> wrote: >>>> >>>> I have a stack that dynamically sets the image that is displayed on a >>>>> >>>> card >>>> >>>>> using >>>>> >>>>> set the filename of img vImageName of stack vStackName to >>>>> >>>> vFilePath >>>> >>>>> >>>>> I just encountered a problem with a new batch of jpeg files. Their >>>>> >>>> colors >>> >>>> change when they are displayed in the stack. I mean that when I open >>>>> >>>> them >>> >>>> in Preview, the color saturation and hue are different than when >>>>> >>>> viewing >>> >>>> the same pic in a stack. >>>>> >>>>> Anything I can do to avoid that or anything I can tell the graphics >>>>> >>>> person >>>> >>>>> to do differently when producing those files in AI? >>>>> >>>>> RObert >>>>> _______________________________________________ >>>>> use-livecode mailing list >>>>> use-livecode at lists.runrev.com >>>>> Please visit this url to subscribe, unsubscribe and manage your >>>>> subscription preferences: >>>>> http://lists.runrev.com/mailman/listinfo/use-livecode >>>>> >>>>> _______________________________________________ >>>> use-livecode mailing list >>>> use-livecode at lists.runrev.com >>>> Please visit this url to subscribe, unsubscribe and manage your >>>> subscription preferences: >>>> http://lists.runrev.com/mailman/listinfo/use-livecode >>>> >>>> _______________________________________________ >>> use-livecode mailing list >>> use-livecode at lists.runrev.com >>> Please visit this url to subscribe, unsubscribe and manage your >>> subscription preferences: >>> http://lists.runrev.com/mailman/listinfo/use-livecode >>> >>> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From rdimola at evergreeninfo.net Wed Aug 30 11:34:47 2017 From: rdimola at evergreeninfo.net (Ralph DiMola) Date: Wed, 30 Aug 2017 11:34:47 -0400 Subject: Group mouseup Message-ID: <003e01d321a5$83427f10$89c77d30$@net> I must be missing something obvious. Why can't I get a mouseup message sent to a group when clicking in a group where there is no control at the clicked location? Or is this intended behavior? Thanks Ralph DiMola IT Director Evergreen Information Services rdimola at evergreeninfo.net Phone: 518-636-3998 Ex:11 Cell: 518-796-9332 From bobsneidar at iotecdigital.com Wed Aug 30 11:44:48 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Wed, 30 Aug 2017 15:44:48 +0000 Subject: Group mouseup In-Reply-To: <003e01d321a5$83427f10$89c77d30$@net> References: <003e01d321a5$83427f10$89c77d30$@net> Message-ID: Edit the script of the group. If mouseUp is not one of the listed handlers that can be added, then a group does not receive the message directly. If it DOES, then set the background color of the group to 255.255.254. Otherwise it's transparent/unclickable. Otherwise just add an (almost) transparent button behind all the other objects in the group. Bob S > On Aug 30, 2017, at 08:34 , Ralph DiMola via use-livecode wrote: > > I must be missing something obvious. Why can't I get a mouseup message sent > to a group when clicking in a group where there is no control at the clicked > location? Or is this intended behavior? > > > > Thanks > > > > Ralph DiMola > > IT Director > > Evergreen Information Services > > rdimola at evergreeninfo.net > > Phone: 518-636-3998 Ex:11 > > Cell: 518-796-9332 From bobsneidar at iotecdigital.com Wed Aug 30 11:52:03 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Wed, 30 Aug 2017 15:52:03 +0000 Subject: Group mouseup In-Reply-To: References: <003e01d321a5$83427f10$89c77d30$@net> Message-ID: <5619376B-B776-4704-9099-DC3123C69829@iotecdigital.com> I just checked. The group does not receive mouseUp from the engine. (It doesn't receive closeField either just as an aside. ;-) So I think the almost transparent button at the back of the group will have to be your only option. Bob S > On Aug 30, 2017, at 08:44 , Bob Sneidar via use-livecode wrote: > > Edit the script of the group. If mouseUp is not one of the listed handlers that can be added, then a group does not receive the message directly. If it DOES, then set the background color of the group to 255.255.254. Otherwise it's transparent/unclickable. Otherwise just add an (almost) transparent button behind all the other objects in the group. > > Bob S > > >> On Aug 30, 2017, at 08:34 , Ralph DiMola via use-livecode wrote: >> >> I must be missing something obvious. Why can't I get a mouseup message sent >> to a group when clicking in a group where there is no control at the clicked >> location? Or is this intended behavior? >> >> >> >> Thanks >> >> >> >> Ralph DiMola >> >> IT Director >> >> Evergreen Information Services >> >> rdimola at evergreeninfo.net >> >> Phone: 518-636-3998 Ex:11 >> >> Cell: 518-796-9332 > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From bobsneidar at iotecdigital.com Wed Aug 30 11:55:10 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Wed, 30 Aug 2017 15:55:10 +0000 Subject: Group mouseup In-Reply-To: <5619376B-B776-4704-9099-DC3123C69829@iotecdigital.com> References: <003e01d321a5$83427f10$89c77d30$@net> <5619376B-B776-4704-9099-DC3123C69829@iotecdigital.com> Message-ID: <940E2D5A-DF97-47C3-B18E-80D368F633F1@iotecdigital.com> I take that back. Just a transparent button will do. You do not have to mess with the background color. Bob S > On Aug 30, 2017, at 08:52 , Bob Sneidar via use-livecode wrote: > > I just checked. The group does not receive mouseUp from the engine. (It doesn't receive closeField either just as an aside. ;-) So I think the almost transparent button at the back of the group will have to be your only option. > > Bob S From MikeKerner at roadrunner.com Wed Aug 30 12:09:10 2017 From: MikeKerner at roadrunner.com (Mike Kerner) Date: Wed, 30 Aug 2017 12:09:10 -0400 Subject: Group mouseup In-Reply-To: <940E2D5A-DF97-47C3-B18E-80D368F633F1@iotecdigital.com> References: <003e01d321a5$83427f10$89c77d30$@net> <5619376B-B776-4704-9099-DC3123C69829@iotecdigital.com> <940E2D5A-DF97-47C3-B18E-80D368F633F1@iotecdigital.com> Message-ID: That seems like a better idea, anyway, since if you ungroup the objects, wouldn't you lose the script? On Wed, Aug 30, 2017 at 11:55 AM, Bob Sneidar via use-livecode < use-livecode at lists.runrev.com> wrote: > I take that back. Just a transparent button will do. You do not have to > mess with the background color. > > Bob S > > > > On Aug 30, 2017, at 08:52 , Bob Sneidar via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > > I just checked. The group does not receive mouseUp from the engine. (It > doesn't receive closeField either just as an aside. ;-) So I think the > almost transparent button at the back of the group will have to be your > only option. > > > > Bob S > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > -- On the first day, God created the heavens and the Earth On the second day, God created the oceans. On the third day, God put the animals on hold for a few hours, and did a little diving. And God said, "This is good." From rdimola at evergreeninfo.net Wed Aug 30 12:12:36 2017 From: rdimola at evergreeninfo.net (Ralph DiMola) Date: Wed, 30 Aug 2017 12:12:36 -0400 Subject: Group mouseup In-Reply-To: <940E2D5A-DF97-47C3-B18E-80D368F633F1@iotecdigital.com> References: <003e01d321a5$83427f10$89c77d30$@net> <5619376B-B776-4704-9099-DC3123C69829@iotecdigital.com> <940E2D5A-DF97-47C3-B18E-80D368F633F1@iotecdigital.com> Message-ID: <005201d321aa$cba93fa0$62fbbee0$@net> Worked, Thanks! Another observation. If an image is in a group and you click on a transparent location in the image the mouseup does not make to the group. It guess it makes sense for some applications but also does not make sense for others. Ralph DiMola IT Director Evergreen Information Services rdimola at evergreeninfo.net -----Original Message----- From: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] On Behalf Of Bob Sneidar via use-livecode Sent: Wednesday, August 30, 2017 11:55 AM To: How to use LiveCode Cc: Bob Sneidar Subject: Re: Group mouseup I take that back. Just a transparent button will do. You do not have to mess with the background color. Bob S > On Aug 30, 2017, at 08:52 , Bob Sneidar via use-livecode wrote: > > I just checked. The group does not receive mouseUp from the engine. (It doesn't receive closeField either just as an aside. ;-) So I think the almost transparent button at the back of the group will have to be your only option. > > Bob S _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode From bonnmike at gmail.com Wed Aug 30 13:06:00 2017 From: bonnmike at gmail.com (Mike Bonner) Date: Wed, 30 Aug 2017 11:06:00 -0600 Subject: Group mouseup In-Reply-To: <005201d321aa$cba93fa0$62fbbee0$@net> References: <003e01d321a5$83427f10$89c77d30$@net> <5619376B-B776-4704-9099-DC3123C69829@iotecdigital.com> <940E2D5A-DF97-47C3-B18E-80D368F633F1@iotecdigital.com> <005201d321aa$cba93fa0$62fbbee0$@net> Message-ID: You could place another transparent button over the top of the image to catch clicks if necessary. On Wed, Aug 30, 2017 at 10:12 AM, Ralph DiMola via use-livecode < use-livecode at lists.runrev.com> wrote: > Worked, Thanks! > > Another observation. If an image is in a group and you click on a > transparent location in the image the mouseup does not make to the group. > It > guess it makes sense for some applications but also does not make sense for > others. > > Ralph DiMola > IT Director > Evergreen Information Services > rdimola at evergreeninfo.net > > > -----Original Message----- > From: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] On > Behalf > Of Bob Sneidar via use-livecode > Sent: Wednesday, August 30, 2017 11:55 AM > To: How to use LiveCode > Cc: Bob Sneidar > Subject: Re: Group mouseup > > I take that back. Just a transparent button will do. You do not have to > mess > with the background color. > > Bob S > > > > On Aug 30, 2017, at 08:52 , Bob Sneidar via use-livecode > wrote: > > > > I just checked. The group does not receive mouseUp from the engine. (It > doesn't receive closeField either just as an aside. ;-) So I think the > almost transparent button at the back of the group will have to be your > only > option. > > > > Bob S > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription > preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From jonathandlynch at gmail.com Wed Aug 30 22:00:17 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Wed, 30 Aug 2017 22:00:17 -0400 Subject: Does exporting a snapshot from a rect work on mobile? Message-ID: <47272639-0763-4275-903C-221E7C520681@gmail.com> I am getting all black in the image, but I checked and the rect is the correct rect. Sent from my iPhone From montero.je at gmail.com Thu Aug 31 00:03:24 2017 From: montero.je at gmail.com (Jose Enrique Montero) Date: Thu, 31 Aug 2017 00:03:24 -0400 Subject: LC and OneSignal Message-ID: Hello Dan ! Could you implement it via API onesignal? pushNotificationRegistered in livecode and post like https://documentation.onesignal.com/reference#add-a-device ? best regard Jose Montero From paul at livecode.org Thu Aug 31 00:56:10 2017 From: paul at livecode.org (Paul Hibbert) Date: Wed, 30 Aug 2017 21:56:10 -0700 Subject: Does exporting a snapshot from a rect work on mobile? In-Reply-To: <47272639-0763-4275-903C-221E7C520681@gmail.com> References: <47272639-0763-4275-903C-221E7C520681@gmail.com> Message-ID: <408C7788-D745-42D9-BB80-96B2CEBFABF7@livecode.org> I just ran a quick test and it works OK for me using LC8.1.6 on MacOS Sierra 10.12.6, build for iOS10 and tested on iPhone 5s running iOS10.3.3 HTH Paul > On Aug 30, 2017, at 7:00 PM, Jonathan Lynch via use-livecode wrote: > > I am getting all black in the image, but I checked and the rect is the correct rect. > > Sent from my iPhone > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From panos.merakos at livecode.com Thu Aug 31 06:42:41 2017 From: panos.merakos at livecode.com (panagiotis merakos) Date: Thu, 31 Aug 2017 11:42:41 +0100 Subject: [ANN] Important: New release of LiveCode 8.1.6 Message-ID: Hi all, Since the week beginning 21st August 2017, LiveCode iOS apps are being rejected by iTunes Connect due to 'invalid binary'. It turns out that Apple have upgraded the tools they use to analyse binaries, and this has shown an error in the Mach-O structure of the 64-bit slice. The version of otool with Xcode 6.x (on 10.9) does not show a problem, but newer versions do. For this reason, we have built a new version of LiveCode 8.1.6 that addresses this issue. So if you have already installed the original LiveCode 8.1.6 and are affected by this issue, please visit now http://downloads.livecode.com/livecode/ and download the latest 8.1.6 (STABLE), released on the 31st of August. Best regards, The LiveCode Team ? From thatkeith at mac.com Thu Aug 31 07:36:34 2017 From: thatkeith at mac.com (Keith Martin) Date: Thu, 31 Aug 2017 12:36:34 +0100 Subject: livecode changes image colors without being asked to do it In-Reply-To: References: Message-ID: On 30 Aug 2017, at 15:31, Robert Brenstein via use-livecode wrote: > The stack is used to produce a PDF file and the printing shop > requested CMYK A slight aside ? please forgive me. I teach publishing and have worked in the print industry (among others) since the 1980s. It's now the norm for printers to accept PDFs with embedded RGB images and do the colour conversion to CMYK in the final RIP stage as it's printed. This means that the actual conversion is done with settings that are most appropriate to the actual print method and device, not a generic 'make it CMYK' process. I've seen print projects go expensively wrong because of inappropriate CMYK conversion settings. This is often known as an RGB workflow ? although 'Hybrid workflow' is more accurate, as it's just imported images that are left in their native colour model; colour swatches should still be specified using the colour model of the intended output process. Having said this, the bottom line is always "ask your printer and follow their advice," not least because if something goes wrong with the colour repro they can't blame you. ;) k --- Keith Martin Senior Lecturer, LCC (University of the Arts London) President, http://IVRPA.org http://PanoramaPhotographer.com http://thatkeith.com +44 (0)7909541365 --- From jonathandlynch at gmail.com Thu Aug 31 08:09:49 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Thu, 31 Aug 2017 08:09:49 -0400 Subject: Does exporting a snapshot from a rect work on mobile? In-Reply-To: <408C7788-D745-42D9-BB80-96B2CEBFABF7@livecode.org> References: <47272639-0763-4275-903C-221E7C520681@gmail.com> <408C7788-D745-42D9-BB80-96B2CEBFABF7@livecode.org> Message-ID: Thanks for checking Paul. It appears that, with a browser widget on screen, I am only getting an image from the parts of the screen with the browser widget. With import snapshot, the non-browser parts of the image are transparent (and black). With exporting a snapshot to a variable and putting that variable into an image, the non-browser parts are visible but black. I will do more exploring and file a bug report if I can isolate the issue more. Sent from my iPhone > On Aug 31, 2017, at 12:56 AM, Paul Hibbert via use-livecode wrote: > > I just ran a quick test and it works OK for me using LC8.1.6 on MacOS Sierra 10.12.6, build for iOS10 and tested on iPhone 5s running iOS10.3.3 > > HTH > > Paul > > >> On Aug 30, 2017, at 7:00 PM, Jonathan Lynch via use-livecode wrote: >> >> I am getting all black in the image, but I checked and the rect is the correct rect. >> >> Sent from my iPhone >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From mark at livecode.com Thu Aug 31 08:25:23 2017 From: mark at livecode.com (Mark Waddingham) Date: Thu, 31 Aug 2017 14:25:23 +0200 Subject: Does exporting a snapshot from a rect work on =?UTF-8?Q?mobile=3F?= In-Reply-To: References: <47272639-0763-4275-903C-221E7C520681@gmail.com> <408C7788-D745-42D9-BB80-96B2CEBFABF7@livecode.org> Message-ID: <77bb60455484b349449e7abeb38f3f76@livecode.com> Hi Jonathan, On 2017-08-31 14:09, Jonathan Lynch via use-livecode wrote: > Thanks for checking Paul. It appears that, with a browser widget on > screen, I am only getting an image from the parts of the screen with > the browser widget. > > With import snapshot, the non-browser parts of the image are > transparent (and black). With exporting a snapshot to a variable and > putting that variable into an image, the non-browser parts are visible > but black. > > I will do more exploring and file a bug report if I can isolate the > issue more. This is http://quality.livecode.com/show_bug.cgi?id=9992 - back when this was reported there was no way to do as you are wanting. However, it seems like since then there is a new way to get a snapshot of the screen: https://developer.apple.com/documentation/uikit/uiview/1622589-drawviewhierarchyinrect So we can try that to fix the problem (it might still not work for some layer types). Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From rdimola at evergreeninfo.net Thu Aug 31 09:08:28 2017 From: rdimola at evergreeninfo.net (Ralph DiMola) Date: Thu, 31 Aug 2017 09:08:28 -0400 Subject: [ANN] Important: New release of LiveCode 8.1.6 In-Reply-To: References: Message-ID: <004001d3225a$3cffe280$b6ffa780$@net> I would like to thank Panos, Mark et al. This is the type of support that the big boys can't(or won't) give. Ralph DiMola IT Director Evergreen Information Services rdimola at evergreeninfo.net -----Original Message----- From: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] On Behalf Of panagiotis merakos via use-livecode Sent: Thursday, August 31, 2017 6:43 AM To: How to use LiveCode Cc: panagiotis merakos Subject: [ANN] Important: New release of LiveCode 8.1.6 Hi all, Since the week beginning 21st August 2017, LiveCode iOS apps are being rejected by iTunes Connect due to 'invalid binary'. It turns out that Apple have upgraded the tools they use to analyse binaries, and this has shown an error in the Mach-O structure of the 64-bit slice. The version of otool with Xcode 6.x (on 10.9) does not show a problem, but newer versions do. For this reason, we have built a new version of LiveCode 8.1.6 that addresses this issue. So if you have already installed the original LiveCode 8.1.6 and are affected by this issue, please visit now http://downloads.livecode.com/livecode/ and download the latest 8.1.6 (STABLE), released on the 31st of August. Best regards, The LiveCode Team ? _______________________________________________ use-livecode mailing list use-livecode at lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode From mark at livecode.com Thu Aug 31 09:09:15 2017 From: mark at livecode.com (Mark Waddingham) Date: Thu, 31 Aug 2017 15:09:15 +0200 Subject: Does exporting a snapshot from a rect work on =?UTF-8?Q?mobile=3F?= In-Reply-To: <77bb60455484b349449e7abeb38f3f76@livecode.com> References: <47272639-0763-4275-903C-221E7C520681@gmail.com> <408C7788-D745-42D9-BB80-96B2CEBFABF7@livecode.org> <77bb60455484b349449e7abeb38f3f76@livecode.com> Message-ID: <044f5f7efb8ca39f2b3624563be245aa@livecode.com> On 2017-08-31 14:25, Mark Waddingham via use-livecode wrote: > https://developer.apple.com/documentation/uikit/uiview/1622589-drawviewhierarchyinrect Turns out this works quite well! It certainly manages to capture a browser widget on iOS which is displaying the google homepage. There is still a possibility that some views will not be captured so some experimentation might be needed, however I've patched it for inclusion in 8.1.7-rc-1 - so you'll be able to try it out there. Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From jonathandlynch at gmail.com Thu Aug 31 09:34:40 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Thu, 31 Aug 2017 09:34:40 -0400 Subject: Does exporting a snapshot from a rect work on mobile? In-Reply-To: <77bb60455484b349449e7abeb38f3f76@livecode.com> References: <47272639-0763-4275-903C-221E7C520681@gmail.com> <408C7788-D745-42D9-BB80-96B2CEBFABF7@livecode.org> <77bb60455484b349449e7abeb38f3f76@livecode.com> Message-ID: <98ACC448-A52E-435B-88FD-8812DF522A11@gmail.com> Hi Mark, I am trying to hack together a way to detect the height of the keyboard on Android. My plan is to have an image 1-pixel wide, but full height of the screen, with an rgb color of 0,0,1. If the snapshot includes the keyboard, then the image data of the snapshot will include a point where the color changes to something other than 0,0,1. I can use that point to calculate how high the keyboard is. Yes, this is a ridiculous hack, but I do not see another solution. I can work with getting a snapshot just from the browser widget, for my particular case. As long as it also includes the keyboard in the image. I still have to test for that. Thanks for looking into this issue. J Sent from my iPhone > On Aug 31, 2017, at 8:25 AM, Mark Waddingham via use-livecode wrote: > > Hi Jonathan, > >> On 2017-08-31 14:09, Jonathan Lynch via use-livecode wrote: >> Thanks for checking Paul. It appears that, with a browser widget on >> screen, I am only getting an image from the parts of the screen with >> the browser widget. >> With import snapshot, the non-browser parts of the image are >> transparent (and black). With exporting a snapshot to a variable and >> putting that variable into an image, the non-browser parts are visible >> but black. >> I will do more exploring and file a bug report if I can isolate the issue more. > > This is http://quality.livecode.com/show_bug.cgi?id=9992 - back when this was reported there was no way to do as you are wanting. However, it seems like since then there is a new way to get a snapshot of the screen: > > https://developer.apple.com/documentation/uikit/uiview/1622589-drawviewhierarchyinrect > > So we can try that to fix the problem (it might still not work for some layer types). > > Warmest Regards, > > Mark. > > -- > Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ > LiveCode: Everyone can create apps > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From sean at pidigital.co.uk Thu Aug 31 09:36:41 2017 From: sean at pidigital.co.uk (Sean Cole (Pi)) Date: Thu, 31 Aug 2017 14:36:41 +0100 Subject: [ANN] Important: New release of LiveCode 8.1.6 In-Reply-To: <004001d3225a$3cffe280$b6ffa780$@net> References: <004001d3225a$3cffe280$b6ffa780$@net> Message-ID: Perfect! Myself and Kee Nethery were just going around in circles trying to resolve this. There also seemed to be a regression in tsNet being added but not signed properly (and not showing up in the externals folder). I'm hoping this solves that now. Sean Cole *Pi Digital Productions Ltd* 'Don't try to think outside the box. Just remember the truth: There is no box!' 'For then you realise it is not the box you are trying to look outside of, but it is yourself!' eMail Ts & Cs Pi Digital Productions Ltd is a UK registered limited company, no. 5255609 On 31 August 2017 at 14:08, Ralph DiMola via use-livecode < use-livecode at lists.runrev.com> wrote: > I would like to thank Panos, Mark et al. This is the type of support that > the big boys can't(or won't) give. > > Ralph DiMola > IT Director > Evergreen Information Services > rdimola at evergreeninfo.net > > -----Original Message----- > From: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] On > Behalf Of panagiotis merakos via use-livecode > Sent: Thursday, August 31, 2017 6:43 AM > To: How to use LiveCode > Cc: panagiotis merakos > Subject: [ANN] Important: New release of LiveCode 8.1.6 > > Hi all, > > Since the week beginning 21st August 2017, LiveCode iOS apps are being > rejected by iTunes Connect due to 'invalid binary'. It turns out that Apple > have upgraded the tools they use to analyse binaries, and this has shown an > error in the Mach-O structure of the 64-bit slice. The version of otool > with Xcode 6.x (on 10.9) does not show a problem, but newer versions do. > > For this reason, we have built a new version of LiveCode 8.1.6 that > addresses this issue. > > So if you have already installed the original LiveCode 8.1.6 and are > affected by this issue, please visit now > > http://downloads.livecode.com/livecode/ > > and download the latest 8.1.6 (STABLE), released on the 31st of August. > > Best regards, > The LiveCode Team > ? > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From mark at livecode.com Thu Aug 31 09:51:14 2017 From: mark at livecode.com (Mark Waddingham) Date: Thu, 31 Aug 2017 15:51:14 +0200 Subject: Does exporting a snapshot from a rect work on =?UTF-8?Q?mobile=3F?= In-Reply-To: <98ACC448-A52E-435B-88FD-8812DF522A11@gmail.com> References: <47272639-0763-4275-903C-221E7C520681@gmail.com> <408C7788-D745-42D9-BB80-96B2CEBFABF7@livecode.org> <77bb60455484b349449e7abeb38f3f76@livecode.com> <98ACC448-A52E-435B-88FD-8812DF522A11@gmail.com> Message-ID: On 2017-08-31 15:34, jonathandlynch at gmail.com wrote: > I can work with getting a snapshot just from the browser widget, for > my particular case. As long as it also includes the keyboard in the > image. Have you tried 'the [[effective] working] screenRect'? I think 'the effect working screenRect' should give you the portion of the screen not covered by furniture and the keyboard. Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From dave at applicationinsight.com Thu Aug 31 09:59:28 2017 From: dave at applicationinsight.com (Dave Kilroy) Date: Thu, 31 Aug 2017 14:59:28 +0100 Subject: [ANN] Important: New release of LiveCode 8.1.6 Message-ID: <11F8F69F-FE38-4215-8B75-E9D17B4B8452@applicationinsight.com> +1 from me - the LiveCode team have been MEGA - thank you all!! Kind regards Dave > > I would like to thank Panos, Mark et al. This is the type of support that the big boys can't(or won't) give. > > Ralph DiMola > IT Director > Evergreen Information Services > [hidden email] > > -----Original Message----- > From: use-livecode [mailto:[hidden email] ] On Behalf Of panagiotis merakos via use-livecode > Sent: Thursday, August 31, 2017 6:43 AM > To: How to use LiveCode > Cc: panagiotis merakos > Subject: [ANN] Important: New release of LiveCode 8.1.6 > > Hi all, > > Since the week beginning 21st August 2017, LiveCode iOS apps are being rejected by iTunes Connect due to 'invalid binary'. It turns out that Apple have upgraded the tools they use to analyse binaries, and this has shown an error in the Mach-O structure of the 64-bit slice. The version of otool with Xcode 6.x (on 10.9) does not show a problem, but newer versions do. > > For this reason, we have built a new version of LiveCode 8.1.6 that addresses this issue. > > So if you have already installed the original LiveCode 8.1.6 and are affected by this issue, please visit now > > http://downloads.livecode.com/livecode/ > > and download the latest 8.1.6 (STABLE), released on the 31st of August. > > Best regards, > The LiveCode Team > ? From jonathandlynch at gmail.com Thu Aug 31 10:22:55 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Thu, 31 Aug 2017 10:22:55 -0400 Subject: Does exporting a snapshot from a rect work on mobile? In-Reply-To: References: <47272639-0763-4275-903C-221E7C520681@gmail.com> <408C7788-D745-42D9-BB80-96B2CEBFABF7@livecode.org> <77bb60455484b349449e7abeb38f3f76@livecode.com> <98ACC448-A52E-435B-88FD-8812DF522A11@gmail.com> Message-ID: <5337409B-2194-474C-9A82-CDBCB9452E22@gmail.com> I have not tried that - wow, that could really help. I will check later today! Sent from my iPhone > On Aug 31, 2017, at 9:51 AM, Mark Waddingham via use-livecode wrote: > >> On 2017-08-31 15:34, jonathandlynch at gmail.com wrote: >> I can work with getting a snapshot just from the browser widget, for >> my particular case. As long as it also includes the keyboard in the >> image. > > Have you tried 'the [[effective] working] screenRect'? > > I think 'the effect working screenRect' should give you the portion of the screen not covered by furniture and the keyboard. > > Warmest Regards, > > Mark. > > -- > Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ > LiveCode: Everyone can create apps > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From jonathandlynch at gmail.com Thu Aug 31 10:33:33 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Thu, 31 Aug 2017 10:33:33 -0400 Subject: Does exporting a snapshot from a rect work on mobile? In-Reply-To: <5337409B-2194-474C-9A82-CDBCB9452E22@gmail.com> References: <47272639-0763-4275-903C-221E7C520681@gmail.com> <408C7788-D745-42D9-BB80-96B2CEBFABF7@livecode.org> <77bb60455484b349449e7abeb38f3f76@livecode.com> <98ACC448-A52E-435B-88FD-8812DF522A11@gmail.com> <5337409B-2194-474C-9A82-CDBCB9452E22@gmail.com> Message-ID: <1AC4703F-2C91-4D61-B98D-DC7963589836@gmail.com> Just a random comment - having the CTO of LC directly answer our questions is an incredible benefit to LC developers. Thanks Mark Sent from my iPhone > On Aug 31, 2017, at 10:22 AM, jonathandlynch at gmail.com wrote: > > I have not tried that - wow, that could really help. I will check later today! > > Sent from my iPhone > >>> On Aug 31, 2017, at 9:51 AM, Mark Waddingham via use-livecode wrote: >>> >>> On 2017-08-31 15:34, jonathandlynch at gmail.com wrote: >>> I can work with getting a snapshot just from the browser widget, for >>> my particular case. As long as it also includes the keyboard in the >>> image. >> >> Have you tried 'the [[effective] working] screenRect'? >> >> I think 'the effect working screenRect' should give you the portion of the screen not covered by furniture and the keyboard. >> >> Warmest Regards, >> >> Mark. >> >> -- >> Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ >> LiveCode: Everyone can create apps >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode From bobsneidar at iotecdigital.com Thu Aug 31 11:04:01 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Thu, 31 Aug 2017 15:04:01 +0000 Subject: livecode changes image colors without being asked to do it In-Reply-To: References: Message-ID: <531C951F-633C-418D-AA8C-F68722703C6B@iotecdigital.com> Not only that, but a PDF can have embedded objects, each with their own ICC profile. For instance, a logo should be using a saturation intent and absolute colorimetric profile to make sure the color remains constant. Think Home Depot Orange. A photograph however might need perceptual intent with relative colorimetric. A high end print controller like a Fiery or Creo can honor these embedded profiles to give you just the right output that you expect. Livecode should be able to print these kinds of PDFs because it's the pint controller that handles the RIP. I would not expect LC to be able to CREATE these PDFs however. Bob S > On Aug 31, 2017, at 04:36 , Keith Martin via use-livecode wrote: > > On 30 Aug 2017, at 15:31, Robert Brenstein via use-livecode wrote: > >> The stack is used to produce a PDF file and the printing shop requested CMYK > > A slight aside ? please forgive me. > > I teach publishing and have worked in the print industry (among others) since the 1980s. It's now the norm for printers to accept PDFs with embedded RGB images and do the colour conversion to CMYK in the final RIP stage as it's printed. This means that the actual conversion is done with settings that are most appropriate to the actual print method and device, not a generic 'make it CMYK' process. I've seen print projects go expensively wrong because of inappropriate CMYK conversion settings. > > This is often known as an RGB workflow ? although 'Hybrid workflow' is more accurate, as it's just imported images that are left in their native colour model; colour swatches should still be specified using the colour model of the intended output process. > > Having said this, the bottom line is always "ask your printer and follow their advice," not least because if something goes wrong with the colour repro they can't blame you. ;) > > k > > --- > > Keith Martin > Senior Lecturer, LCC (University of the Arts London) > President, http://IVRPA.org > http://PanoramaPhotographer.com > http://thatkeith.com > +44 (0)7909541365 From mark at livecode.com Thu Aug 31 11:07:03 2017 From: mark at livecode.com (Mark Waddingham) Date: Thu, 31 Aug 2017 16:07:03 +0100 Subject: livecode changes image colors without being asked to do it In-Reply-To: References: Message-ID: Hi Robert, Are you able to file a bug with the offending image? The engine does handle colour profiles in many cases so there may be an issue with that kind of profile (if the image has one). Of course, if the image does not have a profile then it might the engine isn't using an appropriate default. Warmest Regards, Mark. Sent from my iPhone > On 30 Aug 2017, at 13:54, Robert Brenstein via use-livecode wrote: > > I have a stack that dynamically sets the image that is displayed on a card using > > set the filename of img vImageName of stack vStackName to vFilePath > > I just encountered a problem with a new batch of jpeg files. Their colors change when they are displayed in the stack. I mean that when I open them in Preview, the color saturation and hue are different than when viewing the same pic in a stack. > > Anything I can do to avoid that or anything I can tell the graphics person to do differently when producing those files in AI? > > RObert > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From runrev at learning-insights.eu Thu Aug 31 11:46:42 2017 From: runrev at learning-insights.eu (Robert Brenstein) Date: Thu, 31 Aug 2017 17:46:42 +0200 Subject: livecode changes image colors without being asked to do it In-Reply-To: References: Message-ID: <19E43B6E-378D-49E6-8665-BBF51D10BE24@learning-insights.eu> Mark, if you follow the thread, you will find that I hit a known problem and it was remedied in a newer version of LC8. The comment/tip from Keith is quite useful since the files I produce are printed by different print shops in different countries. The shop I use locally accepts files with sRGB but warns that color might be slightly off due to conversion to CMYK. RObert On 31 Aug 2017, at 17:07, Mark Waddingham via use-livecode wrote: > Hi Robert, > > Are you able to file a bug with the offending image? > > The engine does handle colour profiles in many cases so there may be > an issue with that kind of profile (if the image has one). > > Of course, if the image does not have a profile then it might the > engine isn't using an appropriate default. > > Warmest Regards, > > Mark. > > Sent from my iPhone > >> On 30 Aug 2017, at 13:54, Robert Brenstein via use-livecode >> wrote: >> >> I have a stack that dynamically sets the image that is displayed on a >> card using >> >> set the filename of img vImageName of stack vStackName to >> vFilePath >> >> I just encountered a problem with a new batch of jpeg files. Their >> colors change when they are displayed in the stack. I mean that when >> I open them in Preview, the color saturation and hue are different >> than when viewing the same pic in a stack. >> >> Anything I can do to avoid that or anything I can tell the graphics >> person to do differently when producing those files in AI? >> >> RObert >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From colinholgate at gmail.com Thu Aug 31 11:54:52 2017 From: colinholgate at gmail.com (Colin Holgate) Date: Thu, 31 Aug 2017 08:54:52 -0700 Subject: [ANN] Important: New release of LiveCode 8.1.6 In-Reply-To: References: Message-ID: <8B29AB1C-FAE9-4EE4-9387-8E03D474F292@gmail.com> Is there anything that can be done in Xcode 8 to make it work for other versions of LiveCode? > On Aug 31, 2017, at 3:42 AM, panagiotis merakos via use-livecode wrote: > > Hi all, > > Since the week beginning 21st August 2017, LiveCode iOS apps are being > rejected by iTunes Connect due to 'invalid binary'. It turns out that Apple > have upgraded the tools they use to analyse binaries, and this has shown an > error in the Mach-O structure of the 64-bit slice. The version of otool > with Xcode 6.x (on 10.9) does not show a problem, but newer versions do. > > For this reason, we have built a new version of LiveCode 8.1.6 that > addresses this issue. > > So if you have already installed the original LiveCode 8.1.6 and are > affected by this issue, please visit now > > http://downloads.livecode.com/livecode/ > > and download the latest 8.1.6 (STABLE), released on the 31st of August. > > Best regards, > The LiveCode Team From mark at livecode.com Thu Aug 31 11:55:23 2017 From: mark at livecode.com (Mark Waddingham) Date: Thu, 31 Aug 2017 17:55:23 +0200 Subject: livecode changes image colors without being asked to do it In-Reply-To: <19E43B6E-378D-49E6-8665-BBF51D10BE24@learning-insights.eu> References: <19E43B6E-378D-49E6-8665-BBF51D10BE24@learning-insights.eu> Message-ID: <8f16e9860f84b7a1c9dd757cd02482a0@livecode.com> On 2017-08-31 17:46, Robert Brenstein via use-livecode wrote: > Mark, if you follow the thread, you will find that I hit a known > problem and it was remedied in a newer version of LC8. The comment/tip > from Keith is quite useful since the files I produce are printed by > different print shops in different countries. The shop I use locally > accepts files with sRGB but warns that color might be slightly off due > to conversion to CMYK. That's why I was intrigued - I inferred that your fix was to use an sRGB profile in the JPEGs rather than CMYK. However, there still sounds like an issue somewhere - the engine should cope with CMYK, so assuming there is a profile in the JPEG for CMYK it should display similar to Preview. I know CMYK JPEGs are a bit gnarly so having an example which doesn't work quite right might help them work a little better and more consistent generally. Of course, I could have misunderstood entirely! Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From waprothero at gmail.com Thu Aug 31 12:10:14 2017 From: waprothero at gmail.com (William Prothero) Date: Thu, 31 Aug 2017 09:10:14 -0700 Subject: LC and OneSignal In-Reply-To: References: Message-ID: <76B1E6DA-ABAB-4610-B922-BEAC67CCE281@gmail.com> Folks: Implementing onesignal push notification in an app sounds very useful to me for an emergency alert system I?m developing for my local community (for free). I can see that a lot of the implementation, for me, will take a lot of head scratching and a large time commitment for me to implement with unfamiliar API?s. If anyone has a skeleton implementation they would be willing to share, I would be very grateful.? As an aside, I noticed that the free service means you are sharing your user data with them. You pay if you want it private. Best, Bill > On Aug 30, 2017, at 9:03 PM, Jose Enrique Montero via use-livecode wrote: > > Hello Dan ! > > > Could you implement it via API onesignal? > > pushNotificationRegistered in livecode > > and > > post like https://documentation.onesignal.com/reference#add-a-device ? > > > best regard > > Jose Montero > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From sean at pidigital.co.uk Thu Aug 31 12:15:41 2017 From: sean at pidigital.co.uk (Sean Cole (Pi)) Date: Thu, 31 Aug 2017 17:15:41 +0100 Subject: [ANN] Important: New release of LiveCode 8.1.6 In-Reply-To: <8B29AB1C-FAE9-4EE4-9387-8E03D474F292@gmail.com> References: <8B29AB1C-FAE9-4EE4-9387-8E03D474F292@gmail.com> Message-ID: Put it to one side and use another version. That's about all you can do. Sean Cole *Pi Digital Productions Ltd* 'Don't try to think outside the box. Just remember the truth: There is no box!' 'For then you realise it is not the box you are trying to look outside of, but it is yourself!' eMail Ts & Cs Pi Digital Productions Ltd is a UK registered limited company, no. 5255609 On 31 August 2017 at 16:54, Colin Holgate via use-livecode < use-livecode at lists.runrev.com> wrote: > Is there anything that can be done in Xcode 8 to make it work for other > versions of LiveCode? > > > > On Aug 31, 2017, at 3:42 AM, panagiotis merakos via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > > Hi all, > > > > Since the week beginning 21st August 2017, LiveCode iOS apps are being > > rejected by iTunes Connect due to 'invalid binary'. It turns out that > Apple > > have upgraded the tools they use to analyse binaries, and this has shown > an > > error in the Mach-O structure of the 64-bit slice. The version of otool > > with Xcode 6.x (on 10.9) does not show a problem, but newer versions do. > > > > For this reason, we have built a new version of LiveCode 8.1.6 that > > addresses this issue. > > > > So if you have already installed the original LiveCode 8.1.6 and are > > affected by this issue, please visit now > > > > http://downloads.livecode.com/livecode/ > > > > and download the latest 8.1.6 (STABLE), released on the 31st of August. > > > > Best regards, > > The LiveCode Team > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From jonathandlynch at gmail.com Thu Aug 31 12:19:17 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Thu, 31 Aug 2017 12:19:17 -0400 Subject: LC and OneSignal In-Reply-To: <76B1E6DA-ABAB-4610-B922-BEAC67CCE281@gmail.com> References: <76B1E6DA-ABAB-4610-B922-BEAC67CCE281@gmail.com> Message-ID: <0FA1233A-EB92-4269-9C8E-35BDAB81B295@gmail.com> Hi Bill, Augmented Earth includes in-app messaging. I am going to share the code before my presentation on September 21. I could also directly share the database code with you. It seems that you are not looking to set up a server, but if you go that way, you are welcome to use my code. J Sent from my iPhone > On Aug 31, 2017, at 12:10 PM, William Prothero via use-livecode wrote: > > Folks: > Implementing onesignal push notification in an app sounds very useful to me for an emergency alert system I?m developing for my local community (for free). I can see that a lot of the implementation, for me, will take a lot of head scratching and a large time commitment for me to implement with unfamiliar API?s. If anyone has a skeleton implementation they would be willing to share, I would be very grateful.? > > As an aside, I noticed that the free service means you are sharing your user data with them. You pay if you want it private. > > Best, > Bill > >> On Aug 30, 2017, at 9:03 PM, Jose Enrique Montero via use-livecode wrote: >> >> Hello Dan ! >> >> >> Could you implement it via API onesignal? >> >> pushNotificationRegistered in livecode >> >> and >> >> post like https://documentation.onesignal.com/reference#add-a-device ? >> >> >> best regard >> >> Jose Montero >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From runrev at learning-insights.eu Thu Aug 31 12:22:39 2017 From: runrev at learning-insights.eu (Robert Brenstein) Date: Thu, 31 Aug 2017 18:22:39 +0200 Subject: livecode changes image colors without being asked to do it In-Reply-To: <8f16e9860f84b7a1c9dd757cd02482a0@livecode.com> References: <19E43B6E-378D-49E6-8665-BBF51D10BE24@learning-insights.eu> <8f16e9860f84b7a1c9dd757cd02482a0@livecode.com> Message-ID: As Panos wrote: CMYK images should display correctly if you are using LC >=8.1.3: I am using 7.1.3. This is what I meant that this was a known problem. I just fetched 8.1.6 to check but I won?t habe time to do it until next week. Robert On 31 Aug 2017, at 17:55, Mark Waddingham via use-livecode wrote: > That's why I was intrigued - I inferred that your fix was to use an > sRGB profile in the JPEGs rather than CMYK. > > However, there still sounds like an issue somewhere - the engine > should cope with CMYK, so assuming there is a profile in the JPEG for > CMYK it should display similar to Preview. I know CMYK JPEGs are a bit > gnarly so having an example which doesn't work quite right might help > them work a little better and more consistent generally. > > Of course, I could have misunderstood entirely! > > Warmest Regards, > > Mark. From mark at livecode.com Thu Aug 31 12:25:16 2017 From: mark at livecode.com (Mark Waddingham) Date: Thu, 31 Aug 2017 18:25:16 +0200 Subject: livecode changes image colors without being asked to do it In-Reply-To: References: <19E43B6E-378D-49E6-8665-BBF51D10BE24@learning-insights.eu> <8f16e9860f84b7a1c9dd757cd02482a0@livecode.com> Message-ID: <120bf3cbc6d93eaf2c7bcd4de386d360@livecode.com> On 2017-08-31 18:22, Robert Brenstein via use-livecode wrote: > As Panos wrote: CMYK images should display correctly if you are using > LC >=8.1.3: > I am using 7.1.3. This is what I meant that this was a known problem. > I just fetched 8.1.6 to check but I won?t habe time to do it until next > week. Oops - I missed that email of Panos's - I thought something like this sounded familiar. Anyway, keep us posted on how you get on - hopefully that fix will solve the problem for you. Warmest Regards, Mark. -- Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ LiveCode: Everyone can create apps From ahsoftware at sonic.net Thu Aug 31 15:38:21 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Thu, 31 Aug 2017 12:38:21 -0700 Subject: OT: Texas flooding Message-ID: <4ce957df-a0ee-1c9d-38dc-8be25fc8b455@sonic.net> It has been pointed out to me that if you have Rewards points on Southwest Airlines, you can log onto your account on their website and donate them to one of several charity groups for Hurricane Harvey flood relief. I just donated my points to United Hands. -- Mark Wieder ahsoftware at gmail.com From waprothero at gmail.com Thu Aug 31 16:47:48 2017 From: waprothero at gmail.com (William Prothero) Date: Thu, 31 Aug 2017 13:47:48 -0700 Subject: LC and OneSignal In-Reply-To: <0FA1233A-EB92-4269-9C8E-35BDAB81B295@gmail.com> References: <76B1E6DA-ABAB-4610-B922-BEAC67CCE281@gmail.com> <0FA1233A-EB92-4269-9C8E-35BDAB81B295@gmail.com> Message-ID: Jonathon: Thanks for the offer. I?m trying to prioritize my effort on this free, but important app, and don?t want to spend the effort to set up a server. One thing I realized that the text messaging app (on iOS at least) does do a notification when a message comes in. That may be enough for my needs. I am thinking about specific notifications to my app, though. Best, Bill > On Aug 31, 2017, at 9:19 AM, Jonathan Lynch via use-livecode wrote: > > Hi Bill, > > Augmented Earth includes in-app messaging. I am going to share the code before my presentation on September 21. I could also directly share the database code with you. > > It seems that you are not looking to set up a server, but if you go that way, you are welcome to use my code. > > J > > Sent from my iPhone > >> On Aug 31, 2017, at 12:10 PM, William Prothero via use-livecode wrote: >> >> Folks: >> Implementing onesignal push notification in an app sounds very useful to me for an emergency alert system I?m developing for my local community (for free). I can see that a lot of the implementation, for me, will take a lot of head scratching and a large time commitment for me to implement with unfamiliar API?s. If anyone has a skeleton implementation they would be willing to share, I would be very grateful.? >> >> As an aside, I noticed that the free service means you are sharing your user data with them. You pay if you want it private. >> >> Best, >> Bill >> >>> On Aug 30, 2017, at 9:03 PM, Jose Enrique Montero via use-livecode wrote: >>> >>> Hello Dan ! >>> >>> >>> Could you implement it via API onesignal? >>> >>> pushNotificationRegistered in livecode >>> >>> and >>> >>> post like https://documentation.onesignal.com/reference#add-a-device ? >>> >>> >>> best regard >>> >>> Jose Montero >>> _______________________________________________ >>> use-livecode mailing list >>> use-livecode at lists.runrev.com >>> Please visit this url to subscribe, unsubscribe and manage your subscription preferences: >>> http://lists.runrev.com/mailman/listinfo/use-livecode >> >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From christer at mindcrea.com Thu Aug 31 16:58:57 2017 From: christer at mindcrea.com (=?utf-8?Q?Pyyhti=C3=A4_Christer?=) Date: Thu, 31 Aug 2017 23:58:57 +0300 Subject: Moving up from LC V6/V7 towards the current versions Message-ID: At the last LC V6 and early V7 versions I built a mobile (Android) application (getDealDone, gDD) working with the On-Rev-backend working real-time with (Google) app-store for subscription registration. I think the last version, which still works, was updated for about two years ago. It might be off the store, please tell if you want to hack with it. At the time of the development the important factors were: - Just LiveCode only, every line both in the device and in the server - I could shift any function to be done at the server from the mobile device or vice versa - - there were many functions this way "interchangeable"; could move any action to perform either in the device or in the server - - SQL interfaces were equal in the device (to SGLite) and in the server (mySQL) - - security functions were equal in server and in the devices - - communication with app-store (Google) was well defined (but not well documented in LC), and set to work well - scaling of the user interface was to be done by the application, not leaning on LC scaling - got icons from outside, did some own coarse ones myself - make sure the all-newest tricks were not used, but leaned on certainly proven self made functions It was surprising that with very intense crypt/decrypt functions LC V6/V7 performs very, very well; obviously any small improvement is welcome, but can survive without it. Now the question is, what does LC V8.6 (the latest) add to make the app revisit worth while (besides all the wrong design decisions with U/I etc)? My wish list #1 would be exactly equal handling of Android, Apple, XX app-store API's and device functions, icons etc. #2 Icon creating add-on (don't want to by $1K Adobe SW for it); #3 Equal API's for mySQL and the other main free SQL offerings like MarieDB and any DBMS #4 A way to make reviewing of developed applications with LC specialists easier (read less ? heavy; both parties would get benefit) Just thoughts but please tell your reaction. christer PS. My application sold 0 (zero) units. But it is a great one, anyway. Had a lot of fun writing 10K+ lines of pure LC code I still can read. From capellan2000 at gmail.com Thu Aug 31 17:59:22 2017 From: capellan2000 at gmail.com (Alejandro Tejada) Date: Thu, 31 Aug 2017 17:59:22 -0400 Subject: webP and webM support in LiveCode Message-ID: > Anyone interested in the topic of image optimization > could learn a lot from this webpage too: > https://developers.google.com/web/fundamentals/performance/optimizing-content-efficiency/image-optimization Check this useful information about two new image compression file formats: BPG and FLIF https://bellard.org/bpg/ http://flif.info/index.html Al From bobsneidar at iotecdigital.com Thu Aug 31 18:37:44 2017 From: bobsneidar at iotecdigital.com (Bob Sneidar) Date: Thu, 31 Aug 2017 22:37:44 +0000 Subject: Drag Drop Revisited Message-ID: <6BD8820A-1BD2-4F7D-87E3-BA07656D5795@iotecdigital.com> Has any MacOS X developers implemented Drag Drop in a desktop app? Do you drag and drop text from another app into LC fields? Have you ever noticed when returning to LC that the window you dragged data into is unresponsive until you click the title bar or move the window or some such action like that? I'd like to hear from you. Bob S From jonathandlynch at gmail.com Thu Aug 31 18:41:23 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Thu, 31 Aug 2017 18:41:23 -0400 Subject: Does exporting a snapshot from a rect work on mobile? In-Reply-To: <1AC4703F-2C91-4D61-B98D-DC7963589836@gmail.com> References: <47272639-0763-4275-903C-221E7C520681@gmail.com> <408C7788-D745-42D9-BB80-96B2CEBFABF7@livecode.org> <77bb60455484b349449e7abeb38f3f76@livecode.com> <98ACC448-A52E-435B-88FD-8812DF522A11@gmail.com> <5337409B-2194-474C-9A82-CDBCB9452E22@gmail.com> <1AC4703F-2C91-4D61-B98D-DC7963589836@gmail.com> Message-ID: <5755585D-5A46-4CB3-B2A8-5837BF8E27BA@gmail.com> Hi Mark, Unfortunately, the screen rect and the effective working screen rect return the exact same results on this Android device - 0,0,800,1280. Do you have any other suggestions for determining the keyboard height on Android? I am willing to pursue my hack, but it is a pretty rough hack. Sent from my iPhone > On Aug 31, 2017, at 10:33 AM, jonathandlynch at gmail.com wrote: > > Just a random comment - having the CTO of LC directly answer our questions is an incredible benefit to LC developers. > > Thanks Mark > > Sent from my iPhone > >> On Aug 31, 2017, at 10:22 AM, jonathandlynch at gmail.com wrote: >> >> I have not tried that - wow, that could really help. I will check later today! >> >> Sent from my iPhone >> >>>> On Aug 31, 2017, at 9:51 AM, Mark Waddingham via use-livecode wrote: >>>> >>>> On 2017-08-31 15:34, jonathandlynch at gmail.com wrote: >>>> I can work with getting a snapshot just from the browser widget, for >>>> my particular case. As long as it also includes the keyboard in the >>>> image. >>> >>> Have you tried 'the [[effective] working] screenRect'? >>> >>> I think 'the effect working screenRect' should give you the portion of the screen not covered by furniture and the keyboard. >>> >>> Warmest Regards, >>> >>> Mark. >>> >>> -- >>> Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ >>> LiveCode: Everyone can create apps >>> >>> _______________________________________________ >>> use-livecode mailing list >>> use-livecode at lists.runrev.com >>> Please visit this url to subscribe, unsubscribe and manage your subscription preferences: >>> http://lists.runrev.com/mailman/listinfo/use-livecode From ahsoftware at sonic.net Thu Aug 31 19:06:14 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Thu, 31 Aug 2017 16:06:14 -0700 Subject: Does exporting a snapshot from a rect work on mobile? In-Reply-To: <1AC4703F-2C91-4D61-B98D-DC7963589836@gmail.com> References: <47272639-0763-4275-903C-221E7C520681@gmail.com> <408C7788-D745-42D9-BB80-96B2CEBFABF7@livecode.org> <77bb60455484b349449e7abeb38f3f76@livecode.com> <98ACC448-A52E-435B-88FD-8812DF522A11@gmail.com> <5337409B-2194-474C-9A82-CDBCB9452E22@gmail.com> <1AC4703F-2C91-4D61-B98D-DC7963589836@gmail.com> Message-ID: <8868e3be-298e-0812-0124-05644429e513@sonic.net> On 08/31/2017 07:33 AM, Jonathan Lynch via use-livecode wrote: > Just a random comment - having the CTO of LC directly answer our questions is an incredible benefit to LC developers. ...and not just answering questions, but expounding on the reasoning behind existing features/bugs and brainstorming about work in progress and ideas for new features. In my experience this level of support is unheard of practially anywhere else. I've gotten spoiled by it. -- Mark Wieder ahsoftware at gmail.com From runrev at learning-insights.eu Thu Aug 31 19:11:18 2017 From: runrev at learning-insights.eu (Robert Brenstein) Date: Fri, 01 Sep 2017 01:11:18 +0200 Subject: livecode changes image colors without being asked to do it In-Reply-To: <120bf3cbc6d93eaf2c7bcd4de386d360@livecode.com> References: <19E43B6E-378D-49E6-8665-BBF51D10BE24@learning-insights.eu> <8f16e9860f84b7a1c9dd757cd02482a0@livecode.com> <120bf3cbc6d93eaf2c7bcd4de386d360@livecode.com> Message-ID: <1AD2E747-75E6-4454-92FF-4BC9FDFBB000@learning-insights.eu> I just tested this in LC 8.1.6 and it shows the same problem as 7.1.3. I filed a bug report for the team to check into this, including the files. Bug 20316. Robert On 31 Aug 2017, at 18:25, Mark Waddingham via use-livecode wrote: > On 2017-08-31 18:22, Robert Brenstein via use-livecode wrote: >> As Panos wrote: CMYK images should display correctly if you are using >> LC >=8.1.3: >> I am using 7.1.3. This is what I meant that this was a known problem. >> I just fetched 8.1.6 to check but I won?t habe time to do it until >> next week. > > Oops - I missed that email of Panos's - I thought something like this > sounded familiar. > > Anyway, keep us posted on how you get on - hopefully that fix will > solve the problem for you. > > Warmest Regards, > > Mark. > > -- > Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ > LiveCode: Everyone can create apps > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From ahsoftware at sonic.net Thu Aug 31 19:14:36 2017 From: ahsoftware at sonic.net (Mark Wieder) Date: Thu, 31 Aug 2017 16:14:36 -0700 Subject: Does exporting a snapshot from a rect work on mobile? In-Reply-To: <1AC4703F-2C91-4D61-B98D-DC7963589836@gmail.com> References: <47272639-0763-4275-903C-221E7C520681@gmail.com> <408C7788-D745-42D9-BB80-96B2CEBFABF7@livecode.org> <77bb60455484b349449e7abeb38f3f76@livecode.com> <98ACC448-A52E-435B-88FD-8812DF522A11@gmail.com> <5337409B-2194-474C-9A82-CDBCB9452E22@gmail.com> <1AC4703F-2C91-4D61-B98D-DC7963589836@gmail.com> Message-ID: <570ae388-dfa0-370e-3ec8-b1587dfef211@sonic.net> On 08/31/2017 07:33 AM, Jonathan Lynch via use-livecode wrote: > Just a random comment - having the CTO of LC directly answer our questions is an incredible benefit to LC developers. I also want to give a shout out to the supportive community here. This is by far the best online community I've ever had the honor of being a part of. The level of paying things forward is outstanding. -- Mark Wieder ahsoftware at gmail.com From jonathandlynch at gmail.com Thu Aug 31 20:27:36 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Thu, 31 Aug 2017 20:27:36 -0400 Subject: Does exporting a snapshot from a rect work on mobile? In-Reply-To: <570ae388-dfa0-370e-3ec8-b1587dfef211@sonic.net> References: <47272639-0763-4275-903C-221E7C520681@gmail.com> <408C7788-D745-42D9-BB80-96B2CEBFABF7@livecode.org> <77bb60455484b349449e7abeb38f3f76@livecode.com> <98ACC448-A52E-435B-88FD-8812DF522A11@gmail.com> <5337409B-2194-474C-9A82-CDBCB9452E22@gmail.com> <1AC4703F-2C91-4D61-B98D-DC7963589836@gmail.com> <570ae388-dfa0-370e-3ec8-b1587dfef211@sonic.net> Message-ID: <8D914337-651B-4094-96EA-3EA9DDA0D6DA@gmail.com> Yes - it makes me want to share whatever I can. Sent from my iPhone > On Aug 31, 2017, at 7:14 PM, Mark Wieder via use-livecode wrote: > >> On 08/31/2017 07:33 AM, Jonathan Lynch via use-livecode wrote: >> Just a random comment - having the CTO of LC directly answer our questions is an incredible benefit to LC developers. > > I also want to give a shout out to the supportive community here. This is by far the best online community I've ever had the honor of being a part of. The level of paying things forward is outstanding. > > -- > Mark Wieder > ahsoftware at gmail.com > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From sean at pidigital.co.uk Thu Aug 31 20:34:31 2017 From: sean at pidigital.co.uk (Sean Cole (Pi)) Date: Fri, 1 Sep 2017 01:34:31 +0100 Subject: livecode changes image colors without being asked to do it In-Reply-To: <1AD2E747-75E6-4454-92FF-4BC9FDFBB000@learning-insights.eu> References: <19E43B6E-378D-49E6-8665-BBF51D10BE24@learning-insights.eu> <8f16e9860f84b7a1c9dd757cd02482a0@livecode.com> <120bf3cbc6d93eaf2c7bcd4de386d360@livecode.com> <1AD2E747-75E6-4454-92FF-4BC9FDFBB000@learning-insights.eu> Message-ID: Hi Robert I have looked at this and it is reacting this way because a correct CMYK colorspace profile has not been embedded into the jpeg file. LiveCode, therefore, has no idea how to interpret the colors and handles them in an almost raw state oversaturating them. Adding the closest profile to its natural state helps, in this instance, US Web Coated (SWOP) v2. I've attached another source jpg to test with which has this embedded profile. http://quality.livecode.com/show_bug.cgi?id=20316 Sean Cole *Pi Digital Productions Ltd* 'Don't try to think outside the box. Just remember the truth: There is no box!' 'For then you realise it is not the box you are trying to look outside of, but it is yourself!' eMail Ts & Cs Pi Digital Productions Ltd is a UK registered limited company, no. 5255609 On 1 September 2017 at 00:11, Robert Brenstein via use-livecode < use-livecode at lists.runrev.com> wrote: > I just tested this in LC 8.1.6 and it shows the same problem as 7.1.3. I > filed a bug report for the team to check into this, including the files. > Bug 20316. > > Robert > > > On 31 Aug 2017, at 18:25, Mark Waddingham via use-livecode wrote: > > On 2017-08-31 18:22, Robert Brenstein via use-livecode wrote: >> >>> As Panos wrote: CMYK images should display correctly if you are using >>> LC >=8.1.3: >>> I am using 7.1.3. This is what I meant that this was a known problem. >>> I just fetched 8.1.6 to check but I won?t habe time to do it until next >>> week. >>> >> >> Oops - I missed that email of Panos's - I thought something like this >> sounded familiar. >> >> Anyway, keep us posted on how you get on - hopefully that fix will solve >> the problem for you. >> >> Warmest Regards, >> >> Mark. >> >> -- >> Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/ >> LiveCode: Everyone can create apps >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From jonathandlynch at gmail.com Thu Aug 31 20:51:26 2017 From: jonathandlynch at gmail.com (jonathandlynch at gmail.com) Date: Thu, 31 Aug 2017 20:51:26 -0400 Subject: Does exporting a snapshot from a rect work on mobile? In-Reply-To: <8D914337-651B-4094-96EA-3EA9DDA0D6DA@gmail.com> References: <47272639-0763-4275-903C-221E7C520681@gmail.com> <408C7788-D745-42D9-BB80-96B2CEBFABF7@livecode.org> <77bb60455484b349449e7abeb38f3f76@livecode.com> <98ACC448-A52E-435B-88FD-8812DF522A11@gmail.com> <5337409B-2194-474C-9A82-CDBCB9452E22@gmail.com> <1AC4703F-2C91-4D61-B98D-DC7963589836@gmail.com> <570ae388-dfa0-370e-3ec8-b1587dfef211@sonic.net> <8D914337-651B-4094-96EA-3EA9DDA0D6DA@gmail.com> Message-ID: <2B17862F-56D3-4ECF-8E5F-A41DB3EF0D77@gmail.com> A question for Mark Waddingham... Mark, in my app, in the place in question, the keyboard is activated by a browser widget. Is it possible that this means it is not sending a signal to LC to update the value of the effective working screen rect? Sent from my iPhone > On Aug 31, 2017, at 8:27 PM, jonathandlynch at gmail.com wrote: > > Yes - it makes me want to share whatever I can. > > > Sent from my iPhone > >>> On Aug 31, 2017, at 7:14 PM, Mark Wieder via use-livecode wrote: >>> >>> On 08/31/2017 07:33 AM, Jonathan Lynch via use-livecode wrote: >>> Just a random comment - having the CTO of LC directly answer our questions is an incredible benefit to LC developers. >> >> I also want to give a shout out to the supportive community here. This is by far the best online community I've ever had the honor of being a part of. The level of paying things forward is outstanding. >> >> -- >> Mark Wieder >> ahsoftware at gmail.com >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode at lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode From capellan2000 at gmail.com Thu Aug 31 20:53:57 2017 From: capellan2000 at gmail.com (Alejandro Tejada) Date: Thu, 31 Aug 2017 20:53:57 -0400 Subject: OT: error messages Message-ID: on Wed, 30 Aug 2017, Ralph DiMola wrote: > In 1975 a few of us were huddled around the console > of an IBM 1130 trying to figure out the new command > line text editor(Cytos). The error messages were less > than helpful(much less) so at one point in frustration > we typed "f*** you". Cytos replied "Same to you" and > we all fell on the floor laughing! Oddly enough, my first contact with Windows was helping a neighbor to understand the sparse and sometimes unintelligible error messages from his music applications that refused to open after installing another music application. I used Macintosh at home and in my work, so Windows computers were a real novelty at least for me. Took some time for him to understand that it was himself that have given permission to the most recent application to modify the computer to assure only his own functionality. You have no idea about all the suffering that my neighbor had to endure using Windows 95 (later 98) but his computer life improved vastly after he buy a new computer (2002) with a new OS: Windows XP >From his experience, I learned that Windows works better (and more reliable) when you use it as a Workstation, but still today (2017), too many computer users still employs their PC as experimental devices, where they install any kind of cards, devices, drivers and programs with unpredictable consequences. Who knows... If the money of my first computer have not been stolen (money for a Commodore Amiga) maybe I have never had the chance to use a Mac and learn about HyperCard, MetaCard and LiveCode. If I have never helped my neighbor with his suffering, maybe I have never learn about Xara (the fastest design software in any platform) and learned to read very carefully the software manuals before installing and using any software in any computer. All this previous knowledge have been really useful and have made a lot easier to learn Ubuntu Linux. Al From terry.judd at unimelb.edu.au Thu Aug 31 21:02:00 2017 From: terry.judd at unimelb.edu.au (Terry Judd) Date: Fri, 1 Sep 2017 01:02:00 +0000 Subject: Displayed publication date of LC iOS apps in iTunes Message-ID: This is something that I?ve been wondering about for a while. Not a problem as such but it looks odd. I develop all my apps using an enterprise iOS developer license so it might be that it is peculiar to that license type but I don?t have anything to compare it to. Anyway, when I install one of my apps onto an iOS device and connect it to iTunes and view the list of apps either on or available to install on the device then the date of the app always shows up as 1/01/1904 (I?m in Australia so that?s dd/mm/yyyy format). Does anyone else see this, and is there a way to change it to a more sensible value? Terry... From jonathandlynch at gmail.com Thu Aug 31 21:02:53 2017 From: jonathandlynch at gmail.com (Jonathan Lynch) Date: Thu, 31 Aug 2017 21:02:53 -0400 Subject: Does exporting a snapshot from a rect work on mobile? In-Reply-To: <2B17862F-56D3-4ECF-8E5F-A41DB3EF0D77@gmail.com> References: <47272639-0763-4275-903C-221E7C520681@gmail.com> <408C7788-D745-42D9-BB80-96B2CEBFABF7@livecode.org> <77bb60455484b349449e7abeb38f3f76@livecode.com> <98ACC448-A52E-435B-88FD-8812DF522A11@gmail.com> <5337409B-2194-474C-9A82-CDBCB9452E22@gmail.com> <1AC4703F-2C91-4D61-B98D-DC7963589836@gmail.com> <570ae388-dfa0-370e-3ec8-b1587dfef211@sonic.net> <8D914337-651B-4094-96EA-3EA9DDA0D6DA@gmail.com> <2B17862F-56D3-4ECF-8E5F-A41DB3EF0D77@gmail.com> Message-ID: Actually, never mind, that cannot be it. I tried the follow script: on mouseUp create field "test height" select after field "test height" send getEWSR to me in 1 second end mouseUp on getEWSR answer the effective working screenrect delete field "test height" end getEWSR it still returns the same screenrect that I get without using "effect working", which is the screenrect of the device. Any other ideas? On Thu, Aug 31, 2017 at 8:51 PM, wrote: > A question for Mark Waddingham... > > Mark, in my app, in the place in question, the keyboard is activated by a > browser widget. Is it possible that this means it is not sending a signal > to LC to update the value of the effective working screen rect? > > Sent from my iPhone > > > On Aug 31, 2017, at 8:27 PM, jonathandlynch at gmail.com wrote: > > > > Yes - it makes me want to share whatever I can. > > > > > > Sent from my iPhone > > > >>> On Aug 31, 2017, at 7:14 PM, Mark Wieder via use-livecode < > use-livecode at lists.runrev.com> wrote: > >>> > >>> On 08/31/2017 07:33 AM, Jonathan Lynch via use-livecode wrote: > >>> Just a random comment - having the CTO of LC directly answer our > questions is an incredible benefit to LC developers. > >> > >> I also want to give a shout out to the supportive community here. This > is by far the best online community I've ever had the honor of being a part > of. The level of paying things forward is outstanding. > >> > >> -- > >> Mark Wieder > >> ahsoftware at gmail.com > >> > >> _______________________________________________ > >> use-livecode mailing list > >> use-livecode at lists.runrev.com > >> Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > >> http://lists.runrev.com/mailman/listinfo/use-livecode > -- Do all things with love From capellan2000 at gmail.com Thu Aug 31 21:19:26 2017 From: capellan2000 at gmail.com (Alejandro Tejada) Date: Thu, 31 Aug 2017 21:19:26 -0400 Subject: Moving up from LC V6/V7 towards the current versions Message-ID: Hi Pyyhti?, I could not find your app in Google Play, but still appears in some repositories: https://androidappsapk.co/download/com.mindcrea.getdealdone/dc4dee3fb80f8ec85b26cbc0ca19ce9c/ Thanks a lot for offering your stack source. Every LiveCode developer could learn from your code. Compress your stack and upload it to Google Drive or Dropbox. An article detailing the reasons behind your design choices could make a great article for LiveCode blog and newsletter! Al From MikeKerner at roadrunner.com Thu Aug 31 21:53:26 2017 From: MikeKerner at roadrunner.com (Mike Kerner) Date: Thu, 31 Aug 2017 21:53:26 -0400 Subject: [off]macbook model Message-ID: I'm thinking of replacing my 2011 macbook air with a new macbook, but I'm torn on which one to go for. Primary uses are going to be LC development and browser goodness. Before anyone chimes in about Windoze or LInux, I already have both of those covered. Things I'm wondering about: 1) Screen real estate: Appearance aside, is there an advantage to retina? Do I get more working space if I don't go to a 15" display? 2) I don't notice the speed of this box affecting much of anything. For development, does cpu really matter? I suspect I'd do better with some more memory, but has anyone noticed that it matters? 3) I can get a 27" 5k imac pretty nicely equipped for the same price as a 15" MBP. Ignoring the portability issue, any thoughts? -- On the first day, God created the heavens and the Earth On the second day, God created the oceans. On the third day, God put the animals on hold for a few hours, and did a little diving. And God said, "This is good." From jerry at jhjensen.com Thu Aug 31 22:10:37 2017 From: jerry at jhjensen.com (Jerry Jensen) Date: Thu, 31 Aug 2017 19:10:37 -0700 Subject: [off]macbook model In-Reply-To: References: Message-ID: <3FA9F9A1-6FF3-471E-9F9D-E2377B2DC25D@jhjensen.com> Comments inline below: > On Aug 31, 2017, at 6:53 PM, Mike Kerner via use-livecode wrote: > > Things I'm wondering about: > 1) Screen real estate: Appearance aside, is there an advantage to retina? > Do I get more working space if I don't go to a 15" display? My eyesight is not great. Retina doesn?t make that much difference to me, screen size DOES. > 2) I don't notice the speed of this box affecting much of anything. For > development, does cpu really matter? I suspect I'd do better with some > more memory, but has anyone noticed that it matters? If you don?t notice speed now, probably it won?t be an issue for you. Until you use a faster one. Then, you?ll want it. I am firmly of the camp that I don?t ever want to run out of RAM. I probably overdo it. New offerings from Apple seem to have enough, which was not always true. For development & browsing, for sure 8G minimum, 16G comfortable. > 3) I can get a 27" 5k imac pretty nicely equipped for the same price as a > 15" MBP. Ignoring the portability issue, any thoughts? Portability is HUGE for me. I have 27? monitors most places I go, which may not be typical. If portability is not an issue for you, go for the iMac. That 5k screen is really beautiful, wrote the blind man . Take with salt! .Jerry From jacque at hyperactivesw.com Thu Aug 31 22:11:35 2017 From: jacque at hyperactivesw.com (J. Landman Gay) Date: Thu, 31 Aug 2017 21:11:35 -0500 Subject: Does exporting a snapshot from a rect work on mobile? In-Reply-To: References: <47272639-0763-4275-903C-221E7C520681@gmail.com> <408C7788-D745-42D9-BB80-96B2CEBFABF7@livecode.org> <77bb60455484b349449e7abeb38f3f76@livecode.com> <98ACC448-A52E-435B-88FD-8812DF522A11@gmail.com> <5337409B-2194-474C-9A82-CDBCB9452E22@gmail.com> <1AC4703F-2C91-4D61-B98D-DC7963589836@gmail.com> <570ae388-dfa0-370e-3ec8-b1587dfef211@sonic.net> <8D914337-651B-4094-96EA-3EA9DDA0D6DA@gmail.com> <2B17862F-56D3-4ECF-8E5F-A41DB3EF0D77@gmail.com> Message-ID: <15e3b352fd8.285b.5e131b4e58299f54a9f0b9c05d4f07f9@hyperactivesw.com> What happens if you check the effective working screenrect in a keyboardActivated handler? -- Jacqueline Landman Gay | jacque at hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com On August 31, 2017 8:04:45 PM Jonathan Lynch via use-livecode wrote: > Actually, never mind, that cannot be it. > > I tried the follow script: > > on mouseUp > > create field "test height" > > select after field "test height" > > send getEWSR to me in 1 second > > end mouseUp > > on getEWSR > > answer the effective working screenrect > > delete field "test height" > > end getEWSR > > > it still returns the same screenrect that I get without using "effect > working", which is the screenrect of the device. > > > Any other ideas? > > On Thu, Aug 31, 2017 at 8:51 PM, wrote: > >> A question for Mark Waddingham... >> >> Mark, in my app, in the place in question, the keyboard is activated by a >> browser widget. Is it possible that this means it is not sending a signal >> to LC to update the value of the effective working screen rect? >> >> Sent from my iPhone >> >> > On Aug 31, 2017, at 8:27 PM, jonathandlynch at gmail.com wrote: >> > >> > Yes - it makes me want to share whatever I can. >> > >> > >> > Sent from my iPhone >> > >> >>> On Aug 31, 2017, at 7:14 PM, Mark Wieder via use-livecode < >> use-livecode at lists.runrev.com> wrote: >> >>> >> >>> On 08/31/2017 07:33 AM, Jonathan Lynch via use-livecode wrote: >> >>> Just a random comment - having the CTO of LC directly answer our >> questions is an incredible benefit to LC developers. >> >> >> >> I also want to give a shout out to the supportive community here. This >> is by far the best online community I've ever had the honor of being a part >> of. The level of paying things forward is outstanding. >> >> >> >> -- >> >> Mark Wieder >> >> ahsoftware at gmail.com >> >> >> >> _______________________________________________ >> >> use-livecode mailing list >> >> use-livecode at lists.runrev.com >> >> Please visit this url to subscribe, unsubscribe and manage your >> subscription preferences: >> >> http://lists.runrev.com/mailman/listinfo/use-livecode >> > > > > -- > Do all things with love > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode From brian at milby7.com Thu Aug 31 23:13:09 2017 From: brian at milby7.com (Brian Milby) Date: Thu, 31 Aug 2017 22:13:09 -0500 Subject: [off]macbook model In-Reply-To: <3FA9F9A1-6FF3-471E-9F9D-E2377B2DC25D@jhjensen.com> References: <3FA9F9A1-6FF3-471E-9F9D-E2377B2DC25D@jhjensen.com> Message-ID: I have a late 2014 iMac (27" Retina) and really like the large screen. I'm just getting into LC, but the screen is great for having lots of stuff on screen visible at once. I do miss the portability a bit. I make do with Win laptops when away from my iMac. On Thu, Aug 31, 2017 at 9:10 PM, Jerry Jensen via use-livecode < use-livecode at lists.runrev.com> wrote: > Comments inline below: > > On Aug 31, 2017, at 6:53 PM, Mike Kerner via use-livecode < > use-livecode at lists.runrev.com> wrote: > > > > Things I'm wondering about: > > 1) Screen real estate: Appearance aside, is there an advantage to > retina? > > Do I get more working space if I don't go to a 15" display? > > My eyesight is not great. Retina doesn?t make that much difference to me, > screen size DOES. > > > 2) I don't notice the speed of this box affecting much of anything. For > > development, does cpu really matter? I suspect I'd do better with some > > more memory, but has anyone noticed that it matters? > > If you don?t notice speed now, probably it won?t be an issue for you. > Until you use a faster one. Then, you?ll want it. I am firmly of the camp > that I don?t ever want to run out of RAM. I probably overdo it. New > offerings from Apple seem to have enough, which was not always true. For > development & browsing, for sure 8G minimum, 16G comfortable. > > > 3) I can get a 27" 5k imac pretty nicely equipped for the same price as a > > 15" MBP. Ignoring the portability issue, any thoughts? > > Portability is HUGE for me. I have 27? monitors most places I go, which > may not be typical. If portability is not an issue for you, go for the > iMac. That 5k screen is really beautiful, wrote the blind man . > > Take with salt! > .Jerry > > > _______________________________________________ > use-livecode mailing list > use-livecode at lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode > From waprothero at gmail.com Thu Aug 31 23:29:56 2017 From: waprothero at gmail.com (William Prothero) Date: Thu, 31 Aug 2017 20:29:56 -0700 Subject: [off]macbook model In-Reply-To: References: Message-ID: <45E07570-B6A3-49E5-91A5-0D682B8427F9@gmail.com> I have a MacBook Pro (Retina, 15-inch, Late 2013). I have two locations that I work from. Each one has a 24? external monitor that I use as my main monitor. I also have a small 3Tb USB3 drive that I take with me. At each location I have a thunderbolt hub, display, and printer (they?re soo cheap) and backup drives. So, to switch from one location to another, all I have to do is pack up my laptop and the 3Tb drive. In a few minutes I?m set up at my new location. I haven?t found a reason to upgrade yet. Best, Bill > On Aug 31, 2017, at 6:53 PM, Mike Kerner via use-livecode wrote: > > I'm thinking of replacing my 2011 macbook air with a new macbook, but I'm > torn on which one to go for. Primary uses are going to be LC development=