64#ifndef RDEFAULT_MINUS_ONE
65#define RDEFAULT_MINUS_ONE -1
82 static bool hasMainWindow();
84 static void installMessageHandler();
102 void notifyListeners(
bool withNull =
false);
115 bool onlyChanges=
false,
121 const QVariant& value,
127 void notifyPropertyListeners(
129 bool onlyChanges=
false,
133 void notifyPropertyListeners();
139 void notifyExportListenersEnd(
RExporter* exporter);
172 void notifyKeyListeners(QKeyEvent* event);
190 void notifyLayerListeners(
RDocumentInterface* documentInterface, QList<RObject::Id>& layerIds);
208 void notifyPaletteListeners();
210 void ucsSetEvent(
const QString& ucsName);
245 virtual void resize(
int width,
int height) = 0;
249 virtual void move(
int x,
int y) = 0;
269 virtual void handleUserWarning(
const QString& message,
bool messageBox =
false,
bool escape =
true) {
270 Q_UNUSED(messageBox);
273 qWarning() << message;
279 qDebug() <<
"Command: " << message;
282#if QT_VERSION >= 0x050000
286 static void messageHandler(QtMsgType type,
const QMessageLogContext& context,
const QString& message);
291 static void messageHandler(QtMsgType type,
const char* msg);
298 QVariant eval(
const QString& ext,
const QString& script);
301 return mainWindowProxy!=
NULL;
308 if (mainWindowProxy!=
NULL) {
309 delete mainWindowProxy;
318 return mainWindowProxy;
322 virtual bool readSettings();
323 virtual void writeSettings();
Q_DECLARE_METATYPE(RMath *)
Abstract base class for classes that are interested in being notified whenever a block has been added...
Definition RBlockListener.h:37
Abstract base class for classes that are interested in the current coordinate of the mouse cursor.
Definition RCoordinateListener.h:38
A graphics document contains and owns entities, layers, user coordinate systems, variables,...
Definition RDocument.h:78
Interface for interaction between a graphics document and a user.
Definition RDocumentInterface.h:97
Abstract base class for classes that wish to be notified when an entity is exported.
Definition REntityExportListener.h:40
Base class for all entity classes.
Definition REntity.h:63
Abstract base class for classes that are interested in file export events.
Definition RExportListener.h:37
Abstract base class for exporters.
Definition RExporter.h:78
Abstract base class for classes that are interested in the current focus.
Definition RFocusListener.h:36
Graphics view.
Definition RGraphicsView.h:67
Abstract base class for classes that are interested in file import events.
Definition RImportListener.h:38
Abstract base class for classes that are interested in transactions in progress.
Definition RInterTransactionListener.h:41
Abstract base class for classes that are interested in key events.
Definition RKeyListener.h:33
Abstract base class for classes that are interested in being notified whenever a layer has been added...
Definition RLayerListener.h:39
Base class for an MDI main application window.
Definition RMainWindow.h:74
QList< RViewFocusListener * > viewFocusListeners
Definition RMainWindow.h:346
static RMainWindowProxy * getMainWindowProxy()
Definition RMainWindow.h:317
QList< RFocusListener * > focusListeners
Definition RMainWindow.h:345
virtual void postCloseEvent()=0
QList< RTransactionListener * > transactionListeners
Definition RMainWindow.h:340
virtual int getPositionY()=0
virtual void handleUserCommand(const QString &message, bool escape=true)
Definition RMainWindow.h:276
QList< RViewListener * > viewListeners
Definition RMainWindow.h:334
virtual void resize(int width, int height)=0
Resizes the application window to the given width and height.
QList< RSelectionListener * > selectionListeners
Definition RMainWindow.h:329
QMutex mutex
Definition RMainWindow.h:349
QList< RPropertyListener * > propertyListeners
Definition RMainWindow.h:330
virtual void move(int x, int y)=0
Moves the application window to the given x / y position.
virtual void disable()
Definition RMainWindow.h:92
QList< RBlockListener * > blockListeners
Definition RMainWindow.h:333
virtual void postSelectionChangedEvent()=0
static RMainWindowProxy * mainWindowProxy
Definition RMainWindow.h:351
virtual RDocument * getDocument()=0
virtual void handleUserWarning(const QString &message, bool messageBox=false, bool escape=true)
Definition RMainWindow.h:269
QList< RInterTransactionListener * > interTransactionListeners
Definition RMainWindow.h:341
QList< RPreferencesListener * > preferencesListeners
Definition RMainWindow.h:347
virtual QWidget * getChildWidget(const QString &name)=0
virtual void setCommandPrompt(const QString &text="")=0
static RMainWindow * mainWindow
Copyright (c) 2011-2018 by Andrew Mustun.
Definition RMainWindow.h:326
static void setMainWindowProxy(RMainWindowProxy *p)
Definition RMainWindow.h:307
virtual void setGraphicsViewCursor(const QCursor &cursor)=0
Sets the cursor of all graphics views in all MDI children.
QList< RImportListener * > importListeners
Definition RMainWindow.h:339
QList< RNewDocumentListener * > newDocumentListeners
Definition RMainWindow.h:342
static bool hasProxy()
Definition RMainWindow.h:300
QList< RSnapListener * > snapListeners
Definition RMainWindow.h:343
virtual RDocumentInterface * getDocumentInterface()=0
virtual void handleUserInfo(const QString &message, bool escape=true)
Definition RMainWindow.h:263
virtual void quit()=0
Closes the application window.
QList< RCoordinateListener * > coordinateListeners
Definition RMainWindow.h:328
QList< RPenListener * > penListeners
Definition RMainWindow.h:335
virtual int getPositionX()=0
virtual void postTransactionEvent(RTransaction &t, bool onlyChanges=false, RS::EntityType entityTypeFilter=RS::EntityAll)=0
virtual void postPropertyEvent(RPropertyTypeId propertyTypeId, const QVariant &value, RS::EntityType entityTypeFilter=RS::EntityAll)=0
virtual void escapeEvent()=0
QList< RKeyListener * > keyListeners
Definition RMainWindow.h:344
virtual void setRightMouseTip(const QString &text="")=0
QList< REntityExportListener * > entityExportListeners
Definition RMainWindow.h:337
QList< RUcsListener * > ucsListeners
Definition RMainWindow.h:331
QList< RPaletteListener * > paletteListeners
Definition RMainWindow.h:336
virtual void handleUserMessage(const QString &message, bool escape=true)
Definition RMainWindow.h:257
QList< RLayerListener * > layerListeners
Definition RMainWindow.h:332
virtual void enable()
Definition RMainWindow.h:93
virtual int getHeight()=0
QList< RExportListener * > exportListeners
Definition RMainWindow.h:338
virtual void setLeftMouseTip(const QString &text="")=0
Definition RMainWindowProxy.h:8
Copyright (c) 2011-2018 by Andrew Mustun.
Definition RMessageHandler.h:33
Abstract base class for classes that are interested in being notified when a new document is created.
Definition RNewDocumentListener.h:37
int Id
Definition RObject.h:69
Copyright (c) 2011-2018 by Andrew Mustun.
Definition RPaletteListener.h:33
Abstract base class for classes that are interested in being notified whenever the current pen change...
Definition RPenListener.h:37
Abstract base class for classes that are interested in changes in drawing or application preferences.
Definition RPreferencesListener.h:36
Copyright (c) 2011-2018 by Andrew Mustun.
Definition RProgressHandler.h:33
Copyright (c) 2011-2018 by Andrew Mustun.
Definition RPropertyEvent.h:40
Abstract base class for classes that are interested in properties of the current selection or the cur...
Definition RPropertyListener.h:43
Copyright (c) 2011-2018 by Andrew Mustun.
Definition RPropertyTypeId.h:54
EntityType
Entity types used for property handling / filtering.
Definition RS.h:227
@ EntityAll
All entities (for filters)
Definition RS.h:241
@ EntityUnknown
Unknown entity.
Definition RS.h:242
Abstract base class for classes that are interested in the current selection and want to be notified ...
Definition RSelectionListener.h:36
Abstract base class for classes that are interested in the current snap mode.
Definition RSnapListener.h:39
Transaction implementation.
Definition RTransaction.h:73
Abstract base class for classes that want to be notified on every transaction (objects added,...
Definition RTransactionListener.h:40
Abstract base class for classes that are interested in being notified whenever a UCS has been added o...
Definition RUcsListener.h:36
Represents a 3d vector (x/y/z).
Definition RVector.h:47
Abstract base class for classes that are interested in the current view focus.
Definition RViewFocusListener.h:36
Abstract base class for classes that are interested in being notified whenever a view has been added ...
Definition RViewListener.h:37
#define QCADCORE_EXPORT
Definition core_global.h:10
void getMainWindow()
Definition library.js:357
#define NULL
Definition opennurbs_system.h:256