优化属性设置
This commit is contained in:
parent
f7b86e118f
commit
0c02c01f3f
|
|
@ -46,6 +46,7 @@ private slots:
|
||||||
void onAction_destroyGroup();
|
void onAction_destroyGroup();
|
||||||
void onSignal_addItem(GraphicsBaseItem*);
|
void onSignal_addItem(GraphicsBaseItem*);
|
||||||
void onSignal_deleteItem();
|
void onSignal_deleteItem();
|
||||||
|
void onSignal_selectionChanged();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
QAction* m_pSavePerspectiveAction = nullptr;
|
QAction* m_pSavePerspectiveAction = nullptr;
|
||||||
|
|
|
||||||
|
|
@ -71,6 +71,7 @@ void CMainWindow::initializeDockUi()
|
||||||
m_pDrawingPanel = new DrawingPanel();
|
m_pDrawingPanel = new DrawingPanel();
|
||||||
DesignerScene* designerScene = m_pDrawingPanel->getDesignerScene();
|
DesignerScene* designerScene = m_pDrawingPanel->getDesignerScene();
|
||||||
connect(designerScene, SIGNAL(signalAddItem(GraphicsBaseItem*)), this, SLOT(onSignal_addItem(GraphicsBaseItem*)));
|
connect(designerScene, SIGNAL(signalAddItem(GraphicsBaseItem*)), this, SLOT(onSignal_addItem(GraphicsBaseItem*)));
|
||||||
|
connect(designerScene, SIGNAL(selectionChanged()), this, SLOT(onSignal_selectionChanged()));
|
||||||
CDockWidget* centralDockWidget = new CDockWidget("CentralWidget");
|
CDockWidget* centralDockWidget = new CDockWidget("CentralWidget");
|
||||||
centralDockWidget->setWidget(m_pDrawingPanel);
|
centralDockWidget->setWidget(m_pDrawingPanel);
|
||||||
auto* centralDockArea = m_pDockManager->setCentralWidget(centralDockWidget);
|
auto* centralDockArea = m_pDockManager->setCentralWidget(centralDockWidget);
|
||||||
|
|
@ -170,7 +171,7 @@ void CMainWindow::onSignal_addItem(GraphicsBaseItem* item)
|
||||||
{
|
{
|
||||||
if(item)
|
if(item)
|
||||||
{
|
{
|
||||||
m_pPropertiesEditorView->setObject(static_cast<QObject*>(item));
|
// m_pPropertiesEditorView->setObject(static_cast<QObject*>(item));
|
||||||
QUndoCommand* addItemCommand = new AddItemCommand(item, item->scene());
|
QUndoCommand* addItemCommand = new AddItemCommand(item, item->scene());
|
||||||
m_pUndoStack->push(addItemCommand);
|
m_pUndoStack->push(addItemCommand);
|
||||||
}
|
}
|
||||||
|
|
@ -186,3 +187,13 @@ void CMainWindow::onSignal_deleteItem()
|
||||||
m_pUndoStack->push(deleteItemCommand); //push时会自动调用一次command的redo函数
|
m_pUndoStack->push(deleteItemCommand); //push时会自动调用一次command的redo函数
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void CMainWindow::onSignal_selectionChanged()
|
||||||
|
{
|
||||||
|
QList<QGraphicsItem*> selectedItems = m_pDrawingPanel->getQGraphicsScene()->selectedItems();
|
||||||
|
if(selectedItems.count() != 1) {
|
||||||
|
m_pPropertiesEditorView->setObject(m_pDrawingPanel->getQGraphicsScene());
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
GraphicsBaseItem *item = static_cast<GraphicsBaseItem*>(selectedItems.first());
|
||||||
|
m_pPropertiesEditorView->setObject(static_cast<QObject*>(item));
|
||||||
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue