Virtuso Layout "save as"...

Discussion in 'Cadence' started by Peter Croce, Mar 4, 2004.

  1. Peter Croce

    Peter Croce Guest

    When I do a Design -> Save as, is there a way to get the editor to then
    switch to the new layout that I have saved as? For example, if I am
    working on a layout called "ralph" and I save it as "kramden", I now
    want the layout to be kramden that I continue editing, not ralph.
     
    Peter Croce, Mar 4, 2004
    #1
  2. Sounds like Microsoft products ...

    It's easy to write some couple of Skill lines doing this.
    I can send you something doing this if you want.

    ================================================================
    Kholdoun TORKI
    http://cmp.imag.fr
    ================================================================
     
    Kholdoun TORKI, Mar 5, 2004
    #2
  3. Below is a couple of Skill lines doing this. It works only
    with layout views, but certainly may be adapted to work
    for every views and viewTypes.

    Hope that this helps.

    ================================================================
    Kholdoun TORKI
    http://cmp.imag.fr
    ================================================================



    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    /*
    Function Name : KTSaveAs()
    Could be added in the Edit menu with
    KTSaveAsPullDown()

    Category : layout, (not tested on Composer schematic)
    Date : March 05th, 2004
    Revision : 1.0
    Prerequisites : none
    SW Release : 4.4.6 (not tested under 5.0)
    Author : Kholdoun TORKI (CMP, Grenoble, FRANCE)

    Synopsis : "Save as" a layout cellView and display the new
    saved cellView, closing the original one,
    and asking if the changes has to
    be saved in the original as well.
    (similar to "Save As" in MS-Windows products.

    Known Problems : 1) Not yet working for Composer Schematic/Symbol,
    or other than "maskLayout" views

    2) Should start at least one Virtuoso layout
    in a session to be able invoking the function
    KTSaveAsPullDown()
    */
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

    procedure(KTSaveAs()
    prog((cvId sLibName sCellName sViewName tLibName tViewName)
    cvId = geGetEditCellView()
    if(cvId != nil then
    tLibName = cvId~>cellView~>libName
    tCellName = cvId~>cellView~>cellName
    tViewName = cvId~>cellView~>viewName
    else
    tLibName = ""
    tCellName = ""
    tViewName = ""
    sprintf(msg "Cellview is not being viewed at this time.")
    )
    sLibName = hiCreateStringField(
    ?name 'sLibName
    ?prompt "Library Name"
    ?defValue tLibName
    )
    sCellName = hiCreateStringField(
    ?name 'sCellName
    ?prompt "Cell Name"
    ?defValue tCellName
    )
    sViewName = hiCreateStringField(
    ?name 'sViewName
    ?prompt "View Name"
    ?defValue tViewName
    )
    KTSaveAsForm = hiCreateForm('KTSaveAsForm
    "Save As and Edit the New cellView"
    "KTSaveAsProc()"
    list(list(sLibName 0:0 350:35 170)
    list(sCellName 0:35 350:35 170)
    list(sViewName 0:70 350:35 170)
    )
    )
    hiDisplayForm(KTSaveAsForm)
    )
    )


    procedure( KTSaveAsProc( )

    prog( ( designLib designView designCell cvId cvNewId)


    cvId = geGetEditCellView()

    designLib = KTSaveAsForm->sLibName->value
    designCell = KTSaveAsForm->sCellName->value
    designView = KTSaveAsForm->sViewName->value

    if( !cvId then
    hiGetAttention() ;
    else

    cvNewId = dbOpenCellViewByType(designLib
    designCell
    designView
    "maskLayout"
    "w")
    dbSave(cvId cvNewId)

    geChangeCellView(hiGetCurrentWindow()
    designLib
    designCell
    designView
    "a")
    )
    )
    )

    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    ;KTSaveAs()
    ;FUNCTION
    ; UI for "Save As" in an MS-Windows style
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    procedure( KTSaveAsPullDown()
    let( (KTSaveAsField)
    KTSaveAsField=hiCreateMenuItem(
    ?name 'KTSaveAsField
    ?itemText "*Save As"
    ?callback "KTSaveAs()"
    )

    ; add "Save As" item under Design menu.
    unless( designMenu->KTSaveAsField
    hiAddMenuItem( designMenu KTSaveAsField)
    )

    )) ; END KTSaveAsPullDown()

    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
     
    Kholdoun TORKI, Mar 6, 2004
    #3
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.