I’m able to create FormInDialogues quite handily. And, using a global I’m able to block the Close button (forcing the user to utilize the buttons I’ve provided).
However I’m having difficulties enabling buttons on a displayed FID to display yet other FIDs. I want to force users to use my buttons on all FIDs. I can get the secondary FID to display only if I turn the global to 0 instead of 1, thus releasing my blocks on the Close button.
Ideally I’d like the secondary FID to stack on top of the existing FID. Haven’t yet seen that and intuitively I sense such is possible.
The documentation is insufficiently explicit for my addled state.
What is the technique you are using to block the Close button?
I would also like to be able to stack multiple FID’s as think it would be better for users who can get worried when the first window disapears. Recall there was a thread some time ago on this subject explaining why not possible but can’t find it at moment. Now use multiple Tabs in the original FID to simulate multiple windows.
grahamg:
What is the technique you are using to block the Close button?
I set globals.gflag to “1” immediately before displaying the FID and set it to “0” in all my buttons immediately before issuing a closeFormDialog(false) command. Finally, there’s an onHide method that sets to true if the global is 0 and false otherwise. Wish there were a more elegant structure, but this works.
grahamg:
I would also like to be able to stack multiple FID’s as think it would be better for users who can get worried when the first window disapears. Recall there was a thread some time ago on this subject explaining why not possible but can’t find it at moment. Now use multiple Tabs in the original FID to simulate multiple windows.
I strongly suspect stacking is possible. I recall a discussion of at least a year ago about how to close just the top FID and not all of them.
Morley, you can’t just do from an FID to another FID. the method is than not waiting after: application.showFormIn…
it runs trough.
The trick is, to close the first FID, than open the second, and after that, open the first again!.
It’s a small work-around.
This is discussed before on this forum, and I think/hope it is still on the whislist to fix it. If you don’t know this at first, you are pulling your hear out, and shouting: what is happing!!!
HJK:
The trick is, to close the first FID, than open the second, and after that, open the first again!. It’s a small work-around.
Rather confusing for the end user – to see the FID form they’re working on disappear just so they can have temporary access to another FID, only to come back to the original. Hmmm…
I found the reference to layered FIDs, page 147 of the Developers docs, volume2. Unless I’m misreading what’s intended in the docs.
//completely closes the form dialog including the stacked forms
application.closeFormDialog(true);
Anyone know definitively whether stacked or layered FIDs are possible in Servoy 2.2?
Rather confusing situation. I remain confused by the “stacked forms” and “closes only the last open form in the dialogue” references in the docs. And the functionality of the true and false operatives in the closeFormDialog() function.
I’m attempting to put up a FID, leaving the base form in place as visual orientation for the end user. The FID itself has buttons to present yet other FIDs for optional details and/or in context editing which ideally I’d like to have layered on top of the major FID. Simultaneously, it’s important the end user not do an end run around the buttons provided.
Is the above possible? If so, how? I’m genuinely confused. Anyone?
application.closeFormDialog(false)
will close the current (active) FID but leave any/all others open. If the current FID is the 3rd FID to be opened then ‘false’ will close the 3rd FID and display the 2nd one.
application.closeFormDialog(true)
will close ALL FID’s - in the example above it will close the current FID - No 3 - and also the No 2 and No 1 FID’s taking you back the the base Form.
There is absolution no way you can show another form in dialog on top of the other. It is not very easy for the guys of Servoy to change this I understood so it will take some time before we will have this…