• 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 make the Tooltip in a button

Stats

  • Locked Locked
  • Replies 7
  • Subscribers 144
  • Views 4497
  • 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 make the Tooltip in a button

TZ20240722725
TZ20240722725 over 1 year ago

Hi, I hope to create a button using hiCreateButton that can display a small tooltip when the mouse moves over the button, showing the button's information in the tooltip. How should I do this?

thank you.

  • Cancel
  • AurelBuche
    AurelBuche over 1 year ago

    Here you go

    (defun display_custom_form ()
      (let (button form)
        ;; Define button with tooltip
        (setq button
          (hiCreateButton
            ?name       'custom_button
            ?buttonText "Click Me"
            ?callback   (lambda (_button _form) (info "You clicked me!"))
            ));setq button
        (setf button->hiToolTip
          "This message is displayed when you hover the mouse over the button
    <p><font size='+1' color='red'>You can use HTML inside tooltips</font></p>
    <p>You could even display images</p>"
          )
        ;; Define form
        (setq form
          (hiCreateLayoutForm 'custom_form "Custom Form"
            (hiCreateFormLayout 'main_layout ?items (list
                button
                ));main_layout
            ));setq form
        ;; Display form
        (hiDisplayForm form)
        ));let ;def
    
    (display_custom_form)
    • Cancel
    • Vote Up +1 Vote Down
    • Cancel
  • TZ20240722725
    TZ20240722725 over 1 year ago in reply to AurelBuche

    thank you a lot! and can these codes used in skill?

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 1 year ago in reply to TZ20240722725
    TZ20240722725 said:
    can these codes used in skill?

    The code that Aurelien posted is SKILL.

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • TZ20240722725
    TZ20240722725 over 1 year ago in reply to Andrew Beckett

    oh i get it!

    thank you

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • JamesJames
    JamesJames over 1 year ago in reply to AurelBuche

    HI Aurelien

    I found that you wirte a lambda function with two parameters for button as it's callback, and I checked the user guide("skuiref.pdf") of skill language that is not mentioned the callback funtion of btn will pass two parameters, the first one is button and the second one is the form that putted. it's very helpful for me, thanks a lot.

    Thanks,

    James.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 1 year ago in reply to JamesJames

    James,

    Actually it does cover this in the documentation. In the section "Function Object Callbacks" it says:

    Function Object Callbacks
    The syntax of a function object callback is the following:
    <callback> (o_field g_scope @rest_args)
    where,
    ■ o_field is the field whose callback is triggered. It can be used to access the
    properties of the field (o_field->value).
    ■ g_scope is the location where the field is instantiated. It can be a HI form, a scroll-
    region field, or a page of a tab field. It can be used to access fields that are placed in the
    same scroll-region, tab page, or form where the field (o_field) for which the callback
    is triggered placed. To access the fields in the same form but outside g_scope, a
    function is provided. The function name is hiGetFieldScope.

    later in the chapter:

    Function Object Callbacks with Additional Arguments
    Function object callbacks in Cadence User Interface generally accept two standard
    arguments o_field, which represents the field whose callback is triggered and g_scope,
    which represents the location where the field is instantiated. Other than these two standard
    arguments the callbacks of function object type for certain HI fields require additional
    arguments.The following table lists such callbacks:

    As button fields are not listed in the table below, they accept those two arguments for the callback.

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • JamesJames
    JamesJames over 1 year ago in reply to Andrew Beckett

    Thanks Adnrew, I found it. I will check the document.

    • 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