• 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. Missing Frame Titile of layout in layoutForm

Stats

  • Locked Locked
  • Replies 2
  • Subscribers 143
  • Views 5349
  • 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

Missing Frame Titile of layout in layoutForm

GenoJohnking
GenoJohnking over 1 year ago

Hi All,

I noticed that the title of frame can not dispalyed if there is only one gridLayour/verticalLayout/... , only if there is at least two gridLayour/verticalLayout/... in layoutForm will be showed the frame title.

So is there a way to show title of frame that only one gridLayour/verticalLayout/...

Code example(all form Master Andrew)

;;Code 1 , missing the title of frame

procedure(abCreateBigLayoutForm(numFields)
    let((fields field label gridLay)
        for(i 0 numFields
            field=hiCreateStringField(?name concat('myfield i))
            label=hiCreateLabel(?name concat('label i) ?labelText
                sprintf(nil "Field %d" i)
            )
            fields=tconc(fields list(label 'row i 'col 0))
            fields=tconc(fields list(field 'row i 'col 1))
        )
        fields=tconc(fields list('col_stretch 0 0))
        fields=tconc(fields list('col_stretch 1 1))
        fields=car(fields)
        gridLay=hiCreateGridLayout(
            'gridLay
            ?items fields
        )
        hiCreateLayoutForm(
            'abBigLayoutForm
            "Big layout form"
            ;------------------------------------------------------------
            ; Add a stretchable region below the grid so that
            ; the fields don't spread out vertically
            ;------------------------------------------------------------
            hiCreateVerticalBoxLayout(
                'vbox
                ?frame "test frame"
                ; ?frame t
                ?items list(
                    gridLay
                    list('stretch_item 1)
                )
            )
            ?minSize 600:200
        )
    )
)

abCreateBigLayoutForm(10)
hiDisplayForm(abBigLayoutForm)
;;Code 2, with two frame title
procedure(abCreateFrameLayoutFields(startNum endNum)
    let((fields field label)
        for(i startNum endNum
            field=hiCreateStringField(?name concat('myfield i))
            label=hiCreateLabel(?name concat('label i) ?labelText
                sprintf(nil "Field %d" i)
            )
            fields=tconc(fields list(label 'row i 'col 0))
            fields=tconc(fields list(field 'row i 'col 1))
        )
        fields=tconc(fields list('col_stretch 0 0))
        fields=tconc(fields list('col_stretch 1 1))
        fields=car(fields)
    )
)

procedure(abCreateFrameLayoutForm()
    let((fields frameLay1 frameLay2)
        fields=abCreateFrameLayoutFields(0 3)
        frameLay1=hiCreateGridLayout(
            'frameLay1
            ?items fields
            ?frame "With Title"
        )
        fields=abCreateFrameLayoutFields(4 6)
        frameLay2=hiCreateGridLayout(
            'frameLay2
            ?items fields
            ?frame "Title two"
        )
        hiCreateLayoutForm(
            'abFrameLayoutForm
            "layout form with frames"
            ;------------------------------------------------------------
            ; Add a stretchable region below the grid so that
            ; the fields don't spread out vertically
            ;------------------------------------------------------------
            hiCreateVerticalBoxLayout(
                'vbox
                ?items list(
                    frameLay1
                    frameLay2
                    list('stretch_item 1)
                )
            )
            ?minSize 600:200
        )
    )
)

hiDisplayForm(abCreateFrameLayoutForm())
Thanks,
Geno
  • Cancel
Parents
  • Andrew Beckett
    Andrew Beckett over 1 year ago

    Geno,

    If you change the hiCreateGridLayout within abCreateBigLayoutForm to:

            gridLay=hiCreateGridLayout(
                'gridLay
                ?items fields
    	    ?frame "Only one"
            )

    then you get a frame around that layout - and there's only one. So I don't understand what you're saying - maybe I'm missing something. The code as you shared it doesn't have a frame title because the code wasn't using ?frame - nothing to do with the fact that there was only one layout.

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • Andrew Beckett
    Andrew Beckett over 1 year ago

    Geno,

    If you change the hiCreateGridLayout within abCreateBigLayoutForm to:

            gridLay=hiCreateGridLayout(
                'gridLay
                ?items fields
    	    ?frame "Only one"
            )

    then you get a frame around that layout - and there's only one. So I don't understand what you're saying - maybe I'm missing something. The code as you shared it doesn't have a frame title because the code wasn't using ?frame - nothing to do with the fact that there was only one layout.

    Andrew

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

    Thanks, Andrew

    I know how to enable the frame of layout of a fromGrinning

    • 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