mirror of
https://github.com/qelectrotech/qelectrotech-source-mirror.git
synced 2025-12-18 22:00:35 +01:00
element editor: improve context menu and fix the end of polygon
diagram: fix memory leak git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/trunk@2544 bfdf4180-ca20-0410-9c96-a3a8aa849046
This commit is contained in:
@@ -84,6 +84,8 @@ Diagram::~Diagram() {
|
|||||||
delete undo_stack_;
|
delete undo_stack_;
|
||||||
// suppression du QGIManager - tous les elements qu'il connait sont supprimes
|
// suppression du QGIManager - tous les elements qu'il connait sont supprimes
|
||||||
delete qgi_manager_;
|
delete qgi_manager_;
|
||||||
|
// remove of conductor setter
|
||||||
|
delete conductor_setter_;
|
||||||
|
|
||||||
// suppression des objets gerant les deplacements
|
// suppression des objets gerant les deplacements
|
||||||
delete elements_mover_;
|
delete elements_mover_;
|
||||||
|
|||||||
@@ -598,6 +598,11 @@ void ElementScene::paste() {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void ElementScene::contextMenu(QContextMenuEvent *event) {
|
||||||
|
if (behavior == ElementScene::Normal)
|
||||||
|
element_editor -> contextMenu(event);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Selectionne une liste de parties
|
Selectionne une liste de parties
|
||||||
@param content liste des parties a selectionner
|
@param content liste des parties a selectionner
|
||||||
|
|||||||
@@ -138,6 +138,7 @@ class ElementScene : public QGraphicsScene {
|
|||||||
void cut();
|
void cut();
|
||||||
void copy();
|
void copy();
|
||||||
void paste();
|
void paste();
|
||||||
|
void contextMenu (QContextMenuEvent *event);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
virtual void mouseMoveEvent(QGraphicsSceneMouseEvent *);
|
virtual void mouseMoveEvent(QGraphicsSceneMouseEvent *);
|
||||||
|
|||||||
@@ -65,6 +65,10 @@ QRectF ElementView::viewedSceneRect() const {
|
|||||||
return(QRectF(scene_left_top, scene_right_bottom));
|
return(QRectF(scene_left_top, scene_right_bottom));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void ElementView::contextMenuEvent(QContextMenuEvent *event) {
|
||||||
|
scene_ -> contextMenu(event);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Definit l'ElementScene visualisee par cette ElementView
|
Definit l'ElementScene visualisee par cette ElementView
|
||||||
@param s l'ElementScene visualisee par cette ElementView
|
@param s l'ElementScene visualisee par cette ElementView
|
||||||
|
|||||||
@@ -40,6 +40,7 @@ class ElementView : public QGraphicsView {
|
|||||||
ElementScene *scene() const;
|
ElementScene *scene() const;
|
||||||
void setScene(ElementScene *);
|
void setScene(ElementScene *);
|
||||||
QRectF viewedSceneRect() const;
|
QRectF viewedSceneRect() const;
|
||||||
|
void contextMenuEvent(QContextMenuEvent *event);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
void mousePressEvent(QMouseEvent *);
|
void mousePressEvent(QMouseEvent *);
|
||||||
|
|||||||
@@ -415,28 +415,27 @@ void QETElementEditor::setupMenus() {
|
|||||||
* @brief QETElementEditor::contextMenuEvent
|
* @brief QETElementEditor::contextMenuEvent
|
||||||
* @param event
|
* @param event
|
||||||
*/
|
*/
|
||||||
void QETElementEditor::contextMenuEvent(QContextMenuEvent *event)
|
void QETElementEditor::contextMenu(QContextMenuEvent *event) {
|
||||||
{
|
QMenu menu(this);
|
||||||
QMenu menu(this);
|
menu.addAction(undo);
|
||||||
menu.addAction(undo);
|
menu.addAction(redo);
|
||||||
menu.addAction(redo);
|
menu.addAction(selectall);
|
||||||
menu.addAction(selectall);
|
menu.addAction(deselectall);
|
||||||
menu.addAction(deselectall);
|
menu.addAction(inv_select);
|
||||||
menu.addAction(inv_select);
|
menu.addSeparator();
|
||||||
menu.addSeparator();
|
menu.addAction(edit_delete);
|
||||||
menu.addAction(edit_delete);
|
menu.addAction(cut);
|
||||||
menu.addAction(cut);
|
menu.addAction(copy);
|
||||||
menu.addAction(copy);
|
menu.addSeparator();
|
||||||
menu.addSeparator();
|
menu.addAction(paste);
|
||||||
menu.addAction(paste);
|
menu.addAction(paste_in_area);
|
||||||
menu.addAction(paste_in_area);
|
menu.addMenu(paste_from_menu);
|
||||||
menu.addMenu(paste_from_menu);
|
menu.addSeparator();
|
||||||
menu.addSeparator();
|
menu.addAction(edit_forward);
|
||||||
menu.addAction(edit_forward);
|
menu.addAction(edit_raise);
|
||||||
menu.addAction(edit_raise);
|
menu.addAction(edit_lower);
|
||||||
menu.addAction(edit_lower);
|
menu.addAction(edit_backward);
|
||||||
menu.addAction(edit_backward);
|
menu.exec(event -> globalPos());
|
||||||
menu.exec(event->globalPos());
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -113,11 +113,11 @@ class QETElementEditor : public QETMainWindow {
|
|||||||
static QPointF pasteOffset();
|
static QPointF pasteOffset();
|
||||||
static QET::OrientedMovement pasteMovement();
|
static QET::OrientedMovement pasteMovement();
|
||||||
static QString getOpenElementFileName(QWidget * = 0, const QString & = QString());
|
static QString getOpenElementFileName(QWidget * = 0, const QString & = QString());
|
||||||
|
void contextMenu(QContextMenuEvent *event);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
void closeEvent(QCloseEvent *);
|
void closeEvent(QCloseEvent *);
|
||||||
virtual void firstActivation(QEvent *);
|
virtual void firstActivation(QEvent *);
|
||||||
void contextMenuEvent(QContextMenuEvent *event);
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
void setupActions();
|
void setupActions();
|
||||||
|
|||||||
Reference in New Issue
Block a user