• 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 set ADE-XL/Maestro to a given position and size

Stats

  • Locked Locked
  • Replies 14
  • Subscribers 143
  • Views 7257
  • 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 set ADE-XL/Maestro to a given position and size

netbug
netbug over 5 years ago

Hi all,

I would like, whenever I open an ade-xl/maestro session, to center the window and resize it to a given width x height.

This is because I am using two displays as one and don't want every time I maximize the window, for it to span across both screens. So it would be handy to customize size and position.

Thanks in advance.

Best regards,

Pedro

  • Cancel
  • skillUser
    skillUser over 5 years ago

    Hi Pedro,

    I see the following .cdsenv variables for the size of the window, but not the bbox or size + location :

        maestro.window width int 1200
        maestro.window height int 0

    Hopefully this helps?  The comment is that if the value is zero it uses the session window width/height, so perhaps set the above to 0 and use the schematic window bbox to determine the size & location?

    Best regards,

    Lawrence.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • netbug
    netbug over 5 years ago in reply to skillUser

    Hi Laurence,

    Thanks for your reply. Where can I find a list of all "properties" of a tool. I know properties is the wrong word but I don't know it's name.

    I am referring to things like:

    maestro.window

    viva.graphLabel

    Viva.graphFrame

    etc etc

    Best regards,

    Pedro

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 5 years ago in reply to netbug

    In IC6.1.8 and ICADVM18.1 there's Options->Cdsenv Editor where you can search for such settings.

    Not sure that's what you want, but it may help.

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • netbug
    netbug over 5 years ago in reply to Andrew Beckett

    Thanks Andrew.

    Best regards,

    Pedro

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • skillUser
    skillUser over 5 years ago in reply to netbug

    Hi Pedro,

    To find the above information I looked in the installation file: `cds_root virtuoso`/tools/dfII/etc/tools/maestro/.cdsenv - this is the file that Virtuoso read (each tool has its own for default settings, e.g. layout, schematic and so on).

    Best regards,

    Lawrence.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • netbug
    netbug over 5 years ago in reply to skillUser

    Great !

    Thanks both.

    Best regards,

    Pedro

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • netbug
    netbug over 5 years ago

    skillUserAndrew Beckett

    Good morning,

    I have discovered a linux command (maybe you know it) that gives both the coordinates and dimensions of a given window.

    So, you can do the following:

    1. position and stretch any window the way you want
    2. enter, on a linux terminal, the command "xwininfo"
    3. click the window you would like to get the information from

    You should end up with a result like the one below.

    xwininfo: Please select the window about which you
    would like information by clicking the
    mouse in that window.

    xwininfo: Window id: 0x2400003 "Terminal"

    Absolute upper-left X: 2
    Absolute upper-left Y: 57
    Relative upper-left X: 2
    Relative upper-left Y: 26
    Width: 1917
    Height: 1067
    Depth: 24
    Visual: 0x23
    Visual Class: TrueColor
    Border width: 0
    Class: InputOutput
    Colormap: 0x20 (installed)
    Bit Gravity State: NorthWestGravity
    Window Gravity State: NorthWestGravity
    Backing Store State: NotUseful
    Save Under State: no
    Map State: IsViewable
    Override Redirect State: no
    Corners: +2+57 -1921+57 -1921-54 +2-54
    -geometry 190x52+0+31

    Best regards,

    Pedro

    PS: I am sorry if you already knew this.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 5 years ago in reply to netbug

    Or rather more simply, in Virtuoso you can find this out using:

    hiGetAbsWindowScreenBBox(hiGetCurrentWindow())

    (the numbers are slightly different because it doesn't include all the window manager decorations, I believe). You can move the window using hiResizeWindow(...)

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • netbug
    netbug over 5 years ago in reply to Andrew Beckett

    Thanks Andrew.

    Is it possible to associate those instructions to an event triggered when the maximize button is pressed?
    The goal of all of this is to resize the window for a given size, without maximizing it.

    The reason behind this, is that I am using  VNC Viewer to control multiple monitors, buy they are seen as one monitor. Anytime I pressed the maximize button will span the windows across all monitors.

    So I would like to redefine what the maximize button does to fit one screen only.

    Thanks. 

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 5 years ago in reply to netbug
    netbug said:
    Is it possible to associate those instructions to an event triggered when the maximize button is pressed?

    No, sorry. There's no trigger mechanism for this. The maximise button is part of the window manager, and not directly accessible by Virtuoso. I did wonder whether hiRegZoomPanProc would help, but maximise doesn't necessarily trigger a redraw, so it doesn't get called.

    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