Mise a jour des traductions

Nettoyage des entetes des classes QETDiagramEditor et DiagramView


git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/trunk@146 bfdf4180-ca20-0410-9c96-a3a8aa849046
This commit is contained in:
xavierqet
2007-09-29 12:54:01 +00:00
parent 90fd503a38
commit 5406224a4f
7 changed files with 771 additions and 595 deletions

View File

@@ -29,7 +29,7 @@ Diagram::Diagram(QObject *parent) : QGraphicsScene(parent), qgi_manager(this) {
Destructeur Destructeur
*/ */
Diagram::~Diagram() { Diagram::~Diagram() {
}; }
/** /**
Dessine l'arriere-plan du schema, cad la grille. Dessine l'arriere-plan du schema, cad la grille.

View File

@@ -6,9 +6,10 @@
#include "diagramcommands.h" #include "diagramcommands.h"
/** /**
Initialise le DiagramView Constructeur
@param parent Le QWidegt parent de cette vue de schema
*/ */
void DiagramView::initialise() { DiagramView::DiagramView(QWidget *parent) : QGraphicsView(parent) {
setInteractive(true); setInteractive(true);
setCacheMode(QGraphicsView::CacheBackground); setCacheMode(QGraphicsView::CacheBackground);
setOptimizationFlags(QGraphicsView::DontClipPainter|QGraphicsView::DontSavePainterState|QGraphicsView::DontAdjustForAntialiasing); setOptimizationFlags(QGraphicsView::DontClipPainter|QGraphicsView::DontSavePainterState|QGraphicsView::DontAdjustForAntialiasing);
@@ -34,21 +35,6 @@ void DiagramView::initialise() {
connect(&(scene -> undoStack()), SIGNAL(cleanChanged(bool)), this, SLOT(updateWindowTitle())); connect(&(scene -> undoStack()), SIGNAL(cleanChanged(bool)), this, SLOT(updateWindowTitle()));
} }
/**
Constructeur par defaut
*/
DiagramView::DiagramView() : QGraphicsView() {
initialise();
}
/**
Constructeur
@param parent Le QWidegt parent de cette vue de schema
*/
DiagramView::DiagramView(QWidget *parent) : QGraphicsView(parent) {
initialise();
}
/** /**
Destructeur Destructeur
*/ */
@@ -82,7 +68,7 @@ void DiagramView::selectInvert() {
/** /**
Supprime les composants selectionnes Supprime les composants selectionnes
*/ */
void DiagramView::supprimer() { void DiagramView::deleteSelection() {
QSet<Element *> garbage_elmt; QSet<Element *> garbage_elmt;
QSet<Conducer *> garbage_conducers; QSet<Conducer *> garbage_conducers;
@@ -106,7 +92,7 @@ void DiagramView::supprimer() {
/** /**
Pivote les composants selectionnes Pivote les composants selectionnes
*/ */
void DiagramView::pivoter() { void DiagramView::rotateSelection() {
if (scene -> selectedItems().isEmpty()) return; if (scene -> selectedItems().isEmpty()) return;
QHash<Element *, QET::Orientation> elements_to_rotate; QHash<Element *, QET::Orientation> elements_to_rotate;
foreach (QGraphicsItem *item, scene -> selectedItems()) { foreach (QGraphicsItem *item, scene -> selectedItems()) {
@@ -177,7 +163,7 @@ void DiagramView::setSelectionMode() {
/** /**
Agrandit le schema (+33% = inverse des -25 % de zoomMoins()) Agrandit le schema (+33% = inverse des -25 % de zoomMoins())
*/ */
void DiagramView::zoomPlus() { void DiagramView::zoomIn() {
scale(4.0/3.0, 4.0/3.0); scale(4.0/3.0, 4.0/3.0);
adjustGridToZoom(); adjustGridToZoom();
} }
@@ -185,7 +171,7 @@ void DiagramView::zoomPlus() {
/** /**
Retrecit le schema (-25% = inverse des +33 % de zoomPlus()) Retrecit le schema (-25% = inverse des +33 % de zoomPlus())
*/ */
void DiagramView::zoomMoins() { void DiagramView::zoomOut() {
scale(0.75, 0.75); scale(0.75, 0.75);
adjustGridToZoom(); adjustGridToZoom();
} }
@@ -216,8 +202,8 @@ void DiagramView::zoomReset() {
/** /**
copie les elements selectionnes du schema dans le presse-papier puis les supprime copie les elements selectionnes du schema dans le presse-papier puis les supprime
*/ */
void DiagramView::couper() { void DiagramView::cut() {
copier(); copy();
QSet<Element *> cut_elmt; QSet<Element *> cut_elmt;
QSet<Conducer *> cut_conducers; QSet<Conducer *> cut_conducers;
@@ -240,7 +226,7 @@ void DiagramView::couper() {
/** /**
copie les elements selectionnes du schema dans le presse-papier copie les elements selectionnes du schema dans le presse-papier
*/ */
void DiagramView::copier() { void DiagramView::copy() {
QClipboard *presse_papier = QApplication::clipboard(); QClipboard *presse_papier = QApplication::clipboard();
QString contenu_presse_papier = scene -> toXml(false).toString(4); QString contenu_presse_papier = scene -> toXml(false).toString(4);
if (presse_papier -> supportsSelection()) presse_papier -> setText(contenu_presse_papier, QClipboard::Selection); if (presse_papier -> supportsSelection()) presse_papier -> setText(contenu_presse_papier, QClipboard::Selection);
@@ -250,7 +236,7 @@ void DiagramView::copier() {
/** /**
importe les elements contenus dans le presse-papier dans le schema importe les elements contenus dans le presse-papier dans le schema
*/ */
void DiagramView::coller() { void DiagramView::paste() {
QString texte_presse_papier; QString texte_presse_papier;
QDomDocument document_xml; QDomDocument document_xml;
if ((texte_presse_papier = QApplication::clipboard() -> text()) == QString()) return; if ((texte_presse_papier = QApplication::clipboard() -> text()) == QString()) return;
@@ -295,11 +281,11 @@ void DiagramView::mousePressEvent(QMouseEvent *e) {
/** /**
Ouvre un fichier *.qet dans cette DiagramView Ouvre un fichier *.qet dans cette DiagramView
@param nom_fichier Nom du fichier a ouvrir @param n_fichier Nom du fichier a ouvrir
@param erreur Si le pointeur est specifie, cet entier est mis a 0 en cas de reussite de l'ouverture, 1 si le fichier n'existe pas, 2 si le fichier n'est pas lisible, 3 si le fichier n'est pas un element XML, 4 si l'ouverture du fichier a echoue pour une autre raison (c'est pas ca qui manque ^^) @param erreur Si le pointeur est specifie, cet entier est mis a 0 en cas de reussite de l'ouverture, 1 si le fichier n'existe pas, 2 si le fichier n'est pas lisible, 3 si le fichier n'est pas un element XML, 4 si l'ouverture du fichier a echoue pour une autre raison (c'est pas ca qui manque ^^)
@return true si l'ouverture a reussi, false sinon @return true si l'ouverture a reussi, false sinon
*/ */
bool DiagramView::ouvrir(QString n_fichier, int *erreur) { bool DiagramView::open(QString n_fichier, int *erreur) {
// verifie l'existence du fichier // verifie l'existence du fichier
if (!QFileInfo(n_fichier).exists()) { if (!QFileInfo(n_fichier).exists()) {
if (erreur != NULL) *erreur = 1; if (erreur != NULL) *erreur = 1;
@@ -326,7 +312,7 @@ bool DiagramView::ouvrir(QString n_fichier, int *erreur) {
QDomDocument &doc = document; QDomDocument &doc = document;
if (scene -> fromXml(doc)) { if (scene -> fromXml(doc)) {
if (erreur != NULL) *erreur = 0; if (erreur != NULL) *erreur = 0;
nom_fichier = n_fichier; file_name = n_fichier;
scene -> undoStack().setClean(); scene -> undoStack().setClean();
return(true); return(true);
} else { } else {
@@ -362,7 +348,7 @@ void DiagramView::closeEvent(QCloseEvent *event) {
); );
switch(reponse) { switch(reponse) {
case QMessageBox::Cancel: retour = false; break; // l'utilisateur annule : echec de la fermeture case QMessageBox::Cancel: retour = false; break; // l'utilisateur annule : echec de la fermeture
case QMessageBox::Yes: retour = enregistrer(); break; // l'utilisateur dit oui : la reussite depend de l'enregistrement case QMessageBox::Yes: retour = save(); break; // l'utilisateur dit oui : la reussite depend de l'enregistrement
default: retour = true; // l'utilisateur dit non ou ferme le dialogue: c'est reussi default: retour = true; // l'utilisateur dit non ou ferme le dialogue: c'est reussi
} }
} }
@@ -375,12 +361,12 @@ void DiagramView::closeEvent(QCloseEvent *event) {
/** /**
Methode enregistrant le schema dans le dernier nom de fichier connu. Methode enregistrant le schema dans le dernier nom de fichier connu.
Si aucun nom de fichier n'est connu, cette methode appelle la methode enregistrer_sous Si aucun nom de fichier n'est connu, cette methode appelle la methode saveAs
@return true si l'enregistrement a reussi, false sinon @return true si l'enregistrement a reussi, false sinon
*/ */
bool DiagramView::enregistrer() { bool DiagramView::save() {
if (nom_fichier == QString()) return(enregistrer_sous()); if (file_name == QString()) return(saveAs());
else return(private_enregistrer(nom_fichier)); else return(saveDiagramToFile(file_name));
} }
/** /**
@@ -390,8 +376,9 @@ bool DiagramView::enregistrer() {
Si l'enregistrement reussit, le nom du fichier est conserve et la fonction renvoie true. Si l'enregistrement reussit, le nom du fichier est conserve et la fonction renvoie true.
Sinon, faux est renvoye. Sinon, faux est renvoye.
@return true si l'enregistrement a reussi, false sinon @return true si l'enregistrement a reussi, false sinon
@todo detecter le chemin du bureau automatiquement
*/ */
bool DiagramView::enregistrer_sous() { bool DiagramView::saveAs() {
// demande un nom de fichier a l'utilisateur pour enregistrer le schema // demande un nom de fichier a l'utilisateur pour enregistrer le schema
QString n_fichier = QFileDialog::getSaveFileName( QString n_fichier = QFileDialog::getSaveFileName(
this, this,
@@ -404,11 +391,11 @@ bool DiagramView::enregistrer_sous() {
// si le nom ne se termine pas par l'extension .qet, celle-ci est ajoutee // si le nom ne se termine pas par l'extension .qet, celle-ci est ajoutee
if (!n_fichier.endsWith(".qet", Qt::CaseInsensitive)) n_fichier += ".qet"; if (!n_fichier.endsWith(".qet", Qt::CaseInsensitive)) n_fichier += ".qet";
// tente d'enregistrer le fichier // tente d'enregistrer le fichier
bool resultat_enregistrement = private_enregistrer(n_fichier); bool resultat_enregistrement = saveDiagramToFile(n_fichier);
// si l'enregistrement reussit, le nom du fichier est conserve // si l'enregistrement reussit, le nom du fichier est conserve
if (resultat_enregistrement) { if (resultat_enregistrement) {
nom_fichier = n_fichier; file_name = n_fichier;
setWindowTitle(nom_fichier + "[*]"); updateWindowTitle();
} }
// retourne un booleen representatif de la reussite de l'enregistrement // retourne un booleen representatif de la reussite de l'enregistrement
return(resultat_enregistrement); return(resultat_enregistrement);
@@ -418,10 +405,10 @@ bool DiagramView::enregistrer_sous() {
Methode privee gerant l'enregistrement du fichier XML. S'il n'est pas possible Methode privee gerant l'enregistrement du fichier XML. S'il n'est pas possible
d'ecrire dans le fichier, cette fonction affiche un message d'erreur et renvoie false. d'ecrire dans le fichier, cette fonction affiche un message d'erreur et renvoie false.
Autrement, elle renvoie true. Autrement, elle renvoie true.
@param nom_fichier Nom du fichier dans lequel l'arbre XML doit etre ecrit @param n_fichier Nom du fichier dans lequel l'arbre XML doit etre ecrit
@return true si l'enregistrement a reussi, false sinon @return true si l'enregistrement a reussi, false sinon
*/ */
bool DiagramView::private_enregistrer(QString &n_fichier) { bool DiagramView::saveDiagramToFile(QString &n_fichier) {
QFile fichier(n_fichier); QFile fichier(n_fichier);
if (!fichier.open(QIODevice::WriteOnly | QIODevice::Text)) { if (!fichier.open(QIODevice::WriteOnly | QIODevice::Text)) {
QMessageBox::warning(this, tr("Erreur"), tr("Impossible d'ecrire dans ce fichier")); QMessageBox::warning(this, tr("Erreur"), tr("Impossible d'ecrire dans ce fichier"));
@@ -589,8 +576,8 @@ void DiagramView::adjustSceneRect() {
void DiagramView::updateWindowTitle() { void DiagramView::updateWindowTitle() {
QString window_title; QString window_title;
if (nom_fichier.isNull()) window_title += tr("nouveau sch\351ma"); if (file_name.isNull()) window_title += tr("nouveau sch\351ma");
else window_title += nom_fichier; else window_title += file_name;
window_title += "[*]"; window_title += "[*]";
setWindowTitle(window_title); setWindowTitle(window_title);
setWindowModified(!(scene -> undoStack().isClean())); setWindowModified(!(scene -> undoStack().isClean()));

View File

@@ -10,7 +10,6 @@ class DiagramView : public QGraphicsView {
// constructeurs, destructeur // constructeurs, destructeur
public: public:
DiagramView();
DiagramView(QWidget * = 0); DiagramView(QWidget * = 0);
virtual ~DiagramView(); virtual ~DiagramView();
@@ -18,17 +17,18 @@ class DiagramView : public QGraphicsView {
DiagramView(const DiagramView &); DiagramView(const DiagramView &);
// attributs // attributs
public:
QString file_name;
private: private:
Diagram *scene; Diagram *scene;
QList<QGraphicsItem *> garbage;
// methodes // methodes
public: public:
bool ouvrir(QString, int * = NULL); bool open(QString, int * = NULL);
void closeEvent(QCloseEvent *); void closeEvent(QCloseEvent *);
QString nom_fichier; bool save();
bool enregistrer(); bool saveAs();
bool enregistrer_sous();
void dialogExport(); void dialogExport();
void dialogEditInfos(); void dialogEditInfos();
void dialogPrint(); void dialogPrint();
@@ -40,8 +40,7 @@ class DiagramView : public QGraphicsView {
bool hasSelectedItems(); bool hasSelectedItems();
private: private:
bool private_enregistrer(QString &); bool saveDiagramToFile(QString &);
void initialise();
void mousePressEvent(QMouseEvent *); void mousePressEvent(QMouseEvent *);
void dragEnterEvent(QDragEnterEvent *); void dragEnterEvent(QDragEnterEvent *);
void dragLeaveEvent(QDragLeaveEvent *); void dragLeaveEvent(QDragLeaveEvent *);
@@ -58,17 +57,17 @@ class DiagramView : public QGraphicsView {
void selectNothing(); void selectNothing();
void selectAll(); void selectAll();
void selectInvert(); void selectInvert();
void supprimer(); void deleteSelection();
void pivoter(); void rotateSelection();
void setVisualisationMode(); void setVisualisationMode();
void setSelectionMode(); void setSelectionMode();
void zoomPlus(); void zoomIn();
void zoomMoins(); void zoomOut();
void zoomFit(); void zoomFit();
void zoomReset(); void zoomReset();
void couper(); void cut();
void copier(); void copy();
void coller(); void paste();
void adjustSceneRect(); void adjustSceneRect();
void updateWindowTitle(); void updateWindowTitle();

Binary file not shown.

File diff suppressed because it is too large Load Diff

View File

@@ -31,7 +31,7 @@ QETDiagramEditor::QETDiagramEditor(const QStringList &files, QWidget *parent) :
// alors on ouvre ces fichiers // alors on ouvre ces fichiers
foreach(QString file, files) { foreach(QString file, files) {
DiagramView *sv = new DiagramView(this); DiagramView *sv = new DiagramView(this);
if (sv -> ouvrir(file)) diagram_views << sv; if (sv -> open(file)) diagram_views << sv;
else delete sv; else delete sv;
} }
} }
@@ -49,7 +49,7 @@ QETDiagramEditor::QETDiagramEditor(const QStringList &files, QWidget *parent) :
setWindowIcon(QIcon(":/ico/qet.png")); setWindowIcon(QIcon(":/ico/qet.png"));
// barre de statut de la fenetre // barre de statut de la fenetre
statusBar() -> showMessage(tr("QElectrotech")); statusBar() -> showMessage(tr("QElectroTech"));
// ajout du panel d'Appareils en tant que QDockWidget // ajout du panel d'Appareils en tant que QDockWidget
qdw_pa = new QDockWidget(tr("Panel d'appareils"), this); qdw_pa = new QDockWidget(tr("Panel d'appareils"), this);
@@ -94,21 +94,21 @@ QETDiagramEditor::~QETDiagramEditor() {
*/ */
void QETDiagramEditor::closeEvent(QCloseEvent *qce) { void QETDiagramEditor::closeEvent(QCloseEvent *qce) {
// quitte directement s'il n'y a aucun schema ouvert // quitte directement s'il n'y a aucun schema ouvert
bool peut_quitter = true; bool can_quit = true;
if (currentDiagram()) { if (currentDiagram()) {
// sinon demande la permission de fermer chaque schema // sinon demande la permission de fermer chaque schema
foreach(QWidget *fenetre, workspace.windowList()) { foreach(QWidget *diagram_window, workspace.windowList()) {
if (qobject_cast<DiagramView *>(fenetre)) { if (qobject_cast<DiagramView *>(diagram_window)) {
workspace.setActiveWindow(fenetre); workspace.setActiveWindow(diagram_window);
if (!fermer()) { if (!closeDiagram()) {
peut_quitter = false; can_quit = false;
qce -> ignore(); qce -> ignore();
break; break;
} }
} }
} }
} }
if (peut_quitter) { if (can_quit) {
setAttribute(Qt::WA_DeleteOnClose); setAttribute(Qt::WA_DeleteOnClose);
qce -> accept(); qce -> accept();
} }
@@ -128,7 +128,7 @@ void QETDiagramEditor::toggleFullScreen() {
le dialogue n'a pas a etre recree et il apparait instantanement. Il est le dialogue n'a pas a etre recree et il apparait instantanement. Il est
detruit en meme temps que son parent (ici, la QETDiagramEditor). detruit en meme temps que son parent (ici, la QETDiagramEditor).
*/ */
void QETDiagramEditor::aPropos() { void QETDiagramEditor::aboutQET() {
static AboutQET *apqet = new AboutQET(this); static AboutQET *apqet = new AboutQET(this);
apqet -> exec(); apqet -> exec();
} }
@@ -138,134 +138,134 @@ void QETDiagramEditor::aPropos() {
*/ */
void QETDiagramEditor::actions() { void QETDiagramEditor::actions() {
// icones et labels // icones et labels
nouveau_fichier = new QAction(QIcon(":/ico/new.png"), tr("&Nouveau"), this); new_file = new QAction(QIcon(":/ico/new.png"), tr("&Nouveau"), this);
ouvrir_fichier = new QAction(QIcon(":/ico/open.png"), tr("&Ouvrir"), this); open_file = new QAction(QIcon(":/ico/open.png"), tr("&Ouvrir"), this);
fermer_fichier = new QAction(QIcon(":/ico/fileclose.png"), tr("&Fermer"), this); close_file = new QAction(QIcon(":/ico/fileclose.png"), tr("&Fermer"), this);
enr_fichier = new QAction(QIcon(":/ico/save.png"), tr("&Enregistrer"), this); save_file = new QAction(QIcon(":/ico/save.png"), tr("&Enregistrer"), this);
enr_fichier_sous = new QAction(QIcon(":/ico/saveas.png"), tr("Enregistrer sous"), this); save_file_sous = new QAction(QIcon(":/ico/saveas.png"), tr("Enregistrer sous"), this);
importer = new QAction(QIcon(":/ico/import.png"), tr("&Importer"), this); import_diagram = new QAction(QIcon(":/ico/import.png"), tr("&Importer"), this);
exporter = new QAction(QIcon(":/ico/export.png"), tr("E&xporter"), this); export_diagram = new QAction(QIcon(":/ico/export.png"), tr("E&xporter"), this);
imprimer = new QAction(QIcon(":/ico/print.png"), tr("Imprimer"), this); print = new QAction(QIcon(":/ico/print.png"), tr("Imprimer"), this);
quitter_qet = new QAction(QIcon(":/ico/exit.png"), tr("&Quitter"), this); quit_editor = new QAction(QIcon(":/ico/exit.png"), tr("&Quitter"), this);
annuler = undo_group.createUndoAction(this, tr("Annuler")); undo = undo_group.createUndoAction(this, tr("Annuler"));
annuler -> setIcon(QIcon(":/ico/undo.png")); undo -> setIcon(QIcon(":/ico/undo.png"));
refaire = undo_group.createRedoAction(this, tr("Refaire")); redo = undo_group.createRedoAction(this, tr("Refaire"));
refaire -> setIcon(QIcon(":/ico/redo.png")); redo -> setIcon(QIcon(":/ico/redo.png"));
couper = new QAction(QIcon(":/ico/cut.png"), tr("Co&uper"), this); cut = new QAction(QIcon(":/ico/cut.png"), tr("Co&uper"), this);
copier = new QAction(QIcon(":/ico/copy.png"), tr("Cop&ier"), this); copy = new QAction(QIcon(":/ico/copy.png"), tr("Cop&ier"), this);
coller = new QAction(QIcon(":/ico/paste.png"), tr("C&oller"), this); paste = new QAction(QIcon(":/ico/paste.png"), tr("C&oller"), this);
sel_tout = new QAction( tr("Tout s\351lectionner"), this); select_all = new QAction( tr("Tout s\351lectionner"), this);
sel_rien = new QAction( tr("D\351s\351lectionner tout"), this); select_nothing = new QAction( tr("D\351s\351lectionner tout"), this);
sel_inverse = new QAction( tr("Inverser la s\351lection"), this); select_invert = new QAction( tr("Inverser la s\351lection"), this);
supprimer = new QAction(QIcon(":/ico/delete.png"), tr("Supprimer"), this); delete_selection = new QAction(QIcon(":/ico/delete.png"), tr("Supprimer"), this);
pivoter = new QAction(QIcon(":/ico/pivoter.png"), tr("Pivoter"), this); rotate_selection = new QAction(QIcon(":/ico/pivoter.png"), tr("Pivoter"), this);
infos_diagram = new QAction(QIcon(":/ico/info.png"), tr("Informations sur le sch\351ma"), this); infos_diagram = new QAction(QIcon(":/ico/info.png"), tr("Informations sur le sch\351ma"), this);
add_column = new QAction(QIcon(":/ico/add_col.png"), tr("Ajouter une colonne"), this); add_column = new QAction(QIcon(":/ico/add_col.png"), tr("Ajouter une colonne"), this);
remove_column = new QAction(QIcon(":/ico/remove_col.png"), tr("Enlever une colonne"), this); remove_column = new QAction(QIcon(":/ico/remove_col.png"), tr("Enlever une colonne"), this);
expand_diagram = new QAction( tr("Agrandir le sch\351ma"), this); expand_diagram = new QAction( tr("Agrandir le sch\351ma"), this);
shrink_diagram = new QAction( tr("R\351tr\351cir le sch\351ma"), this); shrink_diagram = new QAction( tr("R\351tr\351cir le sch\351ma"), this);
zoom_avant = new QAction(QIcon(":/ico/viewmag+.png"), tr("Zoom avant"), this); zoom_in = new QAction(QIcon(":/ico/viewmag+.png"), tr("Zoom avant"), this);
zoom_arriere = new QAction(QIcon(":/ico/viewmag-.png"), tr("Zoom arri\350re"), this); zoom_out = new QAction(QIcon(":/ico/viewmag-.png"), tr("Zoom arri\350re"), this);
zoom_adapte = new QAction(QIcon(":/ico/viewmagfit.png"), tr("Zoom adapt\351"), this); zoom_fit = new QAction(QIcon(":/ico/viewmagfit.png"), tr("Zoom adapt\351"), this);
zoom_reset = new QAction(QIcon(":/ico/viewmag.png"), tr("Pas de zoom"), this); zoom_reset = new QAction(QIcon(":/ico/viewmag.png"), tr("Pas de zoom"), this);
mode_selection = new QAction(QIcon(":/ico/select.png"), tr("Mode Selection"), this); mode_selection = new QAction(QIcon(":/ico/select.png"), tr("Mode Selection"), this);
mode_visualise = new QAction(QIcon(":/ico/move.png"), tr("Mode Visualisation"), this); mode_visualise = new QAction(QIcon(":/ico/move.png"), tr("Mode Visualisation"), this);
entrer_pe = new QAction(QIcon(":/ico/entrer_fs.png"), tr("Passer en &mode plein \351cran"), this); fullscreen_on = new QAction(QIcon(":/ico/entrer_fs.png"), tr("Passer en &mode plein \351cran"), this);
sortir_pe = new QAction(QIcon(":/ico/sortir_fs.png"), tr("Sortir du &mode plein \351cran"), this); fullscreen_off = new QAction(QIcon(":/ico/sortir_fs.png"), tr("Sortir du &mode plein \351cran"), this);
configurer = new QAction(QIcon(":/ico/configure.png"), tr("&Configurer QElectroTech"), this); configure = new QAction(QIcon(":/ico/configure.png"), tr("&Configurer QElectroTech"), this);
f_mosaique = new QAction( tr("&Mosa\357que"), this); tile_window = new QAction( tr("&Mosa\357que"), this);
f_cascade = new QAction( tr("&Cascade"), this); cascade_window = new QAction( tr("&Cascade"), this);
f_reorganise = new QAction( tr("Arranger les fen\352tres r\351duites"), this); arrange_window = new QAction( tr("Arranger les fen\352tres r\351duites"), this);
f_suiv = new QAction( tr("Fen\352tre suivante"), this); next_window = new QAction( tr("Fen\352tre suivante"), this);
f_prec = new QAction( tr("Fen\352tre pr\351c\351dente"), this); prev_window = new QAction( tr("Fen\352tre pr\351c\351dente"), this);
a_propos_de_qet = new QAction(QIcon(":/ico/qet.png"), tr("\300 &propos de QElectroTech"), this); about_qet = new QAction(QIcon(":/ico/qet.png"), tr("\300 &propos de QElectroTech"), this);
a_propos_de_qt = new QAction(QIcon(":/ico/qt.png"), tr("\300 propos de &Qt"), this); about_qt = new QAction(QIcon(":/ico/qt.png"), tr("\300 propos de &Qt"), this);
// raccourcis clavier // raccourcis clavier
nouveau_fichier -> setShortcut(QKeySequence::New); new_file -> setShortcut(QKeySequence::New);
ouvrir_fichier -> setShortcut(QKeySequence::Open); open_file -> setShortcut(QKeySequence::Open);
fermer_fichier -> setShortcut(QKeySequence::Close); close_file -> setShortcut(QKeySequence::Close);
enr_fichier -> setShortcut(QKeySequence::Save); save_file -> setShortcut(QKeySequence::Save);
importer -> setShortcut(QKeySequence(tr("Ctrl+Shift+I"))); import_diagram -> setShortcut(QKeySequence(tr("Ctrl+Shift+I")));
exporter -> setShortcut(QKeySequence(tr("Ctrl+Shift+X"))); export_diagram -> setShortcut(QKeySequence(tr("Ctrl+Shift+X")));
imprimer -> setShortcut(QKeySequence(QKeySequence::Print)); print -> setShortcut(QKeySequence(QKeySequence::Print));
quitter_qet -> setShortcut(QKeySequence(tr("Ctrl+Q"))); quit_editor -> setShortcut(QKeySequence(tr("Ctrl+Q")));
annuler -> setShortcut(QKeySequence::Undo); undo -> setShortcut(QKeySequence::Undo);
refaire -> setShortcut(QKeySequence::Redo); redo -> setShortcut(QKeySequence::Redo);
couper -> setShortcut(QKeySequence::Cut); cut -> setShortcut(QKeySequence::Cut);
copier -> setShortcut(QKeySequence::Copy); copy -> setShortcut(QKeySequence::Copy);
coller -> setShortcut(QKeySequence::Paste); paste -> setShortcut(QKeySequence::Paste);
sel_tout -> setShortcut(QKeySequence::SelectAll); select_all -> setShortcut(QKeySequence::SelectAll);
sel_rien -> setShortcut(QKeySequence(tr("Ctrl+Shift+A"))); select_nothing -> setShortcut(QKeySequence(tr("Ctrl+Shift+A")));
sel_inverse -> setShortcut(QKeySequence(tr("Ctrl+I"))); select_invert -> setShortcut(QKeySequence(tr("Ctrl+I")));
supprimer -> setShortcut(QKeySequence(tr("Ctrl+Suppr"))); delete_selection -> setShortcut(QKeySequence(tr("Ctrl+Suppr")));
pivoter -> setShortcut(QKeySequence(tr("Ctrl+R"))); rotate_selection -> setShortcut(QKeySequence(tr("Ctrl+R")));
zoom_avant -> setShortcut(QKeySequence::ZoomIn); zoom_in -> setShortcut(QKeySequence::ZoomIn);
zoom_arriere -> setShortcut(QKeySequence::ZoomOut); zoom_out -> setShortcut(QKeySequence::ZoomOut);
zoom_adapte -> 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")));
entrer_pe -> setShortcut(QKeySequence(tr("Ctrl+Shift+F"))); fullscreen_on -> setShortcut(QKeySequence(tr("Ctrl+Shift+F")));
sortir_pe -> setShortcut(QKeySequence(tr("Ctrl+Shift+F"))); fullscreen_off -> setShortcut(QKeySequence(tr("Ctrl+Shift+F")));
f_suiv -> setShortcut(QKeySequence::NextChild); next_window -> setShortcut(QKeySequence::NextChild);
f_prec -> setShortcut(QKeySequence::PreviousChild); prev_window -> setShortcut(QKeySequence::PreviousChild);
// affichage dans la barre de statut // affichage dans la barre de statut
nouveau_fichier -> setStatusTip(tr("Cr\351e un nouveau sch\351ma")); new_file -> setStatusTip(tr("Cr\351e un nouveau sch\351ma"));
ouvrir_fichier -> setStatusTip(tr("Ouvre un sch\351ma existant")); open_file -> setStatusTip(tr("Ouvre un sch\351ma existant"));
fermer_fichier -> setStatusTip(tr("Ferme le sch\351ma courant")); close_file -> setStatusTip(tr("Ferme le sch\351ma courant"));
enr_fichier -> setStatusTip(tr("Enregistre le sch\351ma courant")); save_file -> setStatusTip(tr("Enregistre le sch\351ma courant"));
enr_fichier_sous -> setStatusTip(tr("Enregistre le sch\351ma courant avec un autre nom de fichier")); save_file_sous -> setStatusTip(tr("Enregistre le sch\351ma courant avec un autre nom de fichier"));
importer -> setStatusTip(tr("Importe un sch\351ma dans le sch\351ma courant")); import_diagram -> setStatusTip(tr("Importe un sch\351ma dans le sch\351ma courant"));
exporter -> setStatusTip(tr("Exporte le sch\351ma courant dans un autre format")); export_diagram -> setStatusTip(tr("Exporte le sch\351ma courant dans un autre format"));
imprimer -> setStatusTip(tr("Imprime le sch\351ma courant")); print -> setStatusTip(tr("Imprime le sch\351ma courant"));
quitter_qet -> setStatusTip(tr("Ferme l'application QElectroTech")); quit_editor -> setStatusTip(tr("Ferme l'application QElectroTech"));
annuler -> setStatusTip(tr("Annule l'action pr\351c\351dente")); undo -> setStatusTip(tr("Annule l'action pr\351c\351dente"));
annuler -> setStatusTip(tr("Restaure l'action annul\351e")); undo -> setStatusTip(tr("Restaure l'action annul\351e"));
couper -> setStatusTip(tr("Transf\350re les \351l\351ments s\351lectionn\351s dans le presse-papier")); cut -> setStatusTip(tr("Transf\350re les \351l\351ments s\351lectionn\351s dans le presse-papier"));
copier -> setStatusTip(tr("Copie les \351l\351ments s\351lectionn\351s dans le presse-papier")); copy -> setStatusTip(tr("Copie les \351l\351ments s\351lectionn\351s dans le presse-papier"));
coller -> setStatusTip(tr("Place les \351l\351ments du presse-papier sur le sch\351ma")); paste -> setStatusTip(tr("Place les \351l\351ments du presse-papier sur le sch\351ma"));
sel_tout -> setStatusTip(tr("S\351lectionne tous les \351l\351ments du sch\351ma")); select_all -> setStatusTip(tr("S\351lectionne tous les \351l\351ments du sch\351ma"));
sel_rien -> setStatusTip(tr("D\351s\351lectionne tous les \351l\351ments du sch\351ma")); select_nothing -> setStatusTip(tr("D\351s\351lectionne tous les \351l\351ments du sch\351ma"));
sel_inverse -> setStatusTip(tr("D\351s\351lectionne les \351l\351ments s\351lectionn\351s et s\351lectionne les \351l\351ments non s\351lectionn\351s")); select_invert -> setStatusTip(tr("D\351s\351lectionne les \351l\351ments s\351lectionn\351s et s\351lectionne les \351l\351ments non s\351lectionn\351s"));
supprimer -> setStatusTip(tr("Enl\350ve les \351l\351ments s\351lectionn\351s du sch\351ma")); delete_selection -> setStatusTip(tr("Enl\350ve les \351l\351ments s\351lectionn\351s du sch\351ma"));
pivoter -> setStatusTip(tr("Pivote les \351l\351ments s\351lectionn\351s")); rotate_selection -> setStatusTip(tr("Pivote les \351l\351ments s\351lectionn\351s"));
infos_diagram -> setStatusTip(tr("\311dite les informations affich\351es par le cartouche")); infos_diagram -> setStatusTip(tr("\311dite les informations affich\351es par le cartouche"));
add_column -> setStatusTip(tr("Ajoute une colonne au sch\351ma")); add_column -> setStatusTip(tr("Ajoute une colonne au sch\351ma"));
remove_column -> setStatusTip(tr("Enl\350ve une colonne au sch\351ma")); remove_column -> setStatusTip(tr("Enl\350ve une colonne au sch\351ma"));
expand_diagram -> setStatusTip(tr("Agrandit le sch\351ma en hauteur")); expand_diagram -> setStatusTip(tr("Agrandit le sch\351ma en hauteur"));
shrink_diagram -> setStatusTip(tr("R\351tr\351cit le sch\351ma en hauteur")); shrink_diagram -> setStatusTip(tr("R\351tr\351cit le sch\351ma en hauteur"));
zoom_avant -> setStatusTip(tr("Agrandit le sch\351ma")); zoom_in -> setStatusTip(tr("Agrandit le sch\351ma"));
zoom_arriere -> setStatusTip(tr("R\351tr\351cit le sch\351ma")); zoom_out -> setStatusTip(tr("R\351tr\351cit le sch\351ma"));
zoom_adapte -> setStatusTip(tr("Adapte la taille du sch\351ma afin qu'il soit enti\350rement visible")); zoom_fit -> setStatusTip(tr("Adapte la taille du sch\351ma afin qu'il soit enti\350rement visible"));
zoom_reset -> setStatusTip(tr("Restaure le zoom par d\351faut")); zoom_reset -> setStatusTip(tr("Restaure le zoom par d\351faut"));
mode_selection -> setStatusTip(tr("Permet de s\351lectionner les \351l\351ments")); mode_selection -> setStatusTip(tr("Permet de s\351lectionner les \351l\351ments"));
mode_visualise -> setStatusTip(tr("Permet de visualiser le sch\351ma sans pouvoir le modifier")); mode_visualise -> setStatusTip(tr("Permet de visualiser le sch\351ma sans pouvoir le modifier"));
entrer_pe -> setStatusTip(tr("Affiche QElectroTech en mode plein \351cran")); fullscreen_on -> setStatusTip(tr("Affiche QElectroTech en mode plein \351cran"));
sortir_pe -> setStatusTip(tr("Affiche QElectroTech en mode fen\352tr\351")); fullscreen_off -> setStatusTip(tr("Affiche QElectroTech en mode fen\352tr\351"));
configurer -> setStatusTip(tr("Permet de r\351gler diff\351rents param\350tres de QElectroTech")); configure -> setStatusTip(tr("Permet de r\351gler diff\351rents param\350tres de QElectroTech"));
f_mosaique -> setStatusTip(tr("Dispose les fen\352tres en mosa\357que")); tile_window -> setStatusTip(tr("Dispose les fen\352tres en mosa\357que"));
f_cascade -> setStatusTip(tr("Dispose les fen\352tres en cascade")); cascade_window -> setStatusTip(tr("Dispose les fen\352tres en cascade"));
f_reorganise -> setStatusTip(tr("Aligne les fen\352tres r\351duites")); arrange_window -> setStatusTip(tr("Aligne les fen\352tres r\351duites"));
f_suiv -> setStatusTip(tr("Active la fen\352tre suivante")); next_window -> setStatusTip(tr("Active la fen\352tre suivante"));
f_prec -> setStatusTip(tr("Active la fen\352tre pr\351c\351dente")); prev_window -> setStatusTip(tr("Active la fen\352tre pr\351c\351dente"));
a_propos_de_qet -> setStatusTip(tr("Affiche des informations sur QElectroTech")); about_qet -> setStatusTip(tr("Affiche des informations sur QElectroTech"));
a_propos_de_qt -> setStatusTip(tr("Affiche des informations sur la biblioth\350que Qt")); about_qt -> setStatusTip(tr("Affiche des informations sur la biblioth\350que Qt"));
// traitements speciaux // traitements speciaux
mode_selection -> setCheckable(true); mode_selection -> setCheckable(true);
@@ -278,37 +278,37 @@ void QETDiagramEditor::actions() {
grp_visu_sel -> setExclusive(true); grp_visu_sel -> setExclusive(true);
// connexion a des slots // connexion a des slots
connect(quitter_qet, SIGNAL(triggered()), this, SLOT(close()) ); connect(quit_editor, SIGNAL(triggered()), this, SLOT(close()) );
connect(sel_tout, SIGNAL(triggered()), this, SLOT(slot_selectAll()) ); connect(select_all, SIGNAL(triggered()), this, SLOT(slot_selectAll()) );
connect(sel_rien, SIGNAL(triggered()), this, SLOT(slot_selectNothing()) ); connect(select_nothing, SIGNAL(triggered()), this, SLOT(slot_selectNothing()) );
connect(sel_inverse, SIGNAL(triggered()), this, SLOT(slot_selectInvert()) ); connect(select_invert, SIGNAL(triggered()), this, SLOT(slot_selectInvert()) );
connect(supprimer, SIGNAL(triggered()), this, SLOT(slot_supprimer()) ); connect(delete_selection, SIGNAL(triggered()), this, SLOT(slot_delete()) );
connect(pivoter, SIGNAL(triggered()), this, SLOT(slot_pivoter()) ); connect(rotate_selection, SIGNAL(triggered()), this, SLOT(slot_rotate()) );
connect(entrer_pe, SIGNAL(triggered()), this, SLOT(toggleFullScreen()) ); connect(fullscreen_on, SIGNAL(triggered()), this, SLOT(toggleFullScreen()) );
connect(sortir_pe, SIGNAL(triggered()), this, SLOT(toggleFullScreen()) ); connect(fullscreen_off, SIGNAL(triggered()), this, SLOT(toggleFullScreen()) );
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(a_propos_de_qet, SIGNAL(triggered()), this, SLOT(aPropos()) ); connect(about_qet, SIGNAL(triggered()), this, SLOT(aboutQET()) );
connect(a_propos_de_qt, SIGNAL(triggered()), qApp, SLOT(aboutQt()) ); connect(about_qt, SIGNAL(triggered()), qApp, SLOT(aboutQt()) );
connect(zoom_avant, SIGNAL(triggered()), this, SLOT(slot_zoomPlus()) ); connect(zoom_in, SIGNAL(triggered()), this, SLOT(slot_zoomIn()) );
connect(zoom_arriere, SIGNAL(triggered()), this, SLOT(slot_zoomMoins()) ); connect(zoom_out, SIGNAL(triggered()), this, SLOT(slot_zoomOut()) );
connect(zoom_adapte, SIGNAL(triggered()), this, SLOT(slot_zoomFit()) ); connect(zoom_fit, SIGNAL(triggered()), this, SLOT(slot_zoomFit()) );
connect(zoom_reset, SIGNAL(triggered()), this, SLOT(slot_zoomReset()) ); connect(zoom_reset, SIGNAL(triggered()), this, SLOT(slot_zoomReset()) );
connect(imprimer, SIGNAL(triggered()), this, SLOT(dialog_print()) ); connect(print, SIGNAL(triggered()), this, SLOT(printDialog()) );
connect(exporter, SIGNAL(triggered()), this, SLOT(dialog_export()) ); connect(export_diagram, SIGNAL(triggered()), this, SLOT(exportDialog()) );
connect(enr_fichier_sous, SIGNAL(triggered()), this, SLOT(dialogue_enregistrer_sous())); connect(save_file_sous, SIGNAL(triggered()), this, SLOT(saveAsDialog()) );
connect(enr_fichier, SIGNAL(triggered()), this, SLOT(enregistrer()) ); connect(save_file, SIGNAL(triggered()), this, SLOT(save()) );
connect(nouveau_fichier, SIGNAL(triggered()), this, SLOT(nouveau()) ); connect(new_file, SIGNAL(triggered()), this, SLOT(newDiagram()) );
connect(ouvrir_fichier, SIGNAL(triggered()), this, SLOT(ouvrir()) ); connect(open_file, SIGNAL(triggered()), this, SLOT(openDiagram()) );
connect(fermer_fichier, SIGNAL(triggered()), this, SLOT(fermer()) ); connect(close_file, SIGNAL(triggered()), this, SLOT(closeDiagram()) );
connect(couper, SIGNAL(triggered()), this, SLOT(slot_couper()) ); connect(cut, SIGNAL(triggered()), this, SLOT(slot_cut()) );
connect(copier, SIGNAL(triggered()), this, SLOT(slot_copier()) ); connect(copy, SIGNAL(triggered()), this, SLOT(slot_copy()) );
connect(coller, SIGNAL(triggered()), this, SLOT(slot_coller()) ); connect(paste, SIGNAL(triggered()), this, SLOT(slot_paste()) );
connect(f_mosaique, SIGNAL(triggered()), &workspace, SLOT(tile()) ); connect(tile_window, SIGNAL(triggered()), &workspace, SLOT(tile()) );
connect(f_cascade, SIGNAL(triggered()), &workspace, SLOT(cascade()) ); connect(cascade_window, SIGNAL(triggered()), &workspace, SLOT(cascade()) );
connect(f_reorganise, SIGNAL(triggered()), &workspace, SLOT(arrangeIcons()) ); connect(arrange_window, SIGNAL(triggered()), &workspace, SLOT(arrangeIcons()) );
connect(f_suiv, SIGNAL(triggered()), &workspace, SLOT(activateNextWindow()) ); connect(next_window, SIGNAL(triggered()), &workspace, SLOT(activateNextWindow()) );
connect(f_prec, SIGNAL(triggered()), &workspace, SLOT(activatePreviousWindow()) ); connect(prev_window, SIGNAL(triggered()), &workspace, SLOT(activatePreviousWindow()) );
connect(infos_diagram, SIGNAL(triggered()), this, SLOT(slot_editInfos()) ); connect(infos_diagram, SIGNAL(triggered()), this, SLOT(slot_editInfos()) );
connect(add_column, SIGNAL(triggered()), this, SLOT(slot_addColumn()) ); connect(add_column, SIGNAL(triggered()), this, SLOT(slot_addColumn()) );
connect(remove_column, SIGNAL(triggered()), this, SLOT(slot_removeColumn()) ); connect(remove_column, SIGNAL(triggered()), this, SLOT(slot_removeColumn()) );
@@ -325,7 +325,7 @@ void QETDiagramEditor::menus() {
QMenu *menu_affichage = menuBar() -> addMenu(tr("Afficha&ge")); QMenu *menu_affichage = menuBar() -> addMenu(tr("Afficha&ge"));
QMenu *menu_outils = menuBar() -> addMenu(tr("O&utils")); QMenu *menu_outils = menuBar() -> addMenu(tr("O&utils"));
QMenu *menu_config = menuBar() -> addMenu(tr("&Configuration")); QMenu *menu_config = menuBar() -> addMenu(tr("&Configuration"));
menu_fenetres = menuBar() -> addMenu(tr("Fe&n\352tres")); windows_menu = menuBar() -> addMenu(tr("Fe&n\352tres"));
QMenu *menu_aide = menuBar() -> addMenu(tr("&Aide")); QMenu *menu_aide = menuBar() -> addMenu(tr("&Aide"));
// tear off feature rulezz... pas ^^ mais bon... // tear off feature rulezz... pas ^^ mais bon...
@@ -334,37 +334,37 @@ void QETDiagramEditor::menus() {
menu_affichage -> setTearOffEnabled(true); menu_affichage -> setTearOffEnabled(true);
menu_outils -> setTearOffEnabled(true); menu_outils -> setTearOffEnabled(true);
menu_config -> setTearOffEnabled(true); menu_config -> setTearOffEnabled(true);
menu_fenetres -> setTearOffEnabled(true); windows_menu -> setTearOffEnabled(true);
menu_aide -> setTearOffEnabled(true); menu_aide -> setTearOffEnabled(true);
// menu Fichier // menu Fichier
menu_fichier -> addAction(nouveau_fichier); menu_fichier -> addAction(new_file);
menu_fichier -> addAction(ouvrir_fichier); menu_fichier -> addAction(open_file);
menu_fichier -> addAction(enr_fichier); menu_fichier -> addAction(save_file);
menu_fichier -> addAction(enr_fichier_sous); menu_fichier -> addAction(save_file_sous);
menu_fichier -> addAction(fermer_fichier); menu_fichier -> addAction(close_file);
menu_fichier -> addSeparator(); menu_fichier -> addSeparator();
//menu_fichier -> addAction(importer); //menu_fichier -> addAction(import_diagram);
menu_fichier -> addAction(exporter); menu_fichier -> addAction(export_diagram);
//menu_fichier -> addSeparator(); //menu_fichier -> addSeparator();
menu_fichier -> addAction(imprimer); menu_fichier -> addAction(print);
menu_fichier -> addSeparator(); menu_fichier -> addSeparator();
menu_fichier -> addAction(quitter_qet); menu_fichier -> addAction(quit_editor);
// menu Edition // menu Edition
menu_edition -> addAction(annuler); menu_edition -> addAction(undo);
menu_edition -> addAction(refaire); menu_edition -> addAction(redo);
menu_edition -> addSeparator(); menu_edition -> addSeparator();
menu_edition -> addAction(couper); menu_edition -> addAction(cut);
menu_edition -> addAction(copier); menu_edition -> addAction(copy);
menu_edition -> addAction(coller); menu_edition -> addAction(paste);
menu_edition -> addSeparator(); menu_edition -> addSeparator();
menu_edition -> addAction(sel_tout); menu_edition -> addAction(select_all);
menu_edition -> addAction(sel_rien); menu_edition -> addAction(select_nothing);
menu_edition -> addAction(sel_inverse); menu_edition -> addAction(select_invert);
menu_edition -> addSeparator(); menu_edition -> addSeparator();
menu_edition -> addAction(supprimer); menu_edition -> addAction(delete_selection);
menu_edition -> addAction(pivoter); menu_edition -> addAction(rotate_selection);
menu_edition -> addSeparator(); menu_edition -> addSeparator();
menu_edition -> addAction(infos_diagram); menu_edition -> addAction(infos_diagram);
menu_edition -> addAction(add_column); menu_edition -> addAction(add_column);
@@ -383,9 +383,9 @@ void QETDiagramEditor::menus() {
// menu Affichage // menu Affichage
menu_affichage -> addMenu(menu_aff_aff); menu_affichage -> addMenu(menu_aff_aff);
menu_affichage -> addSeparator(); menu_affichage -> addSeparator();
menu_affichage -> addAction(zoom_avant); menu_affichage -> addAction(zoom_in);
menu_affichage -> addAction(zoom_arriere); menu_affichage -> addAction(zoom_out);
menu_affichage -> addAction(zoom_adapte); menu_affichage -> addAction(zoom_fit);
menu_affichage -> addAction(zoom_reset); menu_affichage -> addAction(zoom_reset);
// menu Outils // menu Outils
@@ -393,15 +393,15 @@ void QETDiagramEditor::menus() {
menu_outils -> addAction(mode_visualise); menu_outils -> addAction(mode_visualise);
// menu Configuration // menu Configuration
menu_config -> addAction(entrer_pe); menu_config -> addAction(fullscreen_on);
menu_config -> addAction(configurer); menu_config -> addAction(configure);
// menu Fenetres // menu Fenetres
slot_updateMenuFenetres(); slot_updateWindowsMenu();
// menu Aide // menu Aide
menu_aide -> addAction(a_propos_de_qet); menu_aide -> addAction(about_qet);
menu_aide -> addAction(a_propos_de_qt); menu_aide -> addAction(about_qt);
} }
/** /**
@@ -415,19 +415,19 @@ void QETDiagramEditor::toolbar() {
barre_outils -> addAction(mode_selection); barre_outils -> addAction(mode_selection);
barre_outils -> addAction(mode_visualise); barre_outils -> addAction(mode_visualise);
barre_outils -> addSeparator(); barre_outils -> addSeparator();
barre_outils -> addAction(annuler); barre_outils -> addAction(undo);
barre_outils -> addAction(refaire); barre_outils -> addAction(redo);
barre_outils -> addSeparator(); barre_outils -> addSeparator();
barre_outils -> addAction(couper); barre_outils -> addAction(cut);
barre_outils -> addAction(copier); barre_outils -> addAction(copy);
barre_outils -> addAction(coller); barre_outils -> addAction(paste);
barre_outils -> addSeparator(); barre_outils -> addSeparator();
barre_outils -> addAction(supprimer); barre_outils -> addAction(delete_selection);
barre_outils -> addAction(pivoter); barre_outils -> addAction(rotate_selection);
barre_outils -> addSeparator(); barre_outils -> addSeparator();
barre_outils -> addAction(zoom_avant); barre_outils -> addAction(zoom_in);
barre_outils -> addAction(zoom_arriere); barre_outils -> addAction(zoom_out);
barre_outils -> addAction(zoom_adapte); barre_outils -> addAction(zoom_fit);
barre_outils -> addAction(zoom_reset); barre_outils -> addAction(zoom_reset);
// ajout de la barre d'outils a la fenetre principale // ajout de la barre d'outils a la fenetre principale
@@ -437,7 +437,7 @@ void QETDiagramEditor::toolbar() {
/** /**
Imprime le schema courant Imprime le schema courant
*/ */
void QETDiagramEditor::dialog_print() { void QETDiagramEditor::printDialog() {
DiagramView *sv = currentDiagram(); DiagramView *sv = currentDiagram();
if (!sv) return; if (!sv) return;
sv -> dialogPrint(); sv -> dialogPrint();
@@ -446,7 +446,7 @@ void QETDiagramEditor::dialog_print() {
/** /**
Gere l'export de schema sous forme d'image Gere l'export de schema sous forme d'image
*/ */
void QETDiagramEditor::dialog_export() { void QETDiagramEditor::exportDialog() {
DiagramView *sv = currentDiagram(); DiagramView *sv = currentDiagram();
if (!sv) return; if (!sv) return;
sv -> dialogExport(); sv -> dialogExport();
@@ -454,33 +454,27 @@ void QETDiagramEditor::dialog_export() {
/** /**
Methode enregistrant le schema dans le dernier nom de fichier connu. Methode enregistrant le schema dans le dernier nom de fichier connu.
Si aucun nom de fichier n'est connu, cette methode appelle la methode enregistrer_sous
@return true si l'enregistrement a reussi, false sinon @return true si l'enregistrement a reussi, false sinon
*/ */
bool QETDiagramEditor::enregistrer() { bool QETDiagramEditor::save() {
if (!currentDiagram()) return(false); if (!currentDiagram()) return(false);
return(currentDiagram() -> enregistrer()); return(currentDiagram() -> save());
} }
/** /**
Cette methode demande un nom de fichier a l'utilisateur pour enregistrer le schema Cette methode demande un nom de fichier a l'utilisateur pour enregistrer le schema
Si aucun nom n'est entre, elle renvoie faux.
Si le nom ne se termine pas par l'extension .qet, celle-ci est ajoutee.
Si l'enregistrement reussit, le nom du fichier est conserve et la fonction renvoie true.
Sinon, faux est renvoye.
@return true si l'enregistrement a reussi, false sinon @return true si l'enregistrement a reussi, false sinon
@todo detecter le chemin du bureau automatiquement
*/ */
bool QETDiagramEditor::dialogue_enregistrer_sous() { bool QETDiagramEditor::saveAsDialog() {
if (!currentDiagram()) return(false); if (!currentDiagram()) return(false);
return(currentDiagram() -> enregistrer_sous()); return(currentDiagram() -> saveAs());
} }
/** /**
Cette methode cree un nouveau schema. Cette methode cree un nouveau schema.
@return true si tout s'est bien passe ; false si vous executez cette fonction dans un univers non cartesien (en fait y'a pas de return(false) :p) @return true si tout s'est bien passe ; false si vous executez cette fonction dans un univers non cartesien (en fait y'a pas de return(false) :p)
*/ */
bool QETDiagramEditor::nouveau() { bool QETDiagramEditor::newDiagram() {
addDiagramView(new DiagramView(this)); addDiagramView(new DiagramView(this));
return(true); return(true);
} }
@@ -489,7 +483,7 @@ bool QETDiagramEditor::nouveau() {
Cette fonction demande un nom de fichier a ouvrir a l'utilisateur Cette fonction demande un nom de fichier a ouvrir a l'utilisateur
@return true si l'ouverture a reussi, false sinon @return true si l'ouverture a reussi, false sinon
*/ */
bool QETDiagramEditor::ouvrir() { bool QETDiagramEditor::openDiagram() {
// demande un nom de fichier a ouvrir a l'utilisateur // demande un nom de fichier a ouvrir a l'utilisateur
QString nom_fichier = QFileDialog::getOpenFileName( QString nom_fichier = QFileDialog::getOpenFileName(
this, this,
@@ -503,7 +497,7 @@ bool QETDiagramEditor::ouvrir() {
QString chemin_fichier = QFileInfo(nom_fichier).canonicalFilePath(); QString chemin_fichier = QFileInfo(nom_fichier).canonicalFilePath();
foreach (QWidget *fenetre, workspace.windowList()) { foreach (QWidget *fenetre, workspace.windowList()) {
DiagramView *fenetre_en_cours = qobject_cast<DiagramView *>(fenetre); DiagramView *fenetre_en_cours = qobject_cast<DiagramView *>(fenetre);
if (QFileInfo(fenetre_en_cours -> nom_fichier).canonicalFilePath() == chemin_fichier) { if (QFileInfo(fenetre_en_cours -> file_name).canonicalFilePath() == chemin_fichier) {
workspace.setActiveWindow(fenetre); workspace.setActiveWindow(fenetre);
return(false); return(false);
} }
@@ -512,7 +506,7 @@ bool QETDiagramEditor::ouvrir() {
// ouvre le fichier // ouvre le fichier
DiagramView *sv = new DiagramView(this); DiagramView *sv = new DiagramView(this);
int code_erreur; int code_erreur;
if (sv -> ouvrir(nom_fichier, &code_erreur)) { if (sv -> open(nom_fichier, &code_erreur)) {
addDiagramView(sv); addDiagramView(sv);
return(true); return(true);
} else { } else {
@@ -534,7 +528,7 @@ bool QETDiagramEditor::ouvrir() {
@return true si la fermeture du fichier a reussi, false sinon @return true si la fermeture du fichier a reussi, false sinon
@todo detecter les modifications et ne demander que si besoin est @todo detecter les modifications et ne demander que si besoin est
*/ */
bool QETDiagramEditor::fermer() { bool QETDiagramEditor::closeDiagram() {
DiagramView *sv = currentDiagram(); DiagramView *sv = currentDiagram();
if (!sv) return(false); if (!sv) return(false);
return(sv -> close()); return(sv -> close());
@@ -550,36 +544,36 @@ DiagramView *QETDiagramEditor::currentDiagram() const {
/** /**
Effectue l'action "couper" sur le schema en cours Effectue l'action "couper" sur le schema en cours
*/ */
void QETDiagramEditor::slot_couper() { void QETDiagramEditor::slot_cut() {
if(currentDiagram()) currentDiagram() -> couper(); if(currentDiagram()) currentDiagram() -> cut();
} }
/** /**
Effectue l'action "copier" sur le diagram en cours Effectue l'action "copier" sur le diagram en cours
*/ */
void QETDiagramEditor::slot_copier() { void QETDiagramEditor::slot_copy() {
if(currentDiagram()) currentDiagram() -> copier(); if(currentDiagram()) currentDiagram() -> copy();
} }
/** /**
Effectue l'action "coller" sur le schema en cours Effectue l'action "coller" sur le schema en cours
*/ */
void QETDiagramEditor::slot_coller() { void QETDiagramEditor::slot_paste() {
if(currentDiagram()) currentDiagram() -> coller(); if(currentDiagram()) currentDiagram() -> paste();
} }
/** /**
Effectue l'action "zoom avant" sur le diagram en cours Effectue l'action "zoom avant" sur le diagram en cours
*/ */
void QETDiagramEditor::slot_zoomPlus() { void QETDiagramEditor::slot_zoomIn() {
if(currentDiagram()) currentDiagram() -> zoomPlus(); if(currentDiagram()) currentDiagram() -> zoomIn();
} }
/** /**
Effectue l'action "zoom arriere" sur le schema en cours Effectue l'action "zoom arriere" sur le schema en cours
*/ */
void QETDiagramEditor::slot_zoomMoins() { void QETDiagramEditor::slot_zoomOut() {
if(currentDiagram()) currentDiagram() -> zoomMoins(); if(currentDiagram()) currentDiagram() -> zoomOut();
} }
/** /**
@@ -620,15 +614,15 @@ void QETDiagramEditor::slot_selectInvert() {
/** /**
Effectue l'action "supprimer" sur le schema en cours Effectue l'action "supprimer" sur le schema en cours
*/ */
void QETDiagramEditor::slot_supprimer() { void QETDiagramEditor::slot_delete() {
if(currentDiagram()) currentDiagram() -> supprimer(); if(currentDiagram()) currentDiagram() -> deleteSelection();
} }
/** /**
Effectue l'action "pivoter" sur le schema en cours Effectue l'action "pivoter" sur le schema en cours
*/ */
void QETDiagramEditor::slot_pivoter() { void QETDiagramEditor::slot_rotate() {
if(currentDiagram()) currentDiagram() -> pivoter(); if(currentDiagram()) currentDiagram() -> rotateSelection();
} }
/** /**
@@ -650,48 +644,48 @@ void QETDiagramEditor::slot_setVisualisationMode() {
*/ */
void QETDiagramEditor::slot_updateActions() { void QETDiagramEditor::slot_updateActions() {
DiagramView *sv = currentDiagram(); DiagramView *sv = currentDiagram();
bool document_ouvert = (sv != 0); bool opened_document = (sv != 0);
// actions ayant juste besoin d'un document ouvert // actions ayant juste besoin d'un document ouvert
fermer_fichier -> setEnabled(document_ouvert); close_file -> setEnabled(opened_document);
enr_fichier -> setEnabled(document_ouvert); save_file -> setEnabled(opened_document);
enr_fichier_sous -> setEnabled(document_ouvert); save_file_sous -> setEnabled(opened_document);
importer -> setEnabled(document_ouvert); import_diagram -> setEnabled(opened_document);
exporter -> setEnabled(document_ouvert); export_diagram -> setEnabled(opened_document);
imprimer -> setEnabled(document_ouvert); print -> setEnabled(opened_document);
sel_tout -> setEnabled(document_ouvert); select_all -> setEnabled(opened_document);
sel_rien -> setEnabled(document_ouvert); select_nothing -> setEnabled(opened_document);
sel_inverse -> setEnabled(document_ouvert); select_invert -> setEnabled(opened_document);
zoom_avant -> setEnabled(document_ouvert); zoom_in -> setEnabled(opened_document);
zoom_arriere -> setEnabled(document_ouvert); zoom_out -> setEnabled(opened_document);
zoom_adapte -> setEnabled(document_ouvert); zoom_fit -> setEnabled(opened_document);
zoom_reset -> setEnabled(document_ouvert); zoom_reset -> setEnabled(opened_document);
infos_diagram -> setEnabled(document_ouvert); infos_diagram -> setEnabled(opened_document);
add_column -> setEnabled(document_ouvert); add_column -> setEnabled(opened_document);
remove_column -> setEnabled(document_ouvert); remove_column -> setEnabled(opened_document);
expand_diagram -> setEnabled(document_ouvert); expand_diagram -> setEnabled(opened_document);
shrink_diagram -> setEnabled(document_ouvert); shrink_diagram -> setEnabled(opened_document);
// affiche les actions correspondant au diagram view en cours // affiche les actions correspondant au diagram view en cours
if (sv) undo_group.setActiveStack(&(sv -> diagram() -> undoStack())); if (sv) undo_group.setActiveStack(&(sv -> diagram() -> undoStack()));
else { else {
annuler -> setEnabled(false); undo -> setEnabled(false);
refaire -> setEnabled(false); redo -> setEnabled(false);
} }
// actions ayant aussi besoin d'elements selectionnes // actions ayant aussi besoin d'elements selectionnes
bool elements_selectionnes = document_ouvert ? (sv -> hasSelectedItems()) : false; bool selected_elements = opened_document ? (sv -> hasSelectedItems()) : false;
couper -> setEnabled(elements_selectionnes); cut -> setEnabled(selected_elements);
copier -> setEnabled(elements_selectionnes); copy -> setEnabled(selected_elements);
supprimer -> setEnabled(elements_selectionnes); delete_selection -> setEnabled(selected_elements);
pivoter -> setEnabled(elements_selectionnes); rotate_selection -> setEnabled(selected_elements);
// action ayant aussi besoin d'un presse-papier plein // action ayant aussi besoin d'un presse-papier plein
bool peut_coller = QApplication::clipboard() -> text() != QString(); bool can_paste = QApplication::clipboard() -> text() != QString();
coller -> setEnabled(document_ouvert && peut_coller); paste -> setEnabled(opened_document && can_paste);
// actions ayant aussi besoin d'un document ouvert et de la connaissance de son mode // actions ayant aussi besoin d'un document ouvert et de la connaissance de son mode
if (!document_ouvert) { if (!opened_document) {
mode_selection -> setEnabled(false); mode_selection -> setEnabled(false);
mode_visualise -> setEnabled(false); mode_visualise -> setEnabled(false);
} else { } else {
@@ -715,7 +709,7 @@ void QETDiagramEditor::slot_updateActions() {
} }
} }
slot_updateMenuFenetres(); slot_updateWindowsMenu();
} }
/** /**
@@ -743,44 +737,44 @@ void QETDiagramEditor::addDiagramView(DiagramView *dv) {
/** /**
met a jour le menu "Fenetres" met a jour le menu "Fenetres"
*/ */
void QETDiagramEditor::slot_updateMenuFenetres() { void QETDiagramEditor::slot_updateWindowsMenu() {
// nettoyage du menu // nettoyage du menu
foreach(QAction *a, menu_fenetres -> actions()) menu_fenetres -> removeAction(a); foreach(QAction *a, windows_menu -> actions()) windows_menu -> removeAction(a);
// actions de fermeture // actions de fermeture
menu_fenetres -> addAction(fermer_fichier); windows_menu -> addAction(close_file);
//menu_fenetres -> addAction(closeAllAct); //windows_menu -> addAction(closeAllAct);
// actions de reorganisation des fenetres // actions de reorganisation des fenetres
menu_fenetres -> addSeparator(); windows_menu -> addSeparator();
menu_fenetres -> addAction(f_mosaique); windows_menu -> addAction(tile_window);
menu_fenetres -> addAction(f_cascade); windows_menu -> addAction(cascade_window);
menu_fenetres -> addAction(f_reorganise); windows_menu -> addAction(arrange_window);
// actiosn de deplacement entre les fenetres // actiosn de deplacement entre les fenetres
menu_fenetres -> addSeparator(); windows_menu -> addSeparator();
menu_fenetres -> addAction(f_suiv); windows_menu -> addAction(next_window);
menu_fenetres -> addAction(f_prec); windows_menu -> addAction(prev_window);
// liste des fenetres // liste des fenetres
QList<QWidget *> fenetres = workspace.windowList(); QList<QWidget *> windows = workspace.windowList();
f_mosaique -> setEnabled(!fenetres.isEmpty()); tile_window -> setEnabled(!windows.isEmpty());
f_cascade -> setEnabled(!fenetres.isEmpty()); cascade_window -> setEnabled(!windows.isEmpty());
f_reorganise -> setEnabled(!fenetres.isEmpty()); arrange_window -> setEnabled(!windows.isEmpty());
f_suiv -> setEnabled(!fenetres.isEmpty()); next_window -> setEnabled(!windows.isEmpty());
f_prec -> setEnabled(!fenetres.isEmpty()); prev_window -> setEnabled(!windows.isEmpty());
if (!fenetres.isEmpty()) menu_fenetres -> addSeparator(); if (!windows.isEmpty()) windows_menu -> addSeparator();
for (int i = 0 ; i < fenetres.size() ; ++ i) { for (int i = 0 ; i < windows.size() ; ++ i) {
DiagramView *sv = qobject_cast<DiagramView *>(fenetres.at(i)); DiagramView *dv = qobject_cast<DiagramView *>(windows.at(i));
QString sv_titre = sv -> windowTitle().left(sv -> windowTitle().length() - 3); QString dv_title = dv -> windowTitle().left(dv -> windowTitle().length() - 3);
QAction *action = menu_fenetres -> addAction(sv_titre); QAction *action = windows_menu -> addAction(dv_title);
action -> setStatusTip(tr("Active la fen\352tre ") + sv_titre); action -> setStatusTip(tr("Active la fen\352tre ") + dv_title);
action -> setCheckable(true); action -> setCheckable(true);
action -> setChecked(sv == currentDiagram()); action -> setChecked(dv == currentDiagram());
connect(action, SIGNAL(triggered()), &windowMapper, SLOT(map())); connect(action, SIGNAL(triggered()), &windowMapper, SLOT(map()));
windowMapper.setMapping(action, sv); windowMapper.setMapping(action, dv);
} }
} }

View File

@@ -36,31 +36,31 @@ class QETDiagramEditor : public QMainWindow {
public slots: public slots:
void toggleFullScreen(); void toggleFullScreen();
void aPropos(); void aboutQET();
void dialog_print(); void printDialog();
void dialog_export(); void exportDialog();
bool dialogue_enregistrer_sous(); bool saveAsDialog();
bool enregistrer(); bool save();
bool nouveau(); bool newDiagram();
bool ouvrir(); bool openDiagram();
bool fermer(); bool closeDiagram();
void slot_editInfos(); void slot_editInfos();
void slot_couper(); void slot_cut();
void slot_copier(); void slot_copy();
void slot_coller(); void slot_paste();
void slot_zoomPlus(); void slot_zoomIn();
void slot_zoomMoins(); void slot_zoomOut();
void slot_zoomFit(); void slot_zoomFit();
void slot_zoomReset(); void slot_zoomReset();
void slot_selectAll(); void slot_selectAll();
void slot_selectNothing(); void slot_selectNothing();
void slot_selectInvert(); void slot_selectInvert();
void slot_supprimer(); void slot_delete();
void slot_pivoter(); void slot_rotate();
void slot_setSelectionMode(); void slot_setSelectionMode();
void slot_setVisualisationMode(); void slot_setVisualisationMode();
void slot_updateActions(); void slot_updateActions();
void slot_updateMenuFenetres(); void slot_updateWindowsMenu();
void slot_addColumn(); void slot_addColumn();
void slot_removeColumn(); void slot_removeColumn();
void slot_expand(); void slot_expand();
@@ -71,46 +71,44 @@ class QETDiagramEditor : public QMainWindow {
// Actions faisables au travers de menus dans l'application QElectroTech // Actions faisables au travers de menus dans l'application QElectroTech
QAction *mode_selection; QAction *mode_selection;
QAction *mode_visualise; QAction *mode_visualise;
QAction *nouveau_fichier; QAction *new_file;
QAction *ouvrir_fichier; QAction *open_file;
QAction *fermer_fichier; QAction *close_file;
QAction *enr_fichier; QAction *save_file;
QAction *enr_fichier_sous; QAction *save_file_sous;
QAction *importer; QAction *import_diagram;
QAction *exporter; QAction *export_diagram;
QAction *imprimer; QAction *print;
QAction *quitter_qet; QAction *quit_editor;
QAction *annuler; QAction *undo;
QAction *refaire; QAction *redo;
QAction *couper; QAction *cut;
QAction *copier; QAction *copy;
QAction *coller; QAction *paste;
QAction *sel_tout; QAction *select_all;
QAction *sel_rien; QAction *select_nothing;
QAction *sel_inverse; QAction *select_invert;
QAction *supprimer; QAction *delete_selection;
QAction *selectionner; QAction *rotate_selection;
QAction *pivoter;
QAction *infos_diagram; QAction *infos_diagram;
QAction *add_column; QAction *add_column;
QAction *remove_column; QAction *remove_column;
QAction *expand_diagram; QAction *expand_diagram;
QAction *shrink_diagram; QAction *shrink_diagram;
QAction *poser_fil; QAction *zoom_in;
QAction *zoom_avant; QAction *zoom_out;
QAction *zoom_arriere; QAction *zoom_fit;
QAction *zoom_adapte;
QAction *zoom_reset; QAction *zoom_reset;
QAction *a_propos_de_qet; QAction *about_qet;
QAction *a_propos_de_qt; QAction *about_qt;
QAction *configurer; QAction *configure;
QAction *entrer_pe; QAction *fullscreen_on;
QAction *sortir_pe; QAction *fullscreen_off;
QAction *f_mosaique; QAction *tile_window;
QAction *f_cascade; QAction *cascade_window;
QAction *f_reorganise; QAction *arrange_window;
QAction *f_prec; QAction *prev_window;
QAction *f_suiv; QAction *next_window;
private: private:
QWorkspace workspace; QWorkspace workspace;
@@ -119,7 +117,7 @@ class QETDiagramEditor : public QMainWindow {
QDockWidget *qdw_pa; QDockWidget *qdw_pa;
/// Panel d'Appareils /// Panel d'Appareils
ElementsPanelWidget *pa; ElementsPanelWidget *pa;
QMenu *menu_fenetres; QMenu *windows_menu;
QToolBar *barre_outils; QToolBar *barre_outils;
QUndoGroup undo_group; QUndoGroup undo_group;
}; };