I have a custom app for AutoCAD. One of the thing it does is Datum/Ordinate
dimensioning (much more robust than AutoCAD's ordinate dimensioning)
The question is:
For a customer that I design for, but does NOT use my software. Can I,
through proxy/dictionary information add autolisp code so that when they
open one of my drawings and, say, "stretch" something that has been Datum
dimensioned, the dimension spec will update!?
This way it would be like associative dimensioning, but they wouldn't need
to purchase my software.
Also, because the autolisp code would fire from a reactor (also in the
dictionary) I would need to load (vl-load-com) if it is not already?
This would be really neat if I could, but I haven't been able to find enough
info to give me a definitive "yes" or "no"
Thanks much!
Mike Dennis
Advanced Designs, Inc.
www.diedesigner.com
"Mike Dennis" <mdenni...@diedesigner.com> wrote in message
news:6660054FACDA4336...@in.WebX.maYIadrTaRb...
Thanks,
Mike
Yes is possible, I am preparing a kind of object enabler system for my
application that uses object reactors, I will include only the reactors not
the commands, means that however uses my smart-objects without my
application they can still use them. But they won't have the commands, the
only thing I'm doing is to remove the copy-ability.
I'm still doing tests but seems like is the way to go.
---
luis
"Mike Dennis" <mdenni...@diedesigner.com> wrote in message
news:6660054FACDA4336...@in.WebX.maYIadrTaRb...
So, I guess to refine my original question: can an object enabler be written
in lisp that will load a call-back function? Right now it seems to be a
paradox... to me anyways.
Thanks for the reply,
Mike
"Luis." <supportATcaddximationDOTcom> wrote in message
news:22C50114696057C2...@in.WebX.maYIadrTaRb...
I'm using object-enabler to put a familiar term, but basically is the core
and call-backs functions in vlisp/activex, without the commands and by
taking out some of the properties i.e: my symbols can be insterted once and
if they are copied, they adopt the reactors.
What I use is to create a protected namespace VLX, and under the loading
list I have:
1) Core functions - on the top
2) Reactor functions or call-backs
3) ...
I also use a MNL file to place the loading lines:
(if (and (findFile "my-tools.vlx")
(not (vl-vlx-loaded-p "my-tools")))
(load (findFile "my-tools.vlx") nil))
Now, for the persistent reactors I create my own loading and saving system,
that basically is a reactor dictionary where I save the objects owners and
receivers, and when a drawing is open, my loading reactors function will
read if they are present, then if applies the reactor is recreated. There
are some other things that I do before saving to the dictionary or even
before loading, since will be cases that some of the object can be erased or
nil, and I need to remove it...etc,etc.
There is the built-in function vlr-pers but it could not for me.
--
le
could not fit my needs...
What I would like to do (if it can be done) is just send DWG's with some
type of imbedded enabler that would load the reactor call-back function. If
I have to send additional files MNL, VLX to load the call-back, my customer
would probably mess it up. I want to make it a no-brainer.
Thanks, Mike
"Luis." <supportATcaddximationDOTcom> wrote in message
news:BF1A9D0C847FFCD9...@in.WebX.maYIadrTaRb...
Well...
Also as a comment, in my application if the call-backs are not present, the
user can can do any normal task, in case the drawing is returned and opened
where the application is full-loaded it will recreate the reactors and do
the changes accordingly. As long the objects that belong to the reactor are
present.
Is that how your program works too?