• 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. Custom IC SKILL
  3. How to add an "Email Image" button to Export Image form...

Stats

  • Locked Locked
  • Replies 6
  • Subscribers 143
  • Views 2547
  • Members are here 0
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

How to add an "Email Image" button to Export Image form in Schematic Editor?

tweeks
tweeks over 13 years ago

The schematic editor's Export Image form already lets you "Save to File" and "Copy to Clipboard".  I'd like to add another button "Email to Me" that would dump the image to a file using the settings in the form and call an existing shell script to mail the file to the user.

 What's the easiest way to achieve this effect? 

 

I'd like to use a technique like the one in http://www.cadence.com/forums/p/13412/20801.aspx#20801, but there are two problems:

 

1. I didn't create the form in the first place (it's built in to Virtuoso), and

2. "Export Image" is not a form:

hiIsForm(ExportImageDialog) => nil

  • Cancel
  • Andrew Beckett
    Andrew Beckett over 13 years ago

    The easiest way is to build your own form, and call the API (hiExportImage()) based on how you've filled out the form.

    This form is not an "hi" form, and so can't be customized (even if it were, doing so would not be a good idea because it could easily break in a future version if the layout of the form was changed).

    Regards,

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • tweeks
    tweeks over 13 years ago

    And these newfangled Qt-based forms are better than the fully-customizable hi* forms because....?  :)

     

     

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 13 years ago
    Sometimes it's better for the developer - and sometimes they offer more flexibility for the UI. Sometimes it means that we can reuse them in non-hi applications.

    In general, the forms are not designed with the intention that users will change them - that's just a lucky side-effect, rather than a design goal.

    Andrew
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • tweeks
    tweeks over 13 years ago

    Andrew Beckett said:

    In general, the forms are not designed with the intention that users will change them - that's just a lucky side-effect, rather than a design goal.

     

    As a CAD engineer, I find that statement shocking. 

    Everything in Virtuoso seems designed to be customized by users: CDF, Pcells, netlister, ADE, db objects' aribtrary prop bags, schematic and layout editor UIs...  I once customized the layout editor to use a totally different, constraint-driven editing model where shapes were all positioned relative to other shapes (i.e. every figure was rodAlign()'d to something else), so that the entire design was a tree rooted at one anchor shape, rather than each shape being placed individually.  It was pretty cool, actually: it used lines and highlighting to show what was aligned to what, and it made certain kinds of layouts extremely easy to grow/shrink.  What was most amazing about that experiment, though, was that it demonstrated that the tool's architecture was so open that you could customize it into a totally different tool if you wanted to.

    That openness to user customization has been a distinguishing feature of DFII from the beginning.  I believe it's a large part of why Virtuoso has been so successful.   I find the recent trend towards a closed UI disturbing.  From my perspective as a CAD engineer, I don't see any advantage to forms like "Export Image" being Qt rather than hi.  That's nice if there are potential reuse advantages to the Cadence developers, but from my perspective, it just makes it harder to customize.  You're telling me I have to recreate the whole form from scratch just to add a single button!  That's not very change-friendly. 

    I'd like to see a drag-and-drop GUI editor for SKILL, like Visual Basic's had for years.  It's already hard enough to make decent GUIs in SKILL: please don't make it any harder for me!  I'd hate to see Cadence start losing ground to competitors with more customizable products.

     

    • Cancel
    • Vote Up +1 Vote Down
    • Cancel
  • dmay
    dmay over 13 years ago

    Historically, one of the greatest features of Skill and Cadence tools has been the ability for CAD developers to patch and work around bugs and customize tools to meet specific customer needs. This allows us to get the tool to work just like we need it without requiring Cadence to enhance the tool. It also often allows us to make a change with minimal effort. We can "hijack" a form without having to rewrite the function from scratch. These new forms make our job even harder. In our eyes we see the "lucky side effect" feature that we have had for 20 years is being taken away.

    IMO

    Derek

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 13 years ago
    Please don't take my words too literally. I responded quickly, and this is not a change in philosophy.

    We still want to make Virtuoso very customizable, but it's a balance, always.

    There have always been parts of the tools that are not customizable, but the vast majority are.

    You can always contact customer support to ask for these forms to be customizable, or to ask for the specific feature you want.

    Regards,

    Andrew
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel

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