• 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 PCB Editor
  3. FORM designer for Skill

Stats

  • Replies 22
  • Subscribers 161
  • Views 24096
  • Members are here 0
More Content

FORM designer for Skill

vramanan
vramanan over 15 years ago

Hi Guys

I was wondering is there is any gui development tools for SKILL, It is very tedious to type the FORM file in BNF format and try to debug it

 I searched in the web to no avail, if anyone knows a tool which will let you design the SKILL forms graphically like the forms designer and output the form file please let me know

 mean while I found out some tools that might be of interest

I used to write automated scripts using Autoit it has a free form designer called KODA

www.autoitscript.com/.../formdesign.html

this will save the form file as a KXF file and which is a XML file and can output an autoit script which is similar to visual basic

 

If anyone write a script/tool convet the xml to BNF or autoit to BNF that would be great.

 

for example The output of the koda will look like

$Form1 = GUICreate("Board Template Editor", 752, 561, -1363, 199)
$Tab1 = GUICtrlCreateTab(16, 24, 713, 521)
GUICtrlSetResizing(-1, $GUI_DOCKWIDTH+$GUI_DOCKHEIGHT)
$TabSheet1 = GUICtrlCreateTabItem("Board Details")
$Group1 = GUICtrlCreateGroup("Board Details Input", 32, 64, 681, 449)
$Input1 = GUICtrlCreateInput("Input1", 152, 112, 121, 21)
$Button1 = GUICtrlCreateButton("Button1", 64, 448, 75, 25)
$Checkbox1 = GUICtrlCreateCheckbox("Checkbox1", 128, 384, 97, 17)
$Checkbox2 = GUICtrlCreateCheckbox("Checkbox2", 280, 384, 97, 17)
$Checkbox3 = GUICtrlCreateCheckbox("Checkbox3", 424, 384, 97, 17)
$Button2 = GUICtrlCreateButton("Button2", 160, 448, 75, 25)
$Label1 = GUICtrlCreateLabel("Label1", 80, 120, 36, 17)
$Label2 = GUICtrlCreateLabel("Label2", 80, 152, 36, 17)
$Input2 = GUICtrlCreateInput("Input2", 152, 144, 121, 21)
GUICtrlCreateGroup("", -99, -99, 1, 1)

 

In BNF it should look like

FORM
FIXED
PORT 80 55
HEADER "Board Template Editor"

TILE

TABSET "Board Details"
FLOC 16 24
TSSIZE 713 521

TAB "Pack_Select"

 

 Any help/leads on this regard will be much appreciated

  • Sign in to reply
  • Cancel
  • eDave
    eDave over 15 years ago

    I always try to build my forms dynamically within my main code. I have written small functions to create each of the form features such as buttons. Using this method, form development is much simplified and easier to maintain. You can find examples of these functions (although most will have been modified for public release) in some of the code I have posted.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • vramanan
    vramanan over 15 years ago

     Hi Guys

    I agree with dave on his point, but then I think it will be easier for a skill developer to see theGUI first to visualize what he/she wants to do

    long story short, I have written a perl script to do some trick

    limitations and usage

    1.  type perl xml2bnf <filein.xml> <fileout.il> ( need XPATH to be installed with PPM)

    2. use  the tool from http://www.autoitscript.com/fileman/users/lookfar/formdesign.html to create the form file, rename the *.kxf to *.xml

    3. place the windows-1251.enc in the same directory as the exe file

    4. You can't put multiple tabs on the same form (not tested)

    5. You can't nest Group under a Group

    6. Only Button/Input/Combo/Radio/Checkbox is supported

    7. I can't figure out to extract Combobox list (appreciate any help)

     

    but here is the perl file

    regards

     Venakta

     

    XML2BNF.zip
    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • vramanan
    vramanan over 15 years ago

     i am attaching the file again

    XML2BNF.zip
    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • vramanan
    vramanan over 15 years ago

    I am thinking that there is some issue with the attachment so posting the perl code (depedant on XPATH, Math Round)

    i have 2 files in the example_files.zip, one tpages.xml to test the script and windows-1251.enc, you should place it in the same location as that of the script

    Save the following as xml2bnf.pl

     

    example_files.zip
    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • vramanan
    vramanan over 15 years ago

     This is the latest version of the Code

    Changes

    1. Support Lists

    2. Support inital value on Edit fields

    3. The form looks similar to the original xml file

     

    Future Updates likely to include

    1. Support for Multi-Line Text

    2. Support for Grids

    3. unique POP list for every ENUM Field

    Regards

    Venkata

     

    xml2bnf.zip
    • 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