MikeCutter Posted January 22, 2007 Share Posted January 22, 2007 I recently converted from 10.5 to 12.5.1. Many of my custom point-object plug-ins do not display upon creation, and also blank a portion of the screen upon reset. I've tried adding the Redraw and RedrawAll commands at the end of the script, but even that doesn't fix it. Any suggestions? Quote Link to comment
MullinRJ Posted January 22, 2007 Share Posted January 22, 2007 Did you try: Tools>Utilities>Update Plug-In Objects? Raymond Quote Link to comment
MikeCutter Posted January 22, 2007 Author Share Posted January 22, 2007 Thanks for the reply. Yes, I've tried updating the plug-in objects which has no change on new documents. Quote Link to comment
Rick Francken Posted January 22, 2007 Share Posted January 22, 2007 Mike, are you willing to show us the script of one of your plug-in objects, that we could see what you have programmed? Quote Link to comment
MikeCutter Posted January 22, 2007 Author Share Posted January 22, 2007 (edited) Thanks for your reply. Below is the code for the simplest tool, but is representative of all of them. Basically, I'm just accessing or importing an existing symbol(s) into the document. In 12.5, the plug-in won't display until I access the Class or Layer visibility dialogs. PROCEDURE Chairs; VAR strChair : STRING; {$INCLUDE MLCFunctions.vss} BEGIN strChair := pChair_Type; If IsSymbol(strChair)=True then begin {make sure Chair symbol is in document - custom function in MLCFunctions.vss} Symbol(strChair,0,0,0); {place Chair in document} end; END; RUN(Chairs); Here's the IsSymbol function from the MLCFunctions.vss file Function IsSymbol(strSymbol:STRING):BOOLEAN; {Checks current document for a symbol, and imports it from Symbol Master if it doesn't exist} BEGIN IF GetObject(strSymbol)=NIL THEN BEGIN {symbol does not exist in current document} {Copy symbol definition to current document - make sure it exists} IF CopySymbol('G:\Symbol Master.mcd',strSymbol) = True THEN BEGIN IsSymbol := True; {succesfully imported symbol from Master Symbol Library} END ELSE BEGIN IsSymbol := False; {couldn't find Library and/or symbol within Library} END; {if CopySymbol} END ELSE BEGIN {symbol exists in current document} IsSymbol := True; END; {if GetObject} END; Edited January 22, 2007 by MikeCutter Quote Link to comment
Rick Francken Posted January 23, 2007 Share Posted January 23, 2007 Mike, I don't see anything wrong with your code. I do see the same problem a PIO that uses other PIOs instead of Symbols to redraw. Neither Redraw or ResetObject seem to get it to display properly that first time. It requires at least one "reset" event to happen. I thought I remembered reading a thread in this group some time ago where you could get force a reset by changing the lineweight and then changing it back. You might try searching for that info. Good luck, Quote Link to comment
MikeCutter Posted January 24, 2007 Author Share Posted January 24, 2007 I FOUND THE PROBLEM!! If the Symbol Library is saved with the symbols' classes set to invisible, they don't appear at first when "imported" into a new drawing, regardless if the class is set to visible on the new drawing. Thanks for your help. Quote Link to comment
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.