mirror of
https://github.com/qelectrotech/qelectrotech-source-mirror.git
synced 2025-12-18 13:30:34 +01:00
QETDiagramEditor now inherits from QETMainWindow.
git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/branches/0.3@1504 bfdf4180-ca20-0410-9c96-a3a8aa849046
This commit is contained in:
@@ -35,7 +35,7 @@
|
|||||||
@param parent le widget parent de la fenetre principale
|
@param parent le widget parent de la fenetre principale
|
||||||
*/
|
*/
|
||||||
QETDiagramEditor::QETDiagramEditor(const QStringList &files, QWidget *parent) :
|
QETDiagramEditor::QETDiagramEditor(const QStringList &files, QWidget *parent) :
|
||||||
QMainWindow(parent),
|
QETMainWindow(parent),
|
||||||
open_dialog_dir(QDesktopServices::storageLocation(QDesktopServices::DesktopLocation)),
|
open_dialog_dir(QDesktopServices::storageLocation(QDesktopServices::DesktopLocation)),
|
||||||
can_update_actions(true)
|
can_update_actions(true)
|
||||||
{
|
{
|
||||||
@@ -164,13 +164,6 @@ void QETDiagramEditor::closeEvent(QCloseEvent *qce) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
Fait passer la fenetre du mode plein ecran au mode normal et vice-versa
|
|
||||||
*/
|
|
||||||
void QETDiagramEditor::toggleFullScreen() {
|
|
||||||
setWindowState(windowState() ^ Qt::WindowFullScreen);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Mise en place des actions
|
Mise en place des actions
|
||||||
*/
|
*/
|
||||||
@@ -225,18 +218,11 @@ void QETDiagramEditor::actions() {
|
|||||||
mode_selection = new QAction(QET::Icons::PartSelect, tr("Mode Selection"), this);
|
mode_selection = new QAction(QET::Icons::PartSelect, tr("Mode Selection"), this);
|
||||||
mode_visualise = new QAction(QET::Icons::ViewMove, tr("Mode Visualisation"), this);
|
mode_visualise = new QAction(QET::Icons::ViewMove, tr("Mode Visualisation"), this);
|
||||||
|
|
||||||
fullscreen = new QAction(this);
|
|
||||||
slot_updateFullScreenAction();
|
|
||||||
configure = new QAction(QET::Icons::Configure, tr("&Configurer QElectroTech"), this);
|
|
||||||
|
|
||||||
tile_window = new QAction( tr("&Mosa\357que"), this);
|
tile_window = new QAction( tr("&Mosa\357que"), this);
|
||||||
cascade_window = new QAction( tr("&Cascade"), this);
|
cascade_window = new QAction( tr("&Cascade"), this);
|
||||||
next_window = new QAction( tr("Projet suivant"), this);
|
next_window = new QAction( tr("Projet suivant"), this);
|
||||||
prev_window = new QAction( tr("Projet pr\351c\351dent"), this);
|
prev_window = new QAction( tr("Projet pr\351c\351dent"), this);
|
||||||
|
|
||||||
about_qet = new QAction(QET::Icons::QETLogo, tr("\300 &propos de QElectroTech"), this);
|
|
||||||
about_qt = new QAction(QET::Icons::QtLogo, tr("\300 propos de &Qt"), this);
|
|
||||||
|
|
||||||
// raccourcis clavier
|
// raccourcis clavier
|
||||||
new_file -> setShortcut(QKeySequence::New);
|
new_file -> setShortcut(QKeySequence::New);
|
||||||
open_file -> setShortcut(QKeySequence::Open);
|
open_file -> setShortcut(QKeySequence::Open);
|
||||||
@@ -274,8 +260,6 @@ void QETDiagramEditor::actions() {
|
|||||||
zoom_fit -> setShortcut(QKeySequence(tr("Ctrl+9")));
|
zoom_fit -> setShortcut(QKeySequence(tr("Ctrl+9")));
|
||||||
zoom_reset -> setShortcut(QKeySequence(tr("Ctrl+0")));
|
zoom_reset -> setShortcut(QKeySequence(tr("Ctrl+0")));
|
||||||
|
|
||||||
fullscreen -> setShortcut(QKeySequence(tr("Ctrl+Shift+F")));
|
|
||||||
|
|
||||||
next_window -> setShortcut(QKeySequence::NextChild);
|
next_window -> setShortcut(QKeySequence::NextChild);
|
||||||
prev_window -> setShortcut(QKeySequence::PreviousChild);
|
prev_window -> setShortcut(QKeySequence::PreviousChild);
|
||||||
|
|
||||||
@@ -321,16 +305,11 @@ void QETDiagramEditor::actions() {
|
|||||||
mode_selection -> setStatusTip(tr("Permet de s\351lectionner les \351l\351ments", "status bar tip"));
|
mode_selection -> setStatusTip(tr("Permet de s\351lectionner les \351l\351ments", "status bar tip"));
|
||||||
mode_visualise -> setStatusTip(tr("Permet de visualiser le sch\351ma sans pouvoir le modifier", "status bar tip"));
|
mode_visualise -> setStatusTip(tr("Permet de visualiser le sch\351ma sans pouvoir le modifier", "status bar tip"));
|
||||||
|
|
||||||
configure -> setStatusTip(tr("Permet de r\351gler diff\351rents param\350tres de QElectroTech", "status bar tip"));
|
|
||||||
|
|
||||||
tile_window -> setStatusTip(tr("Dispose les fen\352tres en mosa\357que", "status bar tip"));
|
tile_window -> setStatusTip(tr("Dispose les fen\352tres en mosa\357que", "status bar tip"));
|
||||||
cascade_window -> setStatusTip(tr("Dispose les fen\352tres en cascade", "status bar tip"));
|
cascade_window -> setStatusTip(tr("Dispose les fen\352tres en cascade", "status bar tip"));
|
||||||
next_window -> setStatusTip(tr("Active le projet suivant", "status bar tip"));
|
next_window -> setStatusTip(tr("Active le projet suivant", "status bar tip"));
|
||||||
prev_window -> setStatusTip(tr("Active le projet pr\351c\351dent", "status bar tip"));
|
prev_window -> setStatusTip(tr("Active le projet pr\351c\351dent", "status bar tip"));
|
||||||
|
|
||||||
about_qet -> setStatusTip(tr("Affiche des informations sur QElectroTech", "status bar tip"));
|
|
||||||
about_qt -> setStatusTip(tr("Affiche des informations sur la biblioth\350que Qt", "status bar tip"));
|
|
||||||
|
|
||||||
// traitements speciaux
|
// traitements speciaux
|
||||||
add_text -> setCheckable(true);
|
add_text -> setCheckable(true);
|
||||||
windowed_view_mode -> setCheckable(true);
|
windowed_view_mode -> setCheckable(true);
|
||||||
@@ -349,8 +328,6 @@ void QETDiagramEditor::actions() {
|
|||||||
grp_view_mode -> addAction(tabbed_view_mode);
|
grp_view_mode -> addAction(tabbed_view_mode);
|
||||||
grp_view_mode -> setExclusive(true);
|
grp_view_mode -> setExclusive(true);
|
||||||
|
|
||||||
QETApp *qet_app = QETApp::instance();
|
|
||||||
|
|
||||||
// connexion a des slots
|
// connexion a des slots
|
||||||
connect(quit_editor, SIGNAL(triggered()), this, SLOT(close()) );
|
connect(quit_editor, SIGNAL(triggered()), this, SLOT(close()) );
|
||||||
connect(select_all, SIGNAL(triggered()), this, SLOT(slot_selectAll()) );
|
connect(select_all, SIGNAL(triggered()), this, SLOT(slot_selectAll()) );
|
||||||
@@ -359,14 +336,10 @@ void QETDiagramEditor::actions() {
|
|||||||
connect(delete_selection, SIGNAL(triggered()), this, SLOT(slot_delete()) );
|
connect(delete_selection, SIGNAL(triggered()), this, SLOT(slot_delete()) );
|
||||||
connect(rotate_selection, SIGNAL(triggered()), this, SLOT(slot_rotate()) );
|
connect(rotate_selection, SIGNAL(triggered()), this, SLOT(slot_rotate()) );
|
||||||
connect(rotate_texts, SIGNAL(triggered()), this, SLOT(slot_rotateTexts()) );
|
connect(rotate_texts, SIGNAL(triggered()), this, SLOT(slot_rotateTexts()) );
|
||||||
connect(fullscreen, SIGNAL(triggered()), this, SLOT(toggleFullScreen()) );
|
|
||||||
connect(configure, SIGNAL(triggered()), qet_app, SLOT(configureQET()) );
|
|
||||||
connect(windowed_view_mode, SIGNAL(triggered()), this, SLOT(setWindowedMode()) );
|
connect(windowed_view_mode, SIGNAL(triggered()), this, SLOT(setWindowedMode()) );
|
||||||
connect(tabbed_view_mode, SIGNAL(triggered()), this, SLOT(setTabbedMode()) );
|
connect(tabbed_view_mode, SIGNAL(triggered()), this, SLOT(setTabbedMode()) );
|
||||||
connect(mode_selection, SIGNAL(triggered()), this, SLOT(slot_setSelectionMode()) );
|
connect(mode_selection, SIGNAL(triggered()), this, SLOT(slot_setSelectionMode()) );
|
||||||
connect(mode_visualise, SIGNAL(triggered()), this, SLOT(slot_setVisualisationMode()) );
|
connect(mode_visualise, SIGNAL(triggered()), this, SLOT(slot_setVisualisationMode()) );
|
||||||
connect(about_qet, SIGNAL(triggered()), qet_app, SLOT(aboutQET()) );
|
|
||||||
connect(about_qt, SIGNAL(triggered()), qet_app, SLOT(aboutQt()) );
|
|
||||||
connect(prj_edit_prop, SIGNAL(triggered()), this, SLOT(editCurrentProjectProperties()));
|
connect(prj_edit_prop, SIGNAL(triggered()), this, SLOT(editCurrentProjectProperties()));
|
||||||
connect(prj_add_diagram, SIGNAL(triggered()), this, SLOT(addDiagramToProject()) );
|
connect(prj_add_diagram, SIGNAL(triggered()), this, SLOT(addDiagramToProject()) );
|
||||||
connect(prj_del_diagram, SIGNAL(triggered()), this, SLOT(removeDiagramFromProject()) );
|
connect(prj_del_diagram, SIGNAL(triggered()), this, SLOT(removeDiagramFromProject()) );
|
||||||
@@ -404,7 +377,6 @@ void QETDiagramEditor::actions() {
|
|||||||
Gere les evenements du l'editeur de schema
|
Gere les evenements du l'editeur de schema
|
||||||
Reimplemente ici pour :
|
Reimplemente ici pour :
|
||||||
* eviter un conflit sur le raccourci clavier "Ctrl+W" (QKeySequence::Close)
|
* eviter un conflit sur le raccourci clavier "Ctrl+W" (QKeySequence::Close)
|
||||||
* mettre a jour l'action permettant d'entrer en mode plein ecran ou d'en sortir
|
|
||||||
@param e Evenement
|
@param e Evenement
|
||||||
*/
|
*/
|
||||||
bool QETDiagramEditor::event(QEvent *e) {
|
bool QETDiagramEditor::event(QEvent *e) {
|
||||||
@@ -415,34 +387,27 @@ bool QETDiagramEditor::event(QEvent *e) {
|
|||||||
e -> accept();
|
e -> accept();
|
||||||
return(true);
|
return(true);
|
||||||
}
|
}
|
||||||
} else if (e -> type() == QEvent::WindowStateChange) {
|
|
||||||
slot_updateFullScreenAction();
|
|
||||||
}
|
}
|
||||||
return(QMainWindow::event(e));
|
return(QETMainWindow::event(e));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Mise en place des menus
|
Mise en place des menus
|
||||||
*/
|
*/
|
||||||
void QETDiagramEditor::menus() {
|
void QETDiagramEditor::menus() {
|
||||||
QMenu *menu_fichier = menuBar() -> addMenu(tr("&Fichier"));
|
|
||||||
QMenu *menu_edition = menuBar() -> addMenu(tr("&\311dition"));
|
|
||||||
QMenu *menu_project = menuBar() -> addMenu(tr("&Projet"));
|
|
||||||
QMenu *menu_affichage = menuBar() -> addMenu(tr("Afficha&ge"));
|
|
||||||
//QMenu *menu_outils = menuBar() -> addMenu(tr("O&utils"));
|
|
||||||
QMenu *menu_config = menuBar() -> addMenu(tr("&Configuration"));
|
|
||||||
windows_menu = menuBar() -> addMenu(tr("Fe&n\352tres"));
|
|
||||||
QMenu *menu_aide = menuBar() -> addMenu(tr("&Aide"));
|
|
||||||
|
|
||||||
// tear off feature rulezz... pas ^^ mais bon...
|
QMenu *menu_fichier = new QMenu(tr("&Fichier"));
|
||||||
menu_fichier -> setTearOffEnabled(true);
|
QMenu *menu_edition = new QMenu(tr("&\311dition"));
|
||||||
menu_edition -> setTearOffEnabled(true);
|
QMenu *menu_project = new QMenu(tr("&Projet"));
|
||||||
menu_project -> setTearOffEnabled(true);
|
QMenu *menu_affichage = new QMenu(tr("Afficha&ge"));
|
||||||
menu_affichage -> setTearOffEnabled(true);
|
//QMenu *menu_outils = new QMenu(tr("O&utils"));
|
||||||
//menu_outils -> setTearOffEnabled(true);
|
windows_menu = new QMenu(tr("Fe&n\352tres"));
|
||||||
menu_config -> setTearOffEnabled(true);
|
|
||||||
windows_menu -> setTearOffEnabled(true);
|
insertMenu(settings_menu_, menu_fichier);
|
||||||
menu_aide -> setTearOffEnabled(true);
|
insertMenu(settings_menu_, menu_edition);
|
||||||
|
insertMenu(settings_menu_, menu_project);
|
||||||
|
insertMenu(settings_menu_, menu_affichage);
|
||||||
|
insertMenu(help_menu_, windows_menu);
|
||||||
|
|
||||||
// menu Fichier
|
// menu Fichier
|
||||||
menu_fichier -> addAction(new_file);
|
menu_fichier -> addAction(new_file);
|
||||||
@@ -492,11 +457,6 @@ void QETDiagramEditor::menus() {
|
|||||||
menu_project -> addAction(prj_del_diagram);
|
menu_project -> addAction(prj_del_diagram);
|
||||||
menu_project -> addAction(prj_clean);
|
menu_project -> addAction(prj_clean);
|
||||||
|
|
||||||
// menu Configurer > Afficher
|
|
||||||
QMenu *display_toolbars = createPopupMenu();
|
|
||||||
display_toolbars -> setTearOffEnabled(true);
|
|
||||||
display_toolbars -> setTitle(tr("Afficher"));
|
|
||||||
display_toolbars -> setIcon(QET::Icons::ConfigureToolbars);
|
|
||||||
main_bar -> toggleViewAction() -> setStatusTip(tr("Affiche ou non la barre d'outils principale"));
|
main_bar -> toggleViewAction() -> setStatusTip(tr("Affiche ou non la barre d'outils principale"));
|
||||||
view_bar -> toggleViewAction() -> setStatusTip(tr("Affiche ou non la barre d'outils Affichage"));
|
view_bar -> toggleViewAction() -> setStatusTip(tr("Affiche ou non la barre d'outils Affichage"));
|
||||||
diagram_bar -> toggleViewAction() -> setStatusTip(tr("Affiche ou non la barre d'outils Sch\351ma"));
|
diagram_bar -> toggleViewAction() -> setStatusTip(tr("Affiche ou non la barre d'outils Sch\351ma"));
|
||||||
@@ -518,17 +478,8 @@ void QETDiagramEditor::menus() {
|
|||||||
menu_affichage -> addAction(zoom_fit);
|
menu_affichage -> addAction(zoom_fit);
|
||||||
menu_affichage -> addAction(zoom_reset);
|
menu_affichage -> addAction(zoom_reset);
|
||||||
|
|
||||||
// menu Configuration
|
|
||||||
menu_config -> addMenu(display_toolbars);
|
|
||||||
menu_config -> addAction(fullscreen);
|
|
||||||
menu_config -> addAction(configure);
|
|
||||||
|
|
||||||
// menu Fenetres
|
// menu Fenetres
|
||||||
slot_updateWindowsMenu();
|
slot_updateWindowsMenu();
|
||||||
|
|
||||||
// menu Aide
|
|
||||||
menu_aide -> addAction(about_qet);
|
|
||||||
menu_aide -> addAction(about_qt);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -1122,7 +1073,6 @@ void QETDiagramEditor::slot_updateActions() {
|
|||||||
redo -> setEnabled(false);
|
redo -> setEnabled(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
slot_updateFullScreenAction();
|
|
||||||
slot_updateModeActions();
|
slot_updateModeActions();
|
||||||
slot_updatePasteAction();
|
slot_updatePasteAction();
|
||||||
slot_updateComplexActions();
|
slot_updateComplexActions();
|
||||||
@@ -1154,20 +1104,6 @@ void QETDiagramEditor::slot_updateComplexActions() {
|
|||||||
rotate_texts -> setEnabled(editable_diagram && selected_texts);
|
rotate_texts -> setEnabled(editable_diagram && selected_texts);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
Gere l'action permettant de passer en plein ecran ou d'en sortir
|
|
||||||
*/
|
|
||||||
void QETDiagramEditor::slot_updateFullScreenAction() {
|
|
||||||
if (windowState() & Qt::WindowFullScreen) {
|
|
||||||
fullscreen -> setText(tr("Sortir du &mode plein \351cran"));
|
|
||||||
fullscreen -> setIcon(QET::Icons::FullScreenExit);
|
|
||||||
fullscreen -> setStatusTip(tr("Affiche QElectroTech en mode fen\352tr\351", "status bar tip"));
|
|
||||||
} else {
|
|
||||||
fullscreen -> setText(tr("Passer en &mode plein \351cran"));
|
|
||||||
fullscreen -> setIcon(QET::Icons::FullScreenEnter);
|
|
||||||
fullscreen -> setStatusTip(tr("Affiche QElectroTech en mode plein \351cran", "status bar tip"));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Gere les actions relatives au mode du schema
|
Gere les actions relatives au mode du schema
|
||||||
|
|||||||
@@ -18,6 +18,7 @@
|
|||||||
#ifndef QET_DIAGRAM_EDITOR_H
|
#ifndef QET_DIAGRAM_EDITOR_H
|
||||||
#define QET_DIAGRAM_EDITOR_H
|
#define QET_DIAGRAM_EDITOR_H
|
||||||
#include <QtGui>
|
#include <QtGui>
|
||||||
|
#include "qetmainwindow.h"
|
||||||
#include "borderproperties.h"
|
#include "borderproperties.h"
|
||||||
#include "conductorproperties.h"
|
#include "conductorproperties.h"
|
||||||
#include "titleblockproperties.h"
|
#include "titleblockproperties.h"
|
||||||
@@ -36,7 +37,7 @@ class RecentFiles;
|
|||||||
"DiagramView" en guise de widget central et un "Panel d'Elements" en
|
"DiagramView" en guise de widget central et un "Panel d'Elements" en
|
||||||
guise de widget "Dock".
|
guise de widget "Dock".
|
||||||
*/
|
*/
|
||||||
class QETDiagramEditor : public QMainWindow {
|
class QETDiagramEditor : public QETMainWindow {
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
|
||||||
// constructeurs, destructeur
|
// constructeurs, destructeur
|
||||||
@@ -80,7 +81,6 @@ class QETDiagramEditor : public QMainWindow {
|
|||||||
void toolbar();
|
void toolbar();
|
||||||
|
|
||||||
public slots:
|
public slots:
|
||||||
void toggleFullScreen();
|
|
||||||
void printDialog();
|
void printDialog();
|
||||||
void exportDialog();
|
void exportDialog();
|
||||||
bool saveAsDialog();
|
bool saveAsDialog();
|
||||||
@@ -108,7 +108,6 @@ class QETDiagramEditor : public QMainWindow {
|
|||||||
void slot_setSelectionMode();
|
void slot_setSelectionMode();
|
||||||
void slot_setVisualisationMode();
|
void slot_setVisualisationMode();
|
||||||
void slot_updateActions();
|
void slot_updateActions();
|
||||||
void slot_updateFullScreenAction();
|
|
||||||
void slot_updateModeActions();
|
void slot_updateModeActions();
|
||||||
void slot_updateComplexActions();
|
void slot_updateComplexActions();
|
||||||
void slot_updatePasteAction();
|
void slot_updatePasteAction();
|
||||||
@@ -196,10 +195,6 @@ class QETDiagramEditor : public QMainWindow {
|
|||||||
QAction *zoom_out; ///< Zoome arriere
|
QAction *zoom_out; ///< Zoome arriere
|
||||||
QAction *zoom_fit; ///< Ajuste le zoom de facon a voir l'integralite des elements
|
QAction *zoom_fit; ///< Ajuste le zoom de facon a voir l'integralite des elements
|
||||||
QAction *zoom_reset; ///< Remet le zoom 1:1
|
QAction *zoom_reset; ///< Remet le zoom 1:1
|
||||||
QAction *about_qet; ///< Lance le dialogue "A propos de QElectroTech"
|
|
||||||
QAction *about_qt; ///< Lance le dialogue "A propos de Qt"
|
|
||||||
QAction *configure; ///< Lance le dialogue de configuration de QElectroTech
|
|
||||||
QAction *fullscreen; ///< Passe en mode plein ecran ou en sort
|
|
||||||
QAction *tile_window; ///< Affiche les fenetre MDI en mosaique
|
QAction *tile_window; ///< Affiche les fenetre MDI en mosaique
|
||||||
QAction *cascade_window; ///< Affiche les fenetres MDI en cascade
|
QAction *cascade_window; ///< Affiche les fenetres MDI en cascade
|
||||||
QAction *prev_window; ///< Affiche la fenetre MDI precedente
|
QAction *prev_window; ///< Affiche la fenetre MDI precedente
|
||||||
|
|||||||
Reference in New Issue
Block a user