- UID
- 1
- 积分
- 15892
- 精华
- 贡献
-
- 威望
-
- 活跃度
-
- D豆
-
- 在线时间
- 小时
- 注册时间
- 2002-1-3
- 最后登录
- 1970-1-1
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
ObjectARX Technical Newsletter - August 2000
This document is part of ObjectARX Newsletter Archive
ObjectARX Technical Newsletter - August 2000 Edition
====================================================
/Note: Have you missed a Newsletter issue? Visit our Newsletter archive at
the following URL:/
http://adn.autodesk.com/techsupp/techsupp/docs/newsletters.htm
Dear ObjectARX Developer,
0. Introduction.
1. ObjectARX for AutoCAD 2000i
2. Double Click API.
3. eTransmit API
4. Navigation File API
5. eLearning Course Material
0. Introduction
===============
AutoCAD 2000i has just been released, so it is time to present the new
API's which come with that release. Also you should be aware that
ARX/VBA/CL applications are binary compatible between AutoCAD 2000 and
2000i. However, application using one of the new API's will not be binary
compatible with AutoCAD 2000. This is because AutoCAD 2000 does not support
these new API's.
Please note that the samples discussed in the following articles at the
posting of this newsletter are not yet on the ADN web site. However the
samples will be posted very soon.
1. ObjectARX for AutoCAD 2000i
==============================
Please note:
From the 2000i release, the ObjectARX SDK is to be available by download
only, and is therefore not part of the July ADN shipment. Its posting to
the download area on http://www.autodesk.com/objectarx has also been
delayed, and so is currently unavailable. We are working on getting
the new SDK available for download from the web-site as soon as possible.
We apologise for the inconvenience this causes: ObjectARX for AutoCAD
2000 can build applications for AutoCAD 2000i, but contains none of the
new APIs described below.
2. Double Click API.
====================
There is a new ObjectARX API exposed in AutoCAD 2000i for handling
double-click events on entities. The API is based on the new ARX
class AcDbDoubleClickEdit and will allow reactor handlers to receive
notification messages of double-click events on AutoCAD entities.
The default behavior in AutoCAD 2000i when an entity is
double-clicked is to invoke the appropriate entity-specific editor,
or (if there is no specific editor) the Object property Manager.
If multiple entities are selected, double-clicking an entity in
the selection will bring up the Object Property Manager.
It is possible to override the default behavior by trapping the
double-click notification for AcDbEntity-derived entities in
ObjectARX. The notification order will ascend the inheritance
tree from the selected entity type up through AcDbEntity, so the
double-click notification can be handled anywhere in between.
The API is implemented through Protocol Extensions. The client
would need to derive a class from AcDbDoubleClickEdit for each
entity type to be notified of a double-click event.
Example for a PLINE:
#include "AcDblClkEdit.h"
class AcDbDoubleClickEditPline : public AcDbDoubleClickEdit
{
public:
...
void startEdit(AcDbEntity *pEnt,AcGePoint3d pt);
void finishEdit(void);
};
The client would need to implement both startEdit() and finishEdit()
methods in order to receive notification messages. Note that these
are the only two messages available.
When the client is loaded, the AcDbDoubleClickEdit class needs to add
the protocol extension to the appropriate database object.
For example within InitApplication():
pPlineEdit = new AcDbDoubleClickEditPline;
AcDbPline::desc()->addX(AcDbDoubleClickEdit::desc(),pPlineEdit);
Similarly, when the client is unloaded, it should delete the protocol
extension from the appropriate database object:
AcDbPline::desc()->delX(AcDbDoubleClickEdit::desc());
The client also needs to link with AcDblClkEditPE.lib, and should verify
that the AcDblClkEditPE.arx file is loaded: (Also within InitApplication):
acrxDynamicLinker->loadModule(/*MSG0*/"ACDBLCLKEDITPE.ARX",Adesk::kFalse);
The sample 'DblClickSamp' is a MSVC project that demonstrates the use of the
double-click API feature. The sample works with 'PLINE', 'SPLINE' and
'CIRCLE' entities. When a user double-clicks a PLINE or SPLINE, a vertex
or fit-point will be added to the object at the cursor location, which can
then be edited using grips. When a CIRCLE is double-clicked, the color
index is changed. When any other entity is double-clicked, the appropriate
entity-specific editor is invoked, or (if none exists) Object Property Manager.
<<This sample will be posted to the ADN WEB only>>
3. eTransmit API.
=================
Remember Pack'n'Go? It used to be on the Express Tools menu of AutoCAD R14
and 2000. Well now it has moved to the File menu and is called eTransmit.
This utility still does what it always did - it assembles all the files
needed by a drawing and puts them in a common directory or on a web site.
But now it goes just that little bit further - you can ZIP the files, you
can add extra files to the transmittal, and you can send an email to the
intended recipient to tell them where the files are (the transmittal can
even be attached to the email).
You've probably already guessed that eTransmit has now got an API. Otherwise
we wouldn't be talking about it in the ObjectARX newsletter. The API is
exposed through a set of three COM interfaces:
ITransmittalAddFileNotificationHandler - can be implemented or overridden to
provide notification that an eTransmit operation is commencing.
ITransmittalFile - represents a file that is part of the transmittal
operation.
ITransmittalOperation - provides information about the transmittal itself
and provides methods for files to be added to the transmittal or text to be
added to the transmittal report.
The ObjectARX 2000i Reference Guide provides you with all the information you
need to use this API, including some example code.
4. Navigation File API.
=======================
There is a new API acedGetFileNavDialog() for R2000i. The new global
function prompts the user for a file name with the new-style of the
AutoCAD file navigation dialog. It makes file browsing easy not only
for a local directory but also for an intranet/internet located file.
To provide additional feature that AutoCAD doesn't have, Whip ActiveX
control is used so it is possible to view a DWF file resulting from
acedGetFileNavDialog(). If you don't have Whip installed, you can
download it from www.autodesk.com.
<<A sample will be posted to the ADN WEB only>>
5. eLearning Course Material
============================
Interested in eLearning and ObjectARX? There are four eLearning ObjectARX
lessons available at the following URL with four more to be added soon:
http://www.headlight.com/browse_channels/0,1036,ad-679,00.html
-----------------------------------------------------------------------------
To subscribe or unsubscribe, go to
http://adn.autodesk.com/techsupp/techsupp/docs/newsletters.htm
-----------------------------------------------------------------------------
You received this message as a result of your registration
on the ADN List Server subscription page. If you no longer wish
to receive these messages, read the next section, How to use this
mailing list.
How to use this mailing list:
You may unsubscribe from this e-mail newsletter, or subscribe to
a variety of other informative e-mail newsletters, by returning
to the ADN List Server subscription page at
http://adn.autodesk.com/techsupp/techsupp/docs/newsletters.htm
and changing your subscription preferences.
Alternatively, from the subscribed account you can send an e-mail to
<Majordomo-partnersys@autodesk.com> with the following command in the
body of your email message:
unsubscribe <list-name>
----------------------------------------------------------------------
Autodesk Developer Network (ADN) information and events:
For information on all ADN topics, please visit:
http://www.autodesk.com/adn
----------------------------------------------------------------------
THIS DOCUMENT IS PROVIDED FOR INFORMATIONAL PURPOSES ONLY. The
information contained in this document represents the current view of
Autodesk Inc. on the issues discussed as of the date of publication.
Because Autodesk must respond to change in market conditions, it
should not be interpreted to be a commitment on the part of Autodesk
and Autodesk cannot guarantee the accuracy of any information
presented after the date of publication.
INFORMATION PROVIDED IN THIS DOCUMENT IS PROVIDED 'AS IS' WITHOUT
WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT
LIMITED TO THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
PARTICULAR PURPOSE AND FREEDOM FROM INFRINGEMENT.
The user assumes the entire risk as to the accuracy and the use of
this document. This document may be copied and distributed subject to
the following conditions:
1. All text must be copied without modification and all pages must
be included
2. All copies must contain Autodesk's copyright notice and any other
notices provided therein
3. This document may not be distributed for profit
---------------------------------------------------------------------- |
|