LC 6.6.2, Android and 'fullscreenmode'
Moderators: FourthWorld, heatherlaine, Klaus, kevinmiller, robinmiller
-
- Posts: 192
- Joined: Tue Mar 11, 2014 12:57 pm
Re: LC 6.6.2, Android and 'fullscreenmode'
fullscreenmode exactFit is an exact fit of the stack. In my case - to create a scrolling group I had to create a big stack/card (either long or wide - for vert or horizontal scrolling). So exactFit shows you all the stack. So everything on the big stack appears at once - small.
Need something like - set the fullscreenmode of 'the visible part of a stack' to exactfit. I can dream.
Need something like - set the fullscreenmode of 'the visible part of a stack' to exactfit. I can dream.
Re: LC 6.6.2, Android and 'fullscreenmode'
Hi Newtronsis. Gotcha - understood.
Never tried to make my controls wider than the stack - I'm finding it difficult to envisage the 'why' - although the outcome is simple enough now that you've explained it.
Just musing really, maybe not much help and not having a clear visual of your project, but ... I think you're inferring (as a simple example)...
A project needs multiple controls, side-by-side, that (in effect) need a stack width of, say, 10 000 - which, of course is far to wide for any (most?) display(s) currently available...
To design this fictitious stack you need to set it's width to 10 000
Once your 'design work' is finished and you've grouped all the controls into one master scrolling group can you not then re-set the width of your stack to a more realistic figure (displaying only part of the scrolling group within it) ? Or... is that not allowed by LC / does that 'remove' the controls outside the new stack width ? Never tried any of this... and I don't really understand the whys and wherefores... but it's an interesting concept to play with... Reminds me of the lyric 'So image a mirror bigger than the room it was placed in'...
If the control types repeat (i.e. are the same) can you not limit their number and simply populate them as 'scrolling' occurs ?
Forgive me ! You've piqued my interest - I used to work with a different mobile software that allowed one to create 'SuperControls' that housed other controls. The 'other controls' were grouped and the 'SuperControl' was effectively the window into it's contents. Neat idea and useful at times - A little like LC's DataGrid - but it could run horizontally as well as vertically...
Anyways if you want to pursue it, pm me... might be worth a little more musing... On the other hand good luck, I hope you get it sorted.
Have a great weekend and thanks for your input (can't get that tune out of my head now !)
Au revoir.
Never tried to make my controls wider than the stack - I'm finding it difficult to envisage the 'why' - although the outcome is simple enough now that you've explained it.
Just musing really, maybe not much help and not having a clear visual of your project, but ... I think you're inferring (as a simple example)...
A project needs multiple controls, side-by-side, that (in effect) need a stack width of, say, 10 000 - which, of course is far to wide for any (most?) display(s) currently available...
To design this fictitious stack you need to set it's width to 10 000
Once your 'design work' is finished and you've grouped all the controls into one master scrolling group can you not then re-set the width of your stack to a more realistic figure (displaying only part of the scrolling group within it) ? Or... is that not allowed by LC / does that 'remove' the controls outside the new stack width ? Never tried any of this... and I don't really understand the whys and wherefores... but it's an interesting concept to play with... Reminds me of the lyric 'So image a mirror bigger than the room it was placed in'...
If the control types repeat (i.e. are the same) can you not limit their number and simply populate them as 'scrolling' occurs ?
Forgive me ! You've piqued my interest - I used to work with a different mobile software that allowed one to create 'SuperControls' that housed other controls. The 'other controls' were grouped and the 'SuperControl' was effectively the window into it's contents. Neat idea and useful at times - A little like LC's DataGrid - but it could run horizontally as well as vertically...
Anyways if you want to pursue it, pm me... might be worth a little more musing... On the other hand good luck, I hope you get it sorted.
Have a great weekend and thanks for your input (can't get that tune out of my head now !)
Au revoir.
I'm 'getting there'... just far too slowly !
Mac (Siera) and PC (Win7)
LiveCode 8.1.2 / 7.1.1
Mac (Siera) and PC (Win7)
LiveCode 8.1.2 / 7.1.1
Re: LC 6.6.2, Android and 'fullscreenmode'
Hi Simon,
Thanks for that...
Idea :
I guess I could...
[1] create my group of 'answer cards' on the (say) Home card and then, at run-time, copy the group to all other cards (or refine that a bit and copy as required - the first time a card is opened) ? That make sense ?
[2] create my 'answer stack's cards' the same size as my main stack's cards, placing those 'answer' card controls into the centre of each card (grouping them first for simplicity) ... then display the stack having made visible/ invisible the correct 'answer card'. That make sense ?
Which is better (given that both are possible AND that this is across platform app...) ? Refinements ? Better ideas ?
Thanks again for the help - much appreciated.
Thanks for that...
I see.... hmmm... (historically) I put them into a sub-stack because I have about 20 cards... I had no idea of the 'mobile single stack visible limitation' and seemed very wasteful to copy the final group of 'answer cards' to each of my 'main' cards - even if I could limit each groups size by removing un-required (for each specific card) 'answer cards'...Simon wrote:Well for mobile I'd change all the "answer" stacks to groups (then group them into one) of the main stack then show/hide as needed.
OK so that is a pain as then that group has to be put on all cards of the main stack, but maybe it will work for you. It's the only way to get that half card size on mobile.
SImon
Idea :
I guess I could...
[1] create my group of 'answer cards' on the (say) Home card and then, at run-time, copy the group to all other cards (or refine that a bit and copy as required - the first time a card is opened) ? That make sense ?
[2] create my 'answer stack's cards' the same size as my main stack's cards, placing those 'answer' card controls into the centre of each card (grouping them first for simplicity) ... then display the stack having made visible/ invisible the correct 'answer card'. That make sense ?
Which is better (given that both are possible AND that this is across platform app...) ? Refinements ? Better ideas ?
Thanks again for the help - much appreciated.
I'm 'getting there'... just far too slowly !
Mac (Siera) and PC (Win7)
LiveCode 8.1.2 / 7.1.1
Mac (Siera) and PC (Win7)
LiveCode 8.1.2 / 7.1.1
-
- Posts: 192
- Joined: Tue Mar 11, 2014 12:57 pm
Re: LC 6.6.2, Android and 'fullscreenmode'
I downloaded your example and tested using LC 6.7 (dp4) commerical, Windows 7, Android -Sony Xperia, and it cycles through the options OK. Though it doesn't test in landscape so I don't know how that looks. But it seems to work fine. It's hard to know 'How it should look'.
The first test build is usually slow but after that with 6.7 (dp4) it 'feels' faster. True or not I don't know.
The first test build is usually slow but after that with 6.7 (dp4) it 'feels' faster. True or not I don't know.
Re: LC 6.6.2, Android and 'fullscreenmode'
But doesn't that just make it look like the current behavior of a sub stack on mobile? I thought the goal was to make it half size?[2] create my 'answer stack's cards' the same size as my main stack's cards,...
Simon
I used to be a newbie but then I learned how to spell teh correctly and now I'm a noob!
Re: LC 6.6.2, Android and 'fullscreenmode'
Hi Simon, you're right. Tried this (very simply) this afternoon... Unsightly to he frank. I think I'll end up running with option 1 - that same one you suggested... Just need to look at how best to achieve it with minimal repeated code and overhead... Seems at the moment I'm spending a lot of time re-writing code because I didn't fully understand the implications of doing things the way I did them the first time !!!! Arghhhh !!!
Thanks for your help/advice and support - appreciated.
newtronsols
Maybe this is useless but... I don't know if you realised this :
From the dictionary : If you reduce the width of a stack, some objects may end up outside the stack window. These objects are not shown; however, they are still there, and will be displayed if you make the window wide enough.
I simply wondered whether, with the aid of a scrollbar you could effectively change the horizontal loc of grouped control wihin the stack to give it the effect of scrolling left / right...
Just my half-penny's worth / Might be worth a quick try... might not
Thanks for your help/advice and support - appreciated.
newtronsols
Maybe this is useless but... I don't know if you realised this :
From the dictionary : If you reduce the width of a stack, some objects may end up outside the stack window. These objects are not shown; however, they are still there, and will be displayed if you make the window wide enough.
I simply wondered whether, with the aid of a scrollbar you could effectively change the horizontal loc of grouped control wihin the stack to give it the effect of scrolling left / right...
Just my half-penny's worth / Might be worth a quick try... might not

I'm 'getting there'... just far too slowly !
Mac (Siera) and PC (Win7)
LiveCode 8.1.2 / 7.1.1
Mac (Siera) and PC (Win7)
LiveCode 8.1.2 / 7.1.1
Re: LC 6.6.2, Android and 'fullscreenmode'
Yes, if you set the scrollbars of the group (cards don't have scrollbars.) You'll need to set the lockloc of the group to true to prevent it from resizing the next time the card is redrawn.Traxgeek wrote: I simply wondered whether, with the aid of a scrollbar you could effectively change the horizontal loc of grouped control wihin the stack to give it the effect of scrolling left / right...
Jacqueline Landman Gay | jacque at hyperactivesw dot com
HyperActive Software | http://www.hyperactivesw.com
HyperActive Software | http://www.hyperactivesw.com
Re: LC 6.6.2, Android and 'fullscreenmode'
Hi Traxgeek,
Sorry if I'm late coming up with this idea but...
Keep your sub stacks but make their background a snapshot of the card their shown on. This way you can simulate a smaller window pop-up.
nope I've never done this, and yes I'd expect you to make the backgrounds on the fly.
Simon
Sorry if I'm late coming up with this idea but...
Keep your sub stacks but make their background a snapshot of the card their shown on. This way you can simulate a smaller window pop-up.
nope I've never done this, and yes I'd expect you to make the backgrounds on the fly.

Simon
I used to be a newbie but then I learned how to spell teh correctly and now I'm a noob!
Re: LC 6.6.2, Android and 'fullscreenmode'
Hi Simon.
Thanks for that I had the same idea about 15 minutes ago ! But immediately dismissed it as too... well.... work-around-ish ALTHOUGH, depending upon the speed - I haven't tried it (yet...) would certainly work. I was very please with myself for the idea... but then see that you'd come up with the idea an age ago... Oh well...
I have progressed a little though following our last back-n-forth (thank you)... to the point where I moved all the controls from the sub-stack to multiple groups on a new card (called crdDialogs) within my main stack... (took a while !) I then modified the hundreds of calls to the original 'sub-stack' method to handle the 'groups-on-a-local-card' method... simple enough BUT time consuming... then I hit my brick wall... and came down to earth with a bump...
The 'sub-stack' method was great (especially on desktop - Mac/PC) because :
the required dialog card popped up centrally @ 1/2 or 1/3 card size' effectively 'blocking' the calling card and pausing the function that called it. Then, upon closing, it allowed that calling function to complete - which in turn returned the user-selection, made via the dialog card, to the original card script that called the dialog pop-up function ! The calling card's script then took (still will, hopefully) whatever action was (is) required based upon the user's selection... (I hope that makes sense - pretty standard stuff, I'm sure).
I can now emulate (most of) this using a card sized group that houses an opaque label (full sized - to match the card size, then set the label's blending to 40% and place my dialog controls on top of it. Works a charm ! The card-sized group pops up when invoked and looks great / part of the card (not a sub-stack) by partially hiding the calling card with the blended label (thereby 'blocking' it and waiting for a user selection / input !. Great stuff... BUT... (as always at the moment, there's a but...)
Whilst I can detect when the User has made a selection (simple button mouseup s) and can then close the pop-up dialog 'control' (group)... what this method doesn't do is 'pause' the original / calling script... and... I'm confused as to how to handle this...
example :
--I need some user direction in some script so that, based upon the user's requirements the script can go and do one of several things... so... my example...
[1] the User hist a button to delete a file...
-- I want to make sure this isn't a mistake and user is aware of the consequences of deleting the file... so...
[2] the script fires off a 'go to dialog card on sub-stack' function...
--which effectively pauses the calling script, displays the appropriate dialog, waits whilst the user makes a selection, closes the dialog (this was the sub-stack) upon a selection being made and returns, via the function to the calling script where
[3] a decision is made, based upon the selection, to actually delete the file OR leave it be...
The problem I have is how to effect the 'pause' whilst dialog is open and then return to the calling script once the dialog closes / a selection has been made...
Make any sense ? If so, any pearls of wisdom please ???
(I'm currently thinking of re-invoking my sub-stack with the calling cards snapshot as it's background... Arghhh !)
Thanks.
Thanks for that I had the same idea about 15 minutes ago ! But immediately dismissed it as too... well.... work-around-ish ALTHOUGH, depending upon the speed - I haven't tried it (yet...) would certainly work. I was very please with myself for the idea... but then see that you'd come up with the idea an age ago... Oh well...
I have progressed a little though following our last back-n-forth (thank you)... to the point where I moved all the controls from the sub-stack to multiple groups on a new card (called crdDialogs) within my main stack... (took a while !) I then modified the hundreds of calls to the original 'sub-stack' method to handle the 'groups-on-a-local-card' method... simple enough BUT time consuming... then I hit my brick wall... and came down to earth with a bump...
The 'sub-stack' method was great (especially on desktop - Mac/PC) because :
the required dialog card popped up centrally @ 1/2 or 1/3 card size' effectively 'blocking' the calling card and pausing the function that called it. Then, upon closing, it allowed that calling function to complete - which in turn returned the user-selection, made via the dialog card, to the original card script that called the dialog pop-up function ! The calling card's script then took (still will, hopefully) whatever action was (is) required based upon the user's selection... (I hope that makes sense - pretty standard stuff, I'm sure).
I can now emulate (most of) this using a card sized group that houses an opaque label (full sized - to match the card size, then set the label's blending to 40% and place my dialog controls on top of it. Works a charm ! The card-sized group pops up when invoked and looks great / part of the card (not a sub-stack) by partially hiding the calling card with the blended label (thereby 'blocking' it and waiting for a user selection / input !. Great stuff... BUT... (as always at the moment, there's a but...)
Whilst I can detect when the User has made a selection (simple button mouseup s) and can then close the pop-up dialog 'control' (group)... what this method doesn't do is 'pause' the original / calling script... and... I'm confused as to how to handle this...
example :
--I need some user direction in some script so that, based upon the user's requirements the script can go and do one of several things... so... my example...
[1] the User hist a button to delete a file...
-- I want to make sure this isn't a mistake and user is aware of the consequences of deleting the file... so...
[2] the script fires off a 'go to dialog card on sub-stack' function...
--which effectively pauses the calling script, displays the appropriate dialog, waits whilst the user makes a selection, closes the dialog (this was the sub-stack) upon a selection being made and returns, via the function to the calling script where
[3] a decision is made, based upon the selection, to actually delete the file OR leave it be...
The problem I have is how to effect the 'pause' whilst dialog is open and then return to the calling script once the dialog closes / a selection has been made...
Make any sense ? If so, any pearls of wisdom please ???
(I'm currently thinking of re-invoking my sub-stack with the calling cards snapshot as it's background... Arghhh !)
Thanks.
I'm 'getting there'... just far too slowly !
Mac (Siera) and PC (Win7)
LiveCode 8.1.2 / 7.1.1
Mac (Siera) and PC (Win7)
LiveCode 8.1.2 / 7.1.1
Re: LC 6.6.2, Android and 'fullscreenmode'
Wouldn't the actual "delete" code be in the "answer" button?
Probably lots of work for you to make that change.
2 separate handlers in the stack script?
I just did it with globals
and in the "delete/cancel" button in the former sub stack
errr... snapshot is looking better? 
Simon
Probably lots of work for you to make that change.
2 separate handlers in the stack script?
I just did it with globals
Code: Select all
global gClick,gResponse
on mouseUp
put false into gClick
wait until gClick = true with messages
put gResponse
end mouseUp
Code: Select all
global gClick,gResponse
on mouseUp
put the short name of me into gResponse
put true into gClick
end mouseUp

Simon
I used to be a newbie but then I learned how to spell teh correctly and now I'm a noob!
Re: LC 6.6.2, Android and 'fullscreenmode'
Hi Simon....
Arghh... I'm all a dither...
I LIKE your 'wait with message' scenario
I mean, why not ? Difficult to explain and long winded BUT, doing it wrong now only takes me ages in the future and I'm TRYING to code for all platforms with a scenario I can continue to build upon in the future (not change completely !).
In effect, your 'wait with messages' is pretty much what's happening by opening a sub-stack... 'pretty' much ! Not exactly I agree BUT to all intents and purposes the calling script blocks the calling card and pauses script flow until the user has made a decision... so... 'wait with messages' once the dialog is displayed is, in my opinion, a stroke of genius...
!!
As I currently 'see' it - there are two basic methods...
[1] Use a sub-stack. An advantage here is that 'the' dialog only exists in the one place (on the sub-stack). A disadvantage is that I need to grab a snapshot and display it as a backdrop on the sub-stack (on the fly !)...
[2] Use a dialog card on the Main stack. An advantage here is I don't need a sub-stack or to muck about with snapshots (which might be quite cpu onerous - haven't tried it for speed yet). A disadvantage is that I need to manage the copying of the dialog from its 'main' card to the active/calling card as required and then delete it again upon completion (already tried and this is pretty much instant though)...
So which one ?.....
Unless you have a serious reservation I think I'm going to adopt your 'wait with messages' brainwave... I mean, all I'm doing with that is waiting for the user to make their decision... database app... nothing too serious going on in the background... seems a good cross-platform idea... any negatives ?
Thanks a mil for your ongoing time / ideas... appreciated - I'm extremely close now to having my first truly cross-platform (Win, Mac, iOS and Android) app in LC... fingers crossed...
UPDATE :
Well, so far, that's been pretty easy to update / create / modify... I note that the mouse pointer changes when the 'wait' command is invoked... Need to go look at that now - with a view to changing it back to the arrow... Generally speaking though... advancements made. Once again, thanks for the insights. Much appreciated.
Arghh... I'm all a dither...
I LIKE your 'wait with message' scenario

I mean, why not ? Difficult to explain and long winded BUT, doing it wrong now only takes me ages in the future and I'm TRYING to code for all platforms with a scenario I can continue to build upon in the future (not change completely !).
In effect, your 'wait with messages' is pretty much what's happening by opening a sub-stack... 'pretty' much ! Not exactly I agree BUT to all intents and purposes the calling script blocks the calling card and pauses script flow until the user has made a decision... so... 'wait with messages' once the dialog is displayed is, in my opinion, a stroke of genius...

As I currently 'see' it - there are two basic methods...
[1] Use a sub-stack. An advantage here is that 'the' dialog only exists in the one place (on the sub-stack). A disadvantage is that I need to grab a snapshot and display it as a backdrop on the sub-stack (on the fly !)...
[2] Use a dialog card on the Main stack. An advantage here is I don't need a sub-stack or to muck about with snapshots (which might be quite cpu onerous - haven't tried it for speed yet). A disadvantage is that I need to manage the copying of the dialog from its 'main' card to the active/calling card as required and then delete it again upon completion (already tried and this is pretty much instant though)...
So which one ?.....

Unless you have a serious reservation I think I'm going to adopt your 'wait with messages' brainwave... I mean, all I'm doing with that is waiting for the user to make their decision... database app... nothing too serious going on in the background... seems a good cross-platform idea... any negatives ?
Thanks a mil for your ongoing time / ideas... appreciated - I'm extremely close now to having my first truly cross-platform (Win, Mac, iOS and Android) app in LC... fingers crossed...
UPDATE :
Well, so far, that's been pretty easy to update / create / modify... I note that the mouse pointer changes when the 'wait' command is invoked... Need to go look at that now - with a view to changing it back to the arrow... Generally speaking though... advancements made. Once again, thanks for the insights. Much appreciated.
Last edited by Traxgeek on Thu Sep 18, 2014 12:49 am, edited 1 time in total.
I'm 'getting there'... just far too slowly !
Mac (Siera) and PC (Win7)
LiveCode 8.1.2 / 7.1.1
Mac (Siera) and PC (Win7)
LiveCode 8.1.2 / 7.1.1
Re: LC 6.6.2, Android and 'fullscreenmode'
I'm still hanging onto the sub stack and snapshot
because it's what you have already and have been working with that.
But to be sure I don't actually know which is the best way, I think it's about what you are comfortable with.
Simon
Code: Select all
on mouseUp
set the vis of the templateImage to false
import snapshot from this card
set the text of img 1 of stack "sub" to the last image --make sure img 1 is in the bottom layer
delete the last image of this card
end mouseUp
But to be sure I don't actually know which is the best way, I think it's about what you are comfortable with.
Simon
I used to be a newbie but then I learned how to spell teh correctly and now I'm a noob!
Re: LC 6.6.2, Android and 'fullscreenmode'
Thanks Simon. Brilliant.
I've tried locking the cursor prior to a wait... command but it still reverts to a watch thing...
Is this standard behaviour or should I keep playing ?
Much obliged.
I've tried locking the cursor prior to a wait... command but it still reverts to a watch thing...
Is this standard behaviour or should I keep playing ?
Much obliged.
I'm 'getting there'... just far too slowly !
Mac (Siera) and PC (Win7)
LiveCode 8.1.2 / 7.1.1
Mac (Siera) and PC (Win7)
LiveCode 8.1.2 / 7.1.1
Re: LC 6.6.2, Android and 'fullscreenmode'
No watch on my Win 7 and Mac 10.9.4 using liveCode 6.6.2.
???
???
I used to be a newbie but then I learned how to spell teh correctly and now I'm a noob!