menu and nesting/bindkeys

Guest
Hello All,

This is my first post.

I have been a IC Layout Designer for over 11 years, but had been
working for Intel which mostly uses Intel tools(galaxy and genesis).
The company I work for uses Vitruoso and I really like it, especialy
the cross probe feature as Intel tools do not have this. Our group
is mostly analog and hand routes everything.

My question

I am trying to write a small procedure that calls the contact form
(code below) and fills out the form for a 2x2 via2 and bind this to a
key(this part works fine). The problem is the form comes up but the
values do not get changed. If I bring up the form and then change the
values it works fine. How do I make a procedure that brings up the
form and changes the value in one procedure?

procedure(via2x2()
leHiCreateContact()
le0ContactForm->contactType->value = "v23"
le0ContactForm->rows->value = 2
le0ContactForm->columns->value = 2
)

Thank you in advance for any help,
Eric
 
On Nov 20, 8:00 pm, eric.d.fitzsimm...@gmail.com wrote:
Hello All,

This is my first post.

I have been a IC Layout Designer for over 11 years, but had been
working for Intel which mostly uses Intel tools(galaxy and genesis).
The company I work for uses Vitruoso and I really like it, especialy
the cross probe feature as Intel tools do not have this.   Our group
is mostly analog and hand routes everything.

My question

I am trying to write a small procedure that calls the contact form
(code below) and fills out the form for a 2x2 via2 and bind this to a
key(this part works fine).   The problem is the form comes up but the
values do not get changed.  If I bring up the form and then change the
values it works fine.   How do I make a procedure that brings up the
form and changes the value in one procedure?

procedure(via2x2()
        leHiCreateContact()
        le0ContactForm->contactType->value = "v23"
        le0ContactForm->rows->value = 2
        le0ContactForm->columns->value = 2
)

Thank you in advance for any help,
Eric
Hi Eric,

Try putprop function it will change the form properties online.

Example,

putprop(get(eval(le0ContactForm) 'contactType) "v23" 'value)


Regards,
Jagadeesh.
 
Hi Jagadeesh,

I took your advice with some success, the putprop has the same problem
I was running into as it isn't passing the values back to the form.

Do you have any idea?

Thank you for replying,
Eric


procedure(via2()
leHiCreateContact()
putprop(get(eval(le0ContactForm) 'contactType) "v23" 'value)
putprop(get(eval(le0ContactForm) 'rows) 2 'value)
)


On Nov 21, 5:54 am, jack <jagadeesh...@gmail.com> wrote:
On Nov 20, 8:00 pm, eric.d.fitzsimm...@gmail.com wrote:





Hello All,

This is my first post.

I have been a IC Layout Designer for over 11 years, but had been
working for Intel which mostly uses Intel tools(galaxy and genesis).
The company I work for uses Vitruoso and I really like it, especialy
the cross probe feature as Intel tools do not have this.   Our group
is mostly analog and hand routes everything.

My question

I am trying to write a small procedure that calls the contact form
(code below) and fills out the form for a 2x2 via2 and bind this to a
key(this part works fine).   The problem is the form comes up but the
values do not get changed.  If I bring up the form and then change the
values it works fine.   How do I make a procedure that brings up the
form and changes the value in one procedure?

procedure(via2x2()
        leHiCreateContact()
        le0ContactForm->contactType->value = "v23"
        le0ContactForm->rows->value = 2
        le0ContactForm->columns->value = 2
)

Thank you in advance for any help,
Eric

Hi Eric,

Try putprop function it will change the form properties online.

Example,

putprop(get(eval(le0ContactForm) 'contactType)  "v23" 'value)

Regards,
Jagadeesh.- Hide quoted text -

- Show quoted text -
 
In article <3e7afd3c-f55b-4de6-b878-e114dc2536a2@d10g2000pra.googlegroups.com> jack <jagadeesh2k1@gmail.com> writes:
On Nov 20, 8:00=A0pm, eric.d.fitzsimm...@gmail.com wrote:
Hello All,

This is my first post.

I have been a IC Layout Designer for over 11 years, but had been
working for Intel which mostly uses Intel tools(galaxy and genesis).
The company I work for uses Vitruoso and I really like it, especialy
the cross probe feature as Intel tools do not have this. =A0 Our group
is mostly analog and hand routes everything.

My question

I am trying to write a small procedure that calls the contact form
(code below) and fills out the form for a 2x2 via2 and bind this to a
key(this part works fine). =A0 The problem is the form comes up but the
values do not get changed. =A0If I bring up the form and then change the
values it works fine. =A0 How do I make a procedure that brings up the
form and changes the value in one procedure?

procedure(via2x2()
=A0 =A0 =A0 =A0 leHiCreateContact()
=A0 =A0 =A0 =A0 le0ContactForm->contactType->value =3D "v23"
=A0 =A0 =A0 =A0 le0ContactForm->rows->value =3D 2
=A0 =A0 =A0 =A0 le0ContactForm->columns->value =3D 2
)

Thank you in advance for any help,
Eric

Hi Eric,

Try putprop function it will change the form properties online.

Example,

putprop(get(eval(le0ContactForm) 'contactType) "v23" 'value)
I'm pretty sure that using the arrows is the same as using putprop.

The problem is if the form fields are set by the procedure that brings up the
form, then setting what you are trying to do just won't work.

You could try setting the default values as well as the values (form->field->
defValue = <whatever>). That might help. However, if the form is recreated
each time, that won't help either.

If there are envvar values that correspond to the form values, changing those
might help.

(I'm not familiar with the contact form, so I can't be more specific.)

-Pete Zakel
(phz@seeheader.nospam)

"Go placidly amid the noise and waste, and remember what value there may
be in owning a piece thereof."
 
On Nov 20, 10:00 am, eric.d.fitzsimm...@gmail.com wrote:
Hello All,

This is my first post.

I have been a IC Layout Designer for over 11 years, but had been
working for Intel which mostly uses Intel tools(galaxy and genesis).
The company I work for uses Vitruoso and I really like it, especialy
the cross probe feature as Intel tools do not have this.   Our group
is mostly analog and hand routes everything.

My question

I am trying to write a small procedure that calls the contact form
(code below) and fills out the form for a 2x2 via2 and bind this to a
key(this part works fine).   The problem is the form comes up but the
values do not get changed.  If I bring up the form and then change the
values it works fine.   How do I make a procedure that brings up the
form and changes the value in one procedure?

procedure(via2x2()
        leHiCreateContact()
        le0ContactForm->contactType->value = "v23"
        le0ContactForm->rows->value = 2
        le0ContactForm->columns->value = 2
)

Thank you in advance for any help,
Eric
The problem lies with the leHiCreateContact() function, it basically
waits for form inputs and the code after this function will not be run
until the form is unmapped. Assuming that the le0ContactForm has been
displayed at least once, you could rearrange your code as follow:

procedure( via2x2()
le0ContactForm->contactType->value = "v23"
le0ContactForm->rows->value = 2
le0ContactForm->columns->value = 2
leHiCreateContact()
)

That will probably work. Not at work right now so I'm not able to test
it out myself. :p
 
On Nov 24, 6:41 pm, eyn <dream...@gmail.com> wrote:
On Nov 20, 10:00 am, eric.d.fitzsimm...@gmail.com wrote:





Hello All,

This is my first post.

I have been a IC Layout Designer for over 11 years, but had been
working for Intel which mostly uses Intel tools(galaxy and genesis).
The company I work for uses Vitruoso and I really like it, especialy
the cross probe feature as Intel tools do not have this.   Our group
is mostly analog and hand routes everything.

My question

I am trying to write a small procedure that calls the contact form
(code below) and fills out the form for a 2x2 via2 and bind this to a
key(this part works fine).   The problem is the form comes up but the
values do not get changed.  If I bring up the form and then change the
values it works fine.   How do I make a procedure that brings up the
form and changes the value in one procedure?

procedure(via2x2()
        leHiCreateContact()
        le0ContactForm->contactType->value = "v23"
        le0ContactForm->rows->value = 2
        le0ContactForm->columns->value = 2
)

Thank you in advance for any help,
Eric

The problem lies with the leHiCreateContact() function, it basically
waits for form inputs and the code after this function will not be run
until the form is unmapped. Assuming that the le0ContactForm has been
displayed at least once, you could rearrange your code as follow:

procedure( via2x2()
  le0ContactForm->contactType->value = "v23"
  le0ContactForm->rows->value = 2
  le0ContactForm->columns->value = 2
  leHiCreateContact()
)

That will probably work. Not at work right now so I'm not able to test
it out myself. :p- Hide quoted text -

- Show quoted text -
I ended up with attaching a replay file to the bindkey using
hiReplayFile. It works.

Thanks,
Eric
 
eric.d.fitzsimmons@gmail.com wrote, on 12/02/08 20:53:
On Nov 24, 6:41 pm, eyn <dream...@gmail.com> wrote:
On Nov 20, 10:00 am, eric.d.fitzsimm...@gmail.com wrote:


Hello All,
This is my first post.
I have been a IC Layout Designer for over 11 years, but had been
working for Intel which mostly uses Intel tools(galaxy and genesis).
The company I work for uses Vitruoso and I really like it, especialy
the cross probe feature as Intel tools do not have this. Our group
is mostly analog and hand routes everything.
My question
I am trying to write a small procedure that calls the contact form
(code below) and fills out the form for a 2x2 via2 and bind this to a
key(this part works fine). The problem is the form comes up but the
values do not get changed. If I bring up the form and then change the
values it works fine. How do I make a procedure that brings up the
form and changes the value in one procedure?
procedure(via2x2()
leHiCreateContact()
le0ContactForm->contactType->value = "v23"
le0ContactForm->rows->value = 2
le0ContactForm->columns->value = 2
)
Thank you in advance for any help,
Eric
The problem lies with the leHiCreateContact() function, it basically
waits for form inputs and the code after this function will not be run
until the form is unmapped. Assuming that the le0ContactForm has been
displayed at least once, you could rearrange your code as follow:

procedure( via2x2()
le0ContactForm->contactType->value = "v23"
le0ContactForm->rows->value = 2
le0ContactForm->columns->value = 2
leHiCreateContact()
)

That will probably work. Not at work right now so I'm not able to test
it out myself. :p- Hide quoted text -

- Show quoted text -

I ended up with attaching a replay file to the bindkey using
hiReplayFile. It works.

Thanks,
Eric
Eric, if you do the following:

procedure(via2x2()
leSetEnv("contactName" "v23")
leSetEnv("contactRows" 2)
leSetEnv("contactColumns" 2)
leSetEnv("contactResetRowCol" nil)
leHiCreateContact()
)

It will do what you want. The Create contact form takes values from the cdsenv
settings, and so these can be seeded - that way you don't hit the problem with
the form being blocking.

Alternative approaches (to using a replay file) are to use hiRegTimer() to
register a bit of SKILL which fills in the form when the UI toplevel has
returned - but that's unnecessary in this case.

Regards,

Andrew.

--
Andrew Beckett
Senior Solution Architect - Cadence Design Systems Ltd (UK)
 

Welcome to EDABoard.com

Sponsor

Back
Top