mirror of
https://github.com/qelectrotech/qelectrotech-source-mirror.git
synced 2025-09-13 20:23:04 +02:00
Ajout de documentation
Ajout du fichier Doxyfile pour parametrer la generation de la documentation git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/trunk@191 bfdf4180-ca20-0410-9c96-a3a8aa849046
This commit is contained in:
parent
17e637b7e1
commit
8d774aa4d6
239
Doxyfile
Normal file
239
Doxyfile
Normal file
@ -0,0 +1,239 @@
|
||||
# Doxyfile 1.5.1-KDevelop
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
# Project related configuration options
|
||||
#---------------------------------------------------------------------------
|
||||
PROJECT_NAME = QElectroTech
|
||||
PROJECT_NUMBER = 0.1
|
||||
OUTPUT_DIRECTORY =
|
||||
CREATE_SUBDIRS = NO
|
||||
OUTPUT_LANGUAGE = French
|
||||
USE_WINDOWS_ENCODING = NO
|
||||
BRIEF_MEMBER_DESC = YES
|
||||
REPEAT_BRIEF = YES
|
||||
ABBREVIATE_BRIEF = "The $name class" \
|
||||
"The $name widget" \
|
||||
"The $name file" \
|
||||
is \
|
||||
provides \
|
||||
specifies \
|
||||
contains \
|
||||
represents \
|
||||
a \
|
||||
an \
|
||||
the
|
||||
ALWAYS_DETAILED_SEC = NO
|
||||
INLINE_INHERITED_MEMB = NO
|
||||
FULL_PATH_NAMES = YES
|
||||
STRIP_FROM_PATH = /home/data/chaos/projets/qet/qelectrotech/
|
||||
STRIP_FROM_INC_PATH =
|
||||
SHORT_NAMES = NO
|
||||
JAVADOC_AUTOBRIEF = NO
|
||||
MULTILINE_CPP_IS_BRIEF = NO
|
||||
DETAILS_AT_TOP = NO
|
||||
INHERIT_DOCS = YES
|
||||
SEPARATE_MEMBER_PAGES = NO
|
||||
TAB_SIZE = 4
|
||||
ALIASES =
|
||||
OPTIMIZE_OUTPUT_FOR_C = NO
|
||||
OPTIMIZE_OUTPUT_JAVA = NO
|
||||
BUILTIN_STL_SUPPORT = NO
|
||||
DISTRIBUTE_GROUP_DOC = NO
|
||||
SUBGROUPING = YES
|
||||
#---------------------------------------------------------------------------
|
||||
# Build related configuration options
|
||||
#---------------------------------------------------------------------------
|
||||
EXTRACT_ALL = NO
|
||||
EXTRACT_PRIVATE = NO
|
||||
EXTRACT_STATIC = YES
|
||||
EXTRACT_LOCAL_CLASSES = YES
|
||||
EXTRACT_LOCAL_METHODS = NO
|
||||
HIDE_UNDOC_MEMBERS = NO
|
||||
HIDE_UNDOC_CLASSES = NO
|
||||
HIDE_FRIEND_COMPOUNDS = NO
|
||||
HIDE_IN_BODY_DOCS = NO
|
||||
INTERNAL_DOCS = NO
|
||||
CASE_SENSE_NAMES = YES
|
||||
HIDE_SCOPE_NAMES = NO
|
||||
SHOW_INCLUDE_FILES = YES
|
||||
INLINE_INFO = YES
|
||||
SORT_MEMBER_DOCS = YES
|
||||
SORT_BRIEF_DOCS = NO
|
||||
SORT_BY_SCOPE_NAME = NO
|
||||
GENERATE_TODOLIST = NO
|
||||
GENERATE_TESTLIST = NO
|
||||
GENERATE_BUGLIST = NO
|
||||
GENERATE_DEPRECATEDLIST= NO
|
||||
ENABLED_SECTIONS =
|
||||
MAX_INITIALIZER_LINES = 30
|
||||
SHOW_USED_FILES = YES
|
||||
SHOW_DIRECTORIES = NO
|
||||
FILE_VERSION_FILTER =
|
||||
#---------------------------------------------------------------------------
|
||||
# configuration options related to warning and progress messages
|
||||
#---------------------------------------------------------------------------
|
||||
QUIET = NO
|
||||
WARNINGS = YES
|
||||
WARN_IF_UNDOCUMENTED = YES
|
||||
WARN_IF_DOC_ERROR = YES
|
||||
WARN_NO_PARAMDOC = NO
|
||||
WARN_FORMAT = "$file:$line: $text"
|
||||
WARN_LOGFILE =
|
||||
#---------------------------------------------------------------------------
|
||||
# configuration options related to the input files
|
||||
#---------------------------------------------------------------------------
|
||||
INPUT = /home/data/chaos/projets/qet/qelectrotech
|
||||
FILE_PATTERNS = *.h \
|
||||
*.cpp
|
||||
RECURSIVE = YES
|
||||
EXCLUDE = moc_* \
|
||||
.svn \
|
||||
release \
|
||||
debug
|
||||
EXCLUDE_SYMLINKS = NO
|
||||
EXCLUDE_PATTERNS =
|
||||
EXAMPLE_PATH =
|
||||
EXAMPLE_PATTERNS = *
|
||||
EXAMPLE_RECURSIVE = NO
|
||||
IMAGE_PATH =
|
||||
INPUT_FILTER =
|
||||
FILTER_PATTERNS =
|
||||
FILTER_SOURCE_FILES = NO
|
||||
#---------------------------------------------------------------------------
|
||||
# configuration options related to source browsing
|
||||
#---------------------------------------------------------------------------
|
||||
SOURCE_BROWSER = NO
|
||||
INLINE_SOURCES = NO
|
||||
STRIP_CODE_COMMENTS = YES
|
||||
REFERENCED_BY_RELATION = YES
|
||||
REFERENCES_RELATION = YES
|
||||
REFERENCES_LINK_SOURCE = YES
|
||||
USE_HTAGS = NO
|
||||
VERBATIM_HEADERS = YES
|
||||
#---------------------------------------------------------------------------
|
||||
# configuration options related to the alphabetical class index
|
||||
#---------------------------------------------------------------------------
|
||||
ALPHABETICAL_INDEX = NO
|
||||
COLS_IN_ALPHA_INDEX = 5
|
||||
IGNORE_PREFIX =
|
||||
#---------------------------------------------------------------------------
|
||||
# configuration options related to the HTML output
|
||||
#---------------------------------------------------------------------------
|
||||
GENERATE_HTML = YES
|
||||
HTML_OUTPUT = html
|
||||
HTML_FILE_EXTENSION = .html
|
||||
HTML_HEADER =
|
||||
HTML_FOOTER =
|
||||
HTML_STYLESHEET =
|
||||
HTML_ALIGN_MEMBERS = YES
|
||||
GENERATE_HTMLHELP = NO
|
||||
CHM_FILE =
|
||||
HHC_LOCATION =
|
||||
GENERATE_CHI = NO
|
||||
BINARY_TOC = NO
|
||||
TOC_EXPAND = NO
|
||||
DISABLE_INDEX = NO
|
||||
ENUM_VALUES_PER_LINE = 4
|
||||
GENERATE_TREEVIEW = NO
|
||||
TREEVIEW_WIDTH = 250
|
||||
#---------------------------------------------------------------------------
|
||||
# configuration options related to the LaTeX output
|
||||
#---------------------------------------------------------------------------
|
||||
GENERATE_LATEX = NO
|
||||
LATEX_OUTPUT = latex
|
||||
LATEX_CMD_NAME = latex
|
||||
MAKEINDEX_CMD_NAME = makeindex
|
||||
COMPACT_LATEX = NO
|
||||
PAPER_TYPE = a4wide
|
||||
EXTRA_PACKAGES =
|
||||
LATEX_HEADER =
|
||||
PDF_HYPERLINKS = NO
|
||||
USE_PDFLATEX = NO
|
||||
LATEX_BATCHMODE = NO
|
||||
LATEX_HIDE_INDICES = NO
|
||||
#---------------------------------------------------------------------------
|
||||
# configuration options related to the RTF output
|
||||
#---------------------------------------------------------------------------
|
||||
GENERATE_RTF = NO
|
||||
RTF_OUTPUT = rtf
|
||||
COMPACT_RTF = NO
|
||||
RTF_HYPERLINKS = NO
|
||||
RTF_STYLESHEET_FILE =
|
||||
RTF_EXTENSIONS_FILE =
|
||||
#---------------------------------------------------------------------------
|
||||
# configuration options related to the man page output
|
||||
#---------------------------------------------------------------------------
|
||||
GENERATE_MAN = NO
|
||||
MAN_OUTPUT = man
|
||||
MAN_EXTENSION = .3
|
||||
MAN_LINKS = NO
|
||||
#---------------------------------------------------------------------------
|
||||
# configuration options related to the XML output
|
||||
#---------------------------------------------------------------------------
|
||||
GENERATE_XML = NO
|
||||
XML_OUTPUT = xml
|
||||
XML_SCHEMA =
|
||||
XML_DTD =
|
||||
XML_PROGRAMLISTING = YES
|
||||
#---------------------------------------------------------------------------
|
||||
# configuration options for the AutoGen Definitions output
|
||||
#---------------------------------------------------------------------------
|
||||
GENERATE_AUTOGEN_DEF = NO
|
||||
#---------------------------------------------------------------------------
|
||||
# configuration options related to the Perl module output
|
||||
#---------------------------------------------------------------------------
|
||||
GENERATE_PERLMOD = NO
|
||||
PERLMOD_LATEX = NO
|
||||
PERLMOD_PRETTY = YES
|
||||
PERLMOD_MAKEVAR_PREFIX =
|
||||
#---------------------------------------------------------------------------
|
||||
# Configuration options related to the preprocessor
|
||||
#---------------------------------------------------------------------------
|
||||
ENABLE_PREPROCESSING = YES
|
||||
MACRO_EXPANSION = NO
|
||||
EXPAND_ONLY_PREDEF = NO
|
||||
SEARCH_INCLUDES = YES
|
||||
INCLUDE_PATH =
|
||||
INCLUDE_FILE_PATTERNS =
|
||||
PREDEFINED =
|
||||
EXPAND_AS_DEFINED =
|
||||
SKIP_FUNCTION_MACROS = YES
|
||||
#---------------------------------------------------------------------------
|
||||
# Configuration::additions related to external references
|
||||
#---------------------------------------------------------------------------
|
||||
TAGFILES =
|
||||
GENERATE_TAGFILE = QElectroTech.tag
|
||||
ALLEXTERNALS = NO
|
||||
EXTERNAL_GROUPS = YES
|
||||
PERL_PATH = /usr/bin/perl
|
||||
#---------------------------------------------------------------------------
|
||||
# Configuration options related to the dot tool
|
||||
#---------------------------------------------------------------------------
|
||||
CLASS_DIAGRAMS = YES
|
||||
HIDE_UNDOC_RELATIONS = YES
|
||||
HAVE_DOT = YES
|
||||
CLASS_GRAPH = YES
|
||||
COLLABORATION_GRAPH = YES
|
||||
GROUP_GRAPHS = YES
|
||||
UML_LOOK = YES
|
||||
TEMPLATE_RELATIONS = YES
|
||||
INCLUDE_GRAPH = YES
|
||||
INCLUDED_BY_GRAPH = YES
|
||||
CALL_GRAPH = NO
|
||||
CALLER_GRAPH = NO
|
||||
GRAPHICAL_HIERARCHY = YES
|
||||
DIRECTORY_GRAPH = YES
|
||||
DOT_IMAGE_FORMAT = png
|
||||
DOT_PATH =
|
||||
DOTFILE_DIRS =
|
||||
MAX_DOT_GRAPH_WIDTH = 1024
|
||||
MAX_DOT_GRAPH_HEIGHT = 1024
|
||||
MAX_DOT_GRAPH_DEPTH = 1000
|
||||
DOT_TRANSPARENT = NO
|
||||
DOT_MULTI_TARGETS = NO
|
||||
GENERATE_LEGEND = YES
|
||||
DOT_CLEANUP = YES
|
||||
#---------------------------------------------------------------------------
|
||||
# Configuration::additions related to the search engine
|
||||
#---------------------------------------------------------------------------
|
||||
SEARCHENGINE = NO
|
@ -398,7 +398,7 @@ QPointF Conductor::extendTerminal(const QPointF &terminal, QET::Orientation term
|
||||
/**
|
||||
Dessine le conducteur sans antialiasing.
|
||||
@param qp Le QPainter a utiliser pour dessiner le conducteur
|
||||
@param qsogi Les options de style pour le conducteur
|
||||
@param options Les options de style pour le conducteur
|
||||
@param qw Le QWidget sur lequel on dessine
|
||||
*/
|
||||
void Conductor::paint(QPainter *qp, const QStyleOptionGraphicsItem *options, QWidget */*qw*/) {
|
||||
|
@ -35,6 +35,7 @@ class Conductor : public QGraphicsPathItem {
|
||||
public:
|
||||
virtual int type() const { return Type; }
|
||||
void destroy();
|
||||
/// @return true si ce conducteur est detruit
|
||||
bool isDestroyed() const { return(destroyed); }
|
||||
Diagram *diagram() const;
|
||||
void updateWithNewPos(const QRectF &, const Terminal *, const QPointF &);
|
||||
|
@ -8,7 +8,7 @@ ConductorProfile::ConductorProfile() {
|
||||
|
||||
/**
|
||||
Constructeur
|
||||
@param Conductor conducteur dont il faut extraire le profil
|
||||
@param conductor conducteur dont il faut extraire le profil
|
||||
*/
|
||||
ConductorProfile::ConductorProfile(Conductor *conductor) {
|
||||
fromConductor(conductor);
|
||||
|
@ -19,8 +19,11 @@ class ConductorProfile {
|
||||
|
||||
// attributs
|
||||
public:
|
||||
/// Segment composant le profil du conducteur
|
||||
QList<ConductorSegmentProfile *> segments;
|
||||
/// Orientation de la borne de depart du profil
|
||||
QET::Orientation beginOrientation;
|
||||
/// Orientation de la borne d'arrivee du profil
|
||||
QET::Orientation endOrientation;
|
||||
|
||||
// methodes
|
||||
|
@ -210,6 +210,10 @@ QString ConductorProperties::typeToString(ConductorType t) {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
@param other l'autre ensemble de proprietes avec lequel il faut effectuer la comparaison
|
||||
@return true si les deux ensembles de proprietes sont identiques, false sinon
|
||||
*/
|
||||
int ConductorProperties::operator==(const ConductorProperties &other) {
|
||||
return(
|
||||
other.type == type &&\
|
||||
@ -218,6 +222,10 @@ int ConductorProperties::operator==(const ConductorProperties &other) {
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
@param other l'autre ensemble de proprietes avec lequel il faut effectuer la comparaison
|
||||
@return true si les deux ensembles de proprietes sont differents, false sinon
|
||||
*/
|
||||
int ConductorProperties::operator!=(const ConductorProperties &other) {
|
||||
return(
|
||||
other.type != type ||\
|
||||
@ -226,6 +234,10 @@ int ConductorProperties::operator!=(const ConductorProperties &other) {
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
@param other l'autre ensemble de proprietes avec lequel il faut effectuer la comparaison
|
||||
@return true si les deux ensembles de proprietes sont identiques, false sinon
|
||||
*/
|
||||
int SingleLineProperties::operator==(const SingleLineProperties &other) const {
|
||||
return(
|
||||
other.hasGround == hasGround &&\
|
||||
@ -234,6 +246,10 @@ int SingleLineProperties::operator==(const SingleLineProperties &other) const {
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
@param other l'autre ensemble de proprietes avec lequel il faut effectuer la comparaison
|
||||
@return true si les deux ensembles de proprietes sont differents, false sinon
|
||||
*/
|
||||
int SingleLineProperties::operator!=(const SingleLineProperties &other) const {
|
||||
return(!(other == (*this)));
|
||||
}
|
||||
|
@ -49,6 +49,12 @@ class ConductorProperties {
|
||||
virtual ~ConductorProperties() {
|
||||
}
|
||||
|
||||
/**
|
||||
Represente le type d'un conducteur :
|
||||
* Simple : ni symbole ni champ de texte
|
||||
* Single : symboles unifilaires, pas de champ de texte
|
||||
* Multi : champ de texte, pas de symbole
|
||||
*/
|
||||
enum ConductorType { Simple, Single, Multi };
|
||||
|
||||
// attributs
|
||||
|
@ -2,6 +2,12 @@
|
||||
#define CONDUCTOR_PROPERTIES_WIDGET_H
|
||||
#include "conductor.h"
|
||||
#include <QtGui>
|
||||
/**
|
||||
Ce widget permet a l utilisateur d'editer les proprietes d'un conducteur.
|
||||
Par proprietes, on entend non pas le trajet effectue par le conducteur mais
|
||||
les options supplementaires : symboles unifilaires, presence ou non d'un
|
||||
champ de texte, contenu de ce champ de texte, etc.
|
||||
*/
|
||||
class ConductorPropertiesWidget : public QWidget {
|
||||
Q_OBJECT
|
||||
// constructeurs, destructeur
|
||||
|
@ -315,7 +315,7 @@ void ConductorSegment::moveX(const qreal &dx) {
|
||||
|
||||
/**
|
||||
Gere les mouvements sur l'axe vertical
|
||||
@param dx taille du deplacement en pixels
|
||||
@param dy taille du deplacement en pixels
|
||||
*/
|
||||
void ConductorSegment::moveY(const qreal &dy) {
|
||||
if (isVertical()) return;
|
||||
@ -374,7 +374,7 @@ void ConductorSegment::setPreviousSegment(ConductorSegment *ps) {
|
||||
|
||||
/**
|
||||
Change le segment suivant
|
||||
@param ps Le nouveau segment suivant
|
||||
@param ns Le nouveau segment suivant
|
||||
*/
|
||||
void ConductorSegment::setNextSegment(ConductorSegment *ns) {
|
||||
next_segment = ns;
|
||||
|
@ -36,7 +36,9 @@ class ConductorSegmentProfile {
|
||||
|
||||
// attributs
|
||||
public:
|
||||
qreal length; /// longueur du segment
|
||||
bool isHorizontal; /// orientation du segment
|
||||
/// longueur du segment
|
||||
qreal length;
|
||||
/// orientation du segment
|
||||
bool isHorizontal;
|
||||
};
|
||||
#endif
|
||||
|
@ -291,7 +291,7 @@ QDomDocument Diagram::toXml(bool diagram) {
|
||||
(auteur, titre, ...) seront prises en compte
|
||||
@param added_elements si ce pointeur vers une liste d'elements n'est pas
|
||||
NULL, il sera rempli avec les elements ajoutes au schema par le fromXml
|
||||
@param added_elements si ce pointeur vers une liste de conducteurs n'est
|
||||
@param added_conductors si ce pointeur vers une liste de conducteurs n'est
|
||||
pas NULL, il sera rempli avec les conducteurs ajoutes au schema par le
|
||||
fromXml
|
||||
@return true si l'import a reussi, false sinon
|
||||
|
17
diagram.h
17
diagram.h
@ -27,11 +27,18 @@ class Diagram : public QGraphicsScene {
|
||||
|
||||
// attributs
|
||||
public:
|
||||
/**
|
||||
Represente les options possibles pour l'affichage du schema :
|
||||
* EmptyBorder : N'afficher que la bordure
|
||||
* Inset : Afficher le cartouche
|
||||
* Columns : Afficher les colonnes
|
||||
*/
|
||||
enum BorderOptions { EmptyBorder, Inset, Columns };
|
||||
/// Proprietes par defaut des nouveaux conducteurs
|
||||
ConductorProperties defaultConductorProperties;
|
||||
/// Dimensions et cartouches du schema
|
||||
BorderInset border_and_inset;
|
||||
/// Mouvement en cours lors d'un deplacement d'elements et conducteurs
|
||||
QPointF current_movement;
|
||||
/// taille de la grille en abscisse
|
||||
static const int xGrid;
|
||||
@ -96,6 +103,11 @@ class Diagram : public QGraphicsScene {
|
||||
void slot_checkSelectionEmptinessChange();
|
||||
|
||||
signals:
|
||||
/**
|
||||
Ce signal est emis lorsque la selection passe de l'etat rempli (par un
|
||||
nombre quelconque d'elements et conducteurs) a l'etat vide et
|
||||
vice-versa.
|
||||
*/
|
||||
void selectionEmptinessChanged();
|
||||
};
|
||||
|
||||
@ -103,7 +115,7 @@ class Diagram : public QGraphicsScene {
|
||||
Permet d'ajouter ou enlever le « poseur de conducteur », c'est-a-dire la
|
||||
droite en pointilles qui apparait lorsqu'on pose un conducteur entre deux
|
||||
bornes.
|
||||
@param true pour ajouter le poseur de conducteur, false pour l'enlever
|
||||
@param pf true pour ajouter le poseur de conducteur, false pour l'enlever
|
||||
*/
|
||||
inline void Diagram::setConductor(bool pf) {
|
||||
if (pf) {
|
||||
@ -123,7 +135,7 @@ inline void Diagram::setConductorStart(QPointF d) {
|
||||
|
||||
/**
|
||||
Specifie les coordonnees du point d'arrivee du poseur de conducteur
|
||||
@param d Le nouveau point d'arrivee du poseur de conducteur
|
||||
@param a Le nouveau point d'arrivee du poseur de conducteur
|
||||
*/
|
||||
inline void Diagram::setConductorStop(QPointF a) {
|
||||
conductor_setter -> setLine(QLineF(conductor_setter -> line().p1(), a));
|
||||
@ -157,7 +169,6 @@ inline void Diagram::setUseBorder(bool ub) {
|
||||
/**
|
||||
Permet de savoir si le cadre du schema est pris en compte pour
|
||||
determiner le contour du schema.
|
||||
@param ub true le cadre est pris en compte, false sinon
|
||||
*/
|
||||
inline bool Diagram::useBorder() {
|
||||
return(use_border);
|
||||
|
@ -5,8 +5,9 @@
|
||||
#include "qgimanager.h"
|
||||
/**
|
||||
Constructeur
|
||||
@param name Nom de la partie ajoutee
|
||||
@param parts Liste des parties deplacees
|
||||
@param d Schema auquel on ajoute un element
|
||||
@param elmt Element ajoute
|
||||
@param p Position a laquelle l'element est ajoute
|
||||
@param parent QUndoCommand parent
|
||||
*/
|
||||
AddElementCommand::AddElementCommand(
|
||||
|
@ -15,10 +15,15 @@ class DiagramTextItem : public QGraphicsTextItem {
|
||||
// attributs
|
||||
public:
|
||||
enum { Type = UserType + 1004 };
|
||||
/// Texte precedent
|
||||
QString previous_text;
|
||||
|
||||
// methodes
|
||||
public:
|
||||
/**
|
||||
Cette methode permet d'utiliser qgraphicsitem_cast sur cet objet
|
||||
@return le type de QGraphicsItem
|
||||
*/
|
||||
virtual int type() const { return Type; }
|
||||
Diagram *diagram() const;
|
||||
|
||||
|
@ -380,7 +380,6 @@ bool DiagramView::save() {
|
||||
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
|
||||
@todo detecter le chemin du bureau automatiquement
|
||||
*/
|
||||
bool DiagramView::saveAs() {
|
||||
// demande un nom de fichier a l'utilisateur pour enregistrer le schema
|
||||
|
@ -53,8 +53,9 @@ class DiagramView : public QGraphicsView {
|
||||
QRectF viewedSceneRect() const;
|
||||
|
||||
signals:
|
||||
/// Signal emis lorsque la selection change
|
||||
void selectionChanged();
|
||||
void antialiasingChanged();
|
||||
/// Signal emis lorsque le mode de selection change
|
||||
void modeChanged();
|
||||
|
||||
public slots:
|
||||
|
@ -3,6 +3,10 @@
|
||||
#include <QtGui>
|
||||
#include "elementitemeditor.h"
|
||||
class PartArc;
|
||||
/**
|
||||
Cette classe represente le widget d'edition d'un arc dans l'editeur
|
||||
d'element.
|
||||
*/
|
||||
class ArcEditor : public ElementItemEditor {
|
||||
Q_OBJECT
|
||||
//constructeurs, destructeur
|
||||
|
@ -4,12 +4,12 @@
|
||||
#include "customelementpart.h"
|
||||
#include "styleeditor.h"
|
||||
class QETElementEditor;
|
||||
typedef CustomElementGraphicPart CEGP;
|
||||
/**
|
||||
Cette classe represente une partie graphique d'element
|
||||
Elle encapsule des methodes afin de gerer les attributs de style communs
|
||||
a la plupart des parties d'elements
|
||||
*/
|
||||
typedef CustomElementGraphicPart CEGP;
|
||||
class CustomElementGraphicPart : public CustomElementPart {
|
||||
public:
|
||||
enum LineStyle { NormalStyle, DashedStyle };
|
||||
|
@ -337,7 +337,7 @@ void ChangeOrientationsCommand::redo() {
|
||||
|
||||
/**
|
||||
Constructeur
|
||||
@param element ElementScene concernee
|
||||
@param elmt ElementScene concernee
|
||||
@param o Option decrivant le type de traitement applique aux zValues des parties de l'element
|
||||
@param parent QUndoCommand parent
|
||||
*/
|
||||
|
@ -31,7 +31,7 @@ QUndoStack &ElementItemEditor::undoStack() const {
|
||||
/**
|
||||
Ajoute une ChangePartCommand a l'UndoStack. L'ancienne valeur sera
|
||||
automatiquement recuperee.
|
||||
@param name nom de la propriete modifiee
|
||||
@param desc nom de la propriete modifiee
|
||||
@param part partie modifiee
|
||||
@param prop propriete modifiee
|
||||
@param new_v nouvelle valeur
|
||||
|
@ -4,6 +4,12 @@
|
||||
class QETElementEditor;
|
||||
class ElementScene;
|
||||
class CustomElementPart;
|
||||
/**
|
||||
Cette classe est la classe de base pour les editeurs de aprties dans
|
||||
l'editeur d'element. Elle fournit des methodes pour acceder facilement
|
||||
a l'editeur, a la pile d'annulation, a la scene d'edition ou encore pour
|
||||
ajouter facilement une annulation de type ChangePartCommand.
|
||||
*/
|
||||
class ElementItemEditor : public QWidget {
|
||||
Q_OBJECT
|
||||
// constructeurs, destructeur
|
||||
|
@ -263,7 +263,7 @@ void ElementScene::drawBackground(QPainter *p, const QRectF &r) {
|
||||
}
|
||||
|
||||
/**
|
||||
Dessine l'arriere-plan de l'editeur, cad l'indicateur de hotspotó.
|
||||
Dessine l'arriere-plan de l'editeur, cad l'indicateur de hotspot.
|
||||
@param p Le QPainter a utiliser pour dessiner
|
||||
@param r Le rectangle de la zone a dessiner
|
||||
*/
|
||||
|
@ -11,6 +11,12 @@ class PartEllipse;
|
||||
class PartCircle;
|
||||
class PartPolygon;
|
||||
class PartArc;
|
||||
/**
|
||||
Cette classe est le canevas permettant l'edition d'un element electrique.
|
||||
Elle regroupe les differentes parties composant le dessin de l'element mais
|
||||
egalement les informations complementaires : dimensions, orientations,
|
||||
noms.
|
||||
*/
|
||||
class ElementScene : public QGraphicsScene {
|
||||
Q_OBJECT
|
||||
|
||||
|
@ -2,6 +2,10 @@
|
||||
#define ELEMENT_VIEW_H
|
||||
#include <QGraphicsView>
|
||||
#include "elementscene.h"
|
||||
/**
|
||||
Cette classe represente un widget permettant de visualiser une
|
||||
ElementScene, c'est-a-dire la classe d'edition des elements.
|
||||
*/
|
||||
class ElementView : public QGraphicsView {
|
||||
Q_OBJECT
|
||||
// constructeurs, destructeur
|
||||
|
@ -3,6 +3,10 @@
|
||||
#include <QtGui>
|
||||
#include "elementitemeditor.h"
|
||||
class PartEllipse;
|
||||
/**
|
||||
Cette classe represente le widget d'edition d'une ellipse dans l'editeur
|
||||
d'element.
|
||||
*/
|
||||
class EllipseEditor : public ElementItemEditor {
|
||||
Q_OBJECT
|
||||
//constructeurs, destructeur
|
||||
|
@ -3,6 +3,10 @@
|
||||
#include <QtGui>
|
||||
#include "elementitemeditor.h"
|
||||
class PartLine;
|
||||
/**
|
||||
Cette classe represente le widget d'edition d'une ligne dans l'editeur
|
||||
d'element.
|
||||
*/
|
||||
class LineEditor : public ElementItemEditor {
|
||||
Q_OBJECT
|
||||
//constructeurs, destructeur
|
||||
|
@ -3,6 +3,10 @@
|
||||
#include <QtGui>
|
||||
#include "customelementgraphicpart.h"
|
||||
class ArcEditor;
|
||||
/**
|
||||
Cette classe represente un arc pouvant etre utilise pour composer le
|
||||
dessin d'un element dans l'editeur d'element.
|
||||
*/
|
||||
class PartArc : public QGraphicsEllipseItem, public CustomElementGraphicPart {
|
||||
// constructeurs, destructeur
|
||||
public:
|
||||
|
@ -3,6 +3,10 @@
|
||||
#include <QtGui>
|
||||
#include "customelementgraphicpart.h"
|
||||
class CircleEditor;
|
||||
/**
|
||||
Cette classe represente un cercle pouvant etre utilise pour composer le
|
||||
dessin d'un element dans l'editeur d'element.
|
||||
*/
|
||||
class PartCircle : public QGraphicsEllipseItem, public CustomElementGraphicPart {
|
||||
// constructeurs, destructeur
|
||||
public:
|
||||
|
@ -3,6 +3,10 @@
|
||||
#include <QtGui>
|
||||
#include "customelementgraphicpart.h"
|
||||
class EllipseEditor;
|
||||
/**
|
||||
Cette classe represente une ellipse pouvant etre utilisee pour composer le
|
||||
dessin d'un element dans l'editeur d'element.
|
||||
*/
|
||||
class PartEllipse : public QGraphicsEllipseItem, public CustomElementGraphicPart {
|
||||
// constructeurs, destructeur
|
||||
public:
|
||||
|
@ -3,6 +3,10 @@
|
||||
#include <QtGui>
|
||||
#include "customelementgraphicpart.h"
|
||||
class LineEditor;
|
||||
/**
|
||||
Cette classe represente une ligne pouvant etre utilisee pour composer le
|
||||
dessin d'un element dans l'editeur d'element.
|
||||
*/
|
||||
class PartLine : public QGraphicsLineItem, public CustomElementGraphicPart {
|
||||
// constructeurs, destructeur
|
||||
public:
|
||||
|
@ -3,6 +3,10 @@
|
||||
#include <QtGui>
|
||||
#include "customelementgraphicpart.h"
|
||||
class PolygonEditor;
|
||||
/**
|
||||
Cette classe represente un polygone pouvant etre utilise pour composer le
|
||||
dessin d'un element dans l'editeur d'element.
|
||||
*/
|
||||
class PartPolygon : public QGraphicsPolygonItem, public CustomElementGraphicPart {
|
||||
// constructeurs, destructeur
|
||||
public:
|
||||
|
@ -5,6 +5,10 @@
|
||||
#include <QtGui>
|
||||
class TerminalEditor;
|
||||
class QETElementEditor;
|
||||
/**
|
||||
Cette classe represente une borne pouvant etre utilisee pour composer le
|
||||
dessin d'un element dans l'editeur d'element.
|
||||
*/
|
||||
class PartTerminal : public CustomElementPart, public QGraphicsItem {
|
||||
public:
|
||||
// constructeurs, destructeur
|
||||
|
@ -3,6 +3,10 @@
|
||||
#include <QtGui>
|
||||
#include "customelementpart.h"
|
||||
class TextEditor;
|
||||
/**
|
||||
Cette classe represente un texte pouvant etre utilise pour composer le
|
||||
dessin d'un element dans l'editeur d'element.
|
||||
*/
|
||||
class PartText : public QGraphicsTextItem, public CustomElementPart {
|
||||
// constructeurs, destructeur
|
||||
public:
|
||||
|
@ -4,6 +4,12 @@
|
||||
#include "customelementpart.h"
|
||||
class TextFieldEditor;
|
||||
class QETElementEditor;
|
||||
/**
|
||||
Cette classe represente un champ de texte editable pouvant etre utilise
|
||||
pour composer le dessin d'un element dans l'editeur d'element.
|
||||
L'utilisateur peut specifier un valeur par defaut. Le champ sera editable
|
||||
lorsque l'element sera pose sur un schema.
|
||||
*/
|
||||
class PartTextField : public QGraphicsTextItem, public CustomElementPart {
|
||||
// constructeurs, destructeur
|
||||
public:
|
||||
|
@ -2,6 +2,10 @@
|
||||
#define POLYGON_EDITOR_H
|
||||
#include "elementitemeditor.h"
|
||||
class PartPolygon;
|
||||
/**
|
||||
Cette classe represente le widget d'edition d'un polygone dans l'editeur
|
||||
d'element.
|
||||
*/
|
||||
class PolygonEditor : public ElementItemEditor {
|
||||
|
||||
Q_OBJECT
|
||||
|
@ -4,6 +4,11 @@
|
||||
#include "elementscene.h"
|
||||
#include "orientationset.h"
|
||||
class ElementView;
|
||||
/**
|
||||
Cette classe represente un editeur d'element. Elle permet a l'utilisateur
|
||||
de dessiner, modifier et parametrer un element electrique. Le dessin se
|
||||
fait par ajout de parties (Part).
|
||||
*/
|
||||
class QETElementEditor : public QMainWindow {
|
||||
Q_OBJECT
|
||||
|
||||
|
@ -3,6 +3,12 @@
|
||||
#include <QtGui>
|
||||
#include "elementitemeditor.h"
|
||||
class CustomElementGraphicPart;
|
||||
/**
|
||||
Cette classe represente un widget d'edition des styles que peut comporter
|
||||
une partie d'elements (couleur, epaisseur et style du trait, remplissage,
|
||||
antialiasing). Elle peut accueillir un widget sous cette interface grace a
|
||||
la methode appendWidget.
|
||||
*/
|
||||
class StyleEditor : public ElementItemEditor {
|
||||
Q_OBJECT
|
||||
// constructeurs, destructeur
|
||||
|
@ -3,7 +3,8 @@
|
||||
|
||||
/**
|
||||
Constructeur
|
||||
@param term Champ de texte a editer
|
||||
@param editor L'editeur d'element concerne
|
||||
@param text Champ de texte a editer
|
||||
@param parent QWidget parent de ce widget
|
||||
*/
|
||||
TextEditor::TextEditor(QETElementEditor *editor, PartText *text, QWidget *parent) : ElementItemEditor(editor, parent) {
|
||||
|
@ -3,7 +3,8 @@
|
||||
|
||||
/**
|
||||
Constructeur
|
||||
@param part Champ de texte a editer
|
||||
@param editor L'editeur d'element concerne
|
||||
@param textfield Champ de texte a editer
|
||||
@param parent QWidget parent
|
||||
*/
|
||||
TextFieldEditor::TextFieldEditor(QETElementEditor *editor, PartTextField *textfield, QWidget *parent) : ElementItemEditor(editor, parent) {
|
||||
|
@ -78,8 +78,7 @@ QSize Element::setSize(int wid, int hei) {
|
||||
/**
|
||||
Definit le hotspot de l'element par rapport au coin superieur gauche de son rectangle delimitant.
|
||||
Necessite que la taille ait deja ete definie
|
||||
@param hsx Abscisse du hotspot
|
||||
@param hsy Ordonnee du hotspot
|
||||
@param hs Coordonnees du hotspot
|
||||
*/
|
||||
QPoint Element::setHotspot(QPoint hs) {
|
||||
// la taille doit avoir ete definie
|
||||
|
@ -3,10 +3,10 @@
|
||||
#include <QtGui>
|
||||
#include "terminal.h"
|
||||
#include "orientationset.h"
|
||||
class Diagram;
|
||||
/**
|
||||
Cette classe abstraite represente un element electrique.
|
||||
*/
|
||||
class Diagram;
|
||||
class Element : public QGraphicsItem {
|
||||
|
||||
// constructeurs, destructeur
|
||||
|
@ -1,12 +1,12 @@
|
||||
#ifndef ELEMENTS_CATEGORIES_WIDGET_H
|
||||
#define ELEMENTS_CATEGORIES_WIDGET_H
|
||||
#include <QtGui>
|
||||
class ElementsCategoriesList;
|
||||
/**
|
||||
Cette classe represente un widget integrant la liste des categories
|
||||
de l'utilisteur surplombee de boutons permettant d'ajouter, de modifier
|
||||
ou de supprimer des categories
|
||||
*/
|
||||
class ElementsCategoriesList;
|
||||
class ElementsCategoriesWidget : public QWidget {
|
||||
Q_OBJECT
|
||||
|
||||
|
@ -1,12 +1,12 @@
|
||||
#ifndef ELEMENTS_CATEGORY_EDITOR_H
|
||||
#define ELEMENTS_CATEGORY_EDITOR_H
|
||||
#include <QtGui>
|
||||
class ElementsCategory;
|
||||
class NamesListWidget;
|
||||
/**
|
||||
Cette classe permet d'editer une categorie existante ou de creer une
|
||||
categorie.
|
||||
*/
|
||||
class ElementsCategory;
|
||||
class NamesListWidget;
|
||||
class ElementsCategoryEditor : public QDialog {
|
||||
Q_OBJECT
|
||||
|
||||
|
@ -2,6 +2,10 @@
|
||||
#define HOTSPOT_EDITOR_H
|
||||
#include <QtGui>
|
||||
#include "diagram.h"
|
||||
/**
|
||||
Ce widget permet a l'utilisateur d'editer les dimensions ainsi que le point
|
||||
de saisie d'un element.
|
||||
*/
|
||||
class HotspotEditor : public QWidget {
|
||||
Q_OBJECT
|
||||
|
||||
|
@ -2,14 +2,13 @@
|
||||
|
||||
/**
|
||||
Constructeur
|
||||
@param parent QObject parent
|
||||
*/
|
||||
NamesList::NamesList() {
|
||||
}
|
||||
|
||||
/**
|
||||
Constructeur de copie
|
||||
@param other La NamesList a copie
|
||||
@param other La NamesList a copier
|
||||
*/
|
||||
NamesList::NamesList(const NamesList &other) : hash_names(other.hash_names) {
|
||||
}
|
||||
|
@ -1,6 +1,10 @@
|
||||
#ifndef NEW_ELEMENT_WIZARD_H
|
||||
#define NEW_ELEMENT_WIZARD_H
|
||||
#include <QtGui>
|
||||
class ElementsCategoriesWidget;
|
||||
class NamesListWidget;
|
||||
class OrientationSetWidget;
|
||||
class HotspotEditor;
|
||||
/**
|
||||
Cette classe represente un dialogue qui permet a l'utilisateur de specifier
|
||||
les premiers parametres de l'element qu'il va construire.
|
||||
@ -12,10 +16,6 @@
|
||||
- la position du hotspot
|
||||
- les orientations possibles
|
||||
*/
|
||||
class ElementsCategoriesWidget;
|
||||
class NamesListWidget;
|
||||
class OrientationSetWidget;
|
||||
class HotspotEditor;
|
||||
class NewElementWizard : public QWizard {
|
||||
Q_OBJECT
|
||||
|
||||
|
@ -137,7 +137,7 @@ const OrientationSet OrientationSet::operator--(int) {
|
||||
|
||||
/**
|
||||
Permet de savoir si une orientation donnee peut etre utilisee.
|
||||
@param o L'orientation en question
|
||||
@param ori L'orientation en question
|
||||
@return true si l'orientation est utilisable, false sinon
|
||||
*/
|
||||
bool OrientationSet::accept(QET::Orientation ori) const {
|
||||
|
3
qet.h
3
qet.h
@ -7,8 +7,11 @@
|
||||
classes de l'application
|
||||
*/
|
||||
namespace QET {
|
||||
/// version de QElectroTech
|
||||
const QString version = "0.1";
|
||||
/// Orientation (utilise pour les bornes mais aussi pour les elements)
|
||||
enum Orientation {North, East, South, West};
|
||||
/// Types de segment de conducteurs
|
||||
enum ConductorSegmentType { Horizontal = 1, Vertical = 2, Both = 3 };
|
||||
QET::Orientation nextOrientation(QET::Orientation);
|
||||
QET::Orientation previousOrientation(QET::Orientation);
|
||||
|
@ -109,7 +109,7 @@ void QETApp::setLanguage(const QString &desired_language) {
|
||||
|
||||
/**
|
||||
Gere les evenements relatifs au QSystemTrayIcon
|
||||
@param raison un entier representant l'evenement survenu sur le systray
|
||||
@param reason un entier representant l'evenement survenu sur le systray
|
||||
*/
|
||||
void QETApp::systray(QSystemTrayIcon::ActivationReason reason) {
|
||||
if (!QSystemTrayIcon::isSystemTrayAvailable()) return;
|
||||
@ -205,7 +205,7 @@ QString QETApp::customElementsDir() {
|
||||
Renvoie le dossier de configuration de QET, c-a-d le chemin du dossier dans
|
||||
lequel QET lira les informations de configuration et de personnalisation
|
||||
propres a l'utilisateur courant. Ce dossier est generalement
|
||||
C:\Documents And Settings\utilisateur\Application Data\qet sous Windows et
|
||||
C:\\Documents And Settings\\utilisateur\\Application Data\\qet sous Windows et
|
||||
~/.qet sous les systemes type UNIX.
|
||||
@return Le chemin du dossier de configuration de QElectroTech
|
||||
*/
|
||||
@ -237,7 +237,7 @@ QString QETApp::realPath(const QString &sym_path) {
|
||||
/**
|
||||
Construit le chemin symbolique (du type custom://outils_pervers/sado_maso/
|
||||
contact_bizarre) correspondant a un fichier.
|
||||
@param real_pathChaine de caracteres representant le chemin symbolique du fichier
|
||||
@param real_path Chaine de caracteres representant le chemin symbolique du fichier
|
||||
@return Une chaine de caracteres vide en cas d'erreur ou le chemin
|
||||
symbolique designant l'element.
|
||||
*/
|
||||
|
@ -567,7 +567,6 @@ bool QETDiagramEditor::openDiagram() {
|
||||
/**
|
||||
Ferme le document courant
|
||||
@return true si la fermeture du fichier a reussi, false sinon
|
||||
@todo detecter les modifications et ne demander que si besoin est
|
||||
*/
|
||||
bool QETDiagramEditor::closeDiagram() {
|
||||
DiagramView *sv = currentDiagram();
|
||||
@ -761,7 +760,7 @@ void QETDiagramEditor::slot_updateActions() {
|
||||
|
||||
/**
|
||||
Ajoute un schema dans l'espace de travail
|
||||
@param sv L'objet DiagramView a ajouter a l'espace de travail
|
||||
@param dv L'objet DiagramView a ajouter a l'espace de travail
|
||||
*/
|
||||
void QETDiagramEditor::addDiagramView(DiagramView *dv) {
|
||||
if (!dv) return;
|
||||
|
@ -70,7 +70,7 @@ class QETDiagramEditor : public QMainWindow {
|
||||
void slot_editDefaultConductors();
|
||||
|
||||
// attributs
|
||||
protected:
|
||||
private:
|
||||
// Actions faisables au travers de menus dans l'application QElectroTech
|
||||
QAction *mode_selection;
|
||||
QAction *mode_visualise;
|
||||
|
@ -418,7 +418,7 @@ QDomElement Terminal::toXml(QDomDocument &doc) const {
|
||||
|
||||
/**
|
||||
Permet de savoir si un element XML represente une borne
|
||||
@param e Le QDomElement a analyser
|
||||
@param terminal Le QDomElement a analyser
|
||||
@return true si le QDomElement passe en parametre est une borne, false sinon
|
||||
*/
|
||||
bool Terminal::valideXml(QDomElement &terminal) {
|
||||
@ -454,7 +454,7 @@ bool Terminal::valideXml(QDomElement &terminal) {
|
||||
|
||||
/**
|
||||
Permet de savoir si un element XML represente cette borne. Attention, l'element XML n'est pas verifie
|
||||
@param e Le QDomElement a analyser
|
||||
@param terminal Le QDomElement a analyser
|
||||
@return true si la borne "se reconnait" (memes coordonnes, meme orientation), false sinon
|
||||
*/
|
||||
bool Terminal::fromXml(QDomElement &terminal) {
|
||||
|
10
terminal.h
10
terminal.h
@ -25,7 +25,10 @@ class Terminal : public QGraphicsItem {
|
||||
|
||||
// methodes
|
||||
public:
|
||||
// permet de caster un QGraphicsItem en Borne avec qgraphicsitem_cast
|
||||
/**
|
||||
permet de caster un QGraphicsItem en Borne avec qgraphicsitem_cast
|
||||
@return le type de QGraphicsItem
|
||||
*/
|
||||
virtual int type() const { return Type; }
|
||||
|
||||
// implementation des methodes virtuelles pures de QGraphicsItem
|
||||
@ -61,12 +64,17 @@ class Terminal : public QGraphicsItem {
|
||||
// attributs
|
||||
public:
|
||||
enum { Type = UserType + 1002 };
|
||||
/// Longueur d'une borne
|
||||
static const qreal terminalSize;
|
||||
|
||||
// differentes couleurs statiques utilisables pour l'effet "hover"
|
||||
/// couleur par defaut
|
||||
static QColor couleur_neutre;
|
||||
/// couleur indiquant une action autorisee
|
||||
static QColor couleur_autorise;
|
||||
/// couleur indiquant une action autorisee mais pas forcement recommandee
|
||||
static QColor couleur_prudence;
|
||||
/// couleur indiquant une action interdite
|
||||
static QColor couleur_interdit;
|
||||
|
||||
private:
|
||||
|
Loading…
x
Reference in New Issue
Block a user