mirror of
https://github.com/qelectrotech/qelectrotech-source-mirror.git
synced 2025-12-20 16:20:52 +01:00
element editor : clean some code
git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/trunk@3479 bfdf4180-ca20-0410-9c96-a3a8aa849046
This commit is contained in:
@@ -382,25 +382,18 @@ void ElementView::mouseReleaseEvent(QMouseEvent *e) {
|
||||
}
|
||||
|
||||
/**
|
||||
Gere les actions liees a la rollette de la souris
|
||||
@param e QWheelEvent decrivant l'evenement rollette
|
||||
* @brief ElementView::wheelEvent
|
||||
* @param e
|
||||
*/
|
||||
void ElementView::wheelEvent(QWheelEvent *e) {
|
||||
//Zoom and scrolling
|
||||
if (e -> buttons() != Qt::MidButton) {
|
||||
if (!(e -> modifiers() & Qt::ControlModifier)) {
|
||||
if (e -> delta() > 0){
|
||||
zoomIn();
|
||||
}
|
||||
else{
|
||||
zoomOut();
|
||||
}
|
||||
}
|
||||
else {
|
||||
if (!(e -> modifiers() & Qt::ControlModifier))
|
||||
e -> delta() > 0 ? zoomIn() : zoomOut();
|
||||
else
|
||||
QAbstractScrollArea::wheelEvent(e);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
Dessine l'arriere-plan de l'editeur, cad la grille.
|
||||
|
||||
@@ -130,7 +130,8 @@ void QETElementEditor::setFileName(const QString &fn) {
|
||||
}
|
||||
|
||||
/**
|
||||
Met en place les actions
|
||||
* @brief QETElementEditor::setupActions
|
||||
* Create action used in Element editor
|
||||
*/
|
||||
void QETElementEditor::setupActions() {
|
||||
new_element = new QAction(QET::Icons::DocumentNew, tr("&Nouveau"), this);
|
||||
@@ -151,25 +152,9 @@ void QETElementEditor::setupActions() {
|
||||
paste_from_elmt = new QAction(QET::Icons::Element, tr("un \351l\351ment"), this);
|
||||
inv_select = new QAction( tr("Inverser la s\351lection"), this);
|
||||
edit_delete = new QAction(QET::Icons::EditDelete, tr("&Supprimer"), this);
|
||||
zoom_in = new QAction(QET::Icons::ZoomIn, tr("Zoom avant"), this);
|
||||
zoom_out = new QAction(QET::Icons::ZoomOut, tr("Zoom arri\350re"), this);
|
||||
zoom_fit = new QAction(QET::Icons::ZoomFitBest, tr("Zoom adapt\351"), this);
|
||||
zoom_reset = new QAction(QET::Icons::ZoomOriginal, tr("Pas de zoom"), this);
|
||||
edit_names = new QAction(QET::Icons::Names, tr("\311diter les noms"), this);
|
||||
edit_author = new QAction(QET::Icons::UserInformations, tr("\311diter les informations sur l'auteur"), this);
|
||||
m_edit_properties = new QAction(QET::Icons::ElementEdit, tr("\311diter les propri\351t\351es de l'\351l\351ment"), this);
|
||||
edit_raise = new QAction(QET::Icons::Raise, tr("Rapprocher"), this);
|
||||
edit_lower = new QAction(QET::Icons::Lower, tr("\311loigner"), this);
|
||||
edit_backward = new QAction(QET::Icons::SendBackward, tr("Envoyer au fond"), this);
|
||||
edit_forward = new QAction(QET::Icons::BringForward, tr("Amener au premier plan"), this);
|
||||
add_line = new QAction(QET::Icons::PartLine, tr("Ajouter une ligne"), this);
|
||||
add_rectangle = new QAction(QET::Icons::PartRectangle, tr("Ajouter un rectangle"), this);
|
||||
add_ellipse = new QAction(QET::Icons::PartEllipse, tr("Ajouter une ellipse"), this);
|
||||
add_polygon = new QAction(QET::Icons::PartPolygon, tr("Ajouter un polygone"), this);
|
||||
add_text = new QAction(QET::Icons::PartText, tr("Ajouter du texte"), this);
|
||||
add_arc = new QAction(QET::Icons::PartArc, tr("Ajouter un arc de cercle"), this);
|
||||
add_terminal = new QAction(QET::Icons::Terminal, tr("Ajouter une borne"), this);
|
||||
add_textfield = new QAction(QET::Icons::PartTextField, tr("Ajouter un champ de texte"), this);
|
||||
|
||||
undo = ce_scene -> undoStack().createUndoAction(this, tr("Annuler"));
|
||||
redo = ce_scene -> undoStack().createRedoAction(this, tr("Refaire"));
|
||||
@@ -198,19 +183,9 @@ void QETElementEditor::setupActions() {
|
||||
edit_delete -> setShortcut(QKeySequence(tr("Backspace")));
|
||||
#endif
|
||||
|
||||
zoom_in -> setShortcut(QKeySequence::ZoomIn);
|
||||
zoom_out -> setShortcut(QKeySequence::ZoomOut);
|
||||
zoom_fit -> setShortcut(QKeySequence(tr("Ctrl+9")));
|
||||
zoom_reset -> setShortcut(QKeySequence(tr("Ctrl+0")));
|
||||
|
||||
edit_names -> setShortcut(QKeySequence(tr("Ctrl+E")));
|
||||
edit_author -> setShortcut(tr("Ctrl+Y"));
|
||||
|
||||
edit_raise -> setShortcut(QKeySequence(tr("Ctrl+Shift+Up")));
|
||||
edit_lower -> setShortcut(QKeySequence(tr("Ctrl+Shift+Down")));
|
||||
edit_backward -> setShortcut(QKeySequence(tr("Ctrl+Shift+End")));
|
||||
edit_forward -> setShortcut(QKeySequence(tr("Ctrl+Shift+Home")));
|
||||
|
||||
connect(new_element, SIGNAL(triggered()), this, SLOT(slot_new()));
|
||||
connect(open, SIGNAL(triggered()), this, SLOT(slot_open()));
|
||||
connect(open_file, SIGNAL(triggered()), this, SLOT(slot_openFile()));
|
||||
@@ -228,19 +203,76 @@ void QETElementEditor::setupActions() {
|
||||
connect(paste_in_area, SIGNAL(triggered()), ce_view, SLOT(pasteInArea()));
|
||||
connect(paste_from_file, SIGNAL(triggered()), this, SLOT(pasteFromFile()));
|
||||
connect(paste_from_elmt, SIGNAL(triggered()), this, SLOT(pasteFromElement()));
|
||||
connect(zoom_in, SIGNAL(triggered()), ce_view, SLOT(zoomIn()));
|
||||
connect(zoom_out, SIGNAL(triggered()), ce_view, SLOT(zoomOut()));
|
||||
connect(zoom_fit, SIGNAL(triggered()), ce_view, SLOT(zoomFit()));
|
||||
connect(zoom_reset, SIGNAL(triggered()), ce_view, SLOT(zoomReset()));
|
||||
connect(edit_delete, SIGNAL(triggered()), ce_scene, SLOT(slot_delete()));
|
||||
connect(edit_names, SIGNAL(triggered()), ce_scene, SLOT(slot_editNames()));
|
||||
connect(edit_author, SIGNAL(triggered()), ce_scene, SLOT(slot_editAuthorInformations()));
|
||||
connect(m_edit_properties, SIGNAL(triggered()), ce_scene, SLOT(slot_editProperties()));
|
||||
|
||||
|
||||
/*
|
||||
* Action related to change depth of primitive
|
||||
*/
|
||||
m_depth_ag = new QActionGroup(this);
|
||||
|
||||
QAction *edit_forward = new QAction(QET::Icons::BringForward, tr("Amener au premier plan"), m_depth_ag);
|
||||
QAction *edit_raise = new QAction(QET::Icons::Raise, tr("Rapprocher"), m_depth_ag);
|
||||
QAction *edit_lower = new QAction(QET::Icons::Lower, tr("\311loigner"), m_depth_ag);
|
||||
QAction *edit_backward = new QAction(QET::Icons::SendBackward, tr("Envoyer au fond"), m_depth_ag);
|
||||
|
||||
edit_raise -> setShortcut(QKeySequence(tr("Ctrl+Shift+Up")));
|
||||
edit_lower -> setShortcut(QKeySequence(tr("Ctrl+Shift+Down")));
|
||||
edit_backward -> setShortcut(QKeySequence(tr("Ctrl+Shift+End")));
|
||||
edit_forward -> setShortcut(QKeySequence(tr("Ctrl+Shift+Home")));
|
||||
|
||||
connect(edit_forward, SIGNAL(triggered()), ce_scene, SLOT(slot_bringForward() ));
|
||||
connect(edit_raise, SIGNAL(triggered()), ce_scene, SLOT(slot_raise() ));
|
||||
connect(edit_lower, SIGNAL(triggered()), ce_scene, SLOT(slot_lower() ));
|
||||
connect(edit_backward, SIGNAL(triggered()), ce_scene, SLOT(slot_sendBackward() ));
|
||||
|
||||
depth_toolbar = addToolBar(tr("Profondeur", "toolbar title"));
|
||||
depth_toolbar -> setObjectName("depth_toolbar");
|
||||
depth_toolbar -> addActions(m_depth_ag -> actions());
|
||||
addToolBar(Qt::TopToolBarArea, depth_toolbar);
|
||||
|
||||
|
||||
/*
|
||||
* Action related to zoom
|
||||
*/
|
||||
m_zoom_ag = new QActionGroup(this);
|
||||
|
||||
QAction *zoom_in = new QAction(QET::Icons::ZoomIn, tr("Zoom avant"), m_zoom_ag);
|
||||
QAction *zoom_out = new QAction(QET::Icons::ZoomOut, tr("Zoom arri\350re"), m_zoom_ag);
|
||||
QAction *zoom_fit = new QAction(QET::Icons::ZoomFitBest, tr("Zoom adapt\351"), m_zoom_ag);
|
||||
QAction *zoom_reset = new QAction(QET::Icons::ZoomOriginal, tr("Pas de zoom"), m_zoom_ag);
|
||||
|
||||
zoom_in -> setShortcut(QKeySequence::ZoomIn);
|
||||
zoom_out -> setShortcut(QKeySequence::ZoomOut);
|
||||
zoom_fit -> setShortcut(QKeySequence(tr("Ctrl+9")));
|
||||
zoom_reset -> setShortcut(QKeySequence(tr("Ctrl+0")));
|
||||
|
||||
connect(zoom_in, SIGNAL(triggered()), ce_view, SLOT(zoomIn() ));
|
||||
connect(zoom_out, SIGNAL(triggered()), ce_view, SLOT(zoomOut() ));
|
||||
connect(zoom_fit, SIGNAL(triggered()), ce_view, SLOT(zoomFit() ));
|
||||
connect(zoom_reset, SIGNAL(triggered()), ce_view, SLOT(zoomReset() ));
|
||||
|
||||
|
||||
/*
|
||||
* Action related to primitive creation
|
||||
*/
|
||||
connect (ce_scene, SIGNAL(partsAdded()), this, SLOT(UncheckAddPrimitive()));
|
||||
parts = new QActionGroup(this);
|
||||
|
||||
QAction *add_line = new QAction(QET::Icons::PartLine, tr("Ajouter une ligne"), parts);
|
||||
QAction *add_rectangle = new QAction(QET::Icons::PartRectangle, tr("Ajouter un rectangle"), parts);
|
||||
QAction *add_ellipse = new QAction(QET::Icons::PartEllipse, tr("Ajouter une ellipse"), parts);
|
||||
QAction *add_polygon = new QAction(QET::Icons::PartPolygon, tr("Ajouter un polygone"), parts);
|
||||
QAction *add_text = new QAction(QET::Icons::PartText, tr("Ajouter du texte"), parts);
|
||||
QAction *add_arc = new QAction(QET::Icons::PartArc, tr("Ajouter un arc de cercle"), parts);
|
||||
QAction *add_terminal = new QAction(QET::Icons::Terminal, tr("Ajouter une borne"), parts);
|
||||
QAction *add_textfield = new QAction(QET::Icons::PartTextField, tr("Ajouter un champ de texte"), parts);
|
||||
|
||||
foreach (QAction *action, parts -> actions()) action -> setCheckable(true);
|
||||
|
||||
connect(add_line, SIGNAL(triggered()), this, SLOT(addLine() ));
|
||||
connect(add_rectangle, SIGNAL(triggered()), this, SLOT(addRect() ));
|
||||
connect(add_ellipse, SIGNAL(triggered()), this, SLOT(addEllipse() ));
|
||||
@@ -250,38 +282,13 @@ void QETElementEditor::setupActions() {
|
||||
connect(add_terminal, SIGNAL(triggered()), this, SLOT(addTerminal() ));
|
||||
connect(add_textfield, SIGNAL(triggered()), this, SLOT(addTextField() ));
|
||||
|
||||
add_line -> setCheckable(true);
|
||||
add_rectangle -> setCheckable(true);
|
||||
add_ellipse -> setCheckable(true);
|
||||
add_polygon -> setCheckable(true);
|
||||
add_text -> setCheckable(true);
|
||||
add_arc -> setCheckable(true);
|
||||
add_terminal -> setCheckable(true);
|
||||
add_textfield -> setCheckable(true);
|
||||
|
||||
parts = new QActionGroup(this);
|
||||
parts -> addAction(add_line);
|
||||
parts -> addAction(add_rectangle);
|
||||
parts -> addAction(add_ellipse);
|
||||
parts -> addAction(add_polygon);
|
||||
parts -> addAction(add_arc);
|
||||
parts -> addAction(add_text);
|
||||
parts -> addAction(add_textfield);
|
||||
parts -> addAction(add_terminal);
|
||||
parts -> setExclusive(true);
|
||||
|
||||
connect (ce_scene, SIGNAL(partsAdded()), this, SLOT(UncheckAddPrimitive()));
|
||||
|
||||
parts_toolbar = new QToolBar(tr("Parties", "toolbar title"), this);
|
||||
parts_toolbar -> setObjectName("parts");
|
||||
foreach (QAction *action, parts -> actions()) parts_toolbar -> addAction(action);
|
||||
parts_toolbar = addToolBar(tr("Parties", "toolbar title"));
|
||||
parts_toolbar -> setAllowedAreas(Qt::AllToolBarAreas);
|
||||
parts_toolbar -> setObjectName("parts");
|
||||
parts_toolbar -> addActions(parts -> actions());
|
||||
addToolBar(Qt::LeftToolBarArea, parts_toolbar);
|
||||
|
||||
/*
|
||||
QAction *xml_preview = new QAction(QET::Icons::DialogInformation, tr("XML"), this);
|
||||
connect(xml_preview, SIGNAL(triggered()), this, SLOT(xmlPreview()));
|
||||
parts_toolbar -> addAction(xml_preview);
|
||||
*/
|
||||
|
||||
main_toolbar = new QToolBar(tr("Outils", "toolbar title"), this);
|
||||
main_toolbar -> setObjectName("main_toolbar");
|
||||
@@ -289,8 +296,6 @@ void QETElementEditor::setupActions() {
|
||||
view_toolbar -> setObjectName("display");
|
||||
element_toolbar = new QToolBar(tr("\311l\351ment", "toolbar title"), this);
|
||||
element_toolbar -> setObjectName("element_toolbar");
|
||||
depth_toolbar = new QToolBar(tr("Profondeur", "toolbar title"), this);
|
||||
depth_toolbar -> setObjectName("depth_toolbar");
|
||||
|
||||
main_toolbar -> addAction(new_element);
|
||||
main_toolbar -> addAction(open);
|
||||
@@ -309,16 +314,9 @@ void QETElementEditor::setupActions() {
|
||||
element_toolbar -> addAction(edit_names);
|
||||
element_toolbar -> addAction(m_edit_properties);
|
||||
|
||||
depth_toolbar -> addAction(edit_forward);
|
||||
depth_toolbar -> addAction(edit_raise);
|
||||
depth_toolbar -> addAction(edit_lower);
|
||||
depth_toolbar -> addAction(edit_backward);
|
||||
|
||||
addToolBar(Qt::TopToolBarArea, main_toolbar);
|
||||
addToolBar(Qt::TopToolBarArea, view_toolbar);
|
||||
addToolBar(Qt::TopToolBarArea, element_toolbar);
|
||||
addToolBar(Qt::TopToolBarArea, depth_toolbar);
|
||||
addToolBar(Qt::LeftToolBarArea, parts_toolbar);
|
||||
|
||||
connect(ce_scene, SIGNAL(selectionChanged()), this, SLOT(slot_updateInformations()));
|
||||
connect(ce_scene, SIGNAL(selectionChanged()), this, SLOT(slot_updateMenus()));
|
||||
@@ -336,7 +334,7 @@ void QETElementEditor::setupActions() {
|
||||
}
|
||||
|
||||
/**
|
||||
Met en place les menus.
|
||||
* @brief QETElementEditor::setupMenus
|
||||
*/
|
||||
void QETElementEditor::setupMenus() {
|
||||
file_menu = new QMenu(tr("&Fichier"), this);
|
||||
@@ -387,15 +385,9 @@ void QETElementEditor::setupMenus() {
|
||||
edit_menu -> addAction(edit_author);
|
||||
edit_menu -> addAction(m_edit_properties);
|
||||
edit_menu -> addSeparator();
|
||||
edit_menu -> addAction(edit_forward);
|
||||
edit_menu -> addAction(edit_raise);
|
||||
edit_menu -> addAction(edit_lower);
|
||||
edit_menu -> addAction(edit_backward);
|
||||
edit_menu -> addActions(m_depth_ag -> actions());
|
||||
|
||||
display_menu -> addAction(zoom_in);
|
||||
display_menu -> addAction(zoom_out);
|
||||
display_menu -> addAction(zoom_fit);
|
||||
display_menu -> addAction(zoom_reset);
|
||||
display_menu -> addActions(m_zoom_ag -> actions());
|
||||
|
||||
insertMenu(settings_menu_, file_menu);
|
||||
insertMenu(settings_menu_, edit_menu);
|
||||
@@ -422,10 +414,7 @@ void QETElementEditor::contextMenu(QContextMenuEvent *event) {
|
||||
menu.addAction(paste_in_area);
|
||||
menu.addMenu(paste_from_menu);
|
||||
menu.addSeparator();
|
||||
menu.addAction(edit_forward);
|
||||
menu.addAction(edit_raise);
|
||||
menu.addAction(edit_lower);
|
||||
menu.addAction(edit_backward);
|
||||
menu.addActions(m_depth_ag -> actions());
|
||||
menu.exec(event -> globalPos());
|
||||
}
|
||||
|
||||
@@ -447,15 +436,13 @@ void QETElementEditor::slot_updateMenus() {
|
||||
paste_from_elmt -> setEnabled(!read_only);
|
||||
parts_list -> setEnabled(!read_only);
|
||||
|
||||
// actions dependant de la presence de parties selectionnees
|
||||
// Action enabled if primitive selected
|
||||
deselectall -> setEnabled(selected_items);
|
||||
cut -> setEnabled(selected_items);
|
||||
copy -> setEnabled(selected_items);
|
||||
edit_delete -> setEnabled(selected_items);
|
||||
edit_forward -> setEnabled(selected_items);
|
||||
edit_raise -> setEnabled(selected_items);
|
||||
edit_lower -> setEnabled(selected_items);
|
||||
edit_backward -> setEnabled(selected_items);
|
||||
foreach (QAction *action, m_depth_ag -> actions())
|
||||
action->setEnabled(selected_items);
|
||||
|
||||
// actions dependant du contenu du presse-papiers
|
||||
paste -> setEnabled(clipboard_elmt);
|
||||
|
||||
@@ -40,6 +40,9 @@ class QETElementEditor : public QETMainWindow {
|
||||
virtual ~QETElementEditor();
|
||||
private:
|
||||
QETElementEditor(const QETElementEditor &);
|
||||
void setupActions();
|
||||
void setupMenus();
|
||||
void setupInterface();
|
||||
|
||||
// attributes
|
||||
private:
|
||||
@@ -74,15 +77,10 @@ class QETElementEditor : public QETMainWindow {
|
||||
QAction *cut, *copy, *paste, *paste_in_area, *paste_from_file, *paste_from_elmt;
|
||||
QAction *undo, *redo;
|
||||
QAction *edit_delete, *edit_size_hs, *edit_names, *edit_author, *m_edit_properties;
|
||||
QAction *edit_raise, *edit_lower, *edit_backward, *edit_forward;
|
||||
/// actions for the "display" menu
|
||||
QAction *zoom_in, *zoom_out, *zoom_fit, *zoom_reset;
|
||||
/// toolbars
|
||||
QToolBar *parts_toolbar, *main_toolbar, *view_toolbar, *depth_toolbar, *element_toolbar;
|
||||
/// toolbars actions
|
||||
QActionGroup *parts;
|
||||
QAction *add_line, *add_rectangle, *add_ellipse, *add_polygon, *add_text;
|
||||
QAction *add_arc, *add_terminal, *add_textfield;
|
||||
/// Action group
|
||||
QActionGroup *parts, *m_zoom_ag, *m_depth_ag;
|
||||
/// minimum window title
|
||||
QString min_title;
|
||||
/// filename of the currently edited element
|
||||
@@ -120,9 +118,6 @@ class QETElementEditor : public QETMainWindow {
|
||||
virtual void firstActivation(QEvent *);
|
||||
|
||||
private:
|
||||
void setupActions();
|
||||
void setupMenus();
|
||||
void setupInterface();
|
||||
bool canClose();
|
||||
QWidget *clearToolsDock();
|
||||
void copyAndPasteXml(const QDomDocument &);
|
||||
|
||||
Reference in New Issue
Block a user