Home > Community > Forums > PCB SKILL > Please help me to check this issue in Skill.

Email

* Required Fields

Recipients email * (separate multiple addresses with commas)

Your name *

Your email *

Message *

Contact Us

* Required Fields
First Name *

Last Name *

Email *

Company / Institution *

Comments: *

 Please help me to check this issue in Skill. 

Last post Wed, Jan 9 2008 7:35 PM by archive. 2 replies.
Started by archive 09 Jan 2008 07:35 PM. Topic has 2 replies and 1373 views
Page 1 of 1 (3 items)
Sort Posts:
  • Wed, Jan 9 2008 7:35 PM

    • archive
    • Top 75 Contributor
    • Joined on Fri, Jul 4 2008
    • Posts 88
    • Points 4,930
    Please help me to check this issue in Skill. Reply

    I am writing one skill code at present that can help us to view the net layer(Select a net and then visible the etch.After select one net and display the result,the program will not stop.it's loop.You can select other nets). It can recover the display view.The etch layer result also will show at the Ministatus form. My problem is that i don't know how to delete the list in the Ministatus form.I know that one function(axlFormListDeleteAll) can be used to delete the list. But when i used it,it will not display the result in the form again. I used while to loop program. The following is some source code. Please help me to check it out. Thanks.

    xlCmdRegister( "glnetlayer" 'gl_netLayer ?cmdType "interactive")

    ;  ------------------------
    ;  Define the Main Function
    ;  ------------------------

    defun(gl_netLayer ()
      let((layers string gl_netlayer_form_file layers_num)
    popup = axlUIPopupDefine(nil
               (list  (list "Done" `axlFinishEnterFun)
               (list "Recover" `gl_Recover_visiable)))
     axlUIPopupSet(popup)
        gl_vis=axlVisibleGet()
        gl_netlayer_form_file = "./netlayer.form"
        gl_netlayer_form = outfile(gl_netlayer_form_file "w")
        fprintf(gl_netlayer_form "FILE_TYPE=FORM_DEFN VERSION=2\n")
        fprintf(gl_netlayer_form "FORM \n")
        fprintf(gl_netlayer_form "FIXED\n")
        fprintf(gl_netlayer_form "PORT 36 19\n")
        fprintf(gl_netlayer_form "HEADER \"Net Layers\"\n")
        fprintf(gl_netlayer_form "\n")
        fprintf(gl_netlayer_form "TILE\n")
        fprintf(gl_netlayer_form "TEXT \"Net Layers\n")
        fprintf(gl_netlayer_form "TLOC 2 6\n")
        fprintf(gl_netlayer_form "ENDTEXT\n")
        fprintf(gl_netlayer_form "\n")
        fprintf(gl_netlayer_form "FIELD \"GL_netlayer\"\n")
        fprintf(gl_netlayer_form "FLOC 2 8\n")
        fprintf(gl_netlayer_form "LIST \"\" 24 6\n")
        fprintf(gl_netlayer_form "ENDFIELD\n")
        fprintf(gl_netlayer_form "\n")
        fprintf(gl_netlayer_form "ENDTILE\n")
        fprintf(gl_netlayer_form "\n")
        fprintf(gl_netlayer_form "ENDFORM\n")
        close(gl_netlayer_form)
        axlControlRaise('options)
        gl_netlayer_form=axlMiniStatusLoad( (gensym) gl_netlayer_form_file nil t)
       axlFormDisplay(gl_netlayer_form)
    axlSetFindFilter(?enabled list("noall" "nets")
                         ?onButtons list("noall" "nets"))
          while(axlSelect()       
        
        if( net=car(axlGetSelSet())
        then      
           layers = nil
          foreach(branch net->branches
            foreach(child branch->children
              when(child->objType=="path"
                unless( member(child->layer layers)
                  layers = cons(child->layer layers)
                  layers_num=length(layers)
                );unless
              );when
            );foreach
          );foreach

          when( net->name != nil
              axlVisibleDesign(nil)

            foreach(layer layers
              axlFormSetField(gl_netlayer_form "GL_netlayer" layer)                   
              axlVisibleLayer(layer t)
             ......................
             .....................
       );end when   

      
        axlMsgPut(string)
        else
          axlMsgPut( list("No net selected" 0))

        );end if

    );end while
       axlClearSelSet()

     );end let
    axlClearSelSet()
    );end defun


    Originally posted in cdnusers.org by GordonL
    • Post Points: 0
  • Thu, Jan 10 2008 12:18 AM

    • archive
    • Top 75 Contributor
    • Joined on Fri, Jul 4 2008
    • Posts 88
    • Points 4,930
    RE: Please help me to check this issue in Skill. Reply

    I thnk you've posted in the wrong forum - this forum is for Custom IC SKILL issues, whereas your code is for Allegro - so you want one of the PCB fora.

    Regards,

    Andrew.


    Originally posted in cdnusers.org by adbeckett
    • Post Points: 0
  • Tue, Feb 26 2008 1:03 AM

    • archive
    • Top 75 Contributor
    • Joined on Fri, Jul 4 2008
    • Posts 88
    • Points 4,930
    RE: Please help me to check this issue in Skill. Reply

    Hi, Gordon,
    Where is the codes for the form action?
    You can try to add one line:

    axlFormListDeleteAll(gl_netlayer_form "GL_netlayer")

    before the next step :

    axlFormSetField(gl_netlayer_form "GL_netlayer" layer)


    Originally posted in cdnusers.org by leonlee
    • Post Points: 0
Page 1 of 1 (3 items)
Sort Posts:
Started by archive at 09 Jan 2008 07:35 PM. Topic has 2 replies.