IC613 : hiCreateMenuItem + hiMakeLPChoiceList icons = too small icons

Discussion in 'Cadence' started by Sylvain, Aug 3, 2009.

  1. Sylvain

    Sylvain Guest


    I'm trying to adapt a code working in 5.1.41 to 6.1.3 .
    This code opens a menu displaying a list of layers that user may click
    to start a callback.
    In 5.1 it is OK, I see the layer color, fliing and its name and

    In 6.1, the same code produces a small square icon, containing what
    I've describe before.
    This square is so small that we can't read the text and it is really

    I do not see anywhere in the doc how to modify my code for this
    issue .. Neither in sourcelink.

    Here's an example :

    d_cv = geGetEditCellView()
    d_tf = techGetTechFile(d_cv)
    l_layers = list(list("metal1" "drawing") list("metal1" "pin"))
    l_choices = hiMakeLPChoiceList(d_tf l_layers)

    foreach(mapcar icon l_choices
    menuItem = hiCreateMenuItem(
    ?name gensym()
    ?itemText ""
    ?itemIcon icon
    ?callback "myCallback()"
    ) ; ** foreach mapcar **

    Has anyone ever seen this behaviour ?

    Thanks in advance,

    Sylvain, Aug 3, 2009
    1. Advertisements

  2. Sylvain

    Guest Guest

    Unfortunately, this is a Qt limitation. IC 5.1.41 is Motif-based, and
    arbitrary sized icons could be used for menu items. With Qt, only a small
    square icon can be used alongside text for a menu item, and for a menu button
    (the button on the window that brings up the menu), you can't use an icon at
    all since you can't have both text and an icon, and the icon is too small to
    be useful.

    The current layer icons returned by hiMakeLPChoiceList can be used for cyclic
    fields (which is the intended purpose for that function), but cannot be used
    for menu items with Qt.

    This is planned to be addressed in the next IC release.

    -Pete Zakel

    Vail's Second Axiom:
    The amount of work to be done increases in proportion to the
    amount of work already completed.
    Guest, Aug 5, 2009
    1. Advertisements

  3. Sylvain

    Sylvain Guest


    Thank's for this update and for the hint (use of cyclics).
    I've updated my code in order to use hiCreateLayerCyclicField and it
    works fine.


    Sylvain, Aug 6, 2009
    1. Advertisements

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.