OpenDCL Forums

OpenDCL => Runtime/AutoLISP => Topic started by: Derfell on March 16, 2011, 03:39:23 AM

Title: "next/back" button
Post by: Derfell on March 16, 2011, 03:39:23 AM
Good morning, i'm new with Autolisp and DCL so probably this is a stupid question but i hope you can help me. How can I realize the next and back buttons to go from one dialog to the other?
thanks
Title: Re: "next/back" button
Post by: krunch on March 16, 2011, 03:46:51 AM
Hi
I think you should clarify :
- what do you call "dialog" ? Is it a (displayed) Form ?
- what do you call "go from to" ? Give focus or display ?
Title: Re: "next/back" button
Post by: Derfell on March 16, 2011, 04:00:37 AM
Hi, i'm sorry for my bad English.
I try to clarify:
I've 2 Modal Dialogs: "a" and "b". I need to put in "a" the "next" button  to close "a" and display "b". Then i have to put in "b" the "back" button to close "b" and display "a"
Title: Re: "next/back" button
Post by: krunch on March 16, 2011, 04:45:05 AM
This is something like that (try the sample below)

But the last dcl_Form_Show doesn't work, I don't know why (I probably miss something)
May be someone will complete...

Code (autolisp) Select
(defun c:go ()
  (command "OPENDCL")
  (dcl_Project_Load "ToggleForm" T)
  (dcl_Form_Show ToggleForm_Form1)
  (princ)
)
(defun c:ToggleForm_Form1_TextButton1_OnClicked (/)
  (dcl_Form_Close ToggleForm_Form1)
  (dcl_Form_Show ToggleForm_Form2)
)
(defun c:ToggleForm_Form2_TextButton1_OnClicked (/)
  (dcl_Form_Close ToggleForm_Form2)
  (dcl_Form_Show ToggleForm_Form1) ; doesn't work :-(
)
Title: Re: "next/back" button
Post by: krunch on March 16, 2011, 05:16:33 AM
Effectively I missed something, this version works...

Code (autolisp) Select
(defun c:go (/ tmp)
  (command "OPENDCL")
  (dcl_Project_Load "ToggleForm" T)
 
  (setq tmp 1)
  (while (> tmp 0)
    (setq tmp (dcl_Form_Show "ToggleForm" (if (= tmp 1) "Form1" "Form2")))
  )
  (princ)
)
(defun c:ToggleForm_Form1_TextButton1_OnClicked (/)
  (dcl_Form_Close ToggleForm_Form1 2)
)
(defun c:ToggleForm_Form2_TextButton1_OnClicked (/)
  (dcl_Form_Close ToggleForm_Form2 1)
)
(defun c:ToggleForm_Form1_OnCancelClose (Reason /)
  (dcl_Form_Close ToggleForm_Form1 0)
)
(defun c:ToggleForm_Form2_OnCancelClose (Reason /)
  (dcl_Form_Close ToggleForm_Form2 0)
)
Title: Re: "next/back" button
Post by: Derfell on March 16, 2011, 12:25:31 PM
Thanks for your help, you're very kind. It works perfectly!