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:
xavierqet 2007-10-21 16:10:21 +00:00
parent 17e637b7e1
commit 8d774aa4d6
53 changed files with 423 additions and 42 deletions

239
Doxyfile Normal file
View 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

View File

@ -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*/) {

View File

@ -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 &);

View File

@ -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);

View File

@ -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

View File

@ -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)));
}

View File

@ -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

View File

@ -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

View File

@ -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;

View File

@ -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

View File

@ -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

View File

@ -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);

View File

@ -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(

View File

@ -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;

View File

@ -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

View File

@ -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:

View File

@ -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

View File

@ -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 };

View File

@ -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
*/

View File

@ -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

View File

@ -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

View File

@ -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
*/

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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:

View File

@ -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:

View File

@ -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:

View File

@ -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:

View File

@ -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:

View File

@ -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

View File

@ -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:

View File

@ -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:

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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) {

View File

@ -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) {

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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) {
}

View File

@ -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

View File

@ -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
View File

@ -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);

View File

@ -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.
*/

View File

@ -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;

View File

@ -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;

View File

@ -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) {

View File

@ -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: