CFx SDK Documentation 2024 SP0
Loading...
Searching...
No Matches
RxEvent.h
Go to the documentation of this file.
1
2// Copyright (C) 2002-2022, Open Design Alliance (the "Alliance").
3// All rights reserved.
4//
5// This software and its documentation and related materials are owned by
6// the Alliance. The software may only be incorporated into application
7// programs owned by members of the Alliance, subject to a signed
8// Membership Agreement and Supplemental Software License Agreement with the
9// Alliance. The structure and organization of this software are the valuable
10// trade secrets of the Alliance and its suppliers. The software is also
11// protected by copyright law and international treaty provisions. Application
12// programs incorporating this software must include the following statement
13// with their copyright notices:
14//
15// This application incorporates Open Design Alliance software pursuant to a license
16// agreement with Open Design Alliance.
17// Open Design Alliance Copyright (C) 2002-2022 by Open Design Alliance.
18// All rights reserved.
19//
20// By use of this software, its documentation or related materials, you
21// acknowledge and accept the above terms.
23
24
25
26
27#ifndef _ODRX_EVENT_H__
28#define _ODRX_EVENT_H__
29
30#include "TD_PackPush.h"
31
32#include "RxObject.h"
33#include "IdArrays.h"
34#include "StringArray.h"
35#include "DbExport.h" //FELIX_CHANGE
36
37#define ODRX_EVENT_OBJ OD_T("OdRxEvent")
38
39class OdDbDatabase;
40class OdGeMatrix3d;
41class OdDbIdMapping;
42class OdGePoint3d;
43class OdDbObjectId;
44
46{
55 kXrefXBind = 8
56};
57
69{
70public:
72
86 virtual void dwgFileOpened(
87 OdDbDatabase* pDb,
88 const OdString& filename);
89
103 OdDbDatabase* pDb);
104
118 OdDbDatabase* pDb);
119
129 OdDbDatabase* pDb);
130
145 virtual void beginSave(
146 OdDbDatabase* pDb,
147 const OdString& intendedName);
148
163 virtual void saveComplete(
164 OdDbDatabase* pDb,
165 const OdString& actualName);
166
179 virtual void abortSave(
180 OdDbDatabase* pDb);
181
182 // DXF In/Out Events.
183
196 virtual void beginDxfIn(
197 OdDbDatabase* pDb);
198
211 virtual void abortDxfIn(
212 OdDbDatabase* pDb);
213
226 virtual void dxfInComplete(
227 OdDbDatabase* pDb);
228
229
242 virtual void beginDxfOut(
243 OdDbDatabase* pDb);
244
245
258 virtual void abortDxfOut(
259 OdDbDatabase* pDb);
260
261
274 virtual void dxfOutComplete(
275 OdDbDatabase* pDb);
276
277 // Insert Events.
278
297 virtual void beginInsert(
298 OdDbDatabase* pToDb,
299 const OdString& blockName,
300 OdDbDatabase* pFromDb);
301
320 virtual void beginInsert(
321 OdDbDatabase* pToDb,
322 const OdGeMatrix3d& xfm,
323 OdDbDatabase* pFromDb);
324
346 virtual void otherInsert(
347 OdDbDatabase* pToDb,
348 OdDbIdMapping& idMap,
349 OdDbDatabase* pFromDb);
350
364 virtual void abortInsert(
365 OdDbDatabase* pToDb);
366
380 virtual void endInsert(
381 OdDbDatabase* pToDb);
382
383 // Wblock Events.
384
390 virtual void wblockNotice(
391 OdDbDatabase* pFromDb);
392
413 virtual void beginWblock(
414 OdDbDatabase* pToDb,
415 OdDbDatabase* pFromDb,
416 const OdGePoint3d& insertionPoint);
417
438 virtual void beginWblock(
439 OdDbDatabase* pToDb,
440 OdDbDatabase* pFromDb,
441 OdDbObjectId blockId);
442
461 virtual void beginWblock(
462 OdDbDatabase* pToDb,
463 OdDbDatabase* pFromDb);
464
465
486 virtual void otherWblock(
487 OdDbDatabase* pToDb,
488 OdDbIdMapping& idMap,
489 OdDbDatabase* pFromDb);
490
506 virtual void abortWblock(
507 OdDbDatabase* pToDb);
508
524 virtual void endWblock(
525 OdDbDatabase* pToDb);
526
546 virtual void beginWblockObjects(
547 OdDbDatabase* pFromDb,
548 OdDbIdMapping& idMap);
549
550 // Deep Clone Events.
551
566 virtual void beginDeepClone(
567 OdDbDatabase* pToDb,
568 OdDbIdMapping& idMap);
569
591 OdDbIdMapping& idMap);
592
610 virtual void abortDeepClone(
611 OdDbIdMapping& idMap);
612
626 virtual void endDeepClone(
627 OdDbIdMapping& idMap);
628
629 // Partial Open Events.
630
643 virtual void partialOpenNotice(
644 OdDbDatabase* pDb);
645
647 OdDbDatabase* pHostDb,
648 OdXrefSubCommand subCmd,
649 const OdDbObjectIdArray& btrIds,
650 const OdStringArray& btrNames,
651 const OdStringArray& paths,
652 bool& vetoOp);
653
654 virtual void xrefSubCommandEnd(
655 OdDbDatabase* pHostDb,
656 OdXrefSubCommand subCmd,
657 const OdDbObjectIdArray& btrIds,
658 const OdStringArray& btrNames,
659 const OdStringArray& paths);
660
662 OdDbDatabase* pHostDb,
663 OdXrefSubCommand subCmd,
664 const OdDbObjectIdArray& btrIds,
665 const OdStringArray& btrNames,
666 const OdStringArray& paths);
667};
668
673
680{
681public:
683
688 virtual void addReactor(
689 OdRxEventReactor* pReactor) = 0;
690
695 virtual void removeReactor(
696 OdRxEventReactor* pReactor) = 0;
697};
698
703
704
706
707#include "TD_PackPop.h"
708
709#endif //_ODRX_EVENT_H__
710
#define TOOLKIT_EXPORT
Definition: DbExport.h:40
OdSmartPtr< OdRxEvent > OdRxEventPtr
Definition: RxEvent.h:702
TOOLKIT_EXPORT OdRxEventPtr odrxEvent()
OdXrefSubCommand
Definition: RxEvent.h:46
@ kXrefOverlay
Definition: RxEvent.h:50
@ kXrefPath
Definition: RxEvent.h:51
@ kXrefBind
Definition: RxEvent.h:48
@ kXrefXBind
Definition: RxEvent.h:55
@ kXrefReload
Definition: RxEvent.h:52
@ kXrefAttach
Definition: RxEvent.h:47
@ kXrefUnload
Definition: RxEvent.h:54
@ kXrefDetach
Definition: RxEvent.h:49
@ kXrefResolve
Definition: RxEvent.h:53
OdSmartPtr< OdRxEventReactor > OdRxEventReactorPtr
Definition: RxEvent.h:672
virtual void addReactor(OdRxEventReactor *pReactor)=0
ODRX_DECLARE_MEMBERS(OdRxEvent)
virtual void removeReactor(OdRxEventReactor *pReactor)=0
virtual void databaseConstructed(OdDbDatabase *pDb)
virtual void beginSave(OdDbDatabase *pDb, const OdString &intendedName)
virtual void otherWblock(OdDbDatabase *pToDb, OdDbIdMapping &idMap, OdDbDatabase *pFromDb)
virtual void endInsert(OdDbDatabase *pToDb)
virtual void beginDxfOut(OdDbDatabase *pDb)
virtual void abortWblock(OdDbDatabase *pToDb)
virtual void databaseToBeDestroyed(OdDbDatabase *pDb)
virtual void abortDxfOut(OdDbDatabase *pDb)
virtual void wblockNotice(OdDbDatabase *pFromDb)
virtual void beginInsert(OdDbDatabase *pToDb, const OdString &blockName, OdDbDatabase *pFromDb)
virtual void abortDxfIn(OdDbDatabase *pDb)
virtual void dxfInComplete(OdDbDatabase *pDb)
virtual void endDeepClone(OdDbIdMapping &idMap)
virtual void xrefSubCommandEnd(OdDbDatabase *pHostDb, OdXrefSubCommand subCmd, const OdDbObjectIdArray &btrIds, const OdStringArray &btrNames, const OdStringArray &paths)
virtual void dxfOutComplete(OdDbDatabase *pDb)
virtual void beginInsert(OdDbDatabase *pToDb, const OdGeMatrix3d &xfm, OdDbDatabase *pFromDb)
virtual void abortDeepClone(OdDbIdMapping &idMap)
virtual void otherInsert(OdDbDatabase *pToDb, OdDbIdMapping &idMap, OdDbDatabase *pFromDb)
virtual void xrefSubCommandAborted(OdDbDatabase *pHostDb, OdXrefSubCommand subCmd, const OdDbObjectIdArray &btrIds, const OdStringArray &btrNames, const OdStringArray &paths)
ODRX_DECLARE_MEMBERS(OdRxEventReactor)
virtual void beginWblock(OdDbDatabase *pToDb, OdDbDatabase *pFromDb)
virtual void xrefSubCommandStart(OdDbDatabase *pHostDb, OdXrefSubCommand subCmd, const OdDbObjectIdArray &btrIds, const OdStringArray &btrNames, const OdStringArray &paths, bool &vetoOp)
virtual void beginDeepClone(OdDbDatabase *pToDb, OdDbIdMapping &idMap)
virtual void dwgFileOpened(OdDbDatabase *pDb, const OdString &filename)
virtual void initialDwgFileOpenComplete(OdDbDatabase *pDb)
virtual void beginWblock(OdDbDatabase *pToDb, OdDbDatabase *pFromDb, const OdGePoint3d &insertionPoint)
virtual void partialOpenNotice(OdDbDatabase *pDb)
virtual void abortSave(OdDbDatabase *pDb)
virtual void beginWblockObjects(OdDbDatabase *pFromDb, OdDbIdMapping &idMap)
virtual void beginWblock(OdDbDatabase *pToDb, OdDbDatabase *pFromDb, OdDbObjectId blockId)
virtual void saveComplete(OdDbDatabase *pDb, const OdString &actualName)
virtual void endWblock(OdDbDatabase *pToDb)
virtual void beginDeepCloneXlation(OdDbIdMapping &idMap)
virtual void abortInsert(OdDbDatabase *pToDb)
virtual void beginDxfIn(OdDbDatabase *pDb)