• Skip to main content
  • Skip to search
  • Skip to footer
Cadence Home
  • This search text may be transcribed, used, stored, or accessed by our third-party service providers per our Cookie Policy and Privacy Policy.

  1. Community Forums
  2. Allegro X Scripting - Skill
  3. Getting values by form CHECKLIST

Stats

  • Replies 6
  • Subscribers 18
  • Views 10448
  • Members are here 0
More Content

Getting values by form CHECKLIST

vimaldevlpr
vimaldevlpr over 4 years ago

hi,

Any body help me out this kind of loop CHECKLIST case.

In input selected corresponding part value want to print any one please help me out from this.

Input -                                                                                               Output - 

                                                                                                                     aaa ccc

Code:

  list1 = '("aaa" "bbb" "ccc" "ddd")
  
  datainp = 5
  foreach(listlp list1
   adata = sprintf(nil, "TEXT \"%s\"\n", listlp)
   fprintf(backform adata)
   adt = sprintf(nil, "TLOC 5 %d\n", datainp)
   fprintf(backform adt)
   
   datainp = datainp + 5
   fprintf(backform "ENDTEXT\n")
  )
  
  datainp2 = 5
  foreach(listlp3 list1
   fprintf(backform "FIELD Checkdt\n")
   adt2 = sprintf(nil, "FLOC 25 %d\n", datainp2)
   fprintf(backform adt2)
   fprintf(backform "CHECKLIST \"Check\" \n")
   fprintf(backform "ENDFIELD\n")
   fprintf(backform "\n")
   datainp2 = datainp2 + 5
  )

fprintf(backform "FIELD TOCHECK\n")
  fprintf(backform "FLOC 13 1\n")
  fprintf(backform "MENUBUTTON \"Checking\" 10 4\n")
  fprintf(backform "ENDFIELD\n")
  fprintf(backform "\n")

(defun back_Action (backform)
 (case backform->curField
  ("TOCHECK"
   ("Checkdt"
    if(backform->curValue then
           

         ;Help me to get the corresponding value


    )
   )
  )
 )
 axlFormDisplay(backform)
)

  • Cancel
  • Sign in to reply
  • vimaldevlpr
    vimaldevlpr over 4 years ago in reply to DavidJHutchins

    Hi david Kindly thanks for the reply.. By using button directly it returns nil

    Input - 

    If I clicking bbb means need to return bbb.                                                                                    output - bbb

    My code:

    (setq list1 list("aaa" "bbb" "ccc" "ddd"))
    (setq viamod_symform_file "viamod_sym.form")
    procedure(chk()
     createviamod_symform()
     viamod_symform_run()
    )

    procedure(viamod_symform_run()
     let((viamod_symform)
      (viamod_symform = axlFormCreate(gensym() viamod_symform_file nil 'viamod_sym_Action t))
      axlFormDisplay(viamod_symform)
     )
    )
    procedure(createviamod_symform()
     let((viamod_symform datainp adata adt datainp2 adt2)
      (viamod_symform = outfile(viamod_symform_file "w"))
       fprintf(viamod_symform "FILE_TYPE=FORM_DEFN VERSION=2\n")
       fprintf(viamod_symform "FORM\n")
       fprintf(viamod_symform "FIXED\n")
       fprintf(viamod_symform "PORT 42 10\n")
       fprintf(viamod_symform "HEADER \"UI CHECK\"\n")
       fprintf(viamod_symform "\n")
       fprintf(viamod_symform "TILE\n")
       
       (datainp2 = 5)
       foreach(listlp3 list1
        fprintf(viamod_symform "FIELD %s\n" listlp3)
        (adt2 = sprintf(nil "FLOC 15 %d\n" datainp2))
        fprintf(viamod_symform adt2)
        (adt3 = sprintf(nil "MENUBUTTON \"%s\" 10 4\n" listlp3))
        fprintf(viamod_symform adt3)
        fprintf(viamod_symform "ENDFIELD\n")
        fprintf(viamod_symform "\n")
        (datainp2 = (datainp2 + 4))
       )
       fprintf(viamod_symform "\n")
       fprintf(viamod_symform "\n")
       fprintf(viamod_symform "ENDTILE\n")
       fprintf(viamod_symform "\n")
       fprintf(viamod_symform "ENDFORM\n")
       drain()
       close(viamod_symform)
     )
    )
    procedure(viamod_sym_Action(viamod_symform)
     sym_data = nil
      case((viamod_symform->curField)
       foreach(listlp3 list1
        when(axlFormGetField(viamod_symform listlp3)
        print(listlp3)
        when(listlp3 push(listlp3 sym_data))
        )
        ;print(" ")
       )
        ;println(" ")
      )
    axlFormDisplay(viamod_symform)
    sym_wrkng()
    )
    procedure(sym_wrkng()
     print(sym_data)
    )

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
<
Cadence Guidelines

Community Guidelines

The Cadence Design Communities support Cadence users and technologists interacting to exchange ideas, news, technical information, and best practices to solve problems and get the most from Cadence technology. The community is open to everyone, and to provide the most value, we require participants to follow our Community Guidelines that facilitate a quality exchange of ideas and information. By accessing, contributing, using or downloading any materials from the site, you agree to be bound by the full Community Guidelines.

© 2025 Cadence Design Systems, Inc. All Rights Reserved.

  • Terms of Use
  • Privacy
  • Cookie Policy
  • US Trademarks
  • Do Not Sell or Share My Personal Information