SceneInspector::SceneInspector(ProbeInterface *probe, QObject *parent) : SceneInspectorInterface(parent), m_propertyController(new PropertyController("com.kdab.GammaRay.SceneInspector", this)), m_clientConnected(false) { Server::instance()->registerMonitorNotifier(Endpoint::instance()->objectAddress(objectName()), this, "clientConnectedChanged"); registerGraphicsViewMetaTypes(); registerVariantHandlers(); connect(probe->probe(), SIGNAL(objectSelected(QObject*,QPoint)), SLOT(objectSelected(QObject*,QPoint))); ObjectTypeFilterProxyModel<QGraphicsScene> *sceneFilterProxy = new ObjectTypeFilterProxyModel<QGraphicsScene>(this); sceneFilterProxy->setSourceModel(probe->objectListModel()); SingleColumnObjectProxyModel *singleColumnProxy = new SingleColumnObjectProxyModel(this); singleColumnProxy->setSourceModel(sceneFilterProxy); probe->registerModel("com.kdab.GammaRay.SceneList", singleColumnProxy); QItemSelectionModel* sceneSelection = ObjectBroker::selectionModel(singleColumnProxy); connect(sceneSelection, SIGNAL(selectionChanged(QItemSelection,QItemSelection)), this, SLOT(sceneSelected(QItemSelection))); m_sceneModel = new SceneModel(this); probe->registerModel("com.kdab.GammaRay.SceneGraphModel", m_sceneModel); m_itemSelectionModel = ObjectBroker::selectionModel(m_sceneModel); connect(m_itemSelectionModel, SIGNAL(selectionChanged(QItemSelection,QItemSelection)), this, SLOT(sceneItemSelected(QItemSelection))); if (singleColumnProxy->rowCount()) { sceneSelection->setCurrentIndex(singleColumnProxy->index(0, 0), QItemSelectionModel::ClearAndSelect); } }
StateMachineViewerServer::StateMachineViewerServer(ProbeInterface *probe, QObject *parent) : StateMachineViewerInterface(parent), m_stateModel(new StateModel(this)), m_transitionModel(new TransitionModel(this)), m_maximumDepth(0), m_stateMachineWatcher(new StateMachineWatcher(this)) { probe->registerModel("com.kdab.GammaRay.StateModel", m_stateModel); QItemSelectionModel *stateSelectionModel = ObjectBroker::selectionModel(m_stateModel); connect(stateSelectionModel, SIGNAL(selectionChanged(QItemSelection,QItemSelection)), SLOT(stateSelectionChanged())); ObjectTypeFilterProxyModel<QStateMachine> *stateMachineFilter = new ObjectTypeFilterProxyModel<QStateMachine>(this); stateMachineFilter->setSourceModel(probe->objectListModel()); probe->registerModel("com.kdab.GammaRay.StateMachineModel", stateMachineFilter); QItemSelectionModel *stateMachineSelectionModel = ObjectBroker::selectionModel(stateMachineFilter); connect(stateMachineSelectionModel, SIGNAL(currentChanged(QModelIndex,QModelIndex)), SLOT(handleMachineClicked(QModelIndex))); connect(m_stateMachineWatcher, SIGNAL(stateEntered(QAbstractState*)), SLOT(stateEntered(QAbstractState*))); connect(m_stateMachineWatcher, SIGNAL(stateExited(QAbstractState*)), SLOT(stateExited(QAbstractState*))); connect(m_stateMachineWatcher, SIGNAL(transitionTriggered(QAbstractTransition*)), SLOT(handleTransitionTriggered(QAbstractTransition*))); setMaximumDepth(3); updateStartStop(); }
TextDocumentInspector::TextDocumentInspector(ProbeInterface *probe, QObject *parent) : QObject(parent) { ObjectTypeFilterProxyModel<QTextDocument> *documentFilter = new ObjectTypeFilterProxyModel<QTextDocument>(this); documentFilter->setSourceModel(probe->objectListModel()); probe->registerModel(QStringLiteral("com.kdab.GammaRay.TextDocumentsModel"), documentFilter); QItemSelectionModel *selectionModel = ObjectBroker::selectionModel(documentFilter); connect(selectionModel, SIGNAL(selectionChanged(QItemSelection,QItemSelection)), SLOT(documentSelected(QItemSelection,QItemSelection))); m_textDocumentModel = new TextDocumentModel(this); probe->registerModel(QStringLiteral("com.kdab.GammaRay.TextDocumentModel"), m_textDocumentModel); selectionModel = ObjectBroker::selectionModel(m_textDocumentModel); connect(selectionModel, SIGNAL(selectionChanged(QItemSelection,QItemSelection)), SLOT(documentElementSelected(QItemSelection,QItemSelection))); m_textDocumentFormatModel = new TextDocumentFormatModel(this); probe->registerModel(QStringLiteral( "com.kdab.GammaRay.TextDocumentFormatModel"), m_textDocumentFormatModel); }
StyleInspector::StyleInspector(ProbeInterface *probe, QObject *parent) : StyleInspectorInterface(parent), m_primitiveModel(new PrimitiveModel(this)), m_controlModel(new ControlModel(this)), m_complexControlModel(new ComplexControlModel(this)), m_pixelMetricModel(new PixelMetricModel(this)), m_standardIconModel(new StandardIconModel(this)), m_standardPaletteModel(new PaletteModel(this)) { ObjectTypeFilterProxyModel<QStyle> *styleFilter = new ObjectTypeFilterProxyModel<QStyle>(this); styleFilter->setSourceModel(probe->objectListModel()); SingleColumnObjectProxyModel *singleColumnProxy = new SingleColumnObjectProxyModel(this); singleColumnProxy->setSourceModel(styleFilter); probe->registerModel("com.kdab.GammaRay.StyleList", singleColumnProxy); QItemSelectionModel *selectionModel = ObjectBroker::selectionModel(singleColumnProxy); connect(selectionModel, SIGNAL(selectionChanged(QItemSelection,QItemSelection)), this, SLOT(styleSelected(QItemSelection))); probe->registerModel("com.kdab.GammaRay.StyleInspector.PrimitiveModel", m_primitiveModel); probe->registerModel("com.kdab.GammaRay.StyleInspector.ControlModel", m_controlModel); probe->registerModel("com.kdab.GammaRay.StyleInspector.ComplexControlModel", m_complexControlModel); probe->registerModel("com.kdab.GammaRay.StyleInspector.PixelMetricModel", m_pixelMetricModel); probe->registerModel("com.kdab.GammaRay.StyleInspector.StandardIconModel", m_standardIconModel); probe->registerModel("com.kdab.GammaRay.StyleInspector.PaletteModel", m_standardPaletteModel); }
ScriptEngineDebugger::ScriptEngineDebugger(ProbeInterface *probe, QObject *parent) : QObject(parent) { ObjectTypeFilterProxyModel<QScriptEngine> *scriptEngineFilter = new ObjectTypeFilterProxyModel<QScriptEngine>(this); scriptEngineFilter->setSourceModel(probe->objectListModel()); SingleColumnObjectProxyModel *singleColumnProxy = new SingleColumnObjectProxyModel(this); singleColumnProxy->setSourceModel(scriptEngineFilter); probe->registerModel("com.kdab.GammaRay.ScriptEngines", singleColumnProxy); }
WebInspector::WebInspector(ProbeInterface *probe, QWidget *parent) : QWidget(parent), ui(new Ui::WebInspector) { ui->setupUi(this); ObjectTypeFilterProxyModel<QWebPage> *webPageFilter = new ObjectTypeFilterProxyModel<QWebPage>(this); webPageFilter->setSourceModel(probe->objectListModel()); SingleColumnObjectProxyModel *singleColumnProxy = new SingleColumnObjectProxyModel(this); singleColumnProxy->setSourceModel(webPageFilter); ui->webPageComboBox->setModel(singleColumnProxy); connect(ui->webPageComboBox, SIGNAL(activated(int)), SLOT(webPageSelected(int))); }
SelectionModelInspector::SelectionModelInspector(ProbeInterface *probe, QObject *parent) : QObject(parent) , m_current(new QIdentityProxyModel(this)) { ObjectTypeFilterProxyModel<QItemSelectionModel> *selectionModelProxy = new ObjectTypeFilterProxyModel<QItemSelectionModel>(this); selectionModelProxy->setSourceModel(probe->objectListModel()); probe->registerModel(QStringLiteral("com.kdab.GammaRay.SelectionModelsModel"), selectionModelProxy); QItemSelectionModel *selectionModel = ObjectBroker::selectionModel(selectionModelProxy); connect(selectionModel, SIGNAL(currentChanged(QModelIndex,QModelIndex)), SLOT(currentChanged(QModelIndex))); probe->registerModel(QStringLiteral("com.kdab.GammaRay.CurrentSelectionModel"), m_current); }
ScriptEngineDebugger::ScriptEngineDebugger(ProbeInterface *probe, QWidget *parent) : QWidget(parent), ui(new Ui::ScriptEngineDebugger), debugger(new QScriptEngineDebugger(this)) { ui->setupUi(this); ObjectTypeFilterProxyModel<QScriptEngine> *scriptEngineFilter = new ObjectTypeFilterProxyModel<QScriptEngine>(this); scriptEngineFilter->setSourceModel(probe->objectListModel()); SingleColumnObjectProxyModel *singleColumnProxy = new SingleColumnObjectProxyModel(this); singleColumnProxy->setSourceModel(scriptEngineFilter); ui->scriptEngineComboBox->setModel(singleColumnProxy); connect(ui->scriptEngineComboBox, SIGNAL(activated(int)), SLOT(scriptEngineSelected(int))); ui->verticalLayout_10->addWidget(debugger->standardWindow()); if (ui->scriptEngineComboBox->count()) { scriptEngineSelected(0); } }
TextDocumentInspector::TextDocumentInspector(ProbeInterface *probe, QWidget *parent): QWidget(parent), ui(new Ui::TextDocumentInspector) { ui->setupUi(this); ObjectTypeFilterProxyModel<QTextDocument> *documentFilter = new ObjectTypeFilterProxyModel<QTextDocument>(this); documentFilter->setSourceModel(probe->objectListModel()); ui->documentList->setModel(documentFilter); connect(ui->documentList->selectionModel(), SIGNAL(selectionChanged(QItemSelection,QItemSelection)), SLOT(documentSelected(QItemSelection,QItemSelection))); m_textDocumentModel = new TextDocumentModel(this); ui->documentTree->setModel(m_textDocumentModel); connect(ui->documentTree->selectionModel(), SIGNAL(selectionChanged(QItemSelection,QItemSelection)), SLOT(documentElementSelected(QItemSelection,QItemSelection))); m_textDocumentFormatModel = new TextDocumentFormatModel(this); ui->documentFormatView->setModel(m_textDocumentFormatModel); }
SceneInspector::SceneInspector(ProbeInterface *probe, QObject *parent) : SceneInspectorInterface(parent), m_propertyController(new PropertyController(QStringLiteral("com.kdab.GammaRay.SceneInspector"), this)), m_clientConnected(false) { Server::instance()->registerMonitorNotifier(Endpoint::instance()->objectAddress(objectName()), this, "clientConnectedChanged"); PropertyController::registerExtension<PaintAnalyzerExtension>(); registerGraphicsViewMetaTypes(); registerVariantHandlers(); connect(probe->probe(), SIGNAL(objectSelected(QObject*,QPoint)), SLOT(objectSelected(QObject*,QPoint))); connect(probe->probe(), SIGNAL(nonQObjectSelected(void*,QString)), this, SLOT(objectSelected(void*,QString))); ObjectTypeFilterProxyModel<QGraphicsScene> *sceneFilterProxy = new ObjectTypeFilterProxyModel<QGraphicsScene>(this); sceneFilterProxy->setSourceModel(probe->objectListModel()); SingleColumnObjectProxyModel *singleColumnProxy = new SingleColumnObjectProxyModel(this); singleColumnProxy->setSourceModel(sceneFilterProxy); probe->registerModel(QStringLiteral("com.kdab.GammaRay.SceneList"), singleColumnProxy); QItemSelectionModel* sceneSelection = ObjectBroker::selectionModel(singleColumnProxy); connect(sceneSelection, SIGNAL(selectionChanged(QItemSelection,QItemSelection)), this, SLOT(sceneSelected(QItemSelection))); m_sceneModel = new SceneModel(this); auto sceneProxy = new ServerProxyModel<KRecursiveFilterProxyModel>(this); sceneProxy->setSourceModel(m_sceneModel); sceneProxy->addRole(ObjectModel::ObjectIdRole); probe->registerModel(QStringLiteral("com.kdab.GammaRay.SceneGraphModel"), sceneProxy); m_itemSelectionModel = ObjectBroker::selectionModel(sceneProxy); connect(m_itemSelectionModel, SIGNAL(selectionChanged(QItemSelection,QItemSelection)), this, SLOT(sceneItemSelected(QItemSelection))); }