Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Proxy/Dictionary Question

0 views
Skip to first unread message

Mike Dennis

unread,
Mar 16, 2003, 9:14:13 AM3/16/03
to
Hi,

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


Cliff Middleton

unread,
Mar 17, 2003, 7:26:49 AM3/17/03
to
Have you looked into an embedded VBA project saved with the drawing? As I
understand it the project is automatically loaded or unloaded with the
drawing open and close. I don't know enough about VBA to know if it can do
what you want but I would start there.
--
Cliff

"Mike Dennis" <mdenni...@diedesigner.com> wrote in message
news:6660054FACDA4336...@in.WebX.maYIadrTaRb...

Mike Dennis

unread,
Mar 17, 2003, 8:00:52 AM3/17/03
to
I will check that idea out if I can't find an autolisp/vlx solution. My VBA
skills are not very great.

Thanks,
Mike

Luis.

unread,
Mar 17, 2003, 1:05:47 PM3/17/03
to
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...

Mike Dennis

unread,
Mar 18, 2003, 6:38:39 AM3/18/03
to
Ok, I can have a persistent reactor that will fire in drawings I send to a
customer, but my understanding is the call-back must already be loaded into
memory. Is your object enabler system in lisp code?!

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...

Luis.

unread,
Mar 18, 2003, 9:57:53 AM3/18/03
to
> Ok, I can have a persistent reactor that will fire in drawings I send to a
> customer, but my understanding is the call-back must already be loaded
into
> memory. Is your object enabler system in lisp code?!

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


Luis.

unread,
Mar 18, 2003, 10:00:37 AM3/18/03
to
> could not for me.

could not fit my needs...


Mike Dennis

unread,
Mar 18, 2003, 1:01:24 PM3/18/03
to
Ok, so you would have to send the MNL file with your DWG's to your customers
who don't have your software if I understood your post.

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...

Luis.

unread,
Mar 18, 2003, 1:14:40 PM3/18/03
to
> 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.

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?


0 new messages