more control of display.drf

E

Erik Wanta

Guest
We want to be able to support the use of multiple PDKs at one time. I
want to be able to load the appropriate display.drf for the layout
that I am currently opening up. I created a user trigger to do a
drLoadDrf() on the display.drf for the technology that the library is
attached to.

Problems:
1. I get a pop up message when I open that layout asking if I want to
see a list of all the undefined layers. So, it seems that drLoadDrf
is taking place after it checks to see if packets are defined for all
the layers. Any ideas how I can disable this warning or load the
display.drf sooner?

2. How do I clear all the packets ... from virtual memory? I want to
start from a clean slate before loading the display.drf from a
different technology.

3. If I use drLoadDrf it asks If I want to save the display.drf when
I exit icfb. Maybe if I find a way to purge packets in step 2 it
won't ask.

4. Can't have 2 layouts for 2 different technologies open in the same
session.

procedure(dt(argList)
prog((techName libPath)

when(techName=techGetTechLibName(argList->libId)

/*
foreach(packet drGetPacketList(drGetDisplay("display"))
drDeletePacket(drGetDisplay("display") packet)

) ; foreach
*/


libPath=ddGetObjWritePath(ddGetObj(techName))

when((isFile(strcat(libPath "/display.drf")) &&
!isFile("display.drf"))

drLoadDrf(strcat(libPath "/display.drf"))

) ; when

) ; when

return(t)

) ; prog
) ; procedure

when(member('dt deGetAppInfo("maskLayout")->userAppTrigList)
;if registered, unregister
_deUnRegUserTrigger("maskLayout" 'dt nil nil)
) ; when

;register the display.drf load user trigger
deRegUserTriggers("maskLayout" 'dt nil nil)

---
Erik
 

Welcome to EDABoard.com

Sponsor

Back
Top