Files
qelectrotech-source-mirror/diagramview.h
xavierqet 3f1f84debf Ajout d'une action permettant de specifier le type de conducteur par defaut
git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/trunk@178 bfdf4180-ca20-0410-9c96-a3a8aa849046
2007-10-14 15:16:37 +00:00

86 lines
1.7 KiB
C++

#ifndef DIAGRAMVIEW_H
#define DIAGRAMVIEW_H
#include <QtGui>
class Diagram;
/**
Classe representant graphiquement un schema electrique
*/
class DiagramView : public QGraphicsView {
Q_OBJECT
// constructeurs, destructeur
public:
DiagramView(QWidget * = 0);
virtual ~DiagramView();
private:
DiagramView(const DiagramView &);
// attributs
public:
QString file_name;
private:
Diagram *scene;
// methodes
public:
bool open(QString, int * = NULL);
void closeEvent(QCloseEvent *);
bool save();
bool saveAs();
void dialogExport();
void dialogEditInfos();
void dialogPrint();
void addColumn();
void removeColumn();
void expand();
void shrink();
Diagram *diagram() { return(scene); }
bool hasSelectedItems();
protected:
virtual void wheelEvent(QWheelEvent *);
virtual bool event(QEvent *);
private:
bool saveDiagramToFile(QString &);
void mousePressEvent(QMouseEvent *);
void dragEnterEvent(QDragEnterEvent *);
void dragLeaveEvent(QDragLeaveEvent *);
void dragMoveEvent(QDragMoveEvent *);
void dropEvent(QDropEvent *);
QRectF viewedSceneRect() const;
signals:
void selectionChanged();
void antialiasingChanged();
void modeChanged();
public slots:
void selectNothing();
void selectAll();
void selectInvert();
void deleteSelection();
void rotateSelection();
void setVisualisationMode();
void setSelectionMode();
void zoomIn();
void zoomOut();
void zoomFit();
void zoomReset();
void cut();
void copy();
void paste();
void adjustSceneRect();
void updateWindowTitle();
void editConductor();
void resetConductors();
void editDefaultConductorProperties();
private slots:
void slot_selectionChanged();
void adjustGridToZoom();
};
#endif